:root{--color-primary: #2196F3;--color-primary-dark: #1976D2;--color-primary-light: #BBDEFB;--color-success: #4CAF50;--color-success-dark: #388E3C;--color-success-light: #C8E6C9;--color-danger: #F44336;--color-danger-dark: #D32F2F;--color-danger-light: #FFCDD2;--color-warning: #FF9800;--color-warning-dark: #F57C00;--color-warning-light: #FFE0B2;--color-info: #2196F3;--color-info-dark: #1976D2;--color-info-light: #BBDEFB;--color-gray-50: #FAFAFA;--color-gray-100: #F5F5F5;--color-gray-200: #EEEEEE;--color-gray-300: #E0E0E0;--color-gray-400: #BDBDBD;--color-gray-500: #9E9E9E;--color-gray-600: #757575;--color-gray-700: #616161;--color-gray-800: #424242;--color-gray-900: #212121;--color-white: #FFFFFF;--color-black: #000000;--color-entrada: var(--color-success);--color-entrada-dark: var(--color-success-dark);--color-entrada-light: var(--color-success-light);--color-saida: var(--color-danger);--color-saida-dark: var(--color-danger-dark);--color-saida-light: var(--color-danger-light);--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--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: 2.25rem;--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;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-sm: .25rem;--radius-base: .5rem;--radius-md: .625rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--sidebar-width: 220px;--topbar-height: 64px;--content-max-width: 1400px;--z-base: 1;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-gray-900);background:var(--color-gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:100vh;height:100vh;overflow:hidden}.sidebar{grid-column:1;grid-row:1;background:linear-gradient(180deg,#1976d2,#1565c0);color:var(--color-white);display:flex;flex-direction:column;overflow-y:auto;box-shadow:var(--shadow-lg);z-index:var(--z-fixed)}.sidebar-header{padding:var(--spacing-6) var(--spacing-4);border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo{display:flex;align-items:center;gap:var(--spacing-3);text-decoration:none;color:var(--color-white)}.sidebar-logo img{width:40px;height:40px;border-radius:var(--radius-base);background:var(--color-white);padding:var(--spacing-1);object-fit:contain}.sidebar-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.sidebar-subtitle{font-size:var(--font-size-sm);opacity:.9;margin:0}.sidebar-nav{flex:1;padding:var(--spacing-4) 0}.nav-section{margin-bottom:var(--spacing-6)}.nav-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-2) var(--spacing-4);opacity:.7;margin-bottom:var(--spacing-2)}.nav-list{list-style:none}.nav-item{margin-bottom:var(--spacing-1)}.nav-link{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);color:#ffffffe6;text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);border-left:3px solid transparent}.nav-link:hover{background:#ffffff1a;color:var(--color-white)}.nav-link.active{background:#ffffff26;color:var(--color-white);border-left-color:var(--color-white)}.nav-icon{font-size:var(--font-size-lg);width:24px;text-align:center}.main-content{grid-column:2;grid-row:1;display:flex;flex-direction:column;overflow:hidden;background:var(--color-gray-50)}.topbar{height:var(--topbar-height);background:var(--color-white);border-bottom:1px solid var(--color-gray-200);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-6);box-shadow:var(--shadow-sm);z-index:var(--z-sticky);flex-shrink:0}.topbar-left,.topbar-right{display:flex;align-items:center;gap:var(--spacing-4)}.global-search{position:relative;width:400px}.global-search input{width:100%;padding:var(--spacing-2) var(--spacing-4) var(--spacing-2) var(--spacing-10);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.global-search input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2196f31a}.global-search-icon{position:absolute;left:var(--spacing-3);top:50%;transform:translateY(-50%);color:var(--color-gray-500);font-size:var(--font-size-lg)}.view-container{flex:1;overflow-y:auto;padding:var(--spacing-6)}.page-header{margin-bottom:var(--spacing-6)}.page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0 0 var(--spacing-2) 0}.page-subtitle{font-size:var(--font-size-base);color:var(--color-gray-600);margin:0}@media (max-width: 768px){#app{grid-template-columns:1fr}.sidebar{position:fixed;left:-100%;width:var(--sidebar-width);height:100vh;transition:left var(--transition-base);z-index:var(--z-modal)}.sidebar.open{left:0}.global-search{width:200px}.view-container{padding:var(--spacing-4)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);line-height:1;text-decoration:none;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:focus{outline:none;box-shadow:0 0 0 3px #2196f333}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-white)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-success{background:var(--color-success);color:var(--color-white)}.btn-success:hover:not(:disabled){background:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger{background:var(--color-danger);color:var(--color-white)}.btn-danger:hover:not(:disabled){background:var(--color-danger-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-gray-200);color:var(--color-gray-800)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-300);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-ghost:hover:not(:disabled){background:var(--color-gray-100);border-color:var(--color-gray-400)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-base)}.card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-base);padding:var(--spacing-6);transition:all var(--transition-fast)}.card-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.card-clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-4)}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0}.card-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:var(--spacing-1) 0 0 0}.card-body{color:var(--color-gray-700)}.card-footer{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200);display:flex;justify-content:space-between;align-items:center}.summary-card{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-6);box-shadow:var(--shadow-md);transition:all var(--transition-fast);cursor:pointer;border-left:4px solid transparent}.summary-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.summary-card h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-600);margin:0 0 var(--spacing-3) 0;text-transform:uppercase;letter-spacing:.05em}.summary-card .amount{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0}.summary-card-entrada{border-left-color:var(--color-entrada)}.summary-card-entrada .amount{color:var(--color-entrada-dark)}.summary-card-saida{border-left-color:var(--color-saida)}.summary-card-saida .amount{color:var(--color-saida-dark)}.summary-card-saldo{border-left-color:var(--color-primary)}.summary-card-saldo .amount{color:var(--color-primary-dark)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);white-space:nowrap}.badge-entrada{background:var(--color-entrada-light);color:var(--color-entrada-dark)}.badge-saida{background:var(--color-saida-light);color:var(--color-saida-dark)}.badge-info{background:var(--color-info-light);color:var(--color-info-dark)}.sync-status{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.sync-status.idle{background:var(--color-gray-100);color:var(--color-gray-600)}.sync-status.syncing{background:var(--color-info-light);color:var(--color-info-dark)}.sync-status.success{background:var(--color-success-light);color:var(--color-success-dark)}.sync-status.error{background:var(--color-danger-light);color:var(--color-danger-dark)}.sync-icon{font-size:var(--font-size-base)}.sync-icon.spinning{animation:spin 1s linear infinite}.form-group{margin-bottom:var(--spacing-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);margin-bottom:var(--spacing-2)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);font-family:var(--font-family-base);color:var(--color-gray-900);background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2196f31a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-gray-100);cursor:not-allowed;opacity:.6}.form-error{display:block;font-size:var(--font-size-sm);color:var(--color-danger);margin-top:var(--spacing-2)}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-danger)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--color-gray-300);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.empty-state{text-align:center;padding:var(--spacing-12) var(--spacing-6)}.empty-state-icon{font-size:var(--font-size-4xl);color:var(--color-gray-400);margin-bottom:var(--spacing-4)}.empty-state-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin:0 0 var(--spacing-2) 0}.empty-state-description{font-size:var(--font-size-base);color:var(--color-gray-600);margin:0 0 var(--spacing-6) 0}.grid{display:grid;gap:var(--spacing-6)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.table-responsive{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table thead{background:var(--color-gray-50);border-bottom:2px solid var(--color-gray-200)}.table th{padding:var(--spacing-3) var(--spacing-4);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-gray-700);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.table td{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-800)}.table tbody tr:hover{background:var(--color-gray-50)}.table tbody tr:last-child td{border-bottom:none}.text-right{text-align:right}.badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger-dark)}.badge-warning{background:#fef3c7;color:#92400e}.badge-secondary{background:var(--color-gray-200);color:var(--color-gray-700)}.btn-group{display:inline-flex;gap:var(--spacing-2)}.card-actions{display:flex;gap:var(--spacing-3);align-items:center}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4)}.form-control{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-family:var(--font-family-base);color:var(--color-gray-900);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2196f31a}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4)}.pagination-info{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.period-selector{display:flex;align-items:center;gap:var(--spacing-3)}.period-selector label{font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.percentage-bar-container{width:100%}.percentage-bar{width:100%;height:24px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden;position:relative}.percentage-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .3s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:var(--spacing-2);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #0066cc;--primary-hover: #0052a3;--primary-light: #e6f2ff;--success: #00a651;--success-light: #e6f9f0;--danger: #d32f2f;--danger-light: #fdecea;--warning: #ff9800;--warning-light: #fff3e0;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #eeeeee;--gray-300: #e0e0e0;--gray-400: #bdbdbd;--gray-500: #9e9e9e;--gray-600: #757575;--gray-700: #616161;--gray-800: #424242;--gray-900: #212121;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace}body{font-family:var(--font-primary);background:var(--gray-100);color:var(--gray-900);line-height:1.6;font-size:14px}.container{max-width:1600px;margin:0 auto;padding:0}.header{background:linear-gradient(135deg,#06c,#004d99);color:#fff;padding:1.5rem 2rem;box-shadow:var(--shadow-md)}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1600px;margin:0 auto}.header-left{display:flex;align-items:center;gap:1.25rem}.logo-container{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:12px;padding:.5rem;box-shadow:0 4px 12px #00000026;min-width:100px;min-height:100px}.clinic-logo{max-width:90px;max-height:90px;width:auto;height:auto;object-fit:contain;display:block}.header-text{display:flex;flex-direction:column;gap:.25rem}.header h1{font-size:1.75rem;font-weight:600;color:#fff;margin:0;display:flex;align-items:center;gap:.5rem}.subtitle{font-size:.875rem;color:#ffffffe6;font-weight:400;margin:0}.sync-controls{display:flex;align-items:center;gap:.75rem}.sync-status{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);font-size:.8125rem;color:#fff;transition:all .3s}.sync-icon{font-size:.875rem}.sync-status.syncing{background:#ffffff40;border-color:#ffffff4d}.sync-status.syncing .sync-icon{animation:spin 1s linear infinite}.sync-status.success{background:var(--success);border-color:var(--success)}.sync-status.error{background:var(--danger);border-color:var(--danger);cursor:pointer}.btn-sync{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s}.btn-sync:hover{background:#ffffff4d;transform:scale(1.05)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;padding:2rem;margin-bottom:1rem}.summary-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--gray-200);transition:all .2s ease;position:relative;overflow:hidden}.summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gray-300)}.summary-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.summary-card h3{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-600);margin-bottom:.75rem}.summary-card .amount{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--gray-900)}.entrada-card:before{background:linear-gradient(90deg,var(--success),#00d168)}.entrada-card .amount{color:var(--success)}.saida-card:before{background:linear-gradient(90deg,var(--danger),#ff5252)}.saida-card .amount{color:var(--danger)}.saldo-card:before{background:linear-gradient(90deg,var(--primary),#0080ff)}.saldo-card .amount{color:var(--primary)}.controls{background:#fff;padding:1.5rem 2rem;margin:0 2rem 1.5rem;border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--gray-200)}.filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.actions{display:flex;gap:.75rem;flex-wrap:wrap}input[type=date],input[type=text],input[type=number],select,textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--gray-300);border-radius:6px;font-size:.875rem;font-family:var(--font-primary);color:var(--gray-900);background:#fff;transition:all .2s}input[type=date]:focus,input[type=text]:focus,input[type=number]:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.btn{padding:.625rem 1.25rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--gray-200);color:var(--gray-800)}.btn-secondary:hover{background:var(--gray-300)}.btn-danger{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-ai{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-ai:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.transactions{background:#fff;margin:0 2rem 2rem;border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--gray-200);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:.875rem}thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}th{text-align:left;padding:1rem;font-weight:600;color:var(--gray-700);font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em}tbody tr{border-bottom:1px solid var(--gray-200);transition:background .15s}tbody tr:hover{background:var(--gray-50)}tbody tr:last-child{border-bottom:none}td{padding:1rem;color:var(--gray-800)}.type-entrada{color:var(--success);font-weight:600;background:var(--success-light);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;display:inline-block}.type-saida{color:var(--danger);font-weight:600;background:var(--danger-light);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;display:inline-block}.amount-value{font-family:var(--font-mono);font-weight:600;font-size:.9375rem}.amount-entrada{color:var(--success)}.amount-saida{color:var(--danger)}.action-btn{padding:.375rem .75rem;border:none;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .2s;margin-right:.25rem}.edit-btn{background:var(--primary-light);color:var(--primary)}.edit-btn:hover{background:var(--primary);color:#fff}.delete-btn{background:var(--danger-light);color:var(--danger)}.delete-btn:hover{background:var(--danger);color:#fff}.monthly-analysis,.monthly-comparison{background:#fff;margin:0 2rem 1.5rem;padding:1.5rem;border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--gray-200)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.section-header h2{font-size:1.25rem;font-weight:600;color:var(--gray-900)}.category-breakdown{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:1.5rem}.category-card{background:var(--gray-50);padding:1.25rem;border-radius:8px;border:1px solid var(--gray-200);transition:all .2s}.category-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.category-card.warning{background:var(--warning-light);border-color:var(--warning)}.category-card h4{font-size:.875rem;color:var(--gray-700);margin-bottom:.5rem}.category-card .category-amount{font-size:1.5rem;font-weight:700;font-family:var(--font-mono);color:var(--gray-900)}.category-card .category-comparison{font-size:.75rem;color:var(--gray-600);margin-top:.5rem}.alerts-section{margin-top:1.5rem}.alert{padding:1rem 1.25rem;border-radius:8px;margin-bottom:1rem;display:flex;gap:1rem;align-items:flex-start}.alert-icon{font-size:1.5rem;flex-shrink:0}.alert-content h5{font-size:.9375rem;font-weight:600;margin-bottom:.25rem}.alert-content p{font-size:.875rem;margin:0}.alert-warning{background:var(--warning-light);border:1px solid var(--warning);color:#e65100}.alert-info{background:var(--primary-light);border:1px solid var(--primary);color:#01579b}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;padding:2rem;overflow-y:auto;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal.active{display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:2px solid var(--gray-100);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,var(--gray-50),white)}.modal-header h2{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0;letter-spacing:-.02em}.modal-body{padding:2rem;overflow-y:auto;flex:1}.close-btn{background:var(--gray-100);border:none;font-size:1.5rem;color:var(--gray-600);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s;font-weight:300}.close-btn:hover{background:var(--gray-200);color:var(--gray-900);transform:rotate(90deg)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.75rem;font-weight:600;color:var(--gray-700);font-size:.9375rem;letter-spacing:-.01em}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.875rem 1rem;border:2px solid var(--gray-200);border-radius:10px;font-size:.9375rem;color:var(--gray-900);background:#fff;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #2196f31a}.form-group textarea{resize:vertical;min-height:90px}.form-group input[type=number]::-webkit-inner-spin-button,.form-group input[type=number]::-webkit-outer-spin-button{opacity:1}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:2px solid var(--gray-100);margin-top:1rem}.form-actions .btn{min-width:120px;padding:.875rem 1.5rem;font-weight:600;font-size:.9375rem;border-radius:10px;transition:all .2s}.form-actions .btn-primary{box-shadow:0 4px 12px #2196f34d}.form-actions .btn-primary:hover{box-shadow:0 6px 16px #2196f366;transform:translateY(-1px)}.form-actions .btn-secondary:hover{background:var(--gray-300)}.empty-state{text-align:center;padding:4rem 2rem;color:var(--gray-500)}.empty-state p{margin-bottom:.5rem;font-size:1rem}.empty-state .hint{font-size:.875rem;color:var(--gray-400)}.table-container{overflow-x:auto;border-radius:8px}.positive-variation{color:var(--success);font-weight:600}.negative-variation{color:var(--danger);font-weight:600}@media (max-width: 768px){.container{padding:0}.header{padding:1rem}.header-left{gap:.75rem}.logo-container{min-width:80px;min-height:80px;padding:.375rem}.clinic-logo{max-width:70px;max-height:70px}.header h1{font-size:1.25rem}.header-content{flex-direction:column;gap:1rem;align-items:stretch}.sync-controls{justify-content:center}.dashboard{grid-template-columns:1fr;padding:1rem;gap:1rem}.controls{margin:0 1rem 1rem;padding:1rem}.filters,.actions{flex-direction:column}.filters>*,.actions>*{width:100%}.transactions,.monthly-analysis,.monthly-comparison{margin:0 1rem 1rem}table{font-size:.75rem}th,td{padding:.75rem .5rem}.summary-card .amount{font-size:1.5rem}.modal{padding:1rem}.modal-content{width:100%;max-height:95vh;border-radius:12px}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-actions{flex-direction:column-reverse;gap:.75rem}.form-actions .btn{width:100%;min-width:auto}.category-breakdown{grid-template-columns:1fr}}.text-center{text-align:center}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}
