
  * { box-sizing: border-box; margin: 0; padding: 0; }
  body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: #f5f5f5; color: #333; line-height: 1.5; }
  a { color: #0066cc; text-decoration: none; } a:hover { text-decoration: underline; }
  a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 2px solid #0066cc; outline-offset: 2px;
  }
  .skip-link { position: absolute; top: -40px; left: 0; padding: 8px; background: #0066cc; color: #fff; z-index: 100; }
  .skip-link:focus { top: 0; }
  header { background: #1a1a2e; color: #fff; padding: 12px 24px; display: flex; align-items: center; justify-content: space-between; }
  header h1 { font-size: 18px; font-weight: 600; }
  header nav a { color: #ccc; margin-left: 16px; font-size: 14px; } header nav a:hover { color: #fff; }
  main { max-width: 960px; margin: 24px auto; padding: 0 16px; }
  .card { background: #fff; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); padding: 24px; margin-bottom: 16px; }
  .btn { display: inline-block; padding: 8px 16px; border-radius: 4px; border: 1px solid #ccc; background: #fff; color: #333; cursor: pointer; font-size: 14px; }
  .btn:hover { background: #f0f0f0; }
  .btn-primary { background: #0066cc; color: #fff; border-color: #0066cc; } .btn-primary:hover { background: #0052a3; }
  .btn-danger { background: #cc3333; color: #fff; border-color: #cc3333; } .btn-danger:hover { background: #aa2222; }
  .btn-sm { padding: 4px 10px; font-size: 12px; }
  table { width: 100%; border-collapse: collapse; } th, td { padding: 10px 12px; text-align: left; border-bottom: 1px solid #eee; }
  th { background: #fafafa; font-weight: 600; font-size: 13px; text-transform: uppercase; color: #666; }
  .badge { display: inline-block; padding: 2px 8px; border-radius: 12px; font-size: 12px; font-weight: 600; }
  .badge-active { background: #d4edda; color: #155724; } .badge-paused { background: #fff3cd; color: #856404; }
  .badge-draft { background: #e2e3e5; color: #383d41; } .badge-archived { background: #f8d7da; color: #721c24; }
  .badge-success { background: #d4edda; color: #155724; } .badge-failure { background: #f8d7da; color: #721c24; }
  .badge-timeout { background: #fff3cd; color: #856404; } .badge-error { background: #f8d7da; color: #721c24; }
  .form-group { margin-bottom: 16px; } .form-group label { display: block; font-weight: 600; margin-bottom: 4px; font-size: 14px; }
  .form-group input, .form-group select, .form-group textarea { width: 100%; padding: 8px 12px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px; }
  .form-group .error-text { color: #cc3333; font-size: 12px; margin-top: 4px; }
  .alert { padding: 12px 16px; border-radius: 4px; margin-bottom: 16px; font-size: 14px; }
  .alert-error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
  .alert-info { background: #d1ecf1; color: #0c5460; border: 1px solid #bee5eb; }
  .alert-success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
  .loading { text-align: center; padding: 40px; color: #666; }
  .empty { text-align: center; padding: 40px; color: #999; }
  .actions { display: flex; gap: 8px; align-items: center; }
  .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
  .page-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
  .result-meta { font-size: 13px; color: #666; }
  dl { display: grid; grid-template-columns: 140px 1fr; gap: 8px 16px; } dt { font-weight: 600; color: #666; font-size: 14px; } dd { font-size: 14px; }
