@charset "UTF-8";:root{--sidebar-bg: #101B2D;--sidebar-bg-active: #1B2C47;--sidebar-text: #B8C2D4;--sidebar-text-active: #FFFFFF;--accent: #2F6FED;--page-bg: #F4F5F8;--card-bg: #FFFFFF;--border: #E4E6EB;--text-primary: #1A1F2B;--text-secondary: #6B7280;--success: #16A34A;--warning: #D97706;--danger: #DC2626}*{box-sizing:border-box}html,body{height:100%;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--page-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";letter-spacing:-.1px}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}button{font-family:inherit}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 2px #101b2d0a;transition:box-shadow .15s ease}.btn{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:8px;padding:10px 16px;font-size:13.5px;font-weight:600;cursor:pointer;transition:opacity .15s ease,transform .1s ease,box-shadow .15s ease}.btn:hover{opacity:.92}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 2px 6px #2f6fed40}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 2px 6px #dc262633}.btn-outline{background:#fff;color:var(--text-secondary);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--accent);color:var(--accent);background:#fff}.input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:13.5px;background:var(--page-bg);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #2f6fed1a}label.field-label{display:block;font-size:12.5px;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.page-header{background:#fff;border-bottom:1px solid var(--border);padding:18px 28px;display:flex;align-items:center;gap:12px;flex-shrink:0}.page-header h1{font-size:19px;font-weight:700;margin:0;flex:1;letter-spacing:-.3px;color:var(--text-primary)}.page-body{padding:24px 28px;overflow-y:auto;flex:1}table.data-table{width:100%;border-collapse:collapse}table.data-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);font-weight:700;padding:14px 18px;background:#fafbfd;border-bottom:1px solid var(--border)}table.data-table td{padding:14px 18px;border-bottom:1px solid var(--border);font-size:13.5px}table.data-table tbody tr{transition:background .12s ease}table.data-table tbody tr:hover{background:#f8faff}table.data-table tbody tr:last-child td{border-bottom:none}.status-chip{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11.5px;font-weight:600}.segmented{display:inline-flex;gap:2px;padding:4px;background:#fff;border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;box-shadow:0 1px 2px #101b2d08}.segmented-item{border:none;background:transparent;color:var(--text-secondary);font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:7px;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease;white-space:nowrap}.segmented-item:hover{color:var(--text-primary);background:var(--page-bg)}.segmented-item.active{background:var(--accent);color:#fff;box-shadow:0 2px 6px #2f6fed4d}.filter-bar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px 16px;margin-bottom:14px}.filter-group{display:flex;align-items:center;gap:8px}.filter-group-label{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap}.segmented-item.variant-success.active{background:var(--success);box-shadow:0 2px 6px #16a34a4d}.segmented-item.variant-danger.active{background:var(--danger);box-shadow:0 2px 6px #dc26264d}.segmented-item.variant-warning.active{background:var(--warning);box-shadow:0 2px 6px #d977064d}.summary-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:6px 13px;border-radius:20px;background:var(--page-bg);color:var(--text-secondary)}.summary-chip.danger{background:#fde8e8;color:var(--danger)}.summary-chip.success{background:#e6f7ec;color:var(--success)}.summary-chip.warning{background:#fef2e2;color:var(--warning)}.row-action-btn{display:inline-flex;align-items:center;gap:5px;border-radius:7px;padding:6px 12px;font-size:12px;font-weight:600;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:opacity .15s ease,transform .1s ease}.row-action-btn:hover{opacity:.85}.row-action-btn:active{transform:translateY(1px)}.row-action-btn.edit{background:var(--accent);color:#fff}.row-action-btn.ledger{background:#fff7e6;color:#b45309;border-color:#fde5b0}.row-action-btn.icon-only{width:32px;height:32px;padding:0;justify-content:center;background:#fef2f2;color:var(--danger);border-color:#fde2e2}.cell-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:16px}.cell-badge.danger{background:#fde8e8;color:var(--danger)}.cell-badge.success{background:#e6f7ec;color:var(--success)}.cell-badge.neutral{background:var(--page-bg);color:var(--text-secondary)}.modal-backdrop{position:fixed;inset:0;background:#101b2d73;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal-panel{background:#fff;border-radius:14px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040;animation:slideUp .18s ease}.modal-panel.wide{max-width:640px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media print{app-sidebar{display:none!important}.shell,.content{display:block!important;height:auto!important;overflow:visible!important;width:100%!important}.no-print{display:none!important}body{background:#fff!important}}
