/* Unified visual language for non-logbook operational pages.
   Keep layouts intact; override palette/surfaces/controls to match the Logbook style. */

.theme-deck,
.theme-projects,
.theme-architecture,
.theme-organization {
  --ops-bg-0: #07111a;
  --ops-bg-1: #0b1622;
  --ops-bg-2: #122235;
  --ops-panel: rgba(11, 21, 34, 0.82);
  --ops-panel-strong: rgba(8, 18, 29, 0.94);
  --ops-border: rgba(143, 176, 214, 0.18);
  --ops-text: #e8f2ff;
  --ops-muted: #9db4cd;
  --ops-accent: #2ec5ff;
  --ops-accent-2: #7ef7d4;
  --ops-warn: #ffb74a;
  --ops-error: #ff6f8f;
  --ops-ok: #71f2b7;
  --ops-shadow: 0 24px 60px rgba(0, 0, 0, 0.34);
  color: var(--ops-text);
  background:
    radial-gradient(circle at 12% 10%, rgba(46, 197, 255, 0.14), transparent 42%),
    radial-gradient(circle at 82% 5%, rgba(126, 247, 212, 0.10), transparent 40%),
    linear-gradient(180deg, var(--ops-bg-0), #050b12 72%) !important;
}

.theme-deck .ambient-grid,
.theme-projects .texture,
.theme-architecture .grid-noise,
.theme-organization .texture {
  opacity: 0.55;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px) !important;
}

.theme-deck .halo {
  filter: blur(32px);
  opacity: 0.14;
}

.theme-deck .halo-a {
  background: var(--ops-accent) !important;
}

.theme-deck .halo-b {
  background: var(--ops-accent-2) !important;
}

.theme-deck .mast,
.theme-projects .topbar,
.theme-architecture .topbar,
.theme-organization .topbar {
  backdrop-filter: blur(16px);
}

.theme-deck .mast {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(5, 11, 18, 0.66);
  border-bottom: 1px solid rgba(143, 176, 214, 0.12);
  padding-top: 1.25rem;
}

.theme-projects .topbar,
.theme-architecture .topbar,
.theme-organization .topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(5, 11, 18, 0.58);
  border-bottom: 1px solid rgba(143, 176, 214, 0.12);
  padding-top: 1rem !important;
  padding-bottom: 0.7rem;
}

.theme-deck .intro-copy,
.theme-deck .eyebrow,
.theme-deck .sync-meta,
.theme-deck .allowlist-state,
.theme-projects .eyebrow,
.theme-projects .subhead,
.theme-architecture .eyebrow,
.theme-architecture .subhead,
.theme-organization .eyebrow,
.theme-organization .subhead {
  color: var(--ops-muted) !important;
}

.theme-deck .brand-chip,
.theme-deck .status-chip,
.theme-projects .summary-card,
.theme-architecture .summary-card,
.theme-organization .summary-card {
  border-color: rgba(143, 176, 214, 0.18) !important;
}

.theme-deck .brand-chip {
  background: rgba(46, 197, 255, 0.08) !important;
  color: #d8f5ff !important;
}

.theme-deck .status-chip {
  background: rgba(113, 242, 183, 0.10) !important;
  color: #caffea !important;
}

.theme-deck .status-chip.degraded {
  background: rgba(255, 111, 143, 0.10) !important;
  color: #ffd4df !important;
}

.theme-deck .telegram-link,
.theme-projects .btn,
.theme-architecture .btn,
.theme-organization .btn {
  color: var(--ops-text) !important;
  border: 1px solid rgba(143, 176, 214, 0.20) !important;
  background: rgba(255, 255, 255, 0.02) !important;
  box-shadow: none !important;
}

.theme-deck .telegram-link:hover,
.theme-projects .btn:hover,
.theme-architecture .btn:hover,
.theme-organization .btn:hover {
  border-color: rgba(46, 197, 255, 0.35) !important;
  background: rgba(46, 197, 255, 0.08) !important;
  filter: none !important;
}

.theme-deck .telegram-link[aria-current="page"],
.theme-projects .btn[aria-current="page"],
.theme-architecture .btn[aria-current="page"],
.theme-organization .btn[aria-current="page"] {
  background: linear-gradient(135deg, rgba(126, 247, 212, 0.16), rgba(46, 197, 255, 0.14)) !important;
  border-color: rgba(126, 247, 212, 0.32) !important;
  color: #e6fff8 !important;
  box-shadow: inset 0 0 0 1px rgba(126, 247, 212, 0.08) !important;
}

.theme-projects .btn.solid,
.theme-architecture .btn.solid,
.theme-organization .btn.solid,
.theme-deck .telegram-link:first-of-type,
.theme-deck .status-chip + .telegram-link {
  background: linear-gradient(135deg, rgba(46, 197, 255, 0.95), rgba(17, 132, 204, 0.95)) !important;
  border-color: rgba(46, 197, 255, 0.50) !important;
  color: #04111b !important;
}

.theme-deck .hero,
.theme-projects .panel,
.theme-projects .board-shell,
.theme-projects .add-card-shell,
.theme-architecture .panel,
.theme-organization .panel,
.theme-deck .panel,
.theme-deck .metric-card {
  background: var(--ops-panel) !important;
  border: 1px solid var(--ops-border) !important;
  box-shadow: var(--ops-shadow) !important;
  color: var(--ops-text) !important;
}

