:root{--df-bg: #0f1419;--df-surface: #1a2332;--df-surface-hover: #243044;--df-border: #2d3a4f;--df-text: #e8edf4;--df-muted: #8b9cb3;--df-accent: #3d9cf0;--df-accent-dim: #2563a8;--df-success: #34c759;--df-warning: #f5a623;--df-danger: #ff453a;--df-radius: 10px;--df-font: "DM Sans", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--df-font);background:var(--df-bg);color:var(--df-text);line-height:1.5;min-height:100vh}a{color:var(--df-accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}.df-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1rem;border-radius:8px;border:1px solid var(--df-border);background:var(--df-surface);color:var(--df-text);cursor:pointer;font-size:.9rem;font-weight:500}.df-btn:hover:not(:disabled){background:var(--df-surface-hover)}.df-btn:disabled{opacity:.5;cursor:not-allowed}.df-btn-primary{background:var(--df-accent);border-color:var(--df-accent-dim);color:#fff}.df-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.df-btn-ghost{background:transparent}.df-btn-danger{border-color:var(--df-danger);color:var(--df-danger)}.df-card{background:var(--df-surface);border:1px solid var(--df-border);border-radius:var(--df-radius);padding:1.25rem}.df-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.df-field label{font-size:.8rem;color:var(--df-muted);font-weight:500}.df-field input,.df-field select,.df-field textarea{padding:.55rem .75rem;border-radius:8px;border:1px solid var(--df-border);background:var(--df-bg);color:var(--df-text);font-size:.95rem}.df-field input:focus,.df-field select:focus,.df-field textarea:focus{outline:2px solid var(--df-accent);outline-offset:0}.df-table-wrap{overflow-x:auto;border:1px solid var(--df-border);border-radius:var(--df-radius)}table.df-table{width:100%;border-collapse:collapse;font-size:.875rem}.df-table th,.df-table td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid var(--df-border)}.df-table th{background:var(--df-bg);color:var(--df-muted);font-weight:600}.df-table tr:last-child td{border-bottom:none}.df-table tr:hover td{background:#3d9cf00f}.badge{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-open{background:#f5a62333;color:var(--df-warning)}.badge-resolved{background:#34c75933;color:var(--df-success)}.badge-critical{background:#ff453a33;color:var(--df-danger)}.badge-warning{background:#f5a62333;color:var(--df-warning)}.badge-info{background:#3d9cf033;color:var(--df-accent)}
