/* Bulk .htaccess 301 Redirect Workbench - v1.21.13. Brand dark, scoped #brd. */
/* v1.21.13: override theme's global .card:hover (leaks transform:translateY(-3px) + glow) */

#brd { color-scheme: dark; --brd-green: var(--green); --brd-border: var(--green-border); }
#brd * { box-sizing: border-box; }
#brd .brd-wrap { max-width: 1040px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
#brd .brd-card { background: var(--surface); border: 1px solid var(--border-2); border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 12px; }
#brd .sec-head { display: flex; align-items: center; gap: 10px; margin: 4px 0 0; }
#brd .sec-head .ic { width: 9px; height: 9px; border-radius: 50%; background: var(--green); flex: 0 0 auto; }
#brd .sec-head h2 { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: .06em; color: var(--text); }
#brd .sec-head .line { flex: 1 1 auto; height: 1px; background: var(--border-2); }
#brd .sec-head .stat { font-size: 11px; color: var(--muted); flex: 0 0 auto; }
#brd .hint { margin: 0; font-size: 12px; color: var(--dim); line-height: 1.5; }
#brd .caption { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
#brd .caption span { font-size: 11px; color: var(--muted); flex: 1 1 auto; }
#brd textarea { width: 100%; min-height: 200px; resize: vertical; padding: 12px 14px; background: var(--bg); border: 1px solid var(--border-2); border-radius: 8px; color: var(--text); font: 400 12.5px/1.55 var(--font-mono); white-space: pre-wrap; word-break: break-word; overflow-wrap: anywhere; }
#brd textarea:focus-visible { outline: 2px solid var(--green); }
#brd textarea::placeholder { color: var(--dim); }
#brd .brd-btn { -webkit-user-select: none; user-select: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; flex: 0 0 auto; min-height: 44px; padding: 0 18px; border-radius: 8px; cursor: pointer; font: inherit; font-size: 13px; font-weight: 700; letter-spacing: .02em; white-space: nowrap; border: 1px solid transparent;  }
#brd .brd-btn:active { transform: translateY(1px); }
#brd .brd-btn.brd-p { background: var(--green); color: #04160d; }
#brd .brd-btn.brd-ghost { background: var(--surface-2); color: var(--muted); border-color: var(--border-2); }
#brd .actions { display: flex; flex-wrap: wrap; gap: 10px; }
#brd .actions .brd-btn { flex: 1 1 auto; }

/* review table */
#brd .tblwrap { display: flex; flex-direction: column; gap: 8px; }
#brd table.rows { width: 100%; border-collapse: collapse; font-size: 12px; }
#brd table.rows th { text-align: left; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--dim); padding: 6px 8px; border-bottom: 1px solid var(--border-2); }
#brd table.rows th.su, #brd table.rows td.su { width: 44px; text-align: center; }
#brd table.rows td { padding: 4px 4px; border-bottom: 1px solid var(--border-2); }
#brd .cell { width: 100%; padding: 9px 10px; background: var(--bg); border: 1px solid var(--border-2); border-radius: 6px; color: var(--text); font: 400 12.5px/1.4 var(--font-mono); min-width: 0; }
#brd .cell:focus-visible { outline: 2px solid var(--green); }
#brd .cell.col-old { color: var(--muted); }
#brd .cell.col-new { color: var(--text); }
#brd tr.ok .cell.col-new { border-color: rgba(0,255,145,.28); }
#brd tr.warn .cell.col-new { border-color: rgba(255,184,107,.4); }
#brd tr.dup .cell.col-new { border-color: rgba(255,92,92,.4); }
#brd tr.warn .cell.col-old, #brd tr.dup .cell.col-old { border-color: rgba(255,184,107,.3); }
#brd .stat-pill { display: inline-flex; align-items: center; gap: 4px; font-size: 10px; font-weight: 700; letter-spacing: .04em; padding: 3px 7px; border-radius: 20px; white-space: nowrap; }
#brd .stat-pill.ok { background: rgba(0,255,145,.12); color: var(--green); border: 1px solid rgba(0,255,145,.28); }
#brd .stat-pill.warn { background: rgba(255,184,107,.12); color: var(--amber); border: 1px solid rgba(255,184,107,.3); }
#brd .stat-pill.dup { background: rgba(255,92,92,.12); color: var(--red); border: 1px solid rgba(255,92,92,.3); }
#brd .rowdel { width: 30px; height: 30px; border-radius: 6px; background: transparent; border: 1px solid transparent; color: var(--dim); font-size: 18px; line-height: 1; cursor: pointer; }
#brd .rowdel:hover { color: var(--red); border-color: rgba(255,92,92,.3); }
#brd .empty { font-size: 12px; color: var(--dim); text-align: center; padding: 18px; border: 1px dashed var(--border-2); border-radius: 8px; }

