.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-modal-overlay);display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--space-6);animation:fadeIn var(--duration-fast) ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);max-width:1200px;width:95%;max-height:90vh;display:flex;flex-direction:column;animation:slideUp var(--duration-normal) ease-out;position:relative;border:1px solid var(--border);transition:var(--transition-theme)}.modal-content:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--primary);border-radius:8px 8px 0 0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:var(--bg-card-hover);transition:var(--transition-theme)}.modal-header h2{margin:0;font-size:1.35rem;font-weight:600;color:var(--text-primary)}.modal-header .btn-close{background:none;border:none;font-size:1.6rem;color:var(--text-secondary);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--duration-fast) ease}.modal-header .btn-close:hover{background:var(--error-bg);color:var(--error)}.modal-body{padding:28px var(--space-8);overflow-y:auto;flex:1}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:var(--bg-card-hover);border-radius:var(--radius-xs)}.modal-body::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:var(--radius-xs)}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.form-row{display:flex;gap:20px;margin-bottom:var(--space-5)}@media(max-width:768px){.form-row{flex-direction:column;gap:16px}}.form-row.form-row-3cols{display:grid;grid-template-columns:repeat(3,1fr)}@media(max-width:1024px){.form-row.form-row-3cols{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.form-row.form-row-3cols{grid-template-columns:1fr}}.form-row.form-row-4cols{display:grid;grid-template-columns:repeat(4,1fr)}@media(max-width:1200px){.form-row.form-row-4cols{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.form-row.form-row-4cols{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.form-row.form-row-4cols{grid-template-columns:1fr}}.form-group{flex:1;min-width:0}.form-group.form-group-full{flex:1 1 100%}.form-group label{display:block;margin-bottom:var(--space-1-5);font-weight:500;color:var(--text-primary);font-size:var(--font-size-sm)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=number],.form-group input[type=date],.form-group input[type=time],.form-group input[type=tel],.form-group input[type=url],.form-group select,.form-group textarea{width:100%;padding:var(--space-2-5) var(--space-3-5);border:1px solid var(--border-input);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--bg-input);color:var(--text-primary);transition:border-color var(--duration-fast) ease,background var(--duration-fast) ease}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=number]:focus,.form-group input[type=date]:focus,.form-group input[type=time]:focus,.form-group input[type=tel]:focus,.form-group input[type=url]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}.form-group input[type=text]::-moz-placeholder,.form-group input[type=email]::-moz-placeholder,.form-group input[type=number]::-moz-placeholder,.form-group input[type=date]::-moz-placeholder,.form-group input[type=time]::-moz-placeholder,.form-group input[type=tel]::-moz-placeholder,.form-group input[type=url]::-moz-placeholder,.form-group select::-moz-placeholder,.form-group textarea::-moz-placeholder{color:var(--text-tertiary)}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder,.form-group input[type=number]::placeholder,.form-group input[type=date]::placeholder,.form-group input[type=time]::placeholder,.form-group input[type=tel]::placeholder,.form-group input[type=url]::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group input[type=text].input-disabled,.form-group input[type=email].input-disabled,.form-group input[type=number].input-disabled,.form-group input[type=date].input-disabled,.form-group input[type=time].input-disabled,.form-group input[type=tel].input-disabled,.form-group input[type=url].input-disabled,.form-group select.input-disabled,.form-group textarea.input-disabled{background:var(--bg-input-disabled);cursor:not-allowed;opacity:.7}.form-group textarea{resize:vertical;min-height:80px}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23555' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.section-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin:20px 0 14px;padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.section-title:first-child{margin-top:0}.color-picker{display:flex;gap:12px;align-items:center}.color-picker input[type=color]{width:50px;height:40px;border-radius:var(--radius-lg);cursor:pointer;border:2px solid var(--border);background:var(--bg-card);padding:var(--space-1)}.color-picker input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-picker input[type=color]::-webkit-color-swatch{border:none;border-radius:var(--radius-sm)}.color-picker input[type=color]:hover{border-color:var(--accent-teal)}.color-picker input[type=text]{flex:1;font-family:Courier New,monospace;text-transform:uppercase}.form-check{display:flex;align-items:center;gap:10px;margin-right:var(--space-5)}.form-check input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-teal)}.form-check label{margin:0;font-size:var(--font-size-sm);font-weight:400;color:var(--text-primary);cursor:pointer}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-5);display:flex;align-items:center;gap:10px;font-size:var(--font-size-sm);border-left:4px solid}.alert i{font-size:var(--font-size-lg)}.alert.alert-error{background:var(--error-bg);border-color:var(--error);color:var(--error)}.alert.alert-success{background:var(--success-bg);border-color:var(--success);color:var(--success)}.alert.alert-info{background:var(--info-bg);border-color:var(--info);color:var(--info)}.alert.alert-warning{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.modal-footer{padding:var(--space-5) var(--space-8);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px;background:var(--bg-card-hover);transition:var(--transition-theme)}.btn{padding:var(--space-2-5) var(--space-6);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;border:none;cursor:pointer;transition:all var(--duration-fast) ease;display:inline-flex;align-items:center;gap:8px;min-width:100px;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.btn-primary{background:var(--primary);color:var(--text-on-primary)}.btn.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn.btn-primary:active{background:var(--primary-dark)}.btn.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-input)}.btn.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-dark)}.btn.btn-danger{background:var(--error);color:var(--text-on-primary)}.btn.btn-danger:hover:not(:disabled){opacity:.9}.btn.btn-sm{padding:7px var(--space-3-5);font-size:.83rem}.modal-content.modal-sm{max-width:640px;width:90%}.modal-content.modal-md{max-width:900px;width:92%}.modal-content.modal-lg{max-width:1200px;width:95%}.modal-content.modal-xl{max-width:1500px;width:97%}.modal-content.modal-full{max-width:98vw;max-height:95vh;width:98%}.appointment-modal{max-width:780px;width:92%}.clinic-modal{max-width:900px;width:92%}.available-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:8px;margin-top:var(--space-2-5);max-height:180px;overflow-y:auto;padding:var(--space-2-5);background:var(--bg-card-hover);border:1px solid var(--border);border-radius:var(--radius-sm);transition:var(--transition-theme)}.available-slots .slot-btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-input);background:var(--bg-card);color:var(--text-primary);font-size:.88rem;font-weight:500;cursor:pointer;transition:all .12s ease;min-height:38px;display:flex;align-items:center;justify-content:center}.available-slots .slot-btn:hover{background:var(--bg-card-hover);border-color:var(--primary)}.available-slots .slot-btn.slot-btn-selected{background:var(--primary);color:var(--text-on-primary);border-color:var(--primary)}.available-slots .slot-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-input-disabled);border-color:var(--border);color:var(--text-tertiary)}.available-slots .slot-btn:disabled:hover{background:var(--bg-input-disabled)}.patient-autocomplete{position:relative}.patient-autocomplete input{width:100%}.patient-autocomplete .autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;max-height:280px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-input);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);margin-top:var(--space-0-5);z-index:1000;list-style:none;padding:0}.patient-autocomplete .autocomplete-dropdown .autocomplete-item{padding:var(--space-2-5) var(--space-3-5);cursor:pointer;transition:background .1s;border-bottom:1px solid var(--border-light)}.patient-autocomplete .autocomplete-dropdown .autocomplete-item:last-child{border-bottom:none}.patient-autocomplete .autocomplete-dropdown .autocomplete-item:hover{background:var(--bg-card-hover)}.patient-autocomplete .autocomplete-dropdown .autocomplete-item .patient-info{display:flex;flex-direction:column;gap:2px}.patient-autocomplete .autocomplete-dropdown .autocomplete-item .patient-info .patient-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.patient-autocomplete .autocomplete-dropdown .autocomplete-item .patient-info .patient-cpf{font-size:var(--font-size-xs);color:var(--text-secondary)}.patient-autocomplete .autocomplete-no-results{position:absolute;top:100%;left:0;right:0;padding:var(--space-3);background:var(--bg-card);border:1px solid var(--border-input);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);margin-top:var(--space-0-5);z-index:1000;text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm)}@media(max-width:768px){.modal-overlay{padding:var(--space-3)}.modal-content{max-width:100%;max-height:95vh;border-radius:var(--radius-md)}.modal-header{padding:var(--space-4) var(--space-5)}.modal-header h2{font-size:1.15rem}.modal-body{padding:var(--space-4) var(--space-5)}.modal-footer{padding:var(--space-3-5) var(--space-5);flex-wrap:wrap}.modal-footer .btn{flex:1;min-width:100px}}.whatsapp-reminders-section{margin-top:var(--space-5);padding:var(--space-4);background:var(--bg-card-hover);border-radius:var(--radius-sm);border:1px solid var(--border);transition:var(--transition-theme)}.whatsapp-reminders-section h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-base);font-weight:600;color:var(--primary);display:flex;align-items:center;gap:8px}.whatsapp-reminders-section h4:before{content:"";width:3px;height:18px;background:var(--success);border-radius:var(--radius-xs)}.whatsapp-reminders-section .reminders-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}@media(max-width:768px){.whatsapp-reminders-section .reminders-grid{grid-template-columns:1fr}}.whatsapp-reminders-section .reminder-item .alert{margin:0;font-size:var(--font-size-sm)}.btn-whatsapp{background:linear-gradient(135deg,var(--success) 0%,var(--primary) 100%);color:var(--text-on-primary);border:none;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--duration-normal) ease;display:inline-flex;align-items:center;gap:10px;width:100%;justify-content:center;box-shadow:var(--shadow-btn-success)}.btn-whatsapp svg{flex-shrink:0}.btn-whatsapp:hover:not(:disabled){background:var(--primary);box-shadow:var(--shadow-btn-success-hover)}.btn-whatsapp:active{transform:translateY(0)}.btn-whatsapp:disabled{opacity:.5;cursor:not-allowed}:root{--primary: var(--color-brand);--primary-rgb: 53, 120, 115;--primary-foreground: var(--color-on-brand);--primary-light: var(--color-brand);--primary-dark: var(--color-brand-strong);--primary-hover: var(--color-brand-strong);--secondary: var(--color-accent);--secondary-foreground: var(--color-on-accent);--secondary-light: var(--color-accent);--secondary-dark: var(--color-accent-strong);--secondary-hover: var(--color-accent-strong);--muted: var(--color-tag);--muted-foreground: var(--color-text-muted);--accent: var(--color-accent);--accent-foreground: var(--color-on-accent);--destructive: var(--color-alert);--destructive-foreground:var(--color-text-inverted);--ring: var(--color-brand);--success: var(--color-success);--success-light: var(--color-success-soft);--success-bg: var(--color-success-soft);--warning: var(--color-warn);--warning-light: var(--color-warn-soft);--warning-bg: var(--color-warn-soft);--error: var(--color-alert);--error-light: var(--color-alert-soft);--error-bg: var(--color-alert-soft);--info: var(--color-info);--info-light: var(--color-info-soft);--info-bg: var(--color-info-soft);--bg-page: var(--color-bg);--bg-card: var(--color-surface);--bg-card-hover: var(--color-surface-strong);--bg-sidebar: var(--color-surface-sunken);--bg-sidebar-hover: var(--color-surface-strong);--bg-input: var(--color-surface);--bg-input-disabled: var(--color-surface-strong);--bg-modal-overlay: var(--color-overlay);--bg-tooltip: var(--color-text);--bg-badge: var(--color-tag);--bg-highlight: var(--color-brand-soft);--text-primary: var(--color-text);--text-secondary: var(--color-text-muted);--text-tertiary: var(--color-text-dim);--text-inverse: var(--color-text-inverted);--text-link: var(--color-brand);--text-on-primary: var(--color-on-brand);--text-on-sidebar: var(--color-text-muted);--text-on-sidebar-muted: color-mix(in srgb, var(--color-text-muted) 70%, transparent);--sidebar-icon-filter: brightness(0) saturate(100%) invert(33%) sepia(15%) saturate(420%) hue-rotate(110deg) brightness(92%) contrast(88%);--sidebar-icon-filter-hover: brightness(0) saturate(100%) invert(20%) sepia(20%) saturate(500%) hue-rotate(110deg) brightness(85%) contrast(92%);--sidebar-icon-filter-active: brightness(0) saturate(100%) invert(54%) sepia(40%) saturate(500%) hue-rotate(126deg) brightness(95%) contrast(88%);--sidebar-border: var(--color-border);--sidebar-tooltip-bg: var(--color-text);--sidebar-tooltip-text: color-mix(in srgb, var(--color-text-inverted) 90%, transparent);--sidebar-submenu-border: color-mix(in srgb, var(--color-text) 8%, transparent);--sidebar-submenu-text: var(--color-text-muted);--border: var(--color-border);--border-light: var(--color-border-faint);--border-dark: var(--color-border-strong);--border-input: var(--color-border);--border-input-focus: var(--color-brand);--shadow-xs: 0 1px 2px color-mix(in srgb, var(--core-black) 3%, transparent);--shadow-sm: 0 1px 2px color-mix(in srgb, var(--core-black) 3%, transparent);--shadow: 0 2px 4px color-mix(in srgb, var(--core-black) 5%, transparent), 0 1px 2px color-mix(in srgb, var(--core-black) 3%, transparent);--shadow-md: 0 4px 8px color-mix(in srgb, var(--core-black) 6%, transparent), 0 2px 4px color-mix(in srgb, var(--core-black) 4%, transparent);--shadow-lg: 0 8px 16px color-mix(in srgb, var(--core-black) 7%, transparent), 0 4px 8px color-mix(in srgb, var(--core-black) 4%, transparent);--shadow-xl: 0 25px 50px -12px color-mix(in srgb, var(--core-black) 15%, transparent);--shadow-modal: 0 20px 60px color-mix(in srgb, var(--core-black) 20%, transparent);--shadow-card: 0 1px 2px color-mix(in srgb, var(--core-black) 4%, transparent);--shadow-card-hover: 0 2px 4px color-mix(in srgb, var(--core-black) 6%, transparent);--gradient-primary: linear-gradient(135deg, var(--color-brand-strong) 0%, var(--color-brand) 100%);--gradient-secondary: linear-gradient(135deg, var(--color-accent-strong) 0%, var(--color-accent) 100%);--gradient-sidebar: linear-gradient(180deg, var(--color-brand-strong) 0%, var(--core-brand-dark) 100%);--accent-teal: var(--color-brand);--accent-gold: var(--color-accent);--accent-pink: var(--color-alert-soft);--accent-blue: var(--color-info-soft);--accent-purple: color-mix(in srgb, var(--color-categorical-3) 14%, transparent);--overlay-dark: var(--core-overlay);--overlay-light: color-mix(in srgb, var(--color-text-inverted) 70%, transparent);--success-dark: var(--color-success-strong);--warning-dark: var(--color-warn-strong);--error-dark: var(--color-alert-strong);--info-dark: var(--color-info-strong);--toast-success-bg: color-mix(in srgb, var(--color-success) 10%, transparent);--toast-success-border: color-mix(in srgb, var(--color-success) 30%, transparent);--toast-success-icon-bg: color-mix(in srgb, var(--color-success) 20%, transparent);--toast-error-bg: color-mix(in srgb, var(--color-alert) 10%, transparent);--toast-error-border: color-mix(in srgb, var(--color-alert) 30%, transparent);--toast-error-icon-bg: color-mix(in srgb, var(--color-alert) 20%, transparent);--toast-warning-bg: color-mix(in srgb, var(--color-warn) 10%, transparent);--toast-warning-border: color-mix(in srgb, var(--color-warn) 30%, transparent);--toast-warning-icon-bg: color-mix(in srgb, var(--color-warn) 20%, transparent);--toast-info-bg: color-mix(in srgb, var(--color-info) 10%, transparent);--toast-info-border: color-mix(in srgb, var(--color-info) 30%, transparent);--toast-info-icon-bg: color-mix(in srgb, var(--color-info) 20%, transparent);--badge-success-bg: var(--color-success-soft);--badge-warning-bg: var(--color-warn-soft);--badge-danger-bg: var(--color-alert-soft);--badge-info-bg: var(--color-info-soft);--badge-neutral-bg: color-mix(in srgb, var(--color-text) 6%, transparent);--primary-bg-subtle: color-mix(in srgb, var(--color-brand) 3%, transparent);--primary-bg-light: color-mix(in srgb, var(--color-brand) 5%, transparent);--primary-bg-medium: color-mix(in srgb, var(--color-brand) 8%, transparent);--primary-bg-strong: color-mix(in srgb, var(--color-brand) 12%, transparent);--primary-bg-hover: color-mix(in srgb, var(--color-brand) 14%, transparent);--primary-border-light: color-mix(in srgb, var(--color-brand) 10%, transparent);--primary-border-medium: color-mix(in srgb, var(--color-brand) 20%, transparent);--primary-border-strong: color-mix(in srgb, var(--color-brand) 30%, transparent);--neutral-bg-subtle: color-mix(in srgb, var(--color-text) 2%, transparent);--neutral-bg-light: color-mix(in srgb, var(--color-text) 4%, transparent);--neutral-bg-medium: color-mix(in srgb, var(--color-text) 6%, transparent);--neutral-bg-hover: color-mix(in srgb, var(--color-text) 8%, transparent);--neutral-border-light: color-mix(in srgb, var(--color-text) 8%, transparent);--neutral-border-medium: color-mix(in srgb, var(--color-text) 10%, transparent);--bg-header: var(--color-surface);--bg-slots: var(--color-surface);--bg-hover-light: var(--color-surface-strong);--bg-hover-subtle: var(--color-surface-strong);--bg-disabled: var(--color-surface-strong);--border-medium: var(--color-border);--border-heavy: var(--color-border-strong);--scrollbar-track: var(--color-surface-strong);--scrollbar-thumb: var(--color-border-strong);--scrollbar-thumb-hover: var(--color-text-faint);--text-placeholder: var(--color-text-faint);--table-row-hover: var(--color-brand-soft);--table-header-bg: color-mix(in srgb, var(--color-brand) 8%, transparent);--table-header-border: color-mix(in srgb, var(--color-brand) 20%, transparent);--table-row-even: color-mix(in srgb, var(--color-brand) 3%, transparent);--table-cell-border: color-mix(in srgb, var(--color-text) 8%, transparent);--focus-ring: var(--ds-shadow-focus);--focus-ring-error: 0 0 0 3px var(--color-alert-soft);--shadow-btn-primary: 0 4px 12px color-mix(in srgb, var(--color-brand) 20%, transparent);--shadow-btn-primary-hover: 0 6px 16px color-mix(in srgb, var(--color-brand) 30%, transparent);--shadow-btn-danger: 0 4px 12px color-mix(in srgb, var(--color-alert) 20%, transparent);--shadow-btn-danger-hover: 0 6px 16px color-mix(in srgb, var(--color-alert) 30%, transparent);--shadow-btn-success: 0 4px 12px color-mix(in srgb, var(--color-success) 20%, transparent);--shadow-btn-success-hover: 0 6px 16px color-mix(in srgb, var(--color-success) 30%, transparent);--shadow-btn-warning: 0 4px 12px color-mix(in srgb, var(--color-warn) 20%, transparent);--shadow-btn-warning-hover: 0 6px 16px color-mix(in srgb, var(--color-warn) 30%, transparent);--shadow-btn-info: 0 4px 12px color-mix(in srgb, var(--color-info) 20%, transparent);--shadow-btn-info-hover: 0 6px 16px color-mix(in srgb, var(--color-info) 30%, transparent);--error-hover: var(--color-alert-strong);--event-consulta: var(--color-brand);--event-consulta-bg: var(--color-brand-soft);--event-primeira-consulta: var(--color-categorical-5);--event-primeira-consulta-bg: color-mix(in srgb, var(--color-categorical-5) 15%, transparent);--event-retorno: var(--color-brand);--event-retorno-bg: var(--color-brand-soft);--event-procedimento: var(--color-categorical-3);--event-procedimento-bg: color-mix(in srgb, var(--color-categorical-3) 15%, transparent);--event-imunoterapia: var(--color-categorical-7);--event-imunoterapia-bg: color-mix(in srgb, var(--color-categorical-7) 15%, transparent);--event-exame: var(--color-categorical-8);--event-exame-bg: color-mix(in srgb, var(--color-categorical-8) 15%, transparent);--event-avaliacao: var(--color-text-dim);--event-avaliacao-bg: color-mix(in srgb, var(--color-text-dim) 15%, transparent);--event-encaixe: var(--color-warn);--event-encaixe-bg: var(--color-warn-soft);--event-bloqueio: var(--color-text-muted);--event-bloqueio-bg: color-mix(in srgb, var(--color-text-muted) 15%, transparent);--event-tarefa: var(--color-accent-strong);--event-tarefa-bg: var(--color-accent-soft);--event-lembrete: var(--color-categorical-4);--event-lembrete-bg: color-mix(in srgb, var(--color-categorical-4) 15%, transparent);--event-teleconsulta: var(--color-success);--event-teleconsulta-bg: var(--color-success-soft);--calendar-unimed: var(--color-categorical-3);--calendar-unimed-bg: color-mix(in srgb, var(--color-categorical-3) 12%, transparent);--calendar-particular: var(--color-brand);--calendar-particular-bg: var(--color-brand-soft);--calendar-intercambio: var(--color-warn);--calendar-intercambio-bg: var(--color-warn-soft);--calendar-convenio: var(--color-categorical-5);--calendar-convenio-bg: color-mix(in srgb, var(--color-categorical-5) 12%, transparent);--calendar-isento: var(--color-text-muted);--calendar-isento-bg: color-mix(in srgb, var(--color-text-muted) 12%, transparent);--calendar-outro: var(--color-text-faint);--calendar-outro-bg: color-mix(in srgb, var(--color-text-faint) 12%, transparent);--font-family-sans: var(--font-sans, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);--font-size-2xs: .625rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2rem;--font-size-5xl: 4rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-0: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-xs: 3px;--radius-sm: 4px;--radius: 6px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-2xl: 12px;--radius-3xl: 16px;--radius-4xl: 20px;--radius-full: 9999px;--transition-fast: var(--duration-fast) ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-theme: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;--transform-lift-xs: translateY(-1px);--transform-lift-sm: translateY(-2px);--transform-lift-md: translateY(-4px);--transform-lift-lg: translateY(-6px);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal: 1050;--z-tooltip: 1060;--size-button-xs: 28px;--size-button-sm: 32px;--size-button-md: 36px;--size-button-lg: 40px;--size-sidebar-width: 64px;--size-sidebar-expanded: 240px;--audit-action-view: var(--color-categorical-3);--audit-action-create: var(--color-success);--audit-action-update: var(--color-categorical-4);--audit-action-delete: var(--color-alert);--audit-action-login: var(--color-categorical-3);--audit-action-logout: var(--color-categorical-7);--audit-action-export: var(--color-categorical-8);--audit-action-default: var(--color-categorical-3);--allergen-controles: var(--color-text-muted);--allergen-acaros: var(--color-categorical-3);--allergen-gramineas: var(--color-success);--allergen-animais: var(--color-warn);--allergen-insetos: var(--color-alert);--allergen-fungos: var(--color-categorical-5);--allergen-latex: var(--color-categorical-6);--allergen-alimentares: var(--color-categorical-8);--allergen-polens: var(--color-categorical-4);--allergen-custom: var(--color-text-faint);--event-patch-test: var(--color-categorical-8);--event-patch-test-border: color-mix(in srgb, var(--color-categorical-8) 85%, var(--core-black));--event-status-realizado: var(--color-success);--event-status-faltou: var(--color-alert);--event-status-cancelado: var(--color-text-dim);--event-whatsapp: #25D366;--panel-type-default-bg: color-mix(in srgb, var(--color-categorical-3) 15%, transparent);--panel-type-default-color: var(--color-categorical-3);--panel-type-custom-bg: color-mix(in srgb, var(--color-categorical-5) 15%, transparent);--panel-type-custom-color: var(--color-categorical-5);--panel-item-control-bg: color-mix(in srgb, var(--color-accent) 10%, transparent);--panel-item-control-hover-bg: var(--color-accent-soft);--panel-item-draggable-hover-bg: color-mix(in srgb, var(--color-categorical-3) 8%, transparent);--panel-add-custom-hover-bg: color-mix(in srgb, var(--color-categorical-3) 8%, transparent);--surface: var(--bg-card);--surface-secondary: var(--bg-card-hover);--white: var(--color-on-brand);--background: var(--bg-page);--background-overlay: var(--bg-page);--dark-surface: var(--bg-sidebar);--glass-background: var(--bg-card);--glass-card-bg: var(--bg-card);--glass-card-bg-strong: var(--bg-card);--glass-card-border: 1px solid var(--border);--glass-card-shadow: var(--shadow-card);--glass-border-strong: 1px solid var(--border-dark);--glass-shadow: var(--shadow-sm);--glass-blur: none;--glass-blur-strong: none;--glass-blur-medium: none;--glass-blur-light: none;--glass-background-dark: var(--bg-sidebar);--glass-card-dark-bg: var(--bg-sidebar);--glass-card-dark-border: 1px solid color-mix(in srgb, var(--core-white) 10%, transparent);--glass-card-dark-shadow: var(--shadow-md);--text-shadow: none;--text-shadow-sm: none;--text-shadow-strong: none;--text-shadow-on-image: 0 2px 4px color-mix(in srgb, var(--core-black) 60%, transparent);--spinner-border: 4px;--error-background: var(--error-light);--error-text: var(--error);--error-border: color-mix(in srgb, var(--color-alert) 30%, transparent);--error-light: color-mix(in srgb, var(--color-alert) 45%, transparent);--success-light: color-mix(in srgb, var(--color-success) 60%, transparent);--success-background: var(--success-bg);--message-user-max-width: 70%;--message-ai-max-width: 80%;--message-error-max-width: 60%;--message-mobile-max-width: 85%;--score-mild: var(--color-success);--score-mild-bg: color-mix(in srgb, var(--color-success) 12%, transparent);--score-moderate: var(--color-warn);--score-moderate-bg: color-mix(in srgb, var(--color-warn) 12%, transparent);--score-severe: var(--color-categorical-8);--score-severe-bg: color-mix(in srgb, var(--color-categorical-8) 12%, transparent);--score-critical: var(--color-alert);--score-critical-bg: color-mix(in srgb, var(--color-alert) 12%, transparent);--score-controlled: var(--color-success);--score-controlled-bg: color-mix(in srgb, var(--color-success) 12%, transparent);--score-info: var(--color-info);--score-info-bg: color-mix(in srgb, var(--color-info) 12%, transparent);--appt-consulta-bg: color-mix(in srgb, var(--color-categorical-5) 14%, transparent);--appt-consulta-color: var(--color-categorical-5);--appt-consulta-border: color-mix(in srgb, var(--color-categorical-5) 30%, transparent);--appt-retorno-bg: color-mix(in srgb, var(--color-categorical-3) 14%, transparent);--appt-retorno-color: var(--color-categorical-3);--appt-retorno-border: color-mix(in srgb, var(--color-categorical-3) 30%, transparent);--appt-procedimento-bg: color-mix(in srgb, var(--color-categorical-8) 14%, transparent);--appt-procedimento-color: var(--color-categorical-8);--appt-procedimento-border: color-mix(in srgb, var(--color-categorical-8) 30%, transparent);--appt-primeira-bg: color-mix(in srgb, var(--color-categorical-7) 14%, transparent);--appt-primeira-color: var(--color-categorical-7);--appt-primeira-border: color-mix(in srgb, var(--color-categorical-7) 30%, transparent);--appt-imunoterapia-bg: var(--color-brand-soft);--appt-imunoterapia-color: var(--color-brand-strong);--appt-imunoterapia-border: color-mix(in srgb, var(--color-brand) 30%, transparent);--appt-exame-bg: color-mix(in srgb, var(--color-categorical-4) 14%, transparent);--appt-exame-color: var(--color-categorical-4);--appt-exame-border: color-mix(in srgb, var(--color-categorical-4) 30%, transparent);--appt-teleconsulta-bg: color-mix(in srgb, var(--color-categorical-1) 14%, transparent);--appt-teleconsulta-color: var(--color-categorical-1);--appt-teleconsulta-border: color-mix(in srgb, var(--color-categorical-1) 30%, transparent);--appt-encaixe-bg: var(--color-warn-soft);--appt-encaixe-color: var(--color-warn);--appt-encaixe-border: color-mix(in srgb, var(--color-warn) 30%, transparent);--appt-avaliacao-bg: color-mix(in srgb, var(--color-categorical-2) 14%, transparent);--appt-avaliacao-color: var(--color-categorical-2);--appt-avaliacao-border: color-mix(in srgb, var(--color-categorical-2) 30%, transparent);--appt-default-bg: var(--color-tag);--appt-default-color: var(--color-text-muted);--appt-default-border: var(--color-border);--chart-primary: var(--color-brand);--chart-primary-light: color-mix(in srgb, var(--color-brand) 75%, var(--color-surface));--chart-primary-dark: var(--color-brand-strong);--chart-secondary: var(--color-accent-strong);--chart-secondary-light: var(--color-accent);--chart-accent-teal: var(--chart-primary-light);--chart-accent-teal-light: color-mix(in srgb, var(--color-brand) 50%, var(--color-surface));--chart-accent-gold: var(--color-accent);--chart-accent-gold-dark: color-mix(in srgb, var(--color-accent-strong) 85%, var(--core-black));--chart-hover-teal: var(--color-categorical-5);--chart-hover-gold: var(--color-accent-strong);--chart-hover-cyan: var(--color-categorical-2);--chart-text: var(--color-text);--chart-tooltip-bg: color-mix(in srgb, var(--color-brand) 90%, transparent);--chart-tooltip-border: var(--color-brand);--chart-grid: color-mix(in srgb, var(--color-text) 5%, transparent);--stat-blue: var(--color-categorical-3);--stat-orange: var(--color-categorical-8);--stat-red: var(--color-alert)}.dark{--primary: var(--color-brand-strong);--primary-rgb: 98, 165, 159;--primary-foreground: var(--color-bg);--primary-hover: color-mix(in srgb, var(--color-brand-strong) 85%, white);--primary-light: var(--color-brand-strong);--primary-dark: var(--color-brand);--bg-input-disabled: var(--color-surface-sunken);--text-link: var(--color-brand-strong);--border-input-focus: var(--color-brand-strong);--shadow-xs: 0 1px 2px color-mix(in srgb, var(--core-black) 15%, transparent);--shadow-sm: 0 1px 2px color-mix(in srgb, var(--core-black) 15%, transparent);--shadow: 0 2px 4px color-mix(in srgb, var(--core-black) 20%, transparent), 0 1px 2px color-mix(in srgb, var(--core-black) 15%, transparent);--shadow-md: 0 4px 8px color-mix(in srgb, var(--core-black) 25%, transparent), 0 2px 4px color-mix(in srgb, var(--core-black) 15%, transparent);--shadow-lg: 0 8px 16px color-mix(in srgb, var(--core-black) 30%, transparent), 0 4px 8px color-mix(in srgb, var(--core-black) 20%, transparent);--shadow-xl: 0 25px 50px -12px color-mix(in srgb, var(--core-black) 50%, transparent);--shadow-modal: 0 20px 60px color-mix(in srgb, var(--core-black) 50%, transparent);--shadow-card: 0 1px 2px color-mix(in srgb, var(--core-black) 20%, transparent);--shadow-card-hover: 0 2px 6px color-mix(in srgb, var(--core-black) 30%, transparent);--gradient-primary: linear-gradient(135deg, var(--color-brand) 0%, var(--color-brand-strong) 100%);--gradient-sidebar: linear-gradient(180deg, var(--color-bg) 0%, var(--color-surface-sunken) 100%);--success-light: color-mix(in srgb, var(--color-success) 35%, transparent);--warning-light: color-mix(in srgb, var(--color-warn) 35%, transparent);--error-light: color-mix(in srgb, var(--color-alert) 35%, transparent);--info-light: color-mix(in srgb, var(--color-info) 35%, transparent);--overlay-light: color-mix(in srgb, var(--color-text) 10%, transparent);--toast-success-bg: color-mix(in srgb, var(--color-success) 15%, transparent);--toast-success-border: color-mix(in srgb, var(--color-success) 35%, transparent);--toast-success-icon-bg: color-mix(in srgb, var(--color-success) 25%, transparent);--toast-error-bg: color-mix(in srgb, var(--color-alert) 15%, transparent);--toast-error-border: color-mix(in srgb, var(--color-alert) 35%, transparent);--toast-error-icon-bg: color-mix(in srgb, var(--color-alert) 25%, transparent);--toast-warning-bg: color-mix(in srgb, var(--color-warn) 15%, transparent);--toast-warning-border: color-mix(in srgb, var(--color-warn) 35%, transparent);--toast-warning-icon-bg: color-mix(in srgb, var(--color-warn) 25%, transparent);--toast-info-bg: color-mix(in srgb, var(--color-info) 15%, transparent);--toast-info-border: color-mix(in srgb, var(--color-info) 35%, transparent);--toast-info-icon-bg: color-mix(in srgb, var(--color-info) 25%, transparent);--primary-bg-subtle: color-mix(in srgb, var(--color-brand-strong) 5%, transparent);--primary-bg-light: color-mix(in srgb, var(--color-brand-strong) 8%, transparent);--primary-bg-medium: color-mix(in srgb, var(--color-brand-strong) 12%, transparent);--primary-bg-strong: color-mix(in srgb, var(--color-brand-strong) 18%, transparent);--primary-bg-hover: color-mix(in srgb, var(--color-brand-strong) 22%, transparent);--primary-border-light: color-mix(in srgb, var(--color-brand-strong) 15%, transparent);--primary-border-medium: color-mix(in srgb, var(--color-brand-strong) 25%, transparent);--primary-border-strong: color-mix(in srgb, var(--color-brand-strong) 40%, transparent);--bg-disabled: var(--color-surface-sunken);--scrollbar-track: var(--color-surface);--scrollbar-thumb: var(--color-brand);--scrollbar-thumb-hover: var(--color-brand-strong);--table-header-bg: color-mix(in srgb, var(--color-brand-strong) 12%, transparent);--table-header-border: color-mix(in srgb, var(--color-brand-strong) 25%, transparent);--table-row-even: color-mix(in srgb, var(--color-brand-strong) 5%, transparent);--table-cell-border: color-mix(in srgb, var(--color-text) 6%, transparent);--shadow-btn-primary: 0 4px 12px color-mix(in srgb, var(--color-brand) 30%, transparent);--shadow-btn-primary-hover: 0 6px 16px color-mix(in srgb, var(--color-brand) 40%, transparent);--shadow-btn-danger: 0 4px 12px color-mix(in srgb, var(--color-alert) 30%, transparent);--shadow-btn-danger-hover: 0 6px 16px color-mix(in srgb, var(--color-alert) 40%, transparent);--shadow-btn-success: 0 4px 12px color-mix(in srgb, var(--color-success) 30%, transparent);--shadow-btn-success-hover: 0 6px 16px color-mix(in srgb, var(--color-success) 40%, transparent);--shadow-btn-warning: 0 4px 12px color-mix(in srgb, var(--color-warn) 30%, transparent);--shadow-btn-warning-hover: 0 6px 16px color-mix(in srgb, var(--color-warn) 40%, transparent);--shadow-btn-info: 0 4px 12px color-mix(in srgb, var(--color-info) 30%, transparent);--shadow-btn-info-hover: 0 6px 16px color-mix(in srgb, var(--color-info) 40%, transparent);--event-consulta: var(--color-brand-strong);--event-retorno: var(--color-brand-strong);--calendar-particular: var(--color-brand-strong);--accent-teal: var(--color-brand-strong);--text-on-sidebar: var(--color-brand-strong);--text-on-sidebar-muted: color-mix(in srgb, var(--color-text) 75%, transparent);--sidebar-icon-filter: brightness(0) saturate(100%) invert(65%) sepia(50%) saturate(400%) hue-rotate(126deg) brightness(100%) contrast(88%);--sidebar-icon-filter-hover: brightness(0) saturate(100%) invert(80%) sepia(40%) saturate(500%) hue-rotate(126deg) brightness(110%) contrast(90%);--sidebar-icon-filter-active: brightness(0) saturate(100%) invert(80%) sepia(40%) saturate(500%) hue-rotate(126deg) brightness(115%) contrast(92%);--sidebar-border: color-mix(in srgb, var(--color-brand-strong) 25%, transparent);--sidebar-tooltip-bg: var(--color-bg);--sidebar-tooltip-text: color-mix(in srgb, var(--color-text) 90%, transparent);--event-whatsapp: #4ADE80;--white: var(--bg-card);--error-text: var(--color-alert-strong);--appt-imunoterapia-color: var(--color-brand-strong);--chart-primary: var(--color-brand-strong);--chart-primary-light: color-mix(in srgb, var(--color-brand-strong) 70%, var(--color-text));--chart-primary-dark: var(--color-brand);--chart-accent-teal-light: color-mix(in srgb, var(--color-brand-strong) 50%, var(--color-text));--chart-tooltip-border: var(--color-brand-strong)}.glass,.glass-subtle,.glass-strong,.glass-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:none;border-radius:var(--radius);transition:var(--transition-theme)}.glass-dark,.glass-dark-medium,.glass-card-dark{background:var(--bg-sidebar);border:1px solid color-mix(in srgb,var(--core-white) 10%,transparent);box-shadow:var(--shadow-md);border-radius:var(--radius-lg);color:var(--text-on-sidebar);transition:var(--transition-theme)}.glass-teal{background:var(--bg-highlight);border:1px solid color-mix(in srgb,var(--color-brand) 20%,transparent);box-shadow:var(--shadow-sm)}.glass-gold{background:color-mix(in srgb,var(--color-accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 20%,transparent);box-shadow:var(--shadow-sm)}.btn-primary{background:var(--gradient-primary);color:var(--text-on-primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-btn-primary);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-primary-hover)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary i,.btn-primary svg{font-size:1.1rem}.btn-secondary{background:var(--primary-bg-medium);color:var(--primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:2px solid var(--primary-border-light);font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-secondary:hover:not(:disabled){background:var(--primary-bg-hover);border-color:var(--primary-border-strong)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-glass{background:var(--bg-card);color:var(--primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:1px solid var(--border);font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-glass:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-primary);border-color:var(--border-dark)}.btn-glass:active{transform:translateY(0)}.btn-glass:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--error);color:var(--text-on-primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-btn-danger);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-danger-hover);background:var(--error-hover)}.btn-danger:active{transform:translateY(0)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-success{background:var(--success);color:var(--text-on-primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-btn-success);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-success-hover)}.btn-success:active{transform:translateY(0)}.btn-success:disabled{opacity:.5;cursor:not-allowed}.btn-warning{background:var(--warning);color:var(--text-on-primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-btn-warning);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-warning:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-warning-hover)}.btn-warning:active{transform:translateY(0)}.btn-warning:disabled{opacity:.5;cursor:not-allowed}.btn-info{background:var(--info);color:var(--text-on-primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-btn-info);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-info:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-btn-info-hover)}.btn-info:active{transform:translateY(0)}.btn-info:disabled{opacity:.5;cursor:not-allowed}.btn-outline{background:transparent;color:var(--primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:2px solid var(--primary);font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-outline:hover:not(:disabled){background:var(--primary);color:var(--text-on-primary)}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-link{background:transparent;color:var(--primary);padding:var(--space-5) var(--space-8);border-radius:var(--radius-sm);border:none;font-weight:var(--font-weight-semibold);font-size:.95rem;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px;white-space:nowrap;text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--accent-teal);text-decoration:none}.btn-link:disabled{opacity:.5;cursor:not-allowed}.btn-clear{background:var(--primary-bg-medium);color:var(--primary);padding:10px 20px;border-radius:var(--radius-sm);border:1px solid var(--primary-border-light);font-weight:var(--font-weight-medium);font-size:.85rem;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-clear:hover:not(:disabled){background:var(--primary-bg-hover);border-color:var(--primary-border-strong)}.btn-clear:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:8px 16px;font-size:.85rem}.btn-sm i,.btn-sm svg{font-size:.95rem}.btn-lg{padding:var(--space-6) var(--space-10);font-size:1.05rem}.btn-lg i,.btn-lg svg{font-size:1.25rem}.btn-icon,.btn-icon-sm{background:var(--primary-bg-medium);color:var(--primary);padding:var(--space-2-5);border-radius:var(--radius-sm);border:1px solid var(--primary-border-light);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px}.btn-icon:hover:not(:disabled),.btn-icon-sm:hover:not(:disabled){background:var(--primary-bg-hover);border-color:var(--primary-border-strong);transform:scale(1.05)}.btn-icon:disabled,.btn-icon-sm:disabled{opacity:.5;cursor:not-allowed}.btn-icon i,.btn-icon-sm i,.btn-icon svg,.btn-icon-sm svg{font-size:1.2rem}.btn-icon-sm{width:32px;height:32px;padding:var(--space-1-5)}.btn-icon-sm i,.btn-icon-sm svg{font-size:var(--font-size-base)}.btn-group{display:inline-flex;gap:8px;align-items:center}.btn-group-connected{display:inline-flex}.btn-group-connected button{border-radius:0}.btn-group-connected button:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.btn-group-connected button:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.btn-group-connected button:not(:last-child){border-right-width:1px}.action-bar{display:flex;gap:var(--space-4);align-items:center;margin-bottom:var(--space-8);padding:var(--space-6) var(--space-8);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.action-bar .btn-primary{margin-left:auto}@media(max-width:768px){.btn-primary,.btn-secondary,.btn-glass,.btn-danger,.btn-success,.btn-warning,.btn-info,.btn-outline,.btn-link{padding:10px 20px;font-size:var(--font-size-sm)}.btn-sm{padding:var(--space-1-5) var(--space-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-5) var(--space-8);font-size:var(--font-size-base)}.btn-group{flex-wrap:wrap}.action-bar{flex-direction:column;align-items:stretch}.action-bar .btn-primary{margin-left:0}}
