body{background:var(--surface);color:var(--text-primary)}a{color:var(--primary);text-decoration:none}a:hover{filter:brightness(.95)}h1,h2,h3{color:var(--text-primary);margin:0 0 8px}h1{font-size:24px;line-height:32px}h1,h2{font-weight:600}h2{font-size:20px;line-height:28px}h3{font-size:18px;line-height:26px;font-weight:600}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn,.card,button{background:var(--surface-2)}.btn,button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);color:var(--text-primary);border-radius:calc(var(--radius) - 4px);padding:8px 12px;cursor:pointer}.btn:hover,button:hover{filter:brightness(.98)}button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:white;border-color:var(--primary)}.btn-primary:hover{filter:brightness(.96)}.btn-ghost{background:transparent;border-color:var(--border)}input,select,textarea{background:var(--surface-3);color:var(--text-primary);border:1px solid var(--border);border-radius:calc(var(--radius) - 6px);padding:8px 10px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 30%,transparent)}table{width:100%;border-collapse:collapse}thead th{background:var(--surface-2);color:var(--text-secondary);text-align:left;font-weight:600}tbody td,thead th{border-bottom:1px solid var(--border);padding:12px}tbody td{color:var(--text-primary)}tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--surface-2) 40%,transparent)}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px}.badge-success{background:color-mix(in srgb,var(--success) 18%,white);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 40%,transparent)}.badge-warning{background:color-mix(in srgb,var(--warning) 18%,white);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 40%,transparent)}.badge-danger{background:color-mix(in srgb,var(--danger) 18%,white);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.hr{height:1px;background:var(--border);border:0}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.m-2{margin:8px}.m-3{margin:12px}.m-4{margin:16px}.scroll{overflow:auto}