/* GENERATED FILE - DO NOT EDIT.
 * Copied from shared/ui/control-shell.css by scripts/sync-creds-manager.sh.
 * Edit the source and re-run that script; --check fails on a stale copy.
 */
/* Shared control-plane shell. Canonical values come from /tokens.css. */
html { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }
body { background: var(--bg) !important; color: var(--text) !important; font-family: var(--font) !important; }
a { color: var(--accent); }
.control-icon { width: 17px; height: 17px; display: inline-block; flex: none; vertical-align: -3px; }
.app-icon .control-icon, .card-icon .control-icon { width: 28px; height: 28px; }
.section-icon .control-icon { width: 19px; height: 19px; }
.role-pill .control-icon, .role-chip .control-icon { width: 15px; height: 15px; }
.enter-room .control-icon { width: 15px; height: 15px; }
.control-header {
  max-width: 1200px; margin: 0 auto var(--space-6); padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--border); display: flex; align-items: center;
  gap: var(--space-3); flex-wrap: wrap;
}
.control-brand { display: flex; align-items: center; gap: var(--space-3); min-width: 0; }
.control-brand-logo {
  width: 42px; height: 42px; border-radius: var(--radius-lg); object-fit: cover;
  border: 1px solid var(--border); background: var(--panel); box-shadow: var(--shadow-sm);
}
.control-brand-copy { min-width: 0; }
.control-brand-copy h1 { color: var(--text); font-size: var(--fs-xl); line-height: 1.2; margin: 0; }
.control-brand-copy p { color: var(--text-secondary); font-size: var(--fs-sm); margin: 2px 0 0; }
.control-header-actions { margin-left: auto; display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.theme-toggle, .control-back {
  min-width: 38px; min-height: 38px; border: 1px solid var(--border); border-radius: var(--radius-md);
  background: var(--panel); color: var(--text); display: inline-flex; align-items: center;
  justify-content: center; gap: var(--space-2); padding: var(--space-2) var(--space-3);
  font: inherit; font-size: var(--fs-md); text-decoration: none; cursor: pointer;
}
.theme-toggle:hover, .control-back:hover { background: var(--panel-hover); }
.control-page-theme { position: fixed; top: var(--space-4); right: var(--space-4); z-index: 20; }
.theme-toggle .theme-moon { display: none; }
html[data-theme="dark"] .theme-toggle .theme-sun { display: none; }
html[data-theme="dark"] .theme-toggle .theme-moon { display: inline-block; }
body > main, body > .wrap { color: var(--text); }
section, .panel, .tenant-card, .widget-card, .modal, .auth-modal, .setup-modal,
.app-card, .tg-row, .card, .res-card {
  background: var(--panel) !important; color: var(--text) !important;
  border-color: var(--border) !important; box-shadow: var(--shadow-sm) !important;
}
h1, h2, h3, .agent-name, .card-title, .app-name, .tg-name, .widget-metric,
.skill-section-head .section-title { color: var(--text) !important; }
.subtitle, .modal-sub, .agent-role, .auth-status, .hint, .skill-desc, .app-desc,
.tg-sub, .footnote, .residency-sub, .card-blurb, .widget-label, #greeting { color: var(--text-secondary) !important; }
input, textarea, select, .invite-url, .invite-result .url {
  background: var(--input-bg) !important; color: var(--text) !important;
  border-color: var(--border) !important; font-family: var(--font);
}
input:focus, textarea:focus, select:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px var(--focus-ring); }
button { font-family: var(--font); }
.header-btn, .modal-btn.primary, button#submit, #submit-btn, .enter-room, .tab-btn.active {
  background: var(--btn-send-bg) !important; color: white !important; border-color: transparent !important;
}
.header-btn:hover, .modal-btn.primary:hover, button#submit:hover:not(:disabled), #submit-btn:hover:not(:disabled) { background: var(--btn-send-hover) !important; }
.client-badge, .client-pill { background: var(--info-bg) !important; color: var(--info) !important; }
.role-chip { color: white; }
.live-badge, .app-status.soon, .tg-state.off, .tier-pill, .channel-chip,
.skill-section-head, .modal-btn.secondary, .auth-modal .secondary, .copy-btn {
  background: var(--neutral-bg) !important; color: var(--neutral) !important; border-color: var(--border) !important;
}
.live-badge.online, .app-status.live, .tg-state.on, .invite-result,
.result.ok, .health-row.green { background: var(--success-bg) !important; color: var(--success) !important; }
.channel-chip.beta, .tier-pill.premium, .health-row.yellow { background: var(--warning-bg) !important; color: var(--warning-strong) !important; }
.channel-chip.stable, .tier-pill.baseline { background: var(--info-bg) !important; color: var(--info) !important; }
.error, .modal-error, .result.err, .health-row.red { background: var(--danger-bg) !important; color: var(--danger) !important; }
.live-dot { background: var(--neutral) !important; }
.online .live-dot { background: var(--presence-online) !important; }
.toast { background: var(--primary) !important; color: var(--bg) !important; }
table, thead th, .health-table { background: var(--panel) !important; color: var(--text) !important; }
th, td, thead th, tbody td, .tg-edit, .setup-step, .setup-actions, .setup-modal-head { border-color: var(--border) !important; }
.health-table th { background: var(--panel-hover) !important; color: var(--text) !important; }
.health-table { width: 100%; border-collapse: collapse; font-size: var(--fs-md); border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-sm); }
.health-table th, .health-table td { padding: 10px 12px; text-align: left; vertical-align: top; }
.health-table th { font-weight: 600; font-size: var(--fs-xs); text-transform: uppercase; letter-spacing: 0.04em; }
.health-slug, .health-msg { color: var(--text-secondary) !important; font-family: var(--font-mono) !important; }
.health-msg { font-size: var(--fs-xs); word-break: break-all; }
.health-fail { color: var(--danger) !important; }
.health-test-btn { padding: var(--space-1) 10px; border-radius: var(--radius-sm); border: 1px solid var(--border); background: var(--panel); color: var(--text); cursor: pointer; font-size: var(--fs-sm); white-space: nowrap; }
.health-test-btn:hover:not(:disabled) { background: var(--info-bg); border-color: var(--accent); color: var(--accent); }
.health-test-btn:disabled { opacity: 0.6; cursor: wait; }
.small-link, .invite-url, .invite-result .url { font-family: var(--font-mono) !important; }
.role-card, .modal .role-card { background: var(--input-bg) !important; border-color: var(--border) !important; }
.role-card:hover, .modal .role-card:hover { background: var(--panel-hover) !important; }
.role-input:checked + .role-card, .role-radio:checked + .role-card, .modal .role-card.selected,
.card.selected, .res-card.selected { border-color: var(--accent) !important; background: var(--info-bg) !important; }
.role-input:focus-visible + .role-card, .role-radio:focus-visible + .role-card,
.card:focus-visible, .res-card:focus-visible, button:focus-visible, a:focus-visible { outline: 3px solid var(--focus-ring); outline-offset: 2px; }
@media (max-width: 600px) {
  body { padding: var(--space-4) !important; }
  .control-header { align-items: flex-start; }
  .control-brand { width: calc(100% - 50px); }
  .control-header-actions { width: 100%; margin-left: 0; }
  .control-header-actions .header-btn { flex: 1; justify-content: center; min-height: 42px; }
  section, .panel, .modal, .auth-modal { padding: var(--space-4) !important; }
  .tabs { width: 100% !important; overflow-x: auto; }
  .tab-btn { white-space: nowrap; }
  .tenant-list, .apps-grid, .cards, .residency-options { grid-template-columns: 1fr !important; }
  .role-cards { flex-direction: column; }
  .panel.table-panel, .table-scroll { overflow-x: auto; padding: 0 !important; }
  table { min-width: 640px; }
  .modal { width: min(100%, 460px) !important; max-width: calc(100vw - 32px) !important; }
}
