:root{--dcent-surface: #ffffff;--dcent-gray-50: #f8fafc;--dcent-gray-100: #f1f5f9;--dcent-gray-200: #e2e8f0;--dcent-gray-300: #cbd5e1;--dcent-gray-400: #94a3b8;--dcent-gray-500: #64748b;--dcent-gray-600: #475569;--dcent-gray-700: #334155;--dcent-gray-800: #1e293b;--dcent-gray-900: #0f172a;color-scheme:light}html[data-theme=dark]{--dcent-surface: #1e293b;--dcent-gray-50: #243244;--dcent-gray-100: #0f172a;--dcent-gray-200: #334155;--dcent-gray-300: #475569;--dcent-gray-400: #94a3b8;--dcent-gray-500: #94a3b8;--dcent-gray-600: #cbd5e1;--dcent-gray-700: #e2e8f0;--dcent-gray-800: #f1f5f9;--dcent-gray-900: #f8fafc;color-scheme:dark}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border:1px solid transparent;border-radius:6px;font-size:.875rem;font-weight:500;line-height:1.5;cursor:pointer;transition:all .15s ease-in-out}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#1e40af;color:#fff}.btn-primary:hover:not(:disabled){background-color:#1e3a8a}.btn-secondary{background-color:var(--dcent-gray-200, #e2e8f0);color:var(--dcent-gray-700, #334155);border-color:var(--dcent-gray-200, #e2e8f0)}.btn-secondary:hover:not(:disabled){background-color:var(--dcent-gray-300, #cbd5e1)}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#eb1515}.btn-blue{background-color:#3b82f6;color:#fff}.btn-blue:hover:not(:disabled){background-color:#1e40af}.btn-green{background-color:#10b981;color:#fff}.btn-green:hover:not(:disabled){background-color:#0c8a60}.btn-orange{background-color:#f59e0b;color:#fff}.btn-orange:hover:not(:disabled){background-color:#c57f08}.btn-teal{background-color:#06b6d4;color:#fff}.btn-teal:hover:not(:disabled){background-color:#058ba2}.btn-sm{padding:6px 16px;font-size:.75rem}.btn-icon{display:inline-flex;align-items:center;justify-content:center;padding:4px;background:transparent;color:var(--dcent-gray-600, #475569)}.btn-icon:hover:not(:disabled){background-color:var(--dcent-gray-100, #f1f5f9);color:var(--dcent-gray-900, #0f172a)}.btn-icon.btn-danger{color:#ef4444}.btn-icon.btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#eb1515}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-success{background-color:#10b9811a;color:#0c8a60}.badge-danger{background-color:#ef44441a;color:#eb1515}.badge-warning{background-color:#f59e0b1a;color:#c57f08}.badge-info{background-color:#06b6d41a;color:#058ba2}.status-badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.status-badge.badge-gray{background-color:var(--dcent-gray-100, #f1f5f9);color:var(--dcent-gray-600, #475569)}.status-badge.badge-blue{background-color:#3b82f626;color:#1e40af}.status-badge.badge-green{background-color:#10b98126;color:#0c8a60}.status-badge.badge-teal{background-color:#06b6d426;color:#058ba2}.status-badge.badge-orange{background-color:#f59e0b26;color:#ac6f07}.status-badge.badge-red{background-color:#ef444426;color:#eb1515}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}table,.data-table{width:100%;border-collapse:collapse;background:var(--dcent-surface, #ffffff);border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}table th,.data-table th{padding:12px 16px;text-align:left;font-size:.75rem;font-weight:600;color:var(--dcent-gray-600, #475569);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--dcent-gray-200, #e2e8f0)}table td,.data-table td{padding:12px 16px;font-size:.875rem;color:var(--dcent-gray-800, #1e293b);border-bottom:1px solid var(--dcent-gray-100, #f1f5f9)}table .clickable-row,.data-table .clickable-row{cursor:pointer;transition:background-color .15s ease-in-out}table .clickable-row:hover,.data-table .clickable-row:hover{background-color:var(--dcent-gray-50, #f8fafc)}table .text-right,.data-table .text-right{text-align:right;font-family:monospace}table .text-center,.data-table .text-center{text-align:center}table .actions-cell,.data-table .actions-cell{cursor:default;gap:4px;white-space:nowrap}table .actions-cell button+button,.data-table .actions-cell button+button{margin-left:4px}table .actions-header,table .actions-cell,.data-table .actions-header,.data-table .actions-cell{position:sticky;right:0;background-color:var(--dcent-surface, #ffffff);z-index:1;box-shadow:-4px 0 6px -2px #00000014}table .clickable-row:hover .actions-cell,.data-table .clickable-row:hover .actions-cell{background-color:var(--dcent-gray-50, #f8fafc)}table .actions,.data-table .actions{display:flex;gap:4px}table .release-row,.data-table .release-row{background-color:var(--dcent-gray-50, #f8fafc);font-style:italic}table tfoot .grand-total,.data-table tfoot .grand-total{font-weight:700;background-color:var(--dcent-gray-50, #f8fafc)}.modal-overlay,.modal-backdrop{position:fixed;inset:0;background-color:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1040;padding:16px}.modal-content{background:var(--dcent-surface, #ffffff);border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;width:100%;max-width:600px;max-height:calc(100vh - 48px);overflow:hidden auto}.modal-content.modal-sm{max-width:420px}.modal-content.modal-md{max-width:600px}.modal-content.modal-lg{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--dcent-gray-200, #e2e8f0)}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--dcent-gray-900, #0f172a)}.modal-header .modal-close{background:none;border:none;font-size:.875rem;color:var(--dcent-gray-400, #94a3b8);cursor:pointer;padding:4px 8px;border-radius:6px}.modal-header .modal-close:hover{color:var(--dcent-gray-700, #334155);background-color:var(--dcent-gray-100, #f1f5f9)}[modal-body]{padding:24px}.modal-error{margin-bottom:16px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;margin:16px -24px -24px;padding:16px 24px;border-top:1px solid var(--dcent-gray-200, #e2e8f0)}select{appearance:none;-webkit-appearance:none;background-color:var(--dcent-surface, #ffffff);background-image:linear-gradient(45deg,transparent 50%,var(--dcent-gray-500, #64748b) 50%),linear-gradient(135deg,var(--dcent-gray-500, #64748b) 50%,transparent 50%);background-position:right 13px center,right 8px center;background-size:5px 5px;background-repeat:no-repeat;padding-right:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 16px}.form-grid>*{min-width:0}.form-grid .full-width{grid-column:1/-1}.form-grid .form-group{margin-bottom:0}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1;min-width:0}.form-row .form-group-sm{flex:0 0 120px;min-width:0}@media (max-width: 480px){.form-grid{grid-template-columns:1fr}.form-row{flex-direction:column}.form-row .form-group-sm{flex-basis:auto}}.form-group{display:flex;flex-direction:column;gap:8px;position:relative;margin-bottom:16px}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--dcent-gray-700, #334155)}.form-group input:not([type=radio]):not([type=checkbox]),.form-group select,.form-group textarea{width:100%;max-width:100%;padding:10px 16px;border:1px solid var(--dcent-gray-300, #cbd5e1);border-radius:6px;font-size:.875rem;transition:border-color .15s ease-in-out}.form-group input:not([type=radio]):not([type=checkbox]):focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1e40af;box-shadow:0 0 0 2px #1e40af26}.form-group input:not([type=radio]):not([type=checkbox]).ng-invalid.ng-touched,.form-group select.ng-invalid.ng-touched,.form-group textarea.ng-invalid.ng-touched{border-color:#ef4444}.form-group select{padding-right:26px;text-overflow:ellipsis}.form-group textarea{resize:vertical}.form-group input[type=date]{appearance:none;-webkit-appearance:none;min-width:0;background-color:var(--dcent-surface, #ffffff)}.form-group input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.3em}.form-group .error-message{margin-top:4px;font-size:.75rem;color:#ef4444}.field-error{font-size:.75rem;color:#ef4444}@media (hover: none) and (pointer: coarse){.form-group input:not([type=radio]):not([type=checkbox]),.form-group select,.form-group textarea{font-size:1rem}}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--dcent-surface, #ffffff);border:1px solid var(--dcent-gray-300, #cbd5e1);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;z-index:10;max-height:200px;overflow-y:auto}.search-dropdown .search-option{padding:8px 16px;font-size:.875rem;cursor:pointer;transition:background-color .15s ease-in-out}.search-dropdown .search-option:hover{background-color:var(--dcent-gray-50, #f8fafc)}.card{background:var(--dcent-surface, #ffffff);border-radius:8px;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a;padding:24px}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:32px}.info-card{background:var(--dcent-surface, #ffffff);border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:24px}.info-card h3{margin:0 0 16px;font-size:.875rem;font-weight:600;color:var(--dcent-gray-500, #64748b);text-transform:uppercase;letter-spacing:.05em}.info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--dcent-gray-50, #f8fafc)}.info-row:last-child{border-bottom:none}.info-row.highlight{padding:8px 0;font-weight:600}.info-row.highlight .info-value{font-size:1.125rem;color:#1e40af}.info-label{font-size:.875rem;color:var(--dcent-gray-500, #64748b)}.info-value{font-size:.875rem;color:var(--dcent-gray-800, #1e293b);font-weight:500}.info-value.mono{font-family:monospace}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--dcent-surface, #ffffff);border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:24px}.stat-card .stat-label{font-size:.875rem;color:var(--dcent-gray-500, #64748b);margin-bottom:4px}.stat-card .stat-value{font-size:1.5rem;font-weight:700;color:var(--dcent-gray-900, #0f172a);font-family:monospace}.stat-card.stat-alert{background:#ef44440d;border-color:#ef444433}.stat-card.stat-alert .stat-value{color:#ef4444}.page-container{padding:32px 24px}@media (max-width: 1279px){.page-container{padding:24px 16px}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:1.5rem;font-weight:700;color:var(--dcent-gray-900, #0f172a);margin:0}.page-header .header-left,.page-header .header-title{display:flex;align-items:center;gap:16px}.page-header .header-actions,.page-header .header-right{display:flex;gap:8px;flex-wrap:wrap}.page-header .record-count{font-size:.875rem;color:var(--dcent-gray-500, #64748b)}.section{margin-bottom:32px}.section h2{font-size:1.125rem;font-weight:600;color:var(--dcent-gray-900, #0f172a);margin:0 0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{margin:0}.filters-row,.filters{display:flex;gap:16px;margin-bottom:24px}.filters-row .search-box,.filters .search-box{flex:1}.filters-row .search-box input,.filters .search-box input{width:100%;padding:8px 16px;border:1px solid var(--dcent-gray-300, #cbd5e1);border-radius:6px;font-size:.875rem}.filters-row .search-box input:focus,.filters .search-box input:focus{outline:none;border-color:#1e40af;box-shadow:0 0 0 2px #1e40af26}.filters-row .search-input,.filters .search-input{flex:1;padding:8px 16px;border:1px solid var(--dcent-gray-300, #cbd5e1);border-radius:6px;font-size:.875rem}.filters-row .search-input:focus,.filters .search-input:focus{outline:none;border-color:#1e40af;box-shadow:0 0 0 2px #1e40af26}.filters-row .status-filter select,.filters .status-filter select{padding:8px 26px 8px 16px;border:1px solid var(--dcent-gray-300, #cbd5e1);border-radius:6px;font-size:.875rem;min-width:160px}.loading-indicator,.loading,.empty-state{padding:32px;text-align:center;color:var(--dcent-gray-500, #64748b);font-size:.875rem}.error-banner,.error-alert{padding:8px 16px;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.875rem;margin-bottom:16px}.success-banner{padding:8px 16px;background-color:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:6px;color:#10b981;font-size:.875rem;margin-bottom:16px}.warning-banner{padding:8px 16px;background-color:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:6px;color:#f59e0b;font-size:.875rem;margin-bottom:16px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px 0 8px}.pagination .page-info{font-size:.875rem;color:var(--dcent-gray-500, #64748b)}[data-tooltip]{position:relative}[data-tooltip]:before,[data-tooltip]:after{content:"";position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:1000}[data-tooltip]:after{content:attr(data-tooltip);background:#1e293b;color:#fff;font-size:12px;line-height:1.4;padding:6px 10px;border-radius:6px;white-space:normal;max-width:240px;width:max-content;text-align:left;box-shadow:0 2px 8px #0003}[data-tooltip]:before{content:"";bottom:calc(100% + 2px);border:4px solid transparent;border-top-color:#1e293b;width:0;height:0;padding:0}[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem;color:var(--dcent-gray-800, #1e293b);background-color:var(--dcent-gray-100, #f1f5f9);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:#1e40af;text-decoration:none}a:hover{color:#1e3a8a}button{cursor:pointer;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}input,textarea,select{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem}table{width:100%;border-collapse:collapse}table th,table td{padding:8px 16px;text-align:left;border-bottom:1px solid var(--dcent-gray-200, #e2e8f0)}table th{font-size:.875rem;font-weight:600;color:var(--dcent-gray-600, #475569);background-color:var(--dcent-gray-50, #f8fafc)}table tbody tr:hover{background-color:var(--dcent-gray-50, #f8fafc)}.mono,.account-number{font-family:monospace}@media print{.sidebar,.sidebar-backdrop,.app-header,.ai-chat-widget{display:none!important}.main-content{margin-left:0!important;margin-top:0!important;padding:0!important}}
