:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-dark: #1e40af;--color-primary-light: #3b82f6;--color-primary-bg: #dbeafe;--color-primary-rgb: 37, 99, 235;--color-success: #10b981;--color-success-hover: #059669;--color-success-bg: #d1fae5;--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: #fee2e2;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-bg: #fef3c7;--color-warning-border: #f59e0b;--color-warning-text: #92400e;--color-info: #2563eb;--color-info-rgb: 37, 99, 235;--color-info-bg: rgba(37, 99, 235, .08);--color-info-text: #1e40af;--status-new: #fbbf24;--status-in-review: #60a5fa;--status-awaiting-consultation: #a78bfa;--status-conservative-treatment: #84cc16;--status-surgery-planned: #3b82f6;--status-nszu-queue: #f97316;--status-pre-surgery-prep: #1e40af;--status-post-surgery-hospital: #ec4899;--status-post-surgery-followup: #bef264;--status-rehabilitation: #10b981;--status-completed: #6b7280;--status-cancelled: #ef4444;--risk-allergy: #dc2626;--risk-anticoagulants: #ea580c;--risk-chronic: #ca8a04;--color-text: #111827;--color-text-light: #6b7280;--color-text-lighter: #9ca3af;--color-bg: #ffffff;--color-bg-alt: #f9fafb;--color-border: #e5e7eb;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-sans: var(--font-family);--font-family-serif: var(--font-family);--font-family-mono: "JetBrains Mono", "Fira Code", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-xs: 11px;--font-sm: 12px;--font-base: 14px;--font-md: 16px;--font-lg: 18px;--font-xl: 20px;--font-2xl: 24px;--font-3xl: 32px;--line-height-tight: 1.2;--line-height-snug: 1.4;--line-height-relaxed: 1.65;--letter-spacing-tight: -.01em;--letter-spacing-wide: .08em;--spacing-xxs: .125rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--spacing-3xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 1px 0 rgb(0 0 0 / .03);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-primary: 0 4px 12px rgba(37, 99, 235, .15);--shadow-success: 0 4px 12px rgba(16, 185, 129, .15);--shadow-warning: 0 4px 12px rgba(245, 158, 11, .15);--shadow-danger: 0 4px 12px rgba(239, 68, 68, .15);--transition: all .3s ease;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-slower: .5s ease;--input-height: 48px;--input-height-sm: 36px;--input-padding: .75rem 1rem;--input-padding-sm: .5rem .75rem;--btn-height: 44px;--btn-height-sm: 36px;--btn-padding: .75rem 1.5rem;--btn-padding-sm: .5rem 1rem;--primary: var(--color-primary);--primary-hover: var(--color-primary-hover);--primary-light: var(--color-primary-bg);--success: var(--color-success);--success-hover: var(--color-success-hover);--success-light: var(--color-success-bg);--danger: var(--color-danger);--danger-hover: var(--color-danger-hover);--danger-light: var(--color-danger-bg);--warning: var(--color-warning);--warning-hover: var(--color-warning-hover);--warning-light: var(--color-warning-bg);--warning-bg: var(--color-warning-bg);--warning-border: var(--color-warning-border);--warning-text: var(--color-warning-text);--info: var(--color-info);--info-rgb: var(--color-info-rgb);--info-light: var(--color-info-bg);--info-text: var(--color-info-text);--error: var(--color-danger)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%}body{font-family:var(--font-family-sans);font-size:var(--font-base);line-height:var(--line-height-snug);color:var(--gray-900);background:var(--gray-50);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;margin:0}body,button,input,select,textarea{font-family:var(--font-family-sans);font-weight:var(--font-weight-regular);color:inherit}input,textarea,select,button{font-family:inherit}textarea{resize:vertical}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-sans);color:var(--gray-900);margin:0 0 .5rem;line-height:var(--line-height-tight);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-3xl)}h2{font-size:var(--font-2xl)}h3{font-size:var(--font-xl)}h4{font-size:var(--font-lg)}h5{font-size:var(--font-md)}h6{font-size:var(--font-base)}p{margin:0 0 .75rem;line-height:var(--line-height-relaxed);color:var(--gray-700)}small,.text-xs{font-size:var(--font-xs);line-height:var(--line-height-snug)}.heading{font-family:var(--font-family-sans);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);margin:0;color:var(--gray-900);line-height:var(--line-height-tight)}.heading--xl{font-size:var(--font-2xl)}.heading--lg{font-size:var(--font-xl)}.heading--md{font-size:var(--font-lg)}.heading--sm{font-size:var(--font-md)}.heading--xs{font-size:var(--font-base)}.body-text{font-size:var(--font-base);line-height:var(--line-height-relaxed);color:var(--gray-800);margin:0}.text-caption{font-size:var(--font-sm);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--gray-500);font-weight:var(--font-weight-semibold)}.font-sans{font-family:var(--font-family-sans)}.font-serif{font-family:var(--font-family-serif)}.font-mono{font-family:var(--font-family-mono)}code,pre{font-family:var(--font-family-mono);background:var(--gray-100);border-radius:var(--radius-sm);padding:.15rem .4rem;font-size:var(--font-sm)}strong{font-weight:var(--font-weight-semibold);color:var(--gray-900)}a{color:var(--color-primary);text-decoration:none;transition:var(--transition)}a:not(.btn):hover{color:var(--primary-hover);text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);height:var(--btn-height);padding:var(--btn-padding);border:none;border-radius:10px;font-size:var(--font-base);font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;white-space:nowrap;outline:none;position:relative;overflow:hidden;letter-spacing:.01em}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn:hover:not(:disabled){transform:translateY(-1px) scale(1.02)}.btn:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-primary{background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);color:#fff;box-shadow:0 4px 12px #2563eb40;border:1px solid rgba(255,255,255,.1)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%);box-shadow:0 8px 20px #2563eb59}.btn-primary:active:not(:disabled){box-shadow:0 2px 8px #2563eb4d}.btn-secondary{background:white;color:var(--gray-700);border:1px solid var(--gray-200);box-shadow:none;text-decoration:none}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300);color:var(--gray-800);box-shadow:none;text-decoration:none}.btn-secondary:active:not(:disabled){background:var(--gray-100);border-color:var(--gray-400)}.btn-success{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;box-shadow:0 4px 12px #10b98140}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669 0%,#047857 100%);box-shadow:0 8px 20px #10b98159}.btn-danger{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:#fff;box-shadow:0 4px 12px #ef444440}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);box-shadow:0 8px 20px #ef444459}.btn-danger:active:not(:disabled){transform:scale(.97)}.btn-danger-outline{background:white;color:var(--danger);border:2px solid var(--danger);box-shadow:0 2px 4px #ef44441a}.btn-danger-outline:hover:not(:disabled){background:var(--danger-light);color:var(--danger-hover);border-color:var(--danger-hover);box-shadow:0 4px 8px #ef444426}.btn-warning{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:#fff;box-shadow:0 4px 12px #f59e0b40}.btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#d97706 0%,#b45309 100%);box-shadow:0 8px 20px #f59e0b59}.btn-ghost{background:transparent;color:var(--gray-600);border:1px solid transparent;box-shadow:none;transition:all .2s ease}.btn-ghost:hover:not(:disabled),.btn-ghost:focus-visible{background:var(--gray-50);color:var(--gray-700);border-color:var(--gray-200)}.btn-ghost:active:not(:disabled){background:var(--gray-100)}.btn-outline{background:white;border:2px solid var(--primary);color:var(--primary);box-shadow:0 2px 4px #2563eb1a}.btn-outline:hover:not(:disabled){background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);color:#fff;box-shadow:0 4px 12px #2563eb40}.btn-link{background:transparent;color:var(--primary);border:none;box-shadow:none;text-decoration:none}.btn-link:hover:not(:disabled){color:var(--primary-hover);text-decoration:none;transform:none}.btn-small{height:var(--btn-height-sm);padding:var(--btn-padding-sm);font-size:var(--font-sm);gap:var(--spacing-xs);border-radius:8px}.btn-large{height:52px;padding:1rem 2rem;font-size:var(--font-md);border-radius:12px}.btn-icon-only{width:var(--btn-height);height:var(--btn-height);padding:0;border-radius:10px}.btn-icon-only.btn-small{width:var(--btn-height-sm);height:var(--btn-height-sm);border-radius:8px}.btn-group{display:inline-flex;gap:var(--spacing-sm)}.btn-group .btn{flex:1}.btn .icon{margin-right:0;font-size:1.125em;display:inline-flex;align-items:center;justify-content:center}.btn .icon svg{width:1em;height:1em}.btn-loading{position:relative;color:transparent;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite;color:#fff}.btn-full-width{width:100%;display:flex}.crm-btn-edit{background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);color:#fff;box-shadow:0 2px 8px #2563eb33}.crm-btn-edit:hover:not(:disabled){box-shadow:0 4px 12px #2563eb4d}.crm-btn-cancel{background:white;color:var(--gray-700);border:2px solid var(--gray-200)}.crm-btn-cancel:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300)}.crm-btn-delete{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:#fff;box-shadow:0 2px 8px #ef444433}.crm-btn-delete:hover:not(:disabled){box-shadow:0 4px 12px #ef44444d}.btn:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}.btn-danger:focus-visible{outline-color:#ef44444d}.btn-success:focus-visible{outline-color:#10b9814d}@media (max-width: 640px){.btn{min-height:48px;padding:.875rem 1.25rem}.btn-small{min-height:40px;padding:.625rem 1rem}.btn-large{min-height:56px;padding:1.125rem 2rem}}.field{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field--full{grid-column:1 / -1}.field__label,.form-label{display:block;font-size:var(--font-sm);font-weight:600;color:var(--gray-700);margin-bottom:var(--spacing-sm);letter-spacing:.01em}.field__label label{font-size:var(--font-sm);font-weight:600;color:var(--gray-700);display:flex;align-items:baseline;gap:var(--spacing-xs)}.field__required{color:var(--danger);font-size:1rem;font-weight:700}.field__control input,.field__control textarea,.field__control select,input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],textarea,select{width:100%;max-width:100%;height:var(--input-height);padding:var(--input-padding);font-size:var(--font-base);font-family:inherit;color:var(--gray-900);background:white;border:2px solid var(--gray-200);border-radius:var(--radius-lg);transition:all .2s ease;outline:none;box-sizing:border-box;line-height:1.5}.field__control input:focus,.field__control textarea:focus,.field__control select:focus,input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2563eb1a;background:#ffffff}.field__control input:hover:not(:focus),.field__control textarea:hover:not(:focus),.field__control select:hover:not(:focus),input:hover:not(:focus),textarea:hover:not(:focus),select:hover:not(:focus){border-color:var(--gray-300)}.field__control input::placeholder,.field__control textarea::placeholder,input::placeholder,textarea::placeholder{color:var(--gray-400);font-weight:400}.field__control input:disabled,.field__control textarea:disabled,.field__control select:disabled,input:disabled,textarea:disabled,select:disabled{background:var(--gray-50);border-color:var(--gray-200);color:var(--gray-500);cursor:not-allowed}.field__control textarea,textarea{height:auto;min-height:120px;resize:vertical;line-height:1.6;overflow-wrap:break-word;word-wrap:break-word;padding:1rem}.field__control select,select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#ffffff 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='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 1rem center / 12px;padding-right:3rem;cursor:pointer;font-weight:500}.field__control select:focus,select:focus{background:#ffffff 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='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 1rem center / 12px}.field__control select::-ms-expand,select::-ms-expand{display:none}.field--checkbox{flex-direction:row;align-items:flex-start;gap:var(--spacing-md)}.field--checkbox input[type=checkbox]{width:22px;height:22px;margin-top:.125rem;cursor:pointer;accent-color:var(--primary);flex-shrink:0;border-radius:6px}.field__checkbox-label{flex:1;font-size:var(--font-base);line-height:1.6;color:var(--gray-700);cursor:pointer;font-weight:400}.field--radio{flex-direction:row;align-items:center;gap:var(--spacing-md)}input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary)}.field--error .field__control input,.field--error .field__control textarea,.field--error .field__control select,input.error,textarea.error,select.error{border-color:var(--danger);background:#fef2f2}.field--error .field__control input:focus,.field--error .field__control textarea:focus,.field--error .field__control select:focus,input.error:focus,textarea.error:focus,select.error:focus{box-shadow:0 0 0 4px #ef44441a;border-color:var(--danger)}.field__error-message{font-size:var(--font-sm);color:var(--danger);font-weight:600;display:flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.field__error-message:before{content:"\26a0";font-size:1rem}.field--success .field__control input,.field--success .field__control textarea,.field--success .field__control select,input.success,textarea.success,select.success{border-color:var(--success);background:#f0fdf4}.field--success .field__control input:focus,.field--success .field__control textarea:focus,.field--success .field__control select:focus{box-shadow:0 0 0 4px #10b9811a}.field__hint,.form-helper{display:block;font-size:var(--font-sm);color:var(--gray-600);line-height:1.5;margin-top:var(--spacing-xs);font-weight:400}.input-warning{background:var(--warning-light);border:2px solid var(--warning);color:var(--warning-text);font-weight:600}.input-warning:focus{box-shadow:0 0 0 4px #f59e0b1a}.field--display .field__display-value{padding:1rem 1.25rem;background:var(--gray-50);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-weight:600;color:var(--primary);min-height:48px;display:flex;align-items:center;font-size:var(--font-base)}.input-group{display:flex;gap:var(--spacing-sm);align-items:center}.input-group input{flex:1}.input-group-prepend,.input-group-append{padding:.75rem 1rem;background:var(--gray-100);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--font-base);font-weight:600;color:var(--gray-700);white-space:nowrap}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.form-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.form-row>*{flex:1;min-width:200px}@media (max-width: 640px){.field__control input,.field__control textarea,.field__control select,input,textarea,select{font-size:16px;padding:.875rem 1rem;height:52px}.field__control textarea,textarea{min-height:140px;padding:1rem}.form-row{flex-direction:column}.form-row>*{min-width:100%}}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-sm);font-weight:500;transition:transform .15s ease,filter .15s ease}.status-badge:active{animation:press .2s ease}.status-badge--new{background:var(--status-new);color:#78350f}.status-badge--in-review{background:var(--status-in-review);color:#1e3a8a}.status-badge--awaiting-consultation{background:var(--status-awaiting-consultation);color:#4c1d95}.status-badge--conservative-treatment{background:var(--status-conservative-treatment);color:#365314}.status-badge--surgery-planned{background:var(--status-surgery-planned);color:#fff}.status-badge--nszu-queue{background:var(--status-nszu-queue);color:#fff}.status-badge--pre-surgery-prep{background:var(--status-pre-surgery-prep);color:#fff}.status-badge--post-surgery-hospital{background:var(--status-post-surgery-hospital);color:#fff}.status-badge--post-surgery-followup{background:var(--status-post-surgery-followup);color:#365314}.status-badge--rehabilitation{background:var(--status-rehabilitation);color:#fff}.status-badge--completed{background:var(--status-completed);color:#fff}.status-badge--cancelled{background:var(--status-cancelled);color:#fff}.status-badge--in-treatment{background:var(--status-rehabilitation);color:#fff}.status-badge--accepted{background:var(--success);color:#fff}.status-badge--rejected{background:var(--danger);color:#fff}.status-badge--duplicate,.status-badge--secondary{background:var(--gray-200);color:var(--gray-700)}.status-badge--info{background:var(--status-in-review);color:#1e3a8a}.status-badge--warning{background:var(--status-new);color:#78350f}.risk-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--font-lg);cursor:help}.risk-badge--allergy{color:var(--risk-allergy)}.risk-badge--anticoagulants{color:var(--risk-anticoagulants)}.crm-table-container{background:white;border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:0 1px 3px #0000000d;overflow-x:auto;overflow-y:visible;max-width:100%}.crm-table{width:100%;border-collapse:separate;border-spacing:0}.crm-table thead{background:var(--gray-50);position:sticky;top:0;z-index:10}.crm-table th{padding:var(--spacing-md) var(--spacing-lg);text-align:left;font-weight:600;font-size:var(--font-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--gray-700);border-bottom:2px solid var(--gray-200);background:var(--gray-50)}.crm-table th:first-child{border-top-left-radius:var(--radius-lg)}.crm-table th:last-child{border-top-right-radius:var(--radius-lg)}.crm-table td{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--gray-100);font-size:var(--font-base);color:var(--gray-900);vertical-align:middle}.crm-table__empty{text-align:center;padding:var(--spacing-3xl);color:var(--gray-500);font-size:var(--font-base);font-weight:500}.crm-table tbody tr{transition:all .2s ease;background:white}.crm-table tbody tr:hover{background:var(--gray-50);box-shadow:0 1px 3px #0000000d}.crm-table tbody tr:active{background:var(--gray-100)}.crm-table tbody tr.is-new{background:#fef3c7}.crm-table tbody tr.is-new:hover{background:#fde68a;box-shadow:0 2px 6px #f59e0b26}.crm-table tbody tr.is-selected{background:var(--primary-light);border-left:3px solid var(--primary)}.crm-actions{display:flex;gap:var(--spacing-sm);align-items:center;justify-content:flex-start}.crm-action-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:8px;border:1px solid var(--gray-200);background:white;color:var(--gray-600);cursor:pointer;transition:all .2s ease;font-size:var(--font-base)}.crm-action-btn:hover{background:var(--gray-100);color:var(--primary);border-color:var(--primary);transform:scale(1.05)}.crm-action-btn:active{transform:scale(.95)}.crm-action-btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.crm-action-btn--primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.crm-action-btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.crm-action-btn--danger:hover{background:var(--danger-hover);border-color:var(--danger-hover)}.crm-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;padding-right:2rem}.crm-table th.sortable:hover{color:var(--primary);background:var(--gray-100)}.crm-table th.sortable:after{content:"\21c5";position:absolute;right:var(--spacing-md);opacity:.4;font-size:.875rem}.crm-table th.sortable.sort-asc:after{content:"\2191";opacity:1;color:var(--primary)}.crm-table th.sortable.sort-desc:after{content:"\2193";opacity:1;color:var(--primary)}.change-log-table{width:100%;border-collapse:separate;border-spacing:0}.change-log-table td{vertical-align:top;padding:var(--spacing-md);border-bottom:1px solid var(--gray-100);font-size:var(--font-sm)}.change-log-table tr:last-child td{border-bottom:none}.patient-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);align-items:center}.patient-tag-chip{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;color:var(--gray-700);background:var(--gray-200);line-height:1.2;letter-spacing:.02em;transition:all .2s ease}.patient-tag-chip:hover{background:var(--gray-300);transform:scale(1.05)}.patient-tag-empty{font-size:var(--font-sm);color:var(--gray-400);font-style:italic}.table-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;letter-spacing:.03em;white-space:nowrap}.table-badge--primary{background:var(--primary-light);color:var(--primary)}.table-badge--success{background:var(--success-light);color:var(--success)}.table-badge--warning{background:var(--warning-light);color:var(--warning)}.table-badge--danger{background:var(--danger-light);color:var(--danger)}.table-badge--gray{background:var(--gray-200);color:var(--gray-700)}.table-cell-primary{font-weight:600;color:var(--gray-900)}.table-cell-secondary{font-size:var(--font-sm);color:var(--gray-600)}.table-cell-link{color:var(--primary);text-decoration:none;font-weight:500;transition:color .2s ease}.table-cell-link:hover{color:var(--primary-hover);text-decoration:none}.crm-table--loading{opacity:.6;pointer-events:none;position:relative}.crm-table--loading:after{content:"\417\430\432\430\43d\442\430\436\435\43d\43d\44f...";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-weight:600;color:var(--gray-700);z-index:100}.crm-table--compact th,.crm-table--compact td{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-sm)}@media (max-width: 768px){.crm-table-container{padding:var(--spacing-md);border-radius:var(--radius-lg)}.crm-table th,.crm-table td{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-sm)}.crm-table th{position:static}.crm-actions{flex-wrap:nowrap;gap:var(--spacing-xs)}.crm-action-btn{width:32px;height:32px;font-size:var(--font-sm)}}@media (max-width: 640px){.crm-table--responsive{border:0}.crm-table--responsive thead{display:none}.crm-table--responsive tbody tr{display:block;margin-bottom:var(--spacing-md);border:1px solid var(--gray-200);border-radius:var(--radius-lg);overflow:hidden}.crm-table--responsive tbody td{display:block;text-align:right;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--gray-100)}.crm-table--responsive tbody td:last-child{border-bottom:none}.crm-table--responsive tbody td:before{content:attr(data-label);float:left;font-weight:600;color:var(--gray-700);text-transform:uppercase;font-size:var(--font-xs);letter-spacing:.05em}}.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle;transition:transform var(--transition-base),color var(--transition-base);color:currentColor}.icon--sm{width:14px;height:14px}.icon--md{width:18px;height:18px}.icon--lg{width:24px;height:24px}.icon--xl{width:32px;height:32px}.icon--primary{color:var(--primary)}.icon--danger{color:var(--danger)}.icon--warning{color:var(--warning)}.icon--success{color:var(--success)}.icon--muted{color:var(--gray-500)}.icon--spin{animation:icon-spin 1s linear infinite}.icon--pulse{animation:icon-pulse 2s ease-in-out infinite}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes icon-pulse{0%,to{opacity:1}50%{opacity:.5}}.btn .icon{margin-right:var(--spacing-xs)}.btn .icon:last-child:first-child{margin-right:0}.text-with-icon{display:inline-flex;align-items:center;gap:var(--spacing-xs)}button:hover .icon--interactive,a:hover .icon--interactive,.btn:hover .icon{transform:scale(1.1)}button:active .icon,.btn:active .icon{transform:scale(.95)}.icon-badge{position:relative;display:inline-flex}.icon-badge__count{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;background:var(--danger);color:#fff;border-radius:var(--radius-full);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid white}.icon-circle{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);padding:var(--spacing-xs)}.icon-circle--sm{width:28px;height:28px}.icon-circle--md{width:36px;height:36px}.icon-circle--lg{width:44px;height:44px}.icon-circle--primary{background:rgba(37,99,235,.1);color:var(--primary)}.icon-circle--success{background:rgba(16,185,129,.1);color:var(--success)}.icon-circle--warning{background:rgba(245,158,11,.1);color:var(--warning)}.icon-circle--danger{background:rgba(239,68,68,.1);color:var(--danger)}.icon--disabled{opacity:.4;cursor:not-allowed}.icon--loading{animation:icon-spin 1s linear infinite}.icon[aria-hidden=true]{pointer-events:none}.crm-layout{display:flex;min-height:100vh;width:100%;min-width:0}.crm-body--no-scroll{overflow:hidden}.crm-sidebar{width:280px;background:white;border-right:1px solid var(--gray-200);padding:var(--spacing-lg);display:flex;flex-direction:column;overflow-y:auto;transition:width .22s ease,padding .22s ease}.crm-sidebar.is-collapsed{width:56px;padding:var(--spacing-lg) var(--spacing-xs)}.crm-sidebar__logo{font-size:var(--font-xl);font-weight:600;color:var(--primary);margin-bottom:var(--spacing-xl);padding-left:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap}.crm-sidebar__logo-icon{width:29.75px;height:29.75px;flex-shrink:0;overflow:visible;display:block}.crm-sidebar.is-collapsed .crm-sidebar__logo-icon{width:35.7px;height:35.7px}.crm-sidebar__logo-text{transition:opacity .15s ease,width .22s ease}.crm-sidebar.is-collapsed .crm-sidebar__logo{overflow:hidden;margin-bottom:var(--spacing-md);padding-left:0;justify-content:center}.crm-sidebar.is-collapsed .crm-sidebar__logo-text{opacity:0;width:0;overflow:hidden}.crm-sidebar__collapse-btn,.crm-sidebar__expand-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);border:1px solid var(--gray-200);background:transparent;color:var(--gray-400);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.crm-sidebar__collapse-btn:hover,.crm-sidebar__expand-btn:hover{background:var(--gray-100);color:var(--gray-700);border-color:var(--gray-300)}.crm-sidebar__collapse-btn{margin-left:auto}.crm-sidebar__expand-btn{margin:0 auto var(--spacing-md);background:rgba(37,99,235,.07);border-color:#2563eb40;color:var(--primary)}.crm-sidebar__expand-btn:hover{background:rgba(37,99,235,.14);border-color:#2563eb66;color:var(--primary)}.crm-sidebar__nav-wrapper{flex:0 0 auto;margin-bottom:var(--spacing-lg)}.crm-sidebar__nav-group{margin-bottom:var(--spacing-lg)}.crm-sidebar__nav-group:last-child{margin-bottom:0}.crm-sidebar__nav-group-title{display:flex;align-items:center;font-size:var(--font-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);padding:var(--spacing-xs) var(--spacing-md);margin:0 0 var(--spacing-xs) 0;overflow:hidden;white-space:nowrap;transition:opacity .15s,height .22s}.crm-sidebar__nav-group-title-text{flex:1}.crm-sidebar.is-collapsed .crm-sidebar__nav-group-title{opacity:0;height:0;margin:0;padding:0;pointer-events:none}.crm-sidebar__nav{list-style:none;padding:0;margin:0;max-height:1000px;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:1}.crm-sidebar__nav.is-collapsed,.crm-sidebar__nav[aria-hidden=true]{max-height:0;opacity:0}.crm-sidebar__nav-item{margin-bottom:var(--spacing-xs)}.crm-sidebar__nav-item:last-child{margin-bottom:0}.crm-sidebar__nav-link{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);color:var(--gray-700);text-decoration:none;border-radius:var(--radius-md);transition:all .2s;font-size:var(--font-base);white-space:nowrap;overflow:hidden}.crm-sidebar__nav-link:hover{background:var(--gray-100);color:var(--primary)}.crm-sidebar__nav-link.active{background:var(--primary);color:#fff}.crm-sidebar__nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.crm-sidebar__nav-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .15s ease}.crm-sidebar.is-collapsed .crm-sidebar__nav-link{justify-content:center;padding:var(--spacing-sm)}.crm-sidebar.is-collapsed .crm-sidebar__nav-text{opacity:0;width:0;overflow:hidden}.crm-sidebar__nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 var(--spacing-xs);background:var(--primary);color:#fff;font-size:.625rem;font-weight:700;border-radius:999px;line-height:1;flex-shrink:0}.crm-sidebar__nav-link.active .crm-sidebar__nav-badge{background:white;color:var(--primary)}.crm-sidebar__footer{border-top:1px solid var(--gray-200);padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm);margin-top:0;display:flex;flex-direction:column;gap:4px}.crm-sidebar__user{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px var(--spacing-md);border-radius:var(--radius-md);font-weight:600;color:var(--gray-700);font-size:var(--font-sm);transition:background .15s}.crm-sidebar__user:hover{background:var(--gray-100)}.crm-sidebar__user-avatar{display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;background:rgba(37,99,235,.12);color:var(--primary);font-size:var(--font-lg);font-weight:700;flex-shrink:0}.crm-sidebar__user-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .15s ease}.crm-sidebar.is-collapsed .crm-sidebar__user{justify-content:center;padding:6px}.crm-sidebar.is-collapsed .crm-sidebar__user-name{opacity:0;width:0;overflow:hidden}.crm-sidebar.is-collapsed .sidebar-actions{display:none}.crm-main{flex:1;min-width:0;width:100%;padding:var(--spacing-xl);max-width:none;display:flex;flex-direction:column;gap:var(--spacing-md);overflow:visible;transition:padding .22s ease}.crm-main__topbar{display:none}.crm-main__content{flex:1;min-width:0;width:100%;overflow:visible}.crm-sidebar__overlay{display:none}@media (max-width: 900px){.crm-layout{flex-direction:column}.crm-sidebar{position:fixed;top:0;left:0;height:100%;width:280px;z-index:20;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-md);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.crm-sidebar__footer{padding-bottom:var(--spacing-xl)}.crm-sidebar.is-open{transform:translate(0)}.crm-main__topbar{position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 0 var(--spacing-sm)}.topbar-title{position:absolute;left:50%;transform:translate(-50%);pointer-events:none}.crm-main__menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-md);color:var(--gray-600);cursor:pointer;padding:0;transition:background .15s,color .15s}.crm-main__menu-toggle:hover{background:var(--gray-100);color:var(--gray-800)}.crm-sidebar__overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:15;touch-action:none;overscroll-behavior:none}.crm-main{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 640px){.crm-sidebar{width:260px}.crm-main{padding:var(--spacing-md)}}.crm-filters{background:white;border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.crm-filters__toggle{display:none}.crm-filters__row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.crm-filters__row:last-child{margin-bottom:0}.crm-filters__row--search{align-items:flex-end}.crm-filters__group{flex:1;display:flex;flex-direction:column}.crm-filters__group--full{width:100%}.crm-filters__label{font-size:var(--font-sm);font-weight:600;color:var(--gray-600);margin-bottom:var(--spacing-xs)}.crm-filters__input{width:100%;height:var(--input-height-sm);padding:var(--input-padding-sm);font-size:var(--font-base);font-family:inherit;color:var(--gray-900);background:white;border:1px solid var(--gray-300);border-radius:var(--radius-md);outline:none;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.crm-filters__select{width:100%;height:var(--input-height-sm);padding:var(--input-padding-sm);padding-right:2.5rem;font-size:var(--font-base);font-family:inherit;color:var(--gray-900);background:white 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='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right .75rem center / 12px;border:1px solid var(--gray-300);border-radius:var(--radius-md);outline:none;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.crm-filters__select::-ms-expand{display:none}.crm-filters__input::placeholder{color:var(--gray-400)}.crm-filters__input:hover,.crm-filters__select:hover{border-color:var(--gray-400)}.crm-filters__input:focus,.crm-filters__select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb1f}.crm-filters__select:focus{background:white 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='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right .75rem center / 12px}.crm-filters__help{margin-top:var(--spacing-xs);font-size:var(--font-xs);color:var(--gray-500)}.tag-filter-panel{border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-sm);background:var(--gray-50)}.tag-filter-panel__chips{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag-filter-chip{display:inline-flex;align-items:center;gap:var(--spacing-xxs);padding:.25rem .75rem;border-radius:var(--radius-full);border:1px solid var(--gray-300);background:white;color:var(--gray-800);font-size:var(--font-xs);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag-filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.tag-filter-chip:active{animation:press .2s ease}.tag-filter-chip--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.tag-filter-chip--active:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.tag-filter-chip__dot{width:8px;height:8px;border-radius:50%;background-color:var(--gray-400)}.tag-filter-chip--active .tag-filter-chip__dot{background-color:#ffffff80}.crm-filters__form>.crm-filters__row:last-child{align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-sm);margin-top:var(--spacing-xs)}.crm-filters__summary{margin-left:auto;color:var(--gray-600);font-size:var(--font-sm);display:flex;align-items:center;gap:var(--spacing-xs)}@media (max-width: 640px){.crm-filters__row{flex-direction:column;gap:var(--spacing-sm);margin-bottom:0}.crm-filters__toggle{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--btn-padding-sm);background:var(--gray-200);border:none;border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:500;color:var(--gray-700)}.crm-filters__group{width:100%}.crm-filters__input,.crm-filters__select{height:var(--input-height);padding:var(--input-padding);font-size:16px}}.page-actions{margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm);justify-content:space-between}.page-actions__back{flex:1}.page-actions__back a,.page-actions__back .btn{text-decoration:none;transition:all .2s ease}.page-actions__back a:hover,.page-actions__back .btn:hover{text-decoration:none;background:var(--gray-100);border-color:var(--gray-300);transform:translate(-2px)}@media (max-width: 768px){.page-actions{gap:var(--spacing-xs)}}.patient-card{background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.patient-card__header{background:linear-gradient(135deg,var(--primary) 0%,#1e40af 100%);color:#fff;padding:var(--spacing-xl);position:relative}.patient-card__overflow-menu{position:absolute;top:0;left:1.6rem;z-index:2}.patient-card__overflow-menu .btn-action-menu{background:transparent;border:none;border-radius:999px;width:36px;height:26px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.6rem;line-height:1;color:#fff;text-shadow:0 0 4px rgba(0,0,0,.3);padding:0;transition:opacity .2s ease,text-shadow .2s ease;opacity:.85}.patient-card__overflow-menu .btn-action-menu:hover{opacity:1;text-shadow:0 0 6px rgba(0,0,0,.4)}.patient-card__overflow-content{position:absolute;top:calc(100% + .25rem);left:0;background:white;border:1px solid var(--gray-200);border-radius:8px;box-shadow:0 12px 24px #0f172a2e;padding:.25rem 0;min-width:200px;overflow:hidden;z-index:5}.patient-card__header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.patient-card__title-group{flex:1}.patient-card__header-actions{flex-shrink:0}.patient-card__name{font-size:clamp(26px,5vw,32px);font-weight:700;margin:0 0 var(--spacing-sm) 0;line-height:1.2;letter-spacing:-.5px;color:#fff;text-shadow:0 1px 2px rgba(15,23,42,.2)}.patient-card__vital-info{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xs);flex-wrap:wrap}.patient-card__age{font-size:var(--font-lg);font-weight:600;background:rgba(255,255,255,.2);padding:.375rem .875rem;border-radius:var(--radius-lg);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.patient-card__birth-date{font-size:var(--font-md);opacity:.9;font-weight:500}.patient-card__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);background:rgba(255,255,255,.15);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-top:var(--spacing-md)}.patient-card__meta-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.patient-card__meta-item{display:flex;flex-direction:column;gap:var(--spacing-xxs)}.patient-card__meta-label{font-size:var(--font-xs);font-weight:600;text-transform:uppercase;opacity:.9;letter-spacing:.5px}.patient-card__meta-value{font-size:var(--font-md);font-weight:500}.patient-card__meta-author{display:inline-block;margin-left:var(--spacing-xs);font-size:var(--font-sm);font-weight:400;opacity:.85;font-style:italic}.patient-card__meta-author:before{content:"\2022";margin-right:var(--spacing-xs)}.status-select{height:32px;padding:4px 32px 4px 12px;border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:var(--font-sm);font-weight:600;cursor:pointer;transition:all .2s ease;background:rgba(255,255,255,.15);color:#fff;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}.status-select::-ms-expand{display:none}.status-select:hover:not(:disabled){background:rgba(255,255,255,.25);border-color:#ffffff80}.status-select:focus{outline:none;border-color:#fff;box-shadow:0 0 0 3px #fff3}.status-select option{background:white;color:var(--gray-900);padding:8px 12px}.status-select.status-badge--new{background:rgba(251,191,36,.3);border-color:#fbbf2480}.status-select.status-badge--consultation_scheduled{background:rgba(147,197,253,.3);border-color:#93c5fd80}.status-select.status-badge--consultation_completed{background:rgba(196,181,253,.3);border-color:#c4b5fd80}.status-select.status-badge--hospitalized{background:rgba(134,239,172,.3);border-color:#86efac80}.status-select.status-badge--operated{background:rgba(96,165,250,.3);border-color:#60a5fa80}.status-select.status-badge--discharged{background:rgba(34,197,94,.3);border-color:#22c55e80}.status-select.status-badge--cancelled{background:rgba(248,113,113,.3);border-color:#f8717180}@media (max-width: 640px){.status-select{width:100%;max-width:none}.patient-card__meta{grid-template-columns:1fr}.patient-card__meta-row{flex-direction:column;align-items:stretch}}.patient-header__tags-row{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:rgba(255,255,255,.1);border-radius:var(--radius-md);flex-wrap:wrap}.patient-header__tags-action{flex-shrink:0}.patient-header__tags-action--tags{order:2}.patient-header__tags-action--access{order:3;margin-left:auto}.patient-header__tags-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:500;color:#fff;cursor:pointer;transition:all .2s ease}.patient-header__tags-button:hover,.patient-header__tags-button.btn-ghost:hover:not(:disabled){background:rgba(255,255,255,.22);border-color:#ffffffb3;color:#fff;transform:translateY(-1px);box-shadow:none}.patient-header__tags-button--access{display:inline-flex;align-items:center}.patient-header__tags-button--active{border-color:#fff9;background:rgba(255,255,255,.18)}.patient-header__tags-button--active:hover,.patient-header__tags-button--active.btn-ghost:hover:not(:disabled){background:rgba(255,255,255,.28);border-color:#ffffffc7;color:#fff;transform:translateY(-1px);box-shadow:none}.patient-header__tags-mode{font-size:var(--font-xs);margin-left:.4rem;color:#ffffffbf}.patient-header__access-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .35rem;margin-left:.35rem;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.65);border-radius:999px;color:#fff;font-size:10px;font-weight:700}.patient-header__tags-button:hover .patient-header__access-badge,.patient-header__tags-button.btn-ghost:hover:not(:disabled) .patient-header__access-badge{background:rgba(255,255,255,.26);border-color:#fffc}.patient-header__tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);order:1;align-items:center}.patient-header__tag-chip{display:inline-block;padding:.25rem .75rem;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;letter-spacing:.3px}.patient-header__tag-empty{font-size:var(--font-sm);color:#ffffffb3;font-style:italic;order:1}.patient-card__warnings,.patient-card__important,.patient-card__coordinator{margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);display:flex;gap:var(--spacing-md);align-items:flex-start;font-weight:500;border-left:4px solid}.patient-card__warnings{background:#fff4e5;border-color:#f59e0b;color:#92400e}.patient-card__warnings strong{color:#78350f}.patient-card__important{background:#f8fafc;border-color:#0f766e;color:#0f172a}.patient-card__important strong{color:#0f172a}.patient-card__important-text,.patient-card__coordinator-text{flex:1;margin:0;font-weight:400}.patient-card__important-link,.patient-card__coordinator-link{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-md);background:white;border:1px solid currentColor;border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:600;color:inherit;cursor:pointer;transition:all var(--transition-base)}.patient-card__important-link:hover,.patient-card__coordinator-link:hover{background:var(--primary);border-color:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #2563eb33}.patient-card__coordinator{background:#eef2ff;border-color:#4f46e5;color:#1e1b4b}.patient-card__coordinator strong{color:#312e81}.critical-info{background:#f9fafb;padding:var(--spacing-2xl) var(--spacing-xl);display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);border-bottom:1px solid var(--gray-200)}.critical-info__heading{font-size:var(--font-xl);font-weight:700;color:var(--gray-900);margin:0 0 var(--spacing-lg) 0;letter-spacing:-.3px;display:flex;align-items:center;gap:var(--spacing-sm)}.critical-info__item{padding:var(--spacing-md);background:white;border-radius:var(--radius-md);border:2px solid var(--gray-200);margin-bottom:var(--spacing-md);transition:all var(--transition-base)}.critical-info__item:hover{box-shadow:var(--shadow-sm)}.critical-info__item--allergy{border-color:var(--danger);background:linear-gradient(135deg,#ffffff 0%,#fef2f2 100%)}.critical-info__item--medication{border-color:var(--warning);background:linear-gradient(135deg,#ffffff 0%,#fffbeb 100%)}.critical-info__item--chronic{border-color:#f59e0b;background:linear-gradient(135deg,#ffffff 0%,#fef3c7 100%)}.critical-info__label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-xs);font-weight:700;text-transform:uppercase;color:var(--gray-700);margin-bottom:var(--spacing-xs);letter-spacing:.5px}.critical-info__value{font-size:var(--font-base);font-weight:500;color:var(--gray-900);line-height:1.6}.diagnosis-box{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagnosis-box__item{display:flex;flex-direction:row;gap:var(--spacing-md);padding:var(--spacing-md);background:white;border-radius:var(--radius-md);border:2px solid var(--gray-200);transition:all var(--transition-base)}.diagnosis-box__item:hover{border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.diagnosis-box__item--confirmed{background:#f0fdf4;border-color:#10b981}.diagnosis-box__item--referral{border-color:var(--primary)}.diagnosis-box__left{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px;flex-shrink:0}.diagnosis-box__right{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.diagnosis-box__label{font-size:var(--font-xs);font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px;line-height:1.4}.diagnosis-box__note{font-size:var(--font-xs);color:var(--gray-500);text-transform:none;font-weight:400;line-height:1.5}.diagnosis-box__value{font-size:var(--font-base);font-weight:500;color:var(--gray-900);line-height:1.6}.diagnosis-box__value--missing{color:var(--gray-500);font-style:italic}.diagnosis-box__item--confirmed .diagnosis-box__label,.diagnosis-box__item--confirmed .diagnosis-box__value{color:#15803d}.diagnosis-badge{display:inline-flex;align-self:flex-start;padding:.25rem .625rem;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.diagnosis-badge--confirmed{background:#22c55e;color:#fff}.diagnosis-badge--preliminary{background:#f59e0b;color:#fff}.treatment-box{display:flex;flex-direction:column;gap:var(--spacing-sm)}.treatment-box__item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:white;border-radius:var(--radius-md);border:1px solid var(--gray-200);transition:all var(--transition-base)}.treatment-box__icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--gray-50);border-radius:var(--radius-md)}.treatment-box__item:hover{border-color:var(--gray-300)}.treatment-box__item--highlight{background:#ecfdf5;border-color:#86efac;border-width:2px;font-weight:600}.treatment-box__item--program{background:#fef3c7;border-color:#eab308;border-width:2px;font-weight:600}.treatment-box__label{font-size:var(--font-sm);font-weight:700;color:var(--gray-700);text-transform:uppercase;min-width:120px;flex-shrink:0}.treatment-box__value{font-size:var(--font-base);font-weight:500;color:var(--gray-900);flex:1;line-height:1.6}.treatment-box__note,.treatment-box__meta{display:block;margin-top:var(--spacing-xs)}.treatment-box__note{font-size:var(--font-sm);color:var(--gray-600);font-weight:400}.treatment-box__meta{font-size:var(--font-xs);color:var(--gray-500);font-weight:400}.treatment-box__anchor{color:var(--primary);text-decoration:none;background:none;border:none;padding:0;font:inherit;cursor:pointer;transition:color var(--transition-base)}.treatment-box__anchor:hover{color:var(--primary-hover);text-decoration:none}.treatment-box__days{display:inline-block;margin-left:var(--spacing-sm);color:var(--success);font-weight:700}.patient-card__body{padding:var(--spacing-2xl) var(--spacing-xl)}.patient-card__section{margin-bottom:var(--spacing-3xl);padding:var(--spacing-xl);background:#f9fafb;border-radius:var(--radius-lg);border:1px solid var(--gray-100)}.patient-card__section:nth-child(2n){background:#ffffff}.patient-card__section.section-highlight-missing{background:#fffbeb;border:1px solid #fbbf24;border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-3xl)}.patient-card__body>app-patient-ward-info:last-child .patient-card__section,.patient-card__body>section:last-child{margin-bottom:0}.patient-card__section-title{font-size:var(--font-xl);font-weight:700;color:var(--gray-900);margin-bottom:var(--spacing-md);letter-spacing:-.3px;display:flex;align-items:center;gap:var(--spacing-sm)}.patient-card__section-title--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-base)}.patient-card__section-title--collapsible:hover{color:var(--primary)}.section-missing-badge{display:inline-block;margin-left:auto;padding:.25rem .625rem;background:#fbbf24;color:#78350f;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.section-missing-badge--small{padding:.125rem .5rem;font-size:.6875rem;text-transform:none;letter-spacing:.2px;font-weight:500}.patient-card__section-title-icon{font-size:var(--font-sm);transition:transform var(--transition-base);display:inline-block;min-width:1rem}.patient-card__collapsible-content{animation:slideDown var(--transition-slow) ease-out}.patient-card__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg) var(--spacing-xl)}.patient-card__field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.patient-card__field.full-width,.patient-card__field--operations{grid-column:1 / -1}.patient-card__field-label{font-size:var(--font-xs);font-weight:700;color:var(--gray-700);text-transform:uppercase;letter-spacing:.5px}.patient-card__field-value{font-size:var(--font-md);font-weight:500;color:var(--gray-900);line-height:1.6}.patient-card__field-hint{margin-top:var(--spacing-xs);font-size:var(--font-xs);color:var(--gray-500);font-style:italic}.field-value-with-action{display:flex;align-items:center;gap:var(--spacing-sm)}.field-value-with-action .btn{opacity:0;transition:opacity var(--transition-base)}.field-value-with-action:hover .btn,.field-value-with-action:focus-within .btn{opacity:1}.patient-card--edit-mode .field-value-with-action .btn{opacity:1}.field-edit-input{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field-edit-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.field-edit-actions .btn{flex:1;min-width:100px}.patient-card__info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg) var(--spacing-xl)}.patient-card__info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.patient-card__info-item--full{grid-column:1 / -1}.patient-card__info-label{font-size:var(--font-xs);font-weight:700;color:var(--gray-700);text-transform:uppercase;letter-spacing:.5px}.patient-card__info-value{font-size:var(--font-md);font-weight:500;color:var(--gray-900);line-height:1.6}.field-highlight-warning{color:var(--warning);font-weight:600}.bmi-value{font-weight:700;color:#ea580c}.field-note{display:inline-block;margin-left:var(--spacing-sm);font-size:var(--font-xs);color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em}.patient-card__subheading{margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-lg);font-size:var(--font-lg);font-weight:700;color:var(--gray-800);letter-spacing:-.3px}.anthropometry-grid{margin-top:var(--spacing-md)}.collapsible-section{margin-top:var(--spacing-lg);background:transparent;border:1px solid var(--gray-200);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-base)}.collapsible-section:hover{border-color:var(--gray-300)}.collapsible-toggle{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);border:none;background:var(--gray-50);cursor:pointer;font-size:var(--font-base);font-weight:600;color:var(--gray-700);padding:var(--spacing-md) var(--spacing-lg);transition:all var(--transition-base)}.collapsible-toggle:hover{background:var(--gray-100);color:var(--primary)}.collapsible-icon{font-size:10px;color:var(--primary);font-weight:700;transition:transform var(--transition-base)}.collapsible-content{padding:var(--spacing-lg);background:white;border-top:1px solid var(--gray-200);animation:slideDown var(--transition-slow) ease-out}.program-actions{display:flex;justify-content:flex-start;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--gray-200)}@media (max-width: 768px){.critical-info{grid-template-columns:1fr;gap:var(--spacing-2xl);padding:var(--spacing-xl) var(--spacing-lg)}.patient-card__grid,.patient-card__info-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.patient-card__section{margin-bottom:var(--spacing-2xl)}.patient-card__body{padding:var(--spacing-xl) var(--spacing-lg)}}@media (max-width: 640px){.patient-card{border-radius:0;max-width:100vw;overflow-x:hidden}.patient-card__header{padding:var(--spacing-md)}.patient-card__body{padding:0}.patient-card__header-top{flex-direction:column;gap:var(--spacing-md)}.patient-card__name{font-size:var(--font-2xl);word-break:break-word}.patient-card__vital-info{gap:var(--spacing-sm);flex-wrap:wrap}.patient-card__age{font-size:var(--font-base);padding:.25rem .625rem}.patient-card__meta{grid-template-columns:1fr;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.patient-header__tags-row{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--spacing-sm)}.patient-header__tags-action{width:100%;order:unset}.patient-header__tags-action--tags{order:1}.patient-header__tags{order:2;width:100%;justify-content:flex-start}.patient-header__tag-empty{order:2;width:100%}.patient-header__tags-action--access{order:3;margin-left:0}.patient-header__tags-button{width:100%;justify-content:center}.patient-card__warnings,.patient-card__important,.patient-card__coordinator{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);margin:0;border-radius:0;border-left:none;border-top:3px solid}.patient-card__important-link,.patient-card__coordinator-link{width:100%;text-align:center}.critical-info{padding:var(--spacing-md);border-radius:0}.patient-card__section{margin-bottom:var(--spacing-md);padding:var(--spacing-md);border-radius:0;border-left:none;border-right:none}.diagnosis-box__item,.treatment-box__item{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-md)}.diagnosis-box__left,.treatment-box__left{min-width:auto;width:100%}.diagnosis-box__label,.treatment-box__label{min-width:auto}.collapsible-toggle{padding:var(--spacing-sm) var(--spacing-md)}.collapsible-content,.operation-empty{padding:var(--spacing-md)}.btn{min-height:44px;padding:var(--spacing-sm) var(--spacing-md)}.patient-card__field,.field-group,.form-control,input,select,textarea{max-width:100%;box-sizing:border-box}}.operation-empty{background:var(--gray-50);border:2px dashed var(--gray-300);border-radius:var(--radius-md);padding:var(--spacing-2xl);text-align:center;color:var(--gray-600);display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center}.patient-card__loading{padding:var(--spacing-3xl);text-align:center;font-size:var(--font-lg);color:var(--gray-600)}.link{color:var(--primary);text-decoration:none;font-weight:500;transition:color var(--transition-base)}.link:hover{color:var(--primary-hover);text-decoration:none}.notifications-container{position:fixed;top:1.25rem;right:1.25rem;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;z-index:2000;pointer-events:none}.notification{min-width:260px;max-width:360px;padding:.75rem 1rem;border-radius:.5rem;box-shadow:0 12px 24px #0000001f;color:#fff;font-size:.95rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;pointer-events:auto}.notification--animate{animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification--success{background:linear-gradient(135deg,#2ecc71,#27ae60)}.notification--error{background:linear-gradient(135deg,#e74c3c,#c0392b)}.notification--info{background:linear-gradient(135deg,#3498db,#2980b9)}.notification--warning{background:linear-gradient(135deg,#f1c40f,#f39c12);color:#1f2a2e}.notification__text{flex:1}.notification__close{background:transparent;border:none;color:inherit;font-size:1.2rem;cursor:pointer;line-height:1;padding:0;opacity:.8;transition:opacity .2s}.notification__close:hover{opacity:1}.notification__close:active{animation:press .2s ease}@media (max-width: 768px){.notifications-container{top:1rem;right:1rem;left:1rem}.notification{width:100%;min-width:auto;max-width:none}}.dropdown-menu{position:relative;display:inline-flex;align-items:center}.btn-action-menu{background:transparent;border:1px solid var(--gray-300);border-radius:var(--radius-sm);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;color:var(--gray-700);transition:all var(--transition-base)}.btn-action-menu:hover{background:var(--gray-100);border-color:var(--gray-400)}.btn-action-menu:active{transform:scale(.95)}.dropdown-content{position:absolute;top:calc(100% + 4px);right:0;background:white;border:1px solid var(--gray-300);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;overflow:hidden;max-height:min(60vh,420px);overflow-y:auto;overscroll-behavior:contain}.dropdown-content.dropdown-content--up{top:auto;bottom:calc(100% + 4px)}.dropdown-content.dropdown-content--left{right:auto;left:0}.dropdown-item{display:block;width:100%;padding:10px 16px;background:white;border:none;text-align:left;cursor:pointer;font-size:var(--font-sm);color:var(--gray-800);transition:background .15s ease}.dropdown-content[aria-hidden=true]{display:none}.dropdown-content[aria-hidden=false],.dropdown-content.show{display:block}.dropdown-item:hover{background:var(--gray-100)}.dropdown-item:active{background:var(--gray-200);animation:press .2s ease}.dropdown-item--danger{color:var(--danger)}.dropdown-item--danger:hover{background:var(--danger-light)}.dropdown-item__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;margin-right:var(--spacing-xs)}.dropdown-divider{height:1px;background:var(--gray-200);margin:var(--spacing-xs) 0}.dropdown-header{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-xs);font-weight:600;text-transform:uppercase;color:var(--gray-600);letter-spacing:.5px}.cdk-overlay-pane .mat-mdc-select-panel,.cdk-overlay-pane .mat-mdc-autocomplete-panel{border:1px solid var(--gray-200);border-radius:12px!important;box-shadow:var(--shadow-md);background:#ffffff;padding:4px}.cdk-overlay-pane .mat-mdc-option{min-height:34px;border-radius:8px;font-size:var(--font-sm);color:var(--gray-800)}.cdk-overlay-pane .mat-mdc-option:hover:not(.mdc-list-item--disabled),.cdk-overlay-pane .mat-mdc-option.mdc-list-item--focus{background:#eff6ff}.cdk-overlay-pane .mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled){background:#dbeafe;color:#1d4ed8}.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--spacing-lg);animation:fadeInOverlay .18s ease-in}.modal-overlay[aria-hidden=true]{display:none}.modal-overlay[aria-hidden=false]{display:flex}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.modal-dialog,.modal-content{background:#fff;border-radius:var(--radius-lg);width:min(520px,90vw);max-height:min(90vh,720px);display:flex;flex-direction:column;box-shadow:0 25px 70px #0f172a2e;border:1px solid rgba(15,23,42,.08);overflow:hidden;animation:slideUp .26s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-dialog--small{width:min(420px,90vw)}.modal-dialog--wide{width:min(720px,94vw)}.modal-dialog--xl{width:min(880px,96vw)}.modal-dialog--full{width:100%;max-width:none;height:100%;max-height:none;border-radius:0}.tag-manage-modal{width:min(920px,96vw)}@media (max-width: 640px){.modal-overlay{padding:0}.modal-dialog,.modal-content{width:100%;height:100%;max-height:none;border-radius:0}}.modal-header{padding:20px 24px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);background:#fff}.modal-title{margin:0;font-size:var(--font-xl);font-weight:600;color:var(--gray-900)}.modal-subtitle{margin:var(--spacing-xs) 0 0;color:var(--gray-600);font-size:var(--font-base)}.modal-close{background:transparent;border:none;font-size:28px;line-height:1;color:var(--gray-500);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast)}.modal-close:hover{background:var(--gray-100);color:var(--gray-900)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-dialog--wide .modal-body{background:var(--gray-50)}.modal-body .crm-table{background:white}.modal-body--muted{background:var(--gray-50)}.modal-body p{margin:0 0 var(--spacing-sm);color:var(--gray-700);line-height:1.5}.modal-body p:last-child{margin-bottom:0}.warning-message{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:20px;color:var(--warning-text)}.warning-message p{margin:0 0 8px}.warning-message p:last-child{margin-bottom:0}.warning-message ul{margin:8px 0 0 20px;padding:0}.warning-message li{margin:4px 0}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--gray-700);font-size:var(--font-sm)}.form-control{width:100%;padding:10px 12px;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:var(--font-sm);transition:border-color var(--transition-base)}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.modal-footer{padding:var(--spacing-md) 24px;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;background:#fff}.modal-footer--stacked{flex-direction:column;align-items:stretch}.modal-footer .btn{min-width:140px}.modal-footer--stacked .btn{min-width:auto}.modal-note{font-size:var(--font-sm);color:var(--gray-500);line-height:1.5}.modal-divider{height:1px;background:var(--gray-200);margin:0 24px}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;inset:0;height:100vh;width:100vw}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-global-overlay-wrapper{display:flex;position:fixed;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:fixed;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;z-index:1000;transition:opacity .22s ease}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}body.cdk-global-scrollblock{position:fixed;width:100%;height:100%;left:0;right:0;overflow:hidden!important;overscroll-behavior:none}.cdk-overlay-backdrop.crm-dialog-backdrop{background:rgba(15,23,42,.28)!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cdk-overlay-backdrop.crm-dialog-backdrop.cdk-overlay-backdrop-showing{opacity:1!important}.cdk-overlay-pane.crm-dialog-panel{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;width:auto!important;height:auto!important}.cdk-overlay-pane.crm-dialog-panel .mat-mdc-dialog-container{padding:0!important;max-height:inherit;max-width:inherit}.cdk-overlay-pane.crm-dialog-panel .mat-mdc-dialog-surface,.cdk-overlay-pane.crm-dialog-panel .mdc-dialog__surface{padding:0!important;border-radius:16px!important;background:transparent;box-shadow:none;overflow:visible;max-height:inherit}@media (max-width: 760px){.cdk-overlay-pane.crm-dialog-panel{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important}}.alert{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:12px;border:2px solid;font-size:var(--font-base);font-weight:500;line-height:1.5}.alert--animate{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.alert span{flex:1}.alert--success{background:linear-gradient(135deg,#d1fae5 0%,#a7f3d0 100%);border-color:#10b981;color:#065f46}.alert--error{background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);border-color:#ef4444;color:#991b1b}.alert--warning{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-color:#f59e0b;color:#92400e}.alert--info{background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);border-color:#3b82f6;color:#1e3a8a}.alert--dismissible{position:relative;padding-right:3rem}.alert__close{position:absolute;top:50%;right:var(--spacing-md);transform:translateY(-50%);background:transparent;border:none;cursor:pointer;font-size:20px;line-height:1;color:inherit;opacity:.6;transition:opacity var(--transition-base)}.alert__close:hover{opacity:1}.alert__close:active{animation:press .2s ease}.card{background:white;border:1px solid var(--gray-200);border-radius:16px;padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--gray-100)}.card__title{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-lg);font-weight:700;color:var(--gray-900);line-height:1.3}.card__text{margin:0;font-size:var(--font-base);color:var(--gray-600);line-height:1.6}.card__image{width:100%;height:200px;object-fit:cover;border-radius:12px;margin-bottom:var(--spacing-md)}.card__footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--gray-100);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.card--highlight{border-color:var(--primary);border-width:2px;background:linear-gradient(135deg,#ffffff 0%,#eff6ff 100%)}.card--success{border-color:var(--success);border-width:2px;background:linear-gradient(135deg,#ffffff 0%,#f0fdf4 100%)}.card--warning{border-color:var(--warning);border-width:2px;background:linear-gradient(135deg,#ffffff 0%,#fffbeb 100%)}.card--danger{border-color:var(--danger);border-width:2px;background:linear-gradient(135deg,#ffffff 0%,#fef2f2 100%)}.card--interactive{cursor:pointer}.card--interactive:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card--interactive:active{animation:press .2s ease}.card--compact{padding:var(--spacing-md)}.card__actions{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.card__actions .btn{flex:1}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eff6ff 0%,#e0f2fe 100%);padding:2rem}.login-card{background:#fff;border-radius:var(--radius-xl, 24px);padding:2.5rem 2.25rem;width:min(420px,100%);box-shadow:0 24px 48px #0f172a1f;display:flex;flex-direction:column;gap:2rem}.login-card__header{display:flex;gap:1rem;align-items:center}.login-card__logo{display:grid;place-items:center;width:3rem;height:3rem;background:rgba(37,99,235,.15);border-radius:.75rem;font-size:1.75rem}.login-card__title{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin:0}.login-card__subtitle{margin:.25rem 0 0;color:var(--gray-500);font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-form__field{display:flex;flex-direction:column;gap:.5rem;font-size:.95rem}.login-form__label{color:var(--gray-600);font-weight:600}.login-form__field input{border:1px solid var(--gray-200);border-radius:.75rem;padding:.75rem .875rem;font-size:1rem;color:var(--gray-900);transition:border-color .2s ease,box-shadow .2s ease}.login-form__field input:focus,.login-form__field input:focus-visible{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb40}.login-form__field input.is-invalid{border-color:#ef444499;box-shadow:0 0 0 3px #ef444426}.login-form__error{color:#ef4444e6;font-size:.85rem}.login-form__message{border-radius:.75rem;padding:.75rem 1rem;font-size:.9rem}.login-form__message--error{background:rgba(239,68,68,.08);color:#dc2626e6;border:1px solid rgba(220,38,38,.2)}.login-form__message--success{background:rgba(34,197,94,.08);color:#15803de6;border:1px solid rgba(34,197,94,.2)}.login-form__submit{width:100%;font-size:1rem;padding:.85rem;border-radius:.75rem;transition:transform .2s ease,box-shadow .2s ease}.login-form__submit:disabled{opacity:.7;cursor:wait}.login-card__hint{margin:0;font-size:.85rem;color:var(--gray-400);text-align:center}.login-card__hint code{font-family:var(--font-family-mono, monospace);background:var(--gray-100);padding:.1rem .25rem;border-radius:.25rem;color:var(--gray-500)}@media (max-width: 640px){.login-page{padding:1rem}.login-card{padding:2rem 1.5rem}.login-card__title{font-size:1.5rem}}.export-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.export-actions--desktop{justify-content:flex-end}.export-actions--mobile{display:none}.consent-menu,.log-menu,.export-menu,.actions-menu{position:relative}.actions-menu{flex:0 0 auto}.actions-menu__label--mobile{display:none}.consent-menu__dropdown,.export-menu__dropdown,.log-menu__dropdown{position:absolute;left:0;top:calc(100% + .5rem);background:white;border:1px solid var(--gray-200);border-radius:var(--radius-md);width:min(360px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);box-shadow:0 10px 30px #0f172a33;overflow-x:hidden;overflow-y:auto;z-index:6;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);box-sizing:border-box}.log-menu__dropdown{width:min(240px,calc(100vw - 2rem));max-width:calc(100vw - 2rem)}.export-menu__dropdown{right:0;left:auto;width:min(260px,calc(100vw - 2rem));max-width:calc(100vw - 2rem)}.export-menu__trigger{min-width:150px;display:inline-flex;align-items:center;gap:.5rem;justify-content:center;font-weight:500}.export-menu__trigger--active{background:var(--gray-900);color:#fff}.export-menu__chevron{transition:transform .2s ease;font-size:.75rem;opacity:.7}.export-menu__trigger[aria-expanded=true] .export-menu__chevron,.consent-menu__trigger[aria-expanded=true] .export-menu__chevron,.log-menu__trigger[aria-expanded=true] .export-menu__chevron{transform:rotate(180deg)}.consent-menu__trigger,.log-menu__trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;font-weight:500}.consent-menu__trigger:hover,.log-menu__trigger:hover,.consent-menu__trigger[aria-expanded=true],.log-menu__trigger[aria-expanded=true]{background:var(--gray-100);color:var(--primary)}.consent-menu__item{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);font-size:var(--font-sm);color:var(--gray-800);max-width:100%;padding:var(--spacing-xs) 0;min-height:32px}.consent-menu__item:not(:last-child){border-bottom:1px solid var(--gray-100);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.consent-menu__item--toggle{align-items:center;padding:var(--spacing-sm);background:var(--gray-50);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s ease;border-bottom:none!important;margin-bottom:0!important}.consent-menu__item--toggle:hover{background:var(--gray-100)}.consent-menu__item--toggle .consent-menu__label{word-break:break-word;white-space:normal;line-height:1.3}.consent-menu__item--toggle input[type=checkbox]{cursor:pointer;width:18px;height:18px;flex-shrink:0;margin-left:auto}.consent-menu__label{color:var(--gray-700);font-weight:500;line-height:1.4;flex:1;min-width:0;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.consent-menu__status{font-weight:600;color:var(--gray-500);white-space:nowrap;flex-shrink:0;font-size:var(--font-sm);padding:2px 8px;border-radius:var(--radius-sm);background:var(--gray-100)}.consent-menu__status--yes{color:var(--success);background:rgba(16,185,129,.1)}.actions-menu__dropdown{position:absolute;right:0;top:calc(100% + .5rem);width:min(360px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);border-radius:var(--radius-lg);box-shadow:0 15px 40px #0f172a40;z-index:8;background:white;border:1px solid var(--gray-100);padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-sm);box-sizing:border-box;overflow-x:hidden}.actions-menu__section{border:1px solid var(--gray-100);border-radius:var(--radius-md);padding:var(--spacing-xs) var(--spacing-sm);background:var(--gray-50)}.actions-menu__section summary{font-weight:600;color:var(--gray-800);cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-sm)}.actions-menu__section summary::-webkit-details-marker{display:none}.export-menu__item{width:100%;padding:.625rem .75rem;text-align:left;border:none;background:transparent;font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:all .15s ease;word-wrap:break-word;overflow-wrap:break-word;border-radius:var(--radius-sm);color:var(--gray-700)}.export-menu__item:hover:not(:disabled){background:var(--gray-100);color:var(--primary)}.export-menu__item:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.export-actions--desktop{display:none}.export-actions--mobile{display:flex;width:auto;justify-content:flex-end}.actions-menu__label--desktop{display:none}.actions-menu__label--mobile{display:inline}.consent-menu__dropdown,.export-menu__dropdown,.log-menu__dropdown{position:static;width:100%;min-width:auto;max-width:100%;box-shadow:none;margin-top:var(--spacing-xs);padding:var(--spacing-sm)}}.link{color:var(--primary);text-decoration:none;font-weight:500}.link:hover{text-decoration:none}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--gray-500)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-secondary{color:var(--gray-700)}.text-sm{font-size:var(--font-sm)}.fw-medium{font-weight:500}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.ml-sm{margin-left:var(--spacing-sm)}.ml-md{margin-left:var(--spacing-md)}.full-width{grid-column:1 / -1}.crm-loading-state{text-align:center;padding:var(--spacing-xl);color:var(--gray-500)}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-border .75s linear infinite;color:var(--primary)}.field-highlight-warning{background:var(--warning-bg);border:2px solid var(--warning);border-radius:var(--radius-sm);padding:.75rem;color:var(--warning-text);font-weight:600}.field-highlight-danger{background:var(--danger-light);border:2px solid var(--danger);border-radius:var(--radius-sm);padding:.75rem;color:var(--danger);font-weight:600}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{opacity:0;max-height:0;overflow:hidden}to{opacity:1;max-height:2000px;overflow:visible}}@keyframes pulse-highlight{0%{box-shadow:0 0 #3b82f659}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes highlight-flash{0%,to{background-color:transparent}50%{background-color:#d1fae5}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes success-checkmark{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes press{0%{transform:scale(1)}50%{transform:scale(.93)}to{transform:scale(1)}}.clickable{cursor:pointer;transition:transform .15s ease}.clickable:active{animation:press .2s ease}@charset "UTF-8";@font-face{font-family:CoveredByYourGrace-Regular;src:url(CoveredByYourGrace-Regular.4fd13787d3583ad1.ttf) format("truetype");font-display:block;font-weight:400;font-style:normal}html{height:100%;font-family:Nunito;overflow-x:hidden}body{margin:0;padding:0;min-height:100%;background-color:#f9fafb;overflow-x:hidden}body{--mat-app-background-color: #f9fafb;--mat-sidenav-content-background-color: #f9fafb;--mat-toolbar-container-background-color: #ffffff}.main-container{min-width:0}.main-container .table-container{overflow-x:auto!important;overflow-y:visible!important}app-operational-costs .main-container .table-container,app-operational-costs-month .main-container .table-container{overflow-x:hidden!important;overflow-y:auto!important}.crm-filters .field__label{font-size:11px;line-height:1.2;font-weight:700}.crm-filters .field__control input,.crm-filters .field__control select,.crm-filters .field__control textarea{font-size:13px;line-height:1.35}.page-request-time{border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:4px 10px;background:#fff;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.page-request-time__label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);font-weight:700}.page-request-time__value{font-size:12px;line-height:1.1;color:#0f172a;font-weight:800}app-accounts .accounts-table th,app-account-requests .account-requests-table th,app-fix-account-requests .fix-requests-table th,app-funds .funds-table th,app-users .users-table-container .crm-table th,app-accounts-audit .accounts-audit-table th,app-leads .leads-table th,app-firetool-tasks .firetool-tasks-table th,app-firetool-likes-tasks .firetool-likes-table th,app-geo-dashboard .geo-table thead th,app-cashflow .cf-table th,app-cashflow-campaigns .ccf-table tbody th{font-size:10px!important;line-height:1.25;font-weight:700}app-accounts .accounts-table td,app-account-requests .account-requests-table td,app-fix-account-requests .fix-requests-table td,app-funds .funds-table td,app-users .users-table-container .crm-table td,app-accounts-audit .accounts-audit-table td,app-leads .leads-table td,app-firetool-tasks .firetool-tasks-table td,app-firetool-likes-tasks .firetool-likes-table td,app-geo-dashboard .geo-table td,app-cashflow .cf-table td,app-cashflow-campaigns .ccf-table tbody td{font-size:12px!important;line-height:1.35}app-firetool-tasks .firetool-task-type__label,app-firetool-likes-tasks .firetool-task-type__label,app-firetool-tasks .firetool-tasks-title,app-firetool-likes-tasks .firetool-likes-title{font-size:14px!important;line-height:1.2;font-weight:700}@media (max-width: 900px){app-accounts .crm-filters__row{gap:var(--spacing-sm)!important;margin-bottom:0!important}app-accounts .accounts-filters__field{flex:none!important}}@media (max-width: 640px){app-accounts .accounts-filters{padding:8px;gap:6px}app-accounts .crm-filters__row{gap:6px!important;margin-bottom:0!important}app-accounts .accounts-filters__row--toolbar{gap:6px}app-accounts .accounts-filters__field{gap:4px}app-accounts .accounts-filters__field input,app-accounts .accounts-filters__field select{height:36px!important;padding:4px 10px!important;font-size:13px!important;border-radius:6px!important;box-sizing:border-box}app-accounts .accounts-filters .field__label{margin-bottom:0!important;font-size:10px;line-height:1.2}app-accounts .accounts-status-bar{padding:6px 8px;gap:4px}app-accounts .accounts-table-wrap{height:clamp(200px,100dvh - 450px,700px)!important}}