/* options */
#brd .opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
#brd .field { display: flex; flex-direction: column; gap: 5px; }
#brd .field .flbl { font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--dim); }
#brd select { width: 100%; background: var(--bg); border: 1px solid var(--border-2); border-radius: 8px; color: var(--text); font: 400 12.5px/1.4 var(--font-mono); padding: 9px 11px; min-height: 42px; }
#brd select:focus-visible { outline: 2px solid var(--green); }
#brd label.chk { -webkit-user-select: none; user-select: none; display: inline-flex; align-items: center; gap: 7px; font-size: 12px; color: var(--muted); cursor: pointer;  }
#brd label.chk input { width: 16px; height: 16px; accent-color: var(--green); cursor: pointer; }

#brd .report { background: var(--surface-2); border: 1px solid var(--border-2); border-radius: 8px; padding: 10px 12px; display: flex; flex-direction: column; gap: 6px; }
#brd .report .note { display: flex; gap: 8px; align-items: flex-start; font-size: 11.5px; color: var(--muted); }
#brd .report .dot { flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; margin-top: 4px; }
#brd .report .dot.i { background: var(--dim); }
#brd .report .dot.ok { background: var(--green); }
#brd .foot { font-size: 11px; color: var(--dim); text-align: center; }
#brd .honest { font-size: 11.5px; color: var(--muted); line-height: 1.5; background: var(--surface-2); border: 1px solid var(--border-2); border-radius: 8px; padding: 12px 14px; }
#brd .honest b { color: var(--green); }
@media (hover: hover) {
  #brd .brd-btn.brd-ghost:hover { border-color: var(--green-border); color: var(--text); }
  #brd .brd-btn.brd-p:hover { filter: brightness(1.07); }
  #brd label.chk:hover { color: var(--text); }
}

/* v1.21.25: move existing override inside R5 gate */
@media (hover: hover) {
  #brd .brd-card:hover { transform: none !important; border-color: var(--border-2); background: var(--surface); }
}

/* ══ v1.21.48 App #10 audit - related grid + visible FAQ (6-point law) ══ */
#brd .brd-related { margin-top: 48px; }
#brd .brd-related-h, #brd .brd-faq-h {
  font-family: var(--font-mono); font-size: 14px; font-weight: 700; color: var(--text); margin: 0 0 20px;
}
#brd .brd-related-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
#brd .brd-rel-card {
  display: flex; flex-direction: column; gap: 7px; padding: 20px;
  background: var(--surface); border: 1px solid var(--border-2); border-radius: 10px; text-decoration: none;
}
#brd .brd-rel-name { font-family: var(--font-mono); font-size: 13px; font-weight: 700; color: var(--text); }
#brd .brd-rel-desc { font-family: var(--font-mono); font-size: 11.5px; line-height: 1.5; color: var(--muted); }

#brd .brd-faq { margin-top: 48px; }
#brd .brd-faq-item {
  border: 1px solid var(--border-2); border-radius: 10px; background: var(--surface);
  margin-bottom: 16px; overflow: hidden;
}
#brd .brd-faq-item summary {
  cursor: pointer; list-style: none; padding: 16px 18px;
  font-family: var(--font-mono); font-size: 13px; font-weight: 700; color: var(--text);
}
#brd .brd-faq-item summary::before { content: "\25B8  "; color: var(--green); }
#brd .brd-faq-item[open] summary::before { content: "\25BE  "; }
#brd .brd-faq-item p {
  margin: 0; padding: 0 18px 16px 32px;
  font-family: var(--font-mono); font-size: 12.5px; line-height: 1.7; color: var(--muted);
}

@media (hover: hover) {
  #brd .brd-rel-card:hover { border-color: var(--green-border); }
  #brd .brd-rel-card:hover .brd-rel-name { color: var(--green); }
  #brd .brd-faq-item summary:hover { color: var(--green); }
}
