.ui-icon{width:var(--icon-md);height:var(--icon-md);stroke-width:var(--icon-stroke);flex:none}.ui-button{justify-content:center;align-items:center;gap:var(--button-gap);min-height:var(--button-h);padding:0 var(--button-px);border:var(--border-width) solid transparent;border-radius:var(--button-radius);font:var(--type-body);font-size:var(--button-fs);font-weight:var(--button-weight);color:var(--primary-foreground);background:var(--primary);cursor:pointer;transition:background-color var(--duration-fast) var(--px-ease-out);display:inline-flex}.ui-button[data-size=sm]{min-height:var(--button-h-sm);padding-inline:var(--button-px-sm);font-size:var(--button-fs-sm)}.ui-button[data-size=lg]{min-height:var(--button-h-lg);padding-inline:var(--button-px-lg);font-size:var(--button-fs-lg)}.ui-button:hover{background:var(--primary-hover)}.ui-button:active:not(:disabled){transform:scale(var(--press-scale))}.ui-button[data-variant=secondary]{background:var(--secondary);color:var(--foreground)}.ui-button[data-variant=outline]{background:var(--card);color:var(--foreground);border-color:var(--border-strong)}.ui-button[data-variant=ghost]{color:var(--foreground);background:0 0}.ui-button:is([data-variant=secondary],[data-variant=outline],[data-variant=ghost]):hover{background:var(--muted)}.ui-button[data-variant=destructive]{background:var(--destructive);color:var(--destructive-foreground)}.ui-button[data-variant=assistant]{background:var(--assistant);color:var(--assistant-foreground)}.ui-button:disabled,.ui-input:disabled,.ui-toggle[data-disabled],.ui-option[data-disabled],.ui-tab[data-disabled],.ui-date-input[data-disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}.ui-button:focus-visible,.ui-input:focus-visible,.ui-toggle:focus-visible,.ui-option:focus-visible,.ui-tab:focus-visible,.ui-tab-panel:focus-visible,.ui-table-scroll:focus-visible,.ui-date-segment:focus-visible,.ui-date-trigger:focus-visible,.ui-calendar-day:focus-visible,.ui-popup:focus-visible{outline:var(--focus-ring-width) solid var(--ring);outline-offset:var(--focus-ring-offset)}.ui-spinner{width:var(--icon-md);height:var(--icon-md);border:var(--focus-ring-width) solid currentColor;border-radius:var(--px-radius-full);animation:ui-spin var(--duration-skeleton) linear infinite;border-right-color:#0000}@keyframes ui-spin{to{transform:rotate(1turn)}}.ui-field{align-content:start;gap:var(--field-gap);min-width:0;display:grid}.ui-field>label{font:var(--type-label)}.ui-input{width:100%;min-width:0;min-height:var(--input-h);padding:0 var(--input-px);border:var(--border-width) solid var(--input-border);border-radius:var(--input-radius);background:var(--input-bg);color:var(--foreground);font:var(--type-body);font-size:var(--input-fs)}.ui-input[data-size=sm]{min-height:var(--control-h-sm);font-size:var(--px-text-sm)}.ui-input[data-size=lg]{min-height:var(--control-h-lg);font-size:var(--px-text-md)}.ui-input::placeholder{color:var(--input-placeholder)}.ui-input:focus-within{border-color:var(--input-border-focus);box-shadow:var(--focus-ring-halo)}.ui-input[aria-invalid=true],.ui-input[data-invalid]{border-color:var(--input-border-error)}.ui-textarea{min-height:var(--textarea-min-h);padding-block:var(--space-2);resize:vertical}.ui-select-trigger{justify-content:space-between;align-items:center;gap:var(--space-2);text-align:start;display:flex}.ui-popup{z-index:var(--z-modal);max-width:calc(100vw - var(--space-8));padding:var(--popover-padding);border:var(--border-width) solid var(--border);border-radius:var(--popover-radius);background:var(--popover);color:var(--popover-foreground);box-shadow:var(--px-shadow-lg);font:var(--type-body)}.ui-options{min-width:var(--bits-select-anchor-width,var(--bits-combobox-anchor-width));max-height:min(var(--bits-select-content-available-height,var(--bits-combobox-content-available-height)), calc(var(--control-h) * 8));overflow-y:auto}.ui-option{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--menu-item-h);padding-inline:var(--space-3);border-radius:var(--menu-item-radius);cursor:pointer;display:flex}.ui-option[data-highlighted]{background:var(--muted);outline:var(--focus-ring-width) solid var(--ring);outline-offset:calc(-1 * var(--focus-ring-width))}.ui-option[data-selected]{font-weight:var(--px-font-weight-medium)}.ui-option[data-destructive]{color:var(--destructive)}.ui-empty-options{padding:var(--space-3);color:var(--muted-foreground)}.ui-toggle{align-items:center;gap:var(--space-2);min-height:var(--control-h);text-align:start;border-radius:var(--button-radius);font:var(--type-body);cursor:pointer;color:var(--foreground);display:inline-flex}.ui-checkbox-box,.ui-radio-dot{width:var(--icon-lg);height:var(--icon-lg);border:var(--border-width) solid var(--input-border);border-radius:var(--px-radius-xs);background:var(--input-bg);flex:none;justify-content:center;align-items:center;display:inline-flex}.ui-toggle[data-state=checked] .ui-checkbox-box,.ui-toggle[data-state=indeterminate] .ui-checkbox-box{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.ui-radio-group{gap:var(--space-1);display:grid}.ui-radio-dot{border-radius:var(--px-radius-full)}.ui-toggle[data-state=checked] .ui-radio-dot{border-color:var(--primary)}.ui-toggle[data-state=checked] .ui-radio-dot:after{content:"";width:var(--space-2-5);height:var(--space-2-5);border-radius:inherit;background:var(--primary)}.ui-switch-track{width:var(--control-h);padding:var(--space-0-5);border-radius:var(--px-radius-full);background:var(--border-strong);display:inline-flex}.ui-switch-thumb{width:var(--icon-md);height:var(--icon-md);border-radius:var(--px-radius-full);background:var(--card);transition:transform var(--duration-fast) var(--px-ease-out)}.ui-toggle[data-state=checked] .ui-switch-track{background:var(--primary)}.ui-switch-thumb[data-state=checked]{transform:translateX(var(--icon-md));background:var(--primary-foreground)}.ui-overlay{background:var(--overlay);z-index:var(--z-overlay);position:fixed;inset:0}.ui-modal{width:min(var(--dialog-w), calc(100vw - var(--space-8)));max-height:calc(100dvh - var(--space-8));padding:var(--dialog-padding);border:var(--border-width) solid var(--border);border-radius:var(--dialog-radius);background:var(--card);color:var(--card-foreground);box-shadow:var(--px-shadow-lg);z-index:var(--z-modal);position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.ui-modal[data-size=sm]{width:min(var(--dialog-w-sm), calc(100vw - var(--space-8)))}.ui-modal[data-size=lg]{width:min(var(--dialog-w-lg), calc(100vw - var(--space-8)))}.ui-sheet,.ui-sheet[data-size=sm],.ui-sheet[data-size=lg]{width:min(var(--sheet-w), 100%);border-radius:var(--dialog-radius) 0 0 var(--dialog-radius);max-height:100dvh;inset:0 0 0 auto;transform:none}.ui-sheet[data-size=lg]{width:min(var(--sheet-w-lg), 100%)}.ui-title{font:var(--type-section-title);padding-right:var(--space-8)}.ui-description{font:var(--type-body);color:var(--muted-foreground);margin-top:var(--space-2)}.ui-modal-body{margin-top:var(--space-5)}.ui-modal-close{top:var(--space-3);right:var(--space-3);padding-inline:var(--space-2);position:absolute}.ui-popover{gap:var(--space-3);width:min(var(--dialog-w-sm), calc(100vw - var(--space-8)));padding:var(--space-4);display:grid}.ui-tabs{border-bottom:var(--border-width) solid var(--border);display:flex;overflow-x:auto}.ui-tab{min-height:var(--tabs-h);padding:var(--space-2) var(--tabs-px);border-bottom:var(--tabs-indicator) solid transparent;color:var(--muted-foreground);white-space:nowrap}.ui-tab[data-state=active]{color:var(--foreground);border-color:var(--primary);font-weight:var(--px-font-weight-medium)}.ui-tab-panel{padding:var(--space-4) 0}.ui-tooltip{max-width:min(var(--toast-w), calc(100vw - var(--space-8)));padding:var(--space-1-5) var(--space-2);border-radius:var(--tooltip-radius);background:var(--tooltip-bg);color:var(--tooltip-fg);font:var(--type-caption);z-index:var(--z-tooltip)}.ui-avatar{width:var(--avatar-md);height:var(--avatar-md);border-radius:var(--px-radius-full);background:var(--cat-4-bg);color:var(--cat-4-fg);font:var(--type-caption);font-weight:var(--px-font-weight-semibold);flex:none;place-items:center;display:inline-grid;overflow:hidden}.ui-avatar[data-size=xs]{width:var(--avatar-xs);height:var(--avatar-xs)}.ui-avatar[data-size=sm]{width:var(--avatar-sm);height:var(--avatar-sm)}.ui-avatar[data-size=lg]{width:var(--avatar-lg);height:var(--avatar-lg)}.ui-avatar[data-size=xl]{width:var(--avatar-xl);height:var(--avatar-xl)}.ui-avatar-image{object-fit:cover;width:100%;height:100%}.ui-badge{align-items:center;gap:var(--chip-gap);min-height:var(--chip-h);padding-inline:var(--chip-px);border-radius:var(--chip-radius);font:var(--type-caption);font-size:var(--chip-fs);font-weight:var(--chip-weight);background:var(--badge-bg);color:var(--badge-fg);display:inline-flex}.ui-badge-dot{width:var(--chip-dot);height:var(--chip-dot);border-radius:var(--px-radius-full);background:var(--badge-dot);flex:none}.ui-badge[data-status=agendada]{--badge-bg:var(--cita-agendada-bg);--badge-fg:var(--cita-agendada-fg);--badge-dot:var(--cita-agendada-dot)}.ui-badge[data-status=confirmada]{--badge-bg:var(--cita-confirmada-bg);--badge-fg:var(--cita-confirmada-fg);--badge-dot:var(--cita-confirmada-dot)}.ui-badge[data-status=en-sala]{--badge-bg:var(--cita-en-sala-bg);--badge-fg:var(--cita-en-sala-fg);--badge-dot:var(--cita-en-sala-dot)}.ui-badge[data-status=en-consulta]{--badge-bg:var(--cita-en-consulta-bg);--badge-fg:var(--cita-en-consulta-fg);--badge-dot:var(--cita-en-consulta-dot)}.ui-badge[data-status=completada]{--badge-bg:var(--cita-completada-bg);--badge-fg:var(--cita-completada-fg);--badge-dot:var(--cita-completada-dot)}.ui-badge[data-status=no-asistio]{--badge-bg:var(--cita-no-asistio-bg);--badge-fg:var(--cita-no-asistio-fg);--badge-dot:var(--cita-no-asistio-dot)}.ui-badge[data-status=cancelada]{--badge-bg:var(--cita-cancelada-bg);--badge-fg:var(--cita-cancelada-fg);--badge-dot:var(--cita-cancelada-dot)}.ui-table-scroll{border:var(--border-width) solid var(--border);border-radius:var(--card-radius);overflow-x:auto}.ui-table{border-collapse:collapse;background:var(--card);width:100%;font:var(--type-body-sm);font-variant-numeric:tabular-nums}.ui-table caption{text-align:start;padding:var(--space-3);font:var(--type-label)}.ui-table th{min-height:var(--table-header-h);background:var(--table-header-bg);color:var(--muted-foreground);text-align:start;font-size:var(--table-header-fs);font-weight:var(--px-font-weight-medium)}.ui-table th,.ui-table td{padding:var(--space-2) var(--table-cell-px);border-bottom:var(--border-width) solid var(--border);white-space:nowrap}.ui-table td{height:var(--table-row-h)}.ui-table[data-compact=true] td{height:var(--table-row-h-compact);padding-block:var(--space-1)}.ui-table tbody tr:hover{background:var(--table-row-hover)}.ui-table tbody tr[aria-selected=true]{background:var(--table-row-selected)}.ui-toast-region{bottom:var(--space-4);right:var(--space-4);z-index:var(--z-toast);max-width:calc(100vw - var(--space-8));position:fixed}.ui-toast{align-items:center;gap:var(--space-2);width:var(--toast-w);max-width:100%;padding:var(--space-2-5) var(--space-3);border-radius:var(--toast-radius);background:var(--toast-bg);color:var(--toast-fg);box-shadow:var(--px-shadow-lg);font:var(--type-body-sm);flex-wrap:wrap;display:flex}.ui-toast p{overflow-wrap:anywhere;flex:50%}.ui-toast .ui-button{color:var(--toast-fg)}.ui-toast .ui-button:hover{background:color-mix(in oklch, var(--toast-fg) 15%, var(--toast-bg))}.ui-toast .ui-button:focus-visible{outline-color:var(--toast-fg)}.ui-skeleton{width:100%;height:var(--space-4);border-radius:var(--px-radius-xs);background:linear-gradient(90deg, var(--skeleton-base), var(--skeleton-shine), var(--skeleton-base));animation:ui-shimmer var(--duration-skeleton) linear infinite;background-size:200% 100%}.ui-skeleton[data-shape=title]{width:60%;height:var(--space-6)}.ui-skeleton[data-shape=avatar]{width:var(--avatar-lg);height:var(--avatar-lg);border-radius:var(--px-radius-full)}.ui-skeleton[data-shape=card]{height:calc(var(--space-24) * 2);border-radius:var(--card-radius)}@keyframes ui-shimmer{to{background-position:-200% 0}}.ui-empty-state{justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-8);border:var(--border-width) dashed var(--border-strong);border-radius:var(--card-radius);display:grid}.ui-empty-state .ui-icon{width:var(--icon-xl);height:var(--icon-xl);color:var(--muted-foreground)}.ui-empty-state .ui-title{padding:0}.ui-date-input{align-items:center;display:flex}.ui-date-segment{border-radius:var(--px-radius-xs);padding-inline:var(--space-0-5)}.ui-date-trigger{min-height:calc(var(--input-h) - 2 * var(--border-width));padding-inline:var(--space-2);border-radius:var(--input-radius);margin-left:auto}.ui-date-input[data-size=sm] .ui-date-trigger{min-height:calc(var(--control-h-sm) - 2 * var(--border-width))}.ui-date-input[data-size=lg] .ui-date-trigger{min-height:calc(var(--control-h-lg) - 2 * var(--border-width))}.ui-constraint-input{clip-path:inset(50%);white-space:nowrap;border:0;width:0;height:0;padding:0;position:absolute;overflow:hidden}.ui-calendar-popup{max-height:var(--bits-popover-content-available-height);overflow:auto}.ui-calendar-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.ui-calendar-grid{border-collapse:collapse;width:100%}.ui-calendar-grid th{font:var(--type-caption);color:var(--muted-foreground)}.ui-calendar-grid td{padding:0}.ui-calendar-day{width:var(--control-h);height:var(--control-h);border-radius:var(--button-radius);font:var(--type-body-sm);justify-content:center;align-items:center;display:flex}.ui-calendar-day:hover{background:var(--muted)}.ui-calendar-day[data-selected]{background:var(--primary);color:var(--primary-foreground)}.ui-calendar-day[data-disabled],.ui-calendar-day[data-outside-month]{opacity:var(--opacity-disabled)}.ui-calendar-day[data-unavailable]{text-decoration:line-through}@media (width<=40rem),(pointer:coarse){.ui-button,.ui-button[data-size],.ui-input,.ui-input[data-size],.ui-toggle,.ui-option,.ui-tab{min-height:var(--control-h-lg)}.ui-date-trigger{min-height:calc(var(--control-h-lg) - 2 * var(--border-width))}.ui-input,.ui-input[data-size],.ui-button[data-size]{font-size:var(--px-text-md)}.ui-calendar-day{width:var(--control-h-lg);height:var(--control-h-lg)}}@media (prefers-reduced-motion:reduce){.ui-spinner,.ui-skeleton{animation:none}}