.theme-deck .hero-left,
.theme-deck .hero-right {
  background: rgba(255, 255, 255, 0.015) !important;
  border: 1px solid rgba(143, 176, 214, 0.10) !important;
}

.theme-deck .lock-box {
  background: rgba(255, 255, 255, 0.03) !important;
  border-color: rgba(143, 176, 214, 0.18) !important;
  color: #d7ecff !important;
}

.theme-deck .metric-card::after {
  background: linear-gradient(90deg, rgba(46, 197, 255, 0), rgba(46, 197, 255, 0.9), rgba(46, 197, 255, 0)) !important;
}

.theme-deck .metric-label,
.theme-projects .summary-card p,
.theme-architecture .summary-card p,
.theme-organization .summary-card p {
  color: var(--ops-muted) !important;
}

.theme-deck .metric-value,
.theme-projects .summary-card h2,
.theme-architecture .summary-card h2,
.theme-organization .summary-card h2,
.theme-projects .topbar h1,
.theme-architecture .topbar h1,
.theme-organization h1 {
  color: var(--ops-text) !important;
}

.theme-projects .board-head p,
.theme-projects .panel-head p,
.theme-architecture .panel-head p,
.theme-organization .panel-head p,
.theme-deck .panel-head p,
.theme-projects .muted,
.theme-architecture .muted,
.theme-organization .muted,
.theme-deck .empty-state {
  color: var(--ops-muted) !important;
}

.theme-projects .kanban-column,
.theme-projects .card,
.theme-projects .repo-table-wrap,
.theme-projects .simple-list li,
.theme-architecture .repo-table-wrap,
.theme-organization .repo-table-wrap,
.theme-deck .signal-card,
.theme-deck .surface-card,
.theme-deck .command,
.theme-deck .pulse-chart,
.theme-deck .analysis-card,
.theme-deck .analysis-list li {
  background: rgba(255, 255, 255, 0.015) !important;
  border: 1px solid rgba(143, 176, 214, 0.10) !important;
  color: var(--ops-text) !important;
}

.theme-deck .signal-card a,
.theme-projects .repo-link {
  color: #d5f2ff !important;
}

.theme-deck .signal-card a:hover {
  text-decoration-color: rgba(46, 197, 255, 0.55) !important;
}

.theme-deck .badge,
.theme-projects .inline-pill,
.theme-projects .inline-pill.clean,
.theme-projects .inline-pill.dirty,
.theme-organization .badge,
.theme-architecture .badge {
  background: rgba(255, 255, 255, 0.03) !important;
  border-color: rgba(143, 176, 214, 0.18) !important;
  color: #d8ebff !important;
}

.theme-deck .badge.score-high,
.theme-projects .inline-pill.clean,
.theme-organization .badge.ready {
  border-color: rgba(113, 242, 183, 0.28) !important;
  color: #d6ffef !important;
  background: rgba(113, 242, 183, 0.10) !important;
}

.theme-deck .badge.score-low,
.theme-projects .inline-pill.dirty,
.theme-organization .badge.blocked {
  border-color: rgba(255, 111, 143, 0.28) !important;
  color: #ffd7e1 !important;
  background: rgba(255, 111, 143, 0.10) !important;
}

.theme-organization .badge.degraded {
  border-color: rgba(255, 183, 74, 0.28) !important;
  color: #ffe7bc !important;
  background: rgba(255, 183, 74, 0.10) !important;
}

.theme-projects th,
.theme-projects td,
.theme-organization th,
.theme-organization td,
.theme-architecture th,
.theme-architecture td {
  border-bottom-color: rgba(143, 176, 214, 0.10) !important;
  color: var(--ops-text) !important;
}

.theme-projects th,
.theme-organization th,
.theme-architecture th {
  background: rgba(255, 255, 255, 0.02) !important;
  color: var(--ops-muted) !important;
}

.theme-projects input,
.theme-projects select,
.theme-projects textarea,
.theme-organization input,
.theme-organization select,
.theme-organization textarea,
.theme-architecture input,
.theme-architecture select,
.theme-architecture textarea {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(143, 176, 214, 0.18) !important;
  color: var(--ops-text) !important;
}

.theme-projects input::placeholder,
.theme-projects textarea::placeholder {
  color: var(--ops-muted) !important;
}

.theme-deck .command {
  color: #d8f1ff !important;
}

.theme-deck .command:hover {
  box-shadow: none !important;
  transform: translateY(-1px);
}

.theme-deck .analysis-bar-track {
  background: rgba(255, 255, 255, 0.05) !important;
}

.theme-deck .analysis-bar-fill {
  background: linear-gradient(90deg, rgba(46, 197, 255, 0.95), rgba(126, 247, 212, 0.85)) !important;
}

.theme-projects .summary-card.accent,
.theme-organization .summary-card.accent,
.theme-architecture .summary-card.accent {
  background: linear-gradient(145deg, rgba(46, 197, 255, 0.12), rgba(11, 21, 34, 0.90)) !important;
  border-color: rgba(46, 197, 255, 0.20) !important;
}
