/* admin.css — layout specific to the plugin-admin page. Colors/buttons/
   form-groups are reused from /css/main.css (same design tokens) so this
   file only adds what's genuinely admin-specific. */

.admin-screen {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.admin-login-card {
  margin: auto;
  width: 360px;
}
.admin-login-card h1 { font-size: 20px; margin-bottom: 6px; text-align: center; }
.admin-subtitle {
  color: var(--text-muted);
  font-size: 13px;
  text-align: center;
  margin-bottom: 20px;
}

.admin-error {
  color: var(--danger);
  font-size: 13px;
  min-height: 18px;
  margin: 8px 0;
}
.admin-success {
  color: #4caf50;
  font-size: 13px;
  min-height: 18px;
  margin: 8px 0;
}

.admin-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
}

.admin-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 20px 24px;
}
.admin-card h3 { margin-bottom: 16px; font-size: 16px; }

.admin-modules-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.admin-modules-table th, .admin-modules-table td {
  padding: 8px 10px;
  text-align: left;
  border-bottom: 1px solid var(--border);
}
.admin-modules-table th {
  color: var(--text-muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.admin-status-badge {
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}
.admin-status-active   { background: rgba(79, 143, 224, 0.2); color: var(--accent-hover); }
.admin-status-draft    { background: rgba(255, 167, 38, 0.2); color: var(--warning); }
.admin-status-released { background: rgba(76, 175, 80, 0.2); color: #4caf50; }
.admin-status-disabled { background: rgba(150, 150, 150, 0.2); color: var(--text-muted); }

.admin-row-actions { display: flex; gap: 6px; flex-wrap: wrap; }

.admin-settings-dialog {
  margin: auto;
  width: min(620px, calc(100vw - 24px));
  max-height: calc(100dvh - 24px);
  padding: 24px;
  overflow-y: auto;
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 16px;
  font-size: 16px;
}
.admin-settings-dialog::backdrop { background: rgb(0 0 0 / 65%); }
.admin-settings-dialog h2 { font-size: 22px; margin-bottom: 12px; }
.admin-settings-dialog p { line-height: 1.5; margin-bottom: 16px; }
.admin-settings-dialog label, .admin-settings-dialog input { font-size: 16px; }
.admin-settings-dialog input:not([type="checkbox"]), .admin-settings-dialog button { min-height: 48px; }
.admin-settings-dialog .admin-checkbox { display: flex; align-items: center; gap: 12px; min-height: 48px; }
.admin-settings-dialog input[type="checkbox"] { width: 24px; height: 24px; flex: 0 0 auto; }
.admin-settings-dialog .form-group p { margin: 6px 0 16px; }
