  :root { color-scheme: dark; }
  * { box-sizing: border-box; }
  body { margin: 0; font: 14px/1.4 ui-monospace,Menlo,Consolas,monospace; background: #0e0f12; color: #d8dee9; }
  header { padding: 10px 14px; border-bottom: 1px solid #2a2d34; display: flex; gap: 16px; align-items: center; }
  header h1 { font-size: 14px; margin: 0; font-weight: 600; }
  header .status { color: #8da0b8; font-size: 12px; }
  header .daemon-badge { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 12px; padding: 3px 8px; border-radius: 10px; background: #1b1e25; border: 1px solid #2a2d34; }
  .provider-quota-strip { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
  header .provider-quota-strip { margin-left: auto; }
  .provider-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; padding: 2px 8px; border-radius: 10px; background: #1b1e25; border: 1px solid #2a2d34; color: #d8dee9; }
  .provider-chip .dot { width: 7px; height: 7px; border-radius: 50%; background: #6c7889; }
  .provider-chip.alive .dot { background: #6cc24a; box-shadow: 0 0 5px rgba(108,194,74,0.55); }
  .provider-chip.alive { color: #a8d99a; }
  .provider-chip.dead .dot { background: #c04545; }
  .provider-chip.dead { color: #ffb0b0; }
  .provider-chip.unknown .dot { background: #d4a017; }
  .provider-chip.unknown { color: #e5c97a; }
  header .daemon-dot { width: 8px; height: 8px; border-radius: 50%; background: #6c7889; }
  header .daemon-badge.alive .daemon-dot { background: #6cc24a; box-shadow: 0 0 6px rgba(108,194,74,0.6); }
  header .daemon-badge.alive #daemon-text { color: #a8d99a; }
  header .daemon-badge.dead .daemon-dot { background: #c04545; }
  header .daemon-badge.dead #daemon-text { color: #ffb0b0; }
  header .daemon-badge.unknown #daemon-text { color: #8da0b8; }
  header .pause-btn { font: inherit; font-size: 11px; padding: 4px 12px; border-radius: 10px; cursor: pointer; background: #2a2d34; border: 1px solid #3a3f4a; color: #d8dee9; }
  header .pause-btn:hover { background: #3a3f4a; }
  header .pause-btn.paused { background: #5a4520; border-color: #8c6a2f; color: #f0d9a8; }
  header .pause-btn.pending { background: #3a3f4a; color: #c8b88a; cursor: default; }
  header .pause-btn:disabled { opacity: .6; cursor: default; }
  header .github-badge { display: inline-flex; align-items: center; font-size: 12px; padding: 3px 8px; border-radius: 10px; background: #16241a; border: 1px solid #2d4a32; color: #a8d99a; }
  header .gh-setup-btn { font: inherit; font-size: 11px; padding: 4px 12px; border-radius: 10px; cursor: pointer; background: #1e2d3a; border: 1px solid #2f4a63; color: #9fd0e0; }
  header .gh-setup-btn:hover { background: #274056; }
  header .gh-setup-btn:disabled { opacity: .6; cursor: default; }
  header .gh-visibility-btn { font: inherit; font-size: 11px; padding: 4px 12px; border-radius: 10px; cursor: pointer; background: #2a2d34; border: 1px solid #3a3f4a; color: #d8dee9; }
  header .gh-visibility-btn:hover { background: #3a3f4a; }
  header .gh-visibility-btn:disabled { opacity: .6; cursor: default; }
  .columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; padding: 10px; }
  .col { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; min-height: 120px; }
  .col summary { font-size: 12px; padding: 8px 10px; margin: 0; border-bottom: 1px solid #2a2d34; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; cursor: pointer; user-select: none; list-style: none; display: flex; align-items: center; gap: 7px; }
  .col summary::-webkit-details-marker,
  .stagebar summary::-webkit-details-marker,
  .quota-section summary::-webkit-details-marker,
  .usage-section summary::-webkit-details-marker,
  .cycle-history summary::-webkit-details-marker,
  .logs summary::-webkit-details-marker { display: none; }
  .col summary::before,
  .stagebar summary::before,
  .quota-section summary::before,
  .usage-section summary::before,
  .cycle-history summary::before,
  .logs summary::before { content: "▾"; color: #6c7889; margin-right: 2px; }
  .col:not([open]) summary::before,
  .stagebar:not([open]) summary::before,
  .quota-section:not([open]) summary::before,
  .usage-section:not([open]) summary::before,
  .cycle-history:not([open]) summary::before,
  .logs:not([open]) summary::before { content: "▸"; }
  .col summary > span { flex: 1 1 auto; min-width: 0; }
  .col ul { list-style: none; margin: 0; padding: 6px; }
  .col li { padding: 6px 8px; border-radius: 3px; margin-bottom: 3px; background: #1b1e25; font-size: 12px; word-break: break-word; }
  .col li .meta { color: #6c7889; font-size: 11px; margin-top: 2px; }
  .verdict-approve { border-left: 3px solid #6cc24a; }
  .verdict-request-changes { border-left: 3px solid #d4a017; }
  .verdict-reject { border-left: 3px solid #c04545; }
  .verdict-continue { background: #2d5a3d; color: #b8e0c4; padding: 1px 7px; border-radius: 10px; font-size: 11px; font-weight: 600; text-transform: uppercase; }
  .verdict-redirect { background: #5a4f2d; color: #e0d4a0; padding: 1px 7px; border-radius: 10px; font-size: 11px; font-weight: 600; text-transform: uppercase; }
  .verdict-abort { background: #6b3a3a; color: #ffb0b0; padding: 1px 7px; border-radius: 10px; font-size: 11px; font-weight: 600; text-transform: uppercase; }
  .phase-badge { background: #2a2d34; color: #8da0b8; padding: 1px 7px; border-radius: 10px; font-size: 11px; text-transform: uppercase; }
  .verdicts-section { padding: 10px; }
  .verdicts-section > summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; cursor: pointer; margin-bottom: 8px; user-select: none; }
  .verdict-row { display: flex; gap: 8px; align-items: flex-start; padding: 7px 10px; background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; margin-bottom: 5px; font-size: 12px; }
  .verdict-rationale { color: #d8dee9; flex: 1; word-break: break-word; }
  .stagebar { padding: 10px 14px; border-bottom: 1px solid #2a2d34; background: #12141a; }
  .stagebar summary { display: flex; gap: 10px; align-items: baseline; cursor: pointer; user-select: none; list-style: none; }
  .stage-label { font-size: 13px; font-weight: 600; padding: 3px 10px; border-radius: 12px; background: #2a2d34; color: #d8dee9; text-transform: uppercase; letter-spacing: .04em; }
  .stage-label.phase-suggester { background: #2c3e50; }
  .stage-label.phase-ranker { background: #4a3f6b; }
  .stage-label.phase-workers { background: #2d5a3d; }
  .stage-label.phase-reviewers { background: #6b4f3a; }
  .stage-label.phase-consult { background: #4a4a4a; }
  .stage-label.phase-quota_sleep { background: #6b3a3a; color: #ffb0b0; }
  .stage-iter { color: #8da0b8; font-size: 12px; }
  .stage-source { color: #6c7889; font-size: 11px; margin-left: auto; }
  .worker-row { display: flex; gap: 6px; flex-wrap: wrap; }
  .worker-card { background: #1b1e25; border: 1px solid #2a2d34; border-radius: 4px; padding: 5px 9px; font-size: 11px; min-width: 140px; }
  .worker-card .wid { font-weight: 600; color: #d8dee9; }
  .worker-card .wstatus { padding: 1px 6px; border-radius: 8px; font-size: 10px; margin-left: 4px; }
  .wstatus.s-running { background: #2d5a3d; color: #b8e0c4; }
  .wstatus.s-queued { background: #3a3f4a; color: #a0a8b4; }
  .wstatus.s-reviewing { background: #6b4f3a; color: #ffd0a0; }
  .wstatus.s-done { background: #2a4a30; color: #8fc09e; }
  .wstatus.s-blocked { background: #6b3a3a; color: #ffb0b0; }
  .wstatus.s-error { background: #6b3a3a; color: #ffb0b0; }
  .wstatus.s-idle { background: #2a2d34; color: #8da0b8; }
  .worker-card .wmeta { color: #8da0b8; font-size: 10px; margin-top: 2px; word-break: break-all; }
  .agents-row { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 4px; }
  .agent-card { background: #1b1e25; border: 1px solid #2a2d34; border-radius: 4px; padding: 5px 9px; font-size: 11px; min-width: 120px; }
  .agent-card .wid { font-weight: 600; color: #d8dee9; }
  .agent-card .wstatus { padding: 1px 6px; border-radius: 8px; font-size: 10px; margin-left: 4px; }
  .agent-card .wmeta { color: #8da0b8; font-size: 10px; margin-top: 2px; word-break: break-all; }
  .wmodel { display: inline-block; margin-top: 3px; padding: 1px 6px; border-radius: 8px; font-size: 10px; background: #25303a; color: #9fd0e0; border: 1px solid #2f4252; word-break: break-all; }
  .wstatus.s-killed { background: #6b5a2d; color: #ffe0a0; }
  button.agent-stop { background: #3a2a2a; color: #ffb0b0; border: 1px solid #6b3a3a; border-radius: 3px; padding: 0 5px; font-size: 11px; margin-left: 6px; cursor: pointer; line-height: 14px; }
  button.agent-stop:hover { background: #5a3a3a; color: #fff; }
  button.agent-stop:disabled { opacity: 0.5; cursor: default; }
  .goal-row { display: flex; gap: 8px; align-items: center; flex: 1 1 100%; font-size: 12px; }
  .goal-label { color: #8da0b8; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
  .goal-current { color: #d8dee9; font-weight: 500; flex: 1 1 auto; min-width: 0; white-space: normal; overflow-wrap: anywhere; word-break: break-word; }
  .goal-file { color: #d8dee9; font-weight: 600; white-space: nowrap; }
  .goal-title { color: #8da0b8; font-size: 11px; flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .goal-pending { color: #d4a017; font-size: 11px; font-style: italic; }
  .goal-edit-btn { background: #2a2d34; border: 1px solid #3a3f4a; color: #d8dee9; padding: 2px 9px; border-radius: 3px; font: inherit; font-size: 11px; cursor: pointer; }
  .goal-edit-btn:hover { background: #3a3f4a; }
  .goal-edit { padding: 12px 14px; background: #15171c; border-bottom: 1px solid #2a2d34; }
  .goal-edit textarea { width: 100%; background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 8px; font: inherit; font-size: 12px; resize: vertical; }
  .goal-edit-actions { display: flex; gap: 8px; align-items: center; margin-top: 6px; }
  .goal-edit-actions button { background: #3a5a8c; border: 1px solid #4a6da0; color: #d8dee9; padding: 5px 14px; border-radius: 3px; font: inherit; font-size: 12px; cursor: pointer; }
  .goal-edit-actions button.secondary { background: #2a2d34; border-color: #3a3f4a; }
  .goal-edit-actions button:hover { filter: brightness(1.15); }
  .goal-feedback { color: #8da0b8; font-size: 11px; }
  .goal-feedback.error { color: #ff7070; }
  .goal-feedback.success { color: #6cc24a; }
  .goal-edit-block { margin-bottom: 12px; }
  .goal-edit-block label { display: block; font-size: 11px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 5px; }
  .goal-new-row { display: flex; gap: 8px; align-items: center; margin-bottom: 6px; }
  .goal-new-row input[type=text] { flex: 0 1 320px; background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 4px 8px; font: inherit; font-size: 12px; }
  .goal-hint-inline { font-size: 10px; color: #6c7889; text-transform: none; letter-spacing: 0; }
  #goal-new-content { width: 100%; background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 6px 8px; font: inherit; font-size: 12px; resize: vertical; min-height: 140px; }
  .goal-overwrite-label { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: #8da0b8; text-transform: none; letter-spacing: 0; cursor: pointer; }
  .goal-overwrite-label input { accent-color: #6cc24a; }
  .goal-hint { text-transform: none; letter-spacing: 0; color: #6c7889; font-size: 11px; }
  .goal-hint.error { color: #ff7070; }
  .goal-edit select { background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 5px 8px; font: inherit; font-size: 12px; flex: 1 1 auto; min-width: 0; max-width: 100%; }
  .goal-viewer { background: #0e0f12; border: 1px solid #2a2d34; border-radius: 3px; padding: 10px; margin-top: 4px; max-height: 340px; overflow: auto; white-space: pre-wrap; word-break: break-word; font-size: 11px; color: #c8d0dc; }
  .col-action-btn { background: #2a2d34; border: 1px solid #3a3f4a; color: #d8dee9; width: 20px; height: 20px; line-height: 16px; border-radius: 3px; font: inherit; font-size: 14px; cursor: pointer; padding: 0; }
  .col-action-btn:hover { background: #3a5a8c; border-color: #4a6da0; }
  .badge-manual { display: inline-block; font-size: 9px; padding: 1px 5px; border-radius: 8px; background: #3a5a8c; color: #d8dee9; margin-left: 4px; vertical-align: middle; letter-spacing: .04em; }
  .suggestion-edit { padding: 12px 14px; background: #15171c; border-bottom: 1px solid #2a2d34; }
  .suggestion-edit input, .suggestion-edit textarea { width: 100%; background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 6px 8px; font: inherit; font-size: 12px; resize: vertical; margin-bottom: 6px; box-sizing: border-box; }
  .suggestion-edit label { display: block; color: #8da0b8; font-size: 11px; margin-top: 4px; margin-bottom: 2px; }
  .suggestion-edit-actions { display: flex; gap: 8px; align-items: center; margin-top: 6px; }
  .suggestion-edit-actions button { background: #3a5a8c; border: 1px solid #4a6da0; color: #d8dee9; padding: 5px 14px; border-radius: 3px; font: inherit; font-size: 12px; cursor: pointer; }
  .suggestion-edit-actions button.secondary { background: #2a2d34; border-color: #3a3f4a; }
  .suggestion-edit-actions button:hover { filter: brightness(1.15); }
  .suggestion-feedback { color: #8da0b8; font-size: 11px; }
  .suggestion-feedback.error { color: #ff7070; }
  .suggestion-feedback.success { color: #6cc24a; }
  .logs { padding: 10px; }
  .logs summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 8px 0; display: flex; align-items: center; cursor: pointer; user-select: none; list-style: none; }
  .log-toolbar { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 6px; }
  .log-toolbar button { background: #1b1e25; border: 1px solid #2a2d34; color: #d8dee9; padding: 4px 10px; border-radius: 3px; font: inherit; cursor: pointer; position: relative; display: inline-flex; align-items: center; gap: 6px; }
  .log-toolbar button.active { background: #2a2d34; border-color: #4a5160; }
  .log-toolbar button:hover { background: #22262e; }
  .log-toolbar button .dot { width: 8px; height: 8px; border-radius: 50%; background: #3a3f4a; flex-shrink: 0; }
  .log-toolbar button.act-running { border-color: #6cc24a; }
  .log-toolbar button.act-running .dot { background: #6cc24a; box-shadow: 0 0 6px #6cc24a; animation: log-pulse 1.4s ease-in-out infinite; }
  .log-toolbar button.act-recent { border-color: #b58a17; }
  .log-toolbar button.act-recent .dot { background: #d4a017; }
  .log-toolbar button.act-stale .dot { background: #3a3f4a; }
  @keyframes log-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
  pre.log { background: #0a0b0e; border: 1px solid #2a2d34; padding: 10px; height: 50vh; overflow: auto; font-size: 12px; margin: 0; white-space: pre-wrap; word-break: break-all; }
  .log-fmt-toggle { margin-left: auto; background: #15171c !important; border: 1px solid #2a2d34 !important; color: #8da0b8 !important; padding: 2px 8px !important; font-size: 11px !important; }
  .log-fmt-toggle:hover { background: #1b1e25 !important; color: #d8dee9 !important; }
  .log-pane-pretty { white-space: normal; }
  .log-pane-pretty .log-row { white-space: pre; font: 12px ui-monospace, Menlo, Consolas, monospace; padding: 0 4px; line-height: 1.5; }
  .log-pane-pretty .log-row.log-error { color: #ff9a9a; }
  .log-pane-pretty .log-row.log-dim { color: #6c7889; }
  .log-pane-pretty .log-invoke-header { background: #15171c; border-top: 1px solid #2a2d34; color: #a8b6c8; cursor: pointer; padding: 3px 6px; user-select: none; }
  .log-pane-pretty .log-invoke-header::before { content: "▾ "; color: #6c7889; }
  .log-pane-pretty .log-invoke-header.collapsed::before { content: "▸ "; }
  .log-pane-pretty .log-invoke-header.collapsed::after { content: attr(data-summary); color: #6c7889; padding-left: 16px; font-style: italic; }
  .log-pane-pretty .log-invoke-footer { color: #6c7889; padding: 2px 4px; border-bottom: 1px solid #1b1e25; }
  .log-pane-pretty .log-invoke-body.collapsed { display: none; }
  .empty { color: #6c7889; padding: 14px; font-style: italic; font-size: 12px; }
  .review-body { white-space: pre-wrap; font-size: 11px; margin-top: 6px; padding: 6px; background: #0a0b0e; border: 1px solid #2a2d34; border-radius: 3px; max-height: 300px; overflow: auto; }
  .diff-add { color: #6cc24a; }
  .diff-del { color: #c04545; }
  .cycle-history { padding: 10px; }
  .cycle-history summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 8px 0; cursor: pointer; user-select: none; list-style: none; display: flex; align-items: center; gap: 14px; }
  .cycle-filter-toggle { margin-left: auto; font-size: 11px; text-transform: none; font-weight: normal; cursor: pointer; display: flex; align-items: center; gap: 6px; }
  .cycle-filter-toggle input { cursor: pointer; }
  .cycle-history table { width: 100%; border-collapse: collapse; font-size: 12px; background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; }
  .cycle-history th { text-align: left; padding: 6px 10px; border-bottom: 1px solid #2a2d34; color: #8da0b8; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
  .cycle-history td { padding: 6px 10px; border-bottom: 1px solid #1b1e25; }
  .cycle-history tr:last-child td { border-bottom: none; }
  .cycle-history tr.cycle-warn { border-left: 3px solid #d4a017; }
  .cycle-history tr.cycle-error { border-left: 3px solid #c04545; }
  .cycle-history .cycle-empty { color: #6c7889; padding: 14px; font-style: italic; font-size: 12px; }
  .cycle-history tr.cycle-data { cursor: pointer; }
  .cycle-history tr.cycle-detail { display: none; background: #0f1115; }
  .cycle-history tr.cycle-detail td { padding: 10px 14px; border-bottom: 1px solid #1b1e25; }
  .cycle-history .detail-section { margin-bottom: 8px; }
  .cycle-history .detail-label { font-size: 11px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 4px; }
  .cycle-history .detail-list { margin: 0; padding: 0 0 0 16px; color: #d8dee9; font-size: 12px; }
  .cycle-history .detail-list li { margin-bottom: 2px; }
  .cycle-history .detail-list.conflicts li { color: #d4a017; }
  .cycle-history pre.test-fail { margin: 4px 0; padding: 8px; background: #1a1215; border: 1px solid #c04545; border-radius: 3px; color: #e8b4b4; font-size: 11px; white-space: pre-wrap; word-break: break-all; max-height: 200px; overflow-y: auto; }
  .verdicts-section { padding: 10px; }
  .verdicts-section details { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; }
  .verdicts-section summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; padding: 8px 10px; cursor: pointer; user-select: none; list-style: none; }
  .verdict-row { display: flex; gap: 8px; align-items: baseline; padding: 6px 10px; border-bottom: 1px solid #1b1e25; font-size: 12px; }
  .verdict-row:last-child { border-bottom: none; }
  .verdict-phase-badge { background: #2a2d34; color: #8da0b8; padding: 1px 7px; border-radius: 8px; font-size: 11px; }
  .verdict-kind-badge { padding: 1px 7px; border-radius: 8px; font-size: 11px; font-weight: 600; }
  .verdict-continue { background: #2d5a3d; color: #b8e0c4; }
  .verdict-redirect { background: #6b5a1a; color: #ffd88a; }
  .verdict-abort { background: #6b3a3a; color: #ffb0b0; }
  .verdict-rationale { color: #8da0b8; font-size: 11px; flex: 1; }
  .usage-section { padding: 10px; }
  .usage-section summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 8px 0; display: flex; align-items: baseline; gap: 14px; cursor: pointer; user-select: none; list-style: none; }
  .usage-totals { color: #d8dee9; font-weight: 500; text-transform: none; letter-spacing: 0; }
  .usage-totals .cost { color: #6cc24a; }
  .usage-totals .sep { color: #3a3f4a; margin: 0 6px; }
  .usage-section table { width: 100%; border-collapse: collapse; font-size: 12px; background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; }
  .usage-section th { text-align: left; padding: 6px 10px; border-bottom: 1px solid #2a2d34; color: #8da0b8; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
  .usage-section td { padding: 6px 10px; border-bottom: 1px solid #1b1e25; vertical-align: top; }
  .usage-section tr:last-child td { border-bottom: none; }
  .usage-section td.num { text-align: right; font-variant-numeric: tabular-nums; }
  .usage-section td.cost { text-align: right; color: #6cc24a; font-variant-numeric: tabular-nums; }
  .usage-section .model-chip { display: inline-block; background: #1b1e25; border: 1px solid #2a2d34; border-radius: 8px; padding: 1px 7px; font-size: 11px; margin-right: 4px; margin-bottom: 2px; color: #d8dee9; }
  .usage-section .model-chip .mc { color: #6cc24a; margin-left: 4px; }
  .usage-section .empty { color: #6c7889; padding: 14px; font-style: italic; font-size: 12px; }
  .charts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 10px; }
  @media (max-width: 1200px) { .charts { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 700px) { .charts { grid-template-columns: 1fr; } }
  .chart { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; padding: 10px; }
  .chart h3 { margin: 0 0 6px 0; font-size: 11px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; }
  .chart svg { display: block; width: 100%; height: 220px; }
  .chart .axis { stroke: #2a2d34; stroke-width: 1; }
  .chart .grid { stroke: #1b1e25; stroke-width: 1; }
  .chart .tick { fill: #6c7889; font-size: 10px; font-family: ui-monospace, Menlo, Consolas, monospace; }
  .chart .series { fill: none; stroke-width: 1.6; }
  .chart .legend { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-top: 6px; font-size: 11px; color: #8da0b8; }
  .chart .legend .swatch { display: inline-block; width: 10px; height: 10px; border-radius: 2px; vertical-align: middle; margin-right: 4px; }
  .chart .legend .item { cursor: pointer; user-select: none; }
  .chart .legend .item.off { opacity: .35; text-decoration: line-through; }
  .metric-tabs { margin-left: 8px; display: inline-flex; gap: 4px; }
  .metric-tab { font: inherit; font-size: 10px; padding: 1px 7px; border-radius: 8px; cursor: pointer; background: #15171c; border: 1px solid #2a2d34; color: #8da0b8; text-transform: none; letter-spacing: 0; }
  .metric-tab.active { background: #1e2d3a; border-color: #2f4a63; color: #cfe3f0; }
  .chart .legend .item.muted { opacity: .35; }
  .chart .empty { color: #6c7889; font-style: italic; font-size: 12px; padding: 30px 8px; text-align: center; }
  .quota-section { padding: 10px; }
  .quota-section summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 8px 0; display: flex; align-items: baseline; gap: 14px; cursor: pointer; user-select: none; list-style: none; }
  .quota-meta { color: #6c7889; font-size: 11px; font-weight: normal; text-transform: none; letter-spacing: 0; }
  .quota-grid { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; padding: 10px; }
  .quota-row { display: grid; grid-template-columns: 110px 1fr 180px; gap: 10px; align-items: center; padding: 4px 0; font-size: 12px; }
  .quota-row .qlabel { color: #d8dee9; font-weight: 500; }
  .quota-row .qbar { position: relative; height: 14px; background: #0a0b0e; border: 1px solid #2a2d34; border-radius: 7px; overflow: hidden; }
  .quota-row .qfill { height: 100%; transition: width .3s ease; }
  .quota-row .qfill.low { background: #2d5a3d; }
  .quota-row .qfill.med { background: #b58a17; }
  .quota-row .qfill.high { background: #c04545; }
  .quota-row .qmeta { color: #8da0b8; font-size: 11px; text-align: right; font-variant-numeric: tabular-nums; }
  .quota-row .qmeta .pct { color: #d8dee9; font-weight: 600; margin-right: 6px; }
  .quota-error { color: #ff7070; font-size: 12px; padding: 10px; }
  .quota-tabs { display: inline-flex; gap: 0; border: 1px solid #2a2d34; border-radius: 4px; overflow: hidden; }
  .quota-tab { background: #1b1e25; border: 0; color: #8da0b8; padding: 4px 10px; font: inherit; font-size: 11px; cursor: pointer; text-transform: uppercase; letter-spacing: .04em; }
  .quota-tab + .quota-tab { border-left: 1px solid #2a2d34; }
  .quota-tab.active { background: #3a5a8c; color: #d8dee9; }
  .quota-tab:hover:not(.active) { background: #22262e; }
  .quota-bucket-controls select { background: #1b1e25; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 3px 6px; font: inherit; font-size: 11px; }
  .quota-timeseries { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; padding: 10px; }
  .quota-timeseries svg { width: 100%; height: 220px; display: block; }
  .quota-ts-meta { color: #8da0b8; font-size: 11px; margin-top: 8px; display: flex; gap: 16px; flex-wrap: wrap; }
  .quota-ts-meta .legend-swatch { display: inline-block; width: 9px; height: 9px; border-radius: 2px; margin-right: 4px; vertical-align: middle; }
  .quota-empty { color: #6c7889; font-size: 12px; padding: 30px; text-align: center; font-style: italic; }

  /* ---- master fleet UI ---- */
  .muted { color: #6c7889; }
  .fleet-bar { display: flex; flex-wrap: wrap; gap: 10px; padding: 12px 14px; border-bottom: 1px solid #2a2d34; background: #14161b; }
  .fleet-stat { background: #1b1e25; border: 1px solid #2a2d34; border-radius: 6px; padding: 7px 12px; min-width: 92px; }
  .fleet-stat .k { font-size: 10px; text-transform: uppercase; letter-spacing: .05em; color: #8da0b8; }
  .fleet-stat .v { font-size: 17px; font-weight: 600; margin-top: 2px; }
  .inst-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 14px; padding: 16px; }
  .inst-card { background: #14161b; border: 1px solid #2a2d34; border-radius: 8px; padding: 14px; display: flex; flex-direction: column; gap: 9px; }
  .inst-card.dead { opacity: .72; }
  .inst-head { display: flex; align-items: center; gap: 8px; }
  .inst-name { font-size: 14px; font-weight: 600; }
  .inst-head .open-link { margin-left: auto; font-size: 11px; color: #7fb0e8; text-decoration: none; border: 1px solid #2a3a52; padding: 2px 8px; border-radius: 4px; }
  .inst-head .open-link:hover { background: #1d2738; }
  .inst-head .open-link.down { color: #6c7889; border-color: #2a2d34; cursor: not-allowed; }
  .dot { width: 9px; height: 9px; border-radius: 50%; background: #6c7889; flex: 0 0 auto; }
  .dot.up { background: #6cc24a; box-shadow: 0 0 6px rgba(108,194,74,.6); }
  .dot.down { background: #c04545; }
  .badge { font-size: 10px; padding: 1px 7px; border-radius: 9px; background: #2a2d34; color: #b9c4d4; }
  .badge.paused { background: #5a4520; color: #f0d9a8; }
  .badge.sleep { background: #2d3550; color: #aebee8; }
  .badge.phase { background: #213040; color: #9fc6e8; }
  .badge.err { background: #5a2020; color: #ff9a9a; }
  .inst-task { font-size: 11px; color: #8da0b8; max-height: 2.7em; overflow: hidden; }
  .metric-row { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12px; }
  .metric-row .m { color: #8da0b8; }
  .metric-row .m b { color: #d8dee9; font-weight: 600; }
  .inst-foot { font-size: 10px; color: #6c7889; display: flex; justify-content: space-between; }
  .grid-toolbar { padding: 8px 12px 0 12px; display: flex; gap: 8px; align-items: center; }
  .add-instance-btn { background: #1a2a1a; color: #cfe6cf; border: 1px solid #345a34; border-radius: 4px; padding: 5px 14px; font: inherit; font-size: 12px; cursor: pointer; }
  .add-instance-btn:hover { background: #294a29; }
  .ni-form { display: flex; flex-direction: column; gap: 12px; color: #d8dee9; font-size: 12px; }
  .ni-field { display: flex; flex-direction: column; gap: 4px; }
  .ni-label { font-size: 11px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; }
  .ni-form input[type=text], .ni-form input[type=number], .ni-form textarea { background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 6px 8px; font: inherit; font-size: 12px; }
  .ni-form textarea { font-family: inherit; resize: vertical; min-height: 120px; }
  .ni-hint { font-size: 10px; color: #6c7889; display: flex; align-items: center; gap: 8px; }
  .ni-hint-inline { font-size: 10px; color: #6c7889; font-weight: normal; text-transform: none; letter-spacing: 0; }
  .ni-inline-btn { background: #1d2738; color: #d8dee9; border: 1px solid #2a3a52; border-radius: 3px; padding: 2px 8px; font: inherit; font-size: 11px; cursor: pointer; }
  .ni-inline-btn:hover:not(:disabled) { background: #2a3a52; }
  .ni-inline-btn:disabled { opacity: .55; cursor: not-allowed; }
  .ni-task-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  .inbox-section { padding: 10px 14px; border-bottom: 1px solid #2a2d34; background: #12141a; }
  .inbox-section > summary { font-size: 12px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; cursor: pointer; user-select: none; list-style: none; display: flex; gap: 10px; align-items: baseline; }
  .inbox-section > summary::-webkit-details-marker { display: none; }
  .inbox-section > summary::before { content: "▾"; color: #6c7889; margin-right: 2px; }
  .inbox-section:not([open]) > summary::before { content: "▸"; }
  .inbox-summary { color: #c8b88a; font-size: 11px; }
  .inbox-body { padding-top: 8px; }
  .inbox-msg { background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; padding: 8px 10px; margin-bottom: 6px; font-size: 12px; }
  .inbox-msg-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  .inbox-id { font-size: 10px; color: #6c7889; background: #0e0f12; padding: 1px 6px; border-radius: 3px; }
  .inbox-when { font-size: 10px; color: #8da0b8; }
  .inbox-status { font-size: 11px; color: #8da0b8; text-transform: uppercase; padding: 2px 8px; border-radius: 10px; background: #2a2d34; }
  .inbox-btn { font: inherit; font-size: 11px; border-radius: 4px; padding: 3px 12px; cursor: pointer; border: 1px solid #2a3a52; background: #1d2738; color: #d8dee9; margin-left: 4px; }
  .inbox-btn:disabled { opacity: .55; cursor: not-allowed; }
  .inbox-btn.approve { background: #1a2a1a; border-color: #345a34; color: #cfe6cf; }
  .inbox-btn.approve:hover:not(:disabled) { background: #294a29; }
  .inbox-btn.reject { background: #2a1a1a; border-color: #5a3434; color: #f5cdcd; }
  .inbox-btn.reject:hover:not(:disabled) { background: #4a2929; }
  .inbox-message { color: #d8dee9; margin: 6px 0 4px 0; font-style: italic; }
  .inbox-rationale { color: #8da0b8; font-size: 11px; margin-bottom: 4px; }
  .inbox-actions { list-style: decimal; padding-left: 18px; margin: 4px 0; color: #d8dee9; }
  .inbox-action-type { color: #c8b88a; font-weight: 600; }
  .inbox-param { color: #8da0b8; font-size: 11px; margin-left: 6px; }
  .inbox-feedback { font-size: 11px; color: #8da0b8; margin-left: 8px; }
  .inbox-feedback.success { color: #6cc24a; }
  .inbox-feedback.error { color: #ff7070; }
  .ni-mode-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-size: 12px; color: #d8dee9; }
  .ni-mode-row .ni-label { margin-right: 4px; }
  .ni-radio { display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  .ni-radio input { accent-color: #6cc24a; cursor: pointer; }
  .ni-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .ni-validation { font-size: 11px; min-height: 1em; }
  .ni-validation .err { color: #ff7070; display: block; }
  .ni-validation .warn { color: #d4a017; display: block; }
  .ni-validation .ok { color: #6cc24a; display: block; }
  .ni-path-row { display: flex; gap: 6px; align-items: stretch; }
  .ni-path-row input { flex: 1; min-width: 0; }
  .ni-browser { margin-top: 6px; border: 1px solid #2a3a52; border-radius: 4px; background: #0f1115; padding: 8px; display: flex; flex-direction: column; gap: 6px; }
  .ni-browser-head { display: flex; gap: 8px; align-items: center; font-size: 11px; color: #8da0b8; }
  .ni-browser-path { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #d8dee9; font-family: inherit; }
  .ni-browser-list { list-style: none; margin: 0; padding: 0; max-height: 260px; overflow: auto; background: #15171c; border: 1px solid #2a2d34; border-radius: 3px; }
  .ni-browser-entry { padding: 4px 8px; font-size: 12px; color: #d8dee9; cursor: pointer; border-bottom: 1px solid #1b1e25; user-select: none; }
  .ni-browser-entry:hover { background: #1d2738; }
  .ni-browser-entry.parent { color: #8da0b8; font-style: italic; }
  .ni-browser-entry.git { color: #b8e0c4; }
  .ni-browser-entry.git:hover { background: #1f3a26; }
  .ni-browser-empty { padding: 8px; font-size: 11px; color: #6c7889; font-style: italic; }
  .ni-browser-actions { display: flex; gap: 8px; align-items: center; }
  .ni-browser-actions .primary { background: #1f4030; color: #b8e0c4; border: 1px solid #2f6a47; border-radius: 3px; padding: 4px 10px; font: inherit; font-size: 11px; cursor: pointer; }
  .ni-browser-actions .primary:hover { background: #2a5a3d; }
  .ni-browser-actions .secondary { background: #2a2d34; color: #d8dee9; border: 1px solid #3a3f4a; border-radius: 3px; padding: 4px 10px; font: inherit; font-size: 11px; cursor: pointer; }
  .ni-browser-actions .secondary:hover { background: #3a3f4a; }
  .ni-actions { display: flex; align-items: center; gap: 10px; margin-top: 4px; }
  .ni-actions button { background: #1d2738; color: #d8dee9; border: 1px solid #2a3a52; border-radius: 4px; padding: 5px 12px; font: inherit; font-size: 12px; cursor: pointer; }
  .ni-actions button.primary { background: #1a2a1a; border-color: #345a34; color: #cfe6cf; }
  .ni-actions button.secondary { background: #2a2d34; border-color: #3a3f4a; }
  .ni-actions button:hover:not(:disabled) { filter: brightness(1.15); }
  .ni-actions button:disabled { opacity: .55; cursor: not-allowed; }
  .ni-feedback { font-size: 11px; color: #8da0b8; }
  .ni-feedback.success { color: #6cc24a; }
  .ni-feedback.error { color: #ff7070; }
  .ni-success { color: #d8dee9; font-size: 13px; }
  .ni-success code { background: #0e0f12; border: 1px solid #2a2d34; border-radius: 3px; padding: 1px 6px; font-size: 11px; }
  .ni-success-meta { font-size: 11px; color: #8da0b8; line-height: 1.6; }
  .ni-link { color: #8aa9d6; font-size: 12px; text-decoration: none; }
  .ni-link:hover { text-decoration: underline; }
  .master-restart-btn { background: #1d2738; color: #d8dee9; border: 1px solid #2a3a52; border-radius: 4px; padding: 4px 10px; font: inherit; font-size: 11px; cursor: pointer; }
  .master-restart-btn:hover:not(:disabled) { background: #2a3a52; }
  .master-restart-btn:disabled { opacity: .55; cursor: not-allowed; }
  .inst-actions { display: flex; flex-direction: column; align-items: stretch; gap: 4px; }
  .inst-action-row { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
  .inst-action-label { font-size: 10px; color: #8b9bb1; min-width: 48px; text-transform: uppercase; letter-spacing: 0.05em; }
  .inst-btn { background: #1d2738; color: #d8dee9; border: 1px solid #2a3a52; border-radius: 4px; padding: 3px 12px; font: inherit; font-size: 11px; cursor: pointer; }
  .inst-btn:hover:not(:disabled) { background: #2a3a52; }
  .inst-btn:disabled { opacity: .45; cursor: not-allowed; }
  .inst-btn.start { color: #cfe6cf; border-color: #345a34; background: #1a2a1a; }
  .inst-btn.start:hover:not(:disabled) { background: #294a29; }
  .inst-btn.restart { color: #f0d9a8; border-color: #5a4520; background: #2a210f; }
  .inst-btn.restart:hover:not(:disabled) { background: #4a3a1a; }
  .inst-btn.stop { color: #f5cdcd; border-color: #5a3434; background: #2a1a1a; }
  .inst-btn.stop:hover:not(:disabled) { background: #4a2929; }
  .inst-action-feedback { font-size: 10px; color: #8da0b8; }
  .inst-action-feedback.success { color: #6cc24a; }
  .inst-action-feedback.error { color: #ff7070; }
  .inst-card { cursor: pointer; transition: border-color .12s; }
  .inst-card:hover { border-color: #3a4658; }
  /* Buttons / links inside the card keep their own cursor + don't propagate visually. */
  .inst-card .inst-btn, .inst-card .open-link { cursor: pointer; }
  .modal-backdrop { position: fixed; inset: 0; background: rgba(8, 10, 14, .72); display: flex; align-items: flex-start; justify-content: center; padding: 6vh 16px; z-index: 100; overflow: auto; }
  .modal-backdrop[hidden] { display: none; }
  .modal-panel { background: #14161b; border: 1px solid #2a2d34; border-radius: 8px; width: min(820px, 100%); max-height: 88vh; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 16px 48px rgba(0,0,0,.55); }
  .modal-head { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-bottom: 1px solid #2a2d34; background: #0f1115; }
  .modal-title { font-size: 14px; font-weight: 600; color: #d8dee9; }
  .modal-link { margin-left: auto; font-size: 11px; color: #7fb0e8; text-decoration: none; border: 1px solid #2a3a52; padding: 3px 9px; border-radius: 4px; }
  .modal-link:hover:not(.disabled) { background: #1d2738; }
  .modal-link.disabled { color: #6c7889; border-color: #2a2d34; cursor: not-allowed; }
  .modal-close { background: transparent; border: 0; color: #8da0b8; font-size: 22px; line-height: 1; cursor: pointer; padding: 0 6px; }
  .modal-close:hover { color: #d8dee9; }
  .modal-body { padding: 14px 16px 18px 16px; overflow: auto; color: #d8dee9; font-size: 12px; }
  .detail-section { margin-bottom: 18px; }
  .detail-section h3 { margin: 0 0 8px 0; font-size: 11px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; }
  .detail-section fieldset { border: 1px solid #2a2d34; border-radius: 4px; padding: 6px 12px 10px 12px; margin: 0 0 10px 0; }
  .detail-section legend { font-size: 10px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; padding: 0 6px; }
  .detail-section .field-row { display: flex; align-items: center; gap: 10px; padding: 3px 0; }
  .detail-section .field-row label { width: 160px; color: #8da0b8; font-size: 11px; }
  .detail-section input[type=text], .detail-section input[type=number] { background: #0e0f12; color: #d8dee9; border: 1px solid #2a2d34; border-radius: 3px; padding: 4px 8px; font: inherit; font-size: 12px; flex: 1 1 auto; min-width: 0; }
  .detail-section input[type=checkbox] { accent-color: #6cc24a; }
  .detail-actions { display: flex; align-items: center; gap: 10px; margin-top: 4px; }
  .detail-actions button { background: #1d2738; color: #d8dee9; border: 1px solid #2a3a52; border-radius: 4px; padding: 5px 12px; font: inherit; font-size: 12px; cursor: pointer; }
  .detail-actions button.primary { background: #1a2a1a; border-color: #345a34; color: #cfe6cf; }
  .detail-actions button:hover:not(:disabled) { filter: brightness(1.15); }
  .detail-feedback { font-size: 11px; color: #8da0b8; }
  .detail-feedback.success { color: #6cc24a; }
  .detail-feedback.error { color: #ff7070; }
  .detail-section .hint { font-size: 10px; color: #6c7889; margin-top: 4px; }
  .detail-table { width: 100%; border-collapse: collapse; font-size: 11px; background: #15171c; border: 1px solid #2a2d34; border-radius: 4px; }
  .detail-table th { text-align: left; padding: 5px 9px; border-bottom: 1px solid #2a2d34; color: #8da0b8; font-weight: 600; font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
  .detail-table td { padding: 4px 9px; border-bottom: 1px solid #1b1e25; vertical-align: middle; }
  .detail-table tr:last-child td { border-bottom: none; }
  .detail-table td.num { text-align: right; font-variant-numeric: tabular-nums; }
  .detail-table td.cost { text-align: right; color: #6cc24a; font-variant-numeric: tabular-nums; }
  .detail-section .empty { color: #6c7889; padding: 12px 0; font-style: italic; }

  /* ---- prompt iteration ---- */
  header .pi-toggle { font: inherit; font-size: 11px; padding: 4px 10px; border-radius: 10px; cursor: pointer; background: #2a2d34; border: 1px solid #3a3f4a; color: #8da0b8; }
  header .pi-toggle:hover { background: #3a3f4a; }
  header .pi-toggle.active { background: #1f4030; border-color: #2f6a47; color: #b8e0c4; }
  header .pi-toggle:disabled { opacity: .6; cursor: default; }
  .proposal-row { flex-direction: column; gap: 5px; }
  .proposal-head { display: flex; gap: 8px; align-items: center; }
  .proposal-status { padding: 1px 7px; border-radius: 8px; font-size: 11px; text-transform: uppercase; font-weight: 600; }
  .proposal-status.stpending { background: #3a3f4a; color: #c8b88a; }
  .proposal-status.stapproved { background: #1f4030; color: #b8e0c4; }
  .proposal-status.stadopted { background: #2d5a3d; color: #d4f0dd; }
  .proposal-status.strejected { background: #5a2d2d; color: #f0b8b8; }
  .proposal-status.stvetoed { background: #5a4520; color: #f0d9a8; }
  .proposal-cycle { font-size: 11px; color: #6c7889; }
  .proposal-evidence { color: #c4cddb; font-size: 12px; }
  .proposal-veto { color: #f0d9a8; font-size: 11px; }
  .proposal-text summary { cursor: pointer; font-size: 11px; color: #8da0b8; }
  .proposal-text pre { white-space: pre-wrap; word-break: break-word; background: #0f1115; border: 1px solid #2a2d34; border-radius: 4px; padding: 8px; font-size: 11px; max-height: 320px; overflow: auto; }
  .proposal-diff-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; max-height: 480px; overflow: auto; border: 1px solid #2a2d34; border-radius: 4px; background: #0f1115; padding: 6px; }
  .proposal-diff-side { min-width: 0; }
  .proposal-diff-label { font-size: 10px; color: #8da0b8; text-transform: uppercase; letter-spacing: .04em; padding: 2px 4px; margin-bottom: 3px; border-bottom: 1px solid #2a2d34; position: sticky; top: 0; background: #0f1115; z-index: 1; }
  .diff-line { white-space: pre-wrap; word-break: break-word; font-size: 11px; padding: 1px 4px; min-height: 1.3em; line-height: 1.3; }
  .diff-line.diff-same { color: #8da0b8; }
  .diff-line.diff-added { background: #1f3a26; color: #b8e0c4; }
  .diff-line.diff-removed { background: #3a1f1f; color: #f5cdcd; }
  .diff-line.diff-blank { background: #15171c; }
  @media (max-width: 720px) { .proposal-diff-wrap { grid-template-columns: 1fr; } }
  .proposal-meta { font-size: 11px; color: #6c7889; }
  .proposal-running { background: #15212e; border: 1px dashed #2a3a52; border-radius: 4px; padding: 10px 12px; display: flex; gap: 12px; align-items: flex-start; }
  .proposal-running .spinner { width: 14px; height: 14px; border: 2px solid #2a3a52; border-top-color: #7fb0e8; border-radius: 50%; animation: cj-spin 0.8s linear infinite; flex: 0 0 auto; margin-top: 2px; }
  .proposal-running .running-body { flex: 1; min-width: 0; }
  .proposal-running .running-label { color: #7fb0e8; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 4px; }
  .proposal-running .running-steering { font-size: 12px; color: #d8dee9; white-space: pre-wrap; word-break: break-word; }
  @keyframes cj-spin { to { transform: rotate(360deg); } }
  .proposal-actions { display: flex; gap: 6px; align-items: center; }
  .proposal-actions select, .proposal-actions button { font: inherit; font-size: 11px; padding: 3px 9px; border-radius: 4px; border: 1px solid #3a3f4a; background: #2a2d34; color: #d8dee9; cursor: pointer; }
  .proposal-actions .btn-approve:hover { background: #1f4030; border-color: #2f6a47; }
  .proposal-actions .btn-reject:hover { background: #5a2d2d; border-color: #8c3f3f; }
