:root,html[data-theme=dark]{--bg-page: #0d1a0d;--bg-sidebar: #111d11;--bg-header: #111d11;--bg-card: #1a2a1a;--bg-card-alt: #162216;--bg-input: #0d1a0d;--bg-hover: #243424;--bg-secondary: #1a2a1a;--bg-primary: #0d1a0d;--text-primary: #e8f0e8;--text-secondary: #8fa88f;--text-muted: #607060;--border-color: rgba(255,255,255,.08);--border-focus: #5a7a3a;--primary: #5a7a3a;--primary-hover: #6b8c46;--primary-color: #5a7a3a;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--info: #3b82f6;--muted: #94a3b8;--shadow-sm: 0 1px 3px rgba(0,0,0,.4);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--shadow-lg: 0 8px 24px rgba(0,0,0,.6);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full:9999px;--card-bg: #1a2a1a;--sidebar-bg: #111d11;--header-bg: #111d11}html[data-theme=light]{--bg-page: #f2f5f0;--bg-sidebar: #ffffff;--bg-header: #ffffff;--bg-card: #ffffff;--bg-card-alt: #f7faf5;--bg-input: #f7faf5;--bg-hover: #e8f0e2;--bg-secondary: #f2f5f0;--bg-primary: #f2f5f0;--text-primary: #1a2e1a;--text-secondary: #4a6a4a;--text-muted: #7a9a7a;--border-color: rgba(0,0,0,.1);--border-focus: #5a7a3a;--primary: #5a7a3a;--primary-hover: #4a6830;--primary-color: #5a7a3a;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--info: #2563eb;--muted: #64748b;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.12);--shadow-lg: 0 8px 24px rgba(0,0,0,.16);--card-bg: #ffffff;--sidebar-bg: #ffffff;--header-bg: #ffffff}html{transition:background-color .25s ease,color .25s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-page);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-card)}::-webkit-scrollbar-thumb{background:#2a3a2a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a4a3a}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#1a2a1a 25%,#243424 50%,#1a2a1a 75%);background-size:2000px 100%;animation:shimmer 1.5s infinite linear;border-radius:var(--radius-sm);display:inline-block}.skeleton-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid var(--border-color)}.container-fluid{padding:1.5rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{box-shadow:var(--shadow-md);border-color:#ffffff24}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.stat-card .stat-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.stat-card .stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-card .stat-sub{font-size:.78rem;color:var(--text-secondary)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#6b8c4659}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1.1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;border:1px solid transparent;transition:all .2s ease;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--text-primary);border-color:var(--border-color)}.btn-outline:hover{background:var(--bg-hover);border-color:#ffffff26}.btn-danger{background:rgba(239,68,68,.15);color:var(--danger);border-color:#ef444459}.btn-danger:hover{background:rgba(239,68,68,.25)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:.25rem .65rem;font-size:.75rem;border-radius:var(--radius-sm)}.btn-block{width:100%}.table-responsive{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{padding:.75rem 1rem;text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap}.table td{padding:.85rem 1rem;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:rgba(255,255,255,.03)}.table tbody tr:last-child td{border-bottom:none}.status-badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:600;text-transform:capitalize;letter-spacing:.03em}.status-badge-active,.status-badge-paid,.status-badge-completed,.status-badge-resolved{background:rgba(34,197,94,.15);color:var(--success)}.status-badge-pending,.status-badge-open,.status-badge-in_progress{background:rgba(245,158,11,.15);color:var(--warning)}.status-badge-inactive,.status-badge-failed,.status-badge-defaulted,.status-badge-reversed,.status-badge-blacklisted,.status-badge-terminated,.status-badge-expired,.status-badge-closed{background:rgba(239,68,68,.15);color:var(--danger)}.status-badge-partial,.status-badge-renewed{background:rgba(59,130,246,.15);color:var(--info)}.status-badge-draft,.status-badge-reserved,.status-badge-maintenance{background:rgba(148,163,184,.15);color:var(--muted)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.page-header .page-header-left h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .2rem}.page-header .page-header-left .breadcrumb{font-size:.78rem;color:var(--text-secondary)}.page-header .page-header-right{display:flex;gap:.5rem;align-items:center}.filters-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;padding:1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.form-control{width:100%;padding:.6rem .9rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.form-control::placeholder{color:var(--text-muted)}.form-control:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #5a7a3a2e}.form-control.error{border-color:var(--danger)}select.form-control{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='%238fa88f' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.2rem}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:580px;max-height:90vh;overflow-y:auto}.modal-card .modal-header{background:#243424;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);border-radius:var(--radius-xl) var(--radius-xl) 0 0;display:flex;align-items:center;justify-content:space-between}.modal-card .modal-header h3{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0}.modal-card .modal-body{padding:1.5rem}.modal-card .modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.75rem}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem}.tab{padding:.7rem 1.25rem;cursor:pointer;border:none;background:none;color:var(--text-secondary);font-weight:500;font-size:.875rem;transition:color .2s ease;position:relative}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary-hover)}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--primary-hover);border-radius:2px 2px 0 0}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--text-secondary)}.empty-state .empty-icon{font-size:2.5rem;margin-bottom:1rem;opacity:.5}.empty-state .empty-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.4rem}.empty-state .empty-sub{font-size:.875rem}.text-success{color:var(--success)!important}.text-warning{color:var(--warning)!important}.text-danger{color:var(--danger)!important}.text-info{color:var(--info)!important}.text-muted{color:var(--text-secondary)!important}.error-msg{font-size:.75rem;color:var(--danger);margin-top:.2rem}@media (max-width: 768px){.container-fluid{padding:1rem}.page-header{flex-direction:column;gap:.75rem}.filters-row{flex-direction:column}.stat-card .stat-value{font-size:1.6rem}}@media (max-width: 480px){.table th,.table td{padding:.6rem .75rem;font-size:.8rem}.btn{font-size:.8rem;padding:.4rem .85rem}}
