/* Admin Control Plane — pro layout extensions */
.page-admin .admin-workspace { max-width: 1280px; margin: 0 auto; padding-bottom: 2.5rem; }
.page-admin .admin-kpi-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 0.75rem; margin: 0 0 1.25rem; }
.page-admin .admin-kpi-card { background: linear-gradient(145deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01)); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 0.85rem 1rem; min-height: 4.5rem; }
.page-admin .admin-kpi-card b { display: block; font-size: 1.35rem; line-height: 1.2; margin-top: 0.15rem; }
.page-admin .admin-kpi-label { font-size: 0.72rem; letter-spacing: 0.04em; text-transform: uppercase; opacity: 0.72; }
.page-admin .admin-tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; gap: 0.35rem; padding-bottom: 0.35rem; margin-bottom: 1rem; }
.page-admin .admin-tab { white-space: nowrap; flex: 0 0 auto; }
.page-admin .control-plane-toolbar { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; margin-bottom: 0.75rem; }
.page-admin .ic-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 0.85rem; }
.page-admin .admin-command-bar { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0.5rem 0 1rem; }
.page-admin .admin-command-bar .btn-sm { font-size: 0.78rem; }
.page-admin .admin-ai-setup-hero {
  margin-bottom: 0.85rem;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(124, 196, 255, .18);
  background: linear-gradient(145deg, rgba(124, 196, 255, .08), rgba(82, 183, 136, .05));
  border-radius: 12px;
}
.page-admin .admin-ai-setup-hero-head {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  margin-bottom: 0.65rem;
}
.page-admin .admin-ai-setup-hero-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.65rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(124, 196, 255, .14);
  color: #9ed4ff;
}
/* ===== R131 A1: member management (admin-users panel) ===== */
.admin-users-mgmt-card { margin-top: 14px; }
.admin-users-mgmt .admin-users-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.admin-users-mgmt .admin-users-head h3 { margin: 0; font-size: 15px; }
.admin-users-mgmt-bar { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.admin-users-mgmt-bar .form-input { flex: 1 1 220px; min-width: 0; }
.admin-users-mgmt-bar .form-select { flex: 0 0 auto; width: auto; }
.admin-users-mgmt .admin-u-role { display: inline-block; width: auto; min-width: 130px; padding: 4px 8px; font-size: 12px; }
.admin-users-mgmt #adminUserNote { margin: 8px 0 0; font-size: 12px; }
/* ===== R133 P2a: audit-log viewer (security panel) ===== */
#adminAuditLogHost .admin-audit-meta { display: grid; grid-template-columns: minmax(90px, auto) 1fr; gap: 2px 10px; margin: 6px 0 0; font-size: 12px; }
#adminAuditLogHost .admin-audit-meta dt { opacity: 0.65; overflow-wrap: anywhere; }
#adminAuditLogHost .admin-audit-meta dd { margin: 0; overflow-wrap: anywhere; }
#adminAuditLogHost details summary { cursor: pointer; font-size: 12px; opacity: 0.75; white-space: nowrap; }
#adminAuditLogHost details[open] summary { margin-bottom: 2px; }

/* TiTi B0 SharedSourceDashboard V12 */
/* TiTi admin Storage > Reference/Data Intelligence V12. Scoped styling. */
#titiSourceDataDashboard{margin:18px 0 22px;--ts-border:rgba(130,144,164,.26);--ts-card:rgba(100,116,139,.06);--ts-ink:inherit}
#titiSourceDataDashboard *{box-sizing:border-box}
.titi-sd-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.titi-sd-top h3{font-size:1.15rem;font-weight:750;letter-spacing:-.02em;margin:0}
.titi-sd-sub{font-size:.82rem;opacity:.72;margin:4px 0 0}
.titi-sd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.titi-sd-card,.titi-sd-panel{border:1px solid var(--ts-border);border-radius:12px;background:var(--ts-card);padding:15px}
.titi-sd-metric-label{font-size:.78rem;opacity:.75;line-height:1.5}
.titi-sd-metric-value{font-size:1.6rem;line-height:1.25;font-weight:750;letter-spacing:-.04em;margin:4px 0}
.titi-sd-metric-note{font-size:.72rem;opacity:.7}
.titi-sd-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px;margin-bottom:13px}
.titi-sd-panel h4{font-size:.94rem;font-weight:700;margin:0 0 11px}
.titi-sd-route{border:1px solid var(--ts-border);padding:12px;border-radius:10px;margin-bottom:9px}
.titi-sd-route-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}
.titi-sd-route small{opacity:.77;display:block;overflow-wrap:anywhere}
.titi-sd-pill{display:inline-block;padding:4px 8px;font-size:.7rem;font-weight:650;border:1px solid var(--ts-border);border-radius:20px}
.titi-sd-pill[data-state="ok"]{color:#15803d;background:rgba(34,197,94,.08)}
.titi-sd-pill[data-state="hold"]{color:#b45309;background:rgba(245,158,11,.07)}
.titi-sd-pill[data-state="error"]{color:#b91c1c;background:rgba(239,68,68,.08)}
.titi-sd-pill[data-state="info"]{color:#0369a1;background:rgba(14,165,233,.08)}
.titi-sd-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:33px;border-bottom:1px solid var(--ts-border);font-size:.8rem}
.titi-sd-row:last-child{border-bottom:0}
.titi-sd-row-label{opacity:.85}
.titi-sd-list{display:flex;flex-direction:column;gap:8px;max-height:275px;overflow:auto}
.titi-sd-issue{display:grid;grid-template-columns:8px minmax(0,1fr);gap:9px;align-items:start;font-size:.78rem;line-height:1.5}
.titi-sd-dot{margin-top:6px;width:7px;height:7px;border-radius:10px;background:#94a3b8}
.titi-sd-dot[data-state="hold"]{background:#d97706}
.titi-sd-dot[data-state="error"]{background:#dc2626}
.titi-sd-dot[data-state="info"]{background:#0284c7}
.titi-sd-time{font-size:.76rem;opacity:.73}
.titi-sd-route a{font-size:.76rem;text-decoration:underline;text-underline-offset:2px}
.titi-sd-foot{margin-top:8px;font-size:.76rem;opacity:.8;line-height:1.5}
.titi-sd-btn{padding:7px 12px;border:1px solid var(--ts-border);border-radius:8px;cursor:pointer;background:transparent;color:inherit;font:inherit;font-size:.81rem}
.titi-sd-btn:hover{background:var(--ts-card)}
.titi-sd-btn:disabled{opacity:.55;cursor:default}
.titi-sd-empty{padding:18px;border:1px dashed var(--ts-border);border-radius:10px;font-size:.86rem;opacity:.82}
@media(max-width:1050px){.titi-sd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.titi-sd-grid,.titi-sd-cols{grid-template-columns:1fr}.titi-sd-route-top{flex-wrap:wrap}}

