.sidebar nav {
  min-height: 0;
  padding-right: 4px;
  overflow: hidden auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(111, 201, 237, .55) transparent;
}
.sidebar nav::-webkit-scrollbar { width: 5px; }
.sidebar nav::-webkit-scrollbar-thumb { border-radius: 8px; background: rgba(111, 201, 237, .55); }
.sidebar-footer { flex: 0 0 auto; }

.ops-card-grid { display: grid; grid-template-columns: repeat(3, minmax(240px, 1fr)); gap: 14px; }
.ops-card {
  position: relative;
  min-height: 230px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  border: 1px solid #acdff5;
  border-radius: 28px 18px 28px 18px;
  color: #315f7c;
  background: radial-gradient(circle at 100% 0, rgba(85,194,239,.18), transparent 35%), linear-gradient(155deg, rgba(255,255,255,.94), rgba(216,241,252,.91));
  box-shadow: inset 0 1px #fff, 0 9px 20px rgba(37, 111, 149, .12);
  overflow: hidden;
}
.ops-card::after { content:""; position:absolute; right:-26px; bottom:-28px; width:86px; height:86px; border:1px solid rgba(79,174,215,.2); border-radius:50%; box-shadow:0 0 0 9px rgba(79,174,215,.05),0 0 0 19px rgba(79,174,215,.035); pointer-events:none; }
.ops-card > * { position:relative; z-index:1; }
.ops-card.effective { border-color: #69d0a9; box-shadow: inset 0 1px #fff, 0 9px 22px rgba(34, 166, 120, .17); }
.ops-card-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ops-card-head small { color: #7798ad; font-size: 10px; }
.ops-card h3 { margin: 18px 0 7px; color: #1f628b; font-size: 19px; }
.ops-card p { min-height: 36px; margin: 0 0 16px; color: #6d8da3; line-height: 1.55; }
.ops-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 16px; }
.ops-facts span { min-width: 0; padding: 9px 10px; border-radius: 14px; background: rgba(255,255,255,.63); }
.ops-facts span:last-child { grid-column: 1 / -1; }
.ops-facts small,.ops-facts b { display: block; }
.ops-facts small { margin-bottom: 4px; color: #7999ad; font-size: 9px; }
.ops-facts b { overflow: hidden; color: #286e97; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.ops-card > .mini { align-self: flex-start; margin-top: auto; }

.config-grid { display: grid; grid-template-columns: repeat(2, minmax(300px, 1fr)); gap: 14px; }
.config-card {
  position: relative;
  min-height: 128px;
  padding: 16px 17px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid #a9daf1;
  border-radius: 26px 17px 26px 17px;
  background: radial-gradient(circle at 100% 0,rgba(91,194,236,.16),transparent 34%),rgba(255,255,255,.72);
  box-shadow: inset 0 1px #fff;
  overflow: hidden;
}
.config-card.maintenance { border-color: #f2a59d; background: rgba(255, 235, 232, .9); }
.robot-analytics-card { grid-column: 1 / -1; padding: 18px; border: 1px solid #8dd8ec; border-radius: 18px; background: linear-gradient(145deg,rgba(235,250,255,.98),rgba(218,244,250,.94)); box-shadow: 0 12px 28px rgba(31,112,146,.16); }
.robot-analytics-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.robot-analytics-head h3,.robot-config-heading h3 { margin:4px 0; color:#235f86; }
.robot-analytics-head p,.robot-recent p { margin:0; color:#638ba3; font-size:11px; }
.robot-action-distribution { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin-top:14px; }
.robot-action-distribution span { padding:10px 12px; border:1px solid #a8dceb; border-radius:12px; background:#f8fdff; }
.robot-action-distribution small,.robot-action-distribution b { display:block; }
.robot-action-distribution small { color:#7799ad; font-size:10px; }.robot-action-distribution b { margin-top:3px; color:#176f95; font-size:20px; }
.robot-recent { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:10px; }
.robot-recent span { padding:8px 10px; border-left:3px solid #45bda6; background:#ffffffb8; }.robot-recent b,.robot-recent small { display:block; }.robot-recent b { color:#2f708e; font-size:11px; }.robot-recent small { margin-top:3px; color:#7e9baa; font-size:9px; }
.robot-config-fields { margin:16px 0; padding:14px; border:1px solid #9fd7e8; border-radius:14px; background:#eaf8fc; }
.robot-config-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:10px; }.robot-config-heading span { color:#6e94a8; font-size:10px; }
.robot-form-grid { grid-template-columns:repeat(2,minmax(180px,1fr)); }
.config-icon { width: 60px; height: 60px; display: grid; place-items: center; border: 2px solid #f0c75e; border-radius: 50%; color: #fff6cb; background: radial-gradient(circle at 35% 25%, #40c6b0, #086a62 72%); box-shadow: inset 0 0 0 4px #e6f8ff, 0 4px 10px #367c9a55; font-size: 25px; font-weight: 900; }
.config-card small,.config-card span { color: #7999ad; font-size: 10px; }
.config-card h3 { margin: 4px 0; color: #235f86; }
.config-card p { margin: 0 0 5px; color: #4f7e99; }

.priority { display: inline-flex; padding: 5px 9px; border-radius: 999px; color: #4c7a95; background: #e7f5fb; }
.priority.high { color: #a24a42; background: #ffe1dd; }
.ops-dialog { width: min(760px, calc(100vw - 28px)); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px 13px; margin-bottom: 12px; }
.ops-dialog label { min-width: 0; }
.ops-dialog input,.ops-dialog select { width: 100%; }
.ops-dialog textarea { width: 100%; }

@media (max-width: 1180px) {
  .ops-card-grid { grid-template-columns: repeat(2, minmax(230px, 1fr)); }
}
@media (max-width: 1050px) {
  .sidebar nav { padding-right: 0; }
  .sidebar .nav-item { min-height: 64px; height: 64px; flex-direction: column; gap: 3px; padding: 4px 0; font-size: 11px; line-height: 1.2; white-space: nowrap; text-align: center; }
  .sidebar .nav-item span { width: 32px; height: 32px; flex-basis: 32px; }
  .sidebar .nav-item span img { width: 26px; height: 26px; }
}
@media (max-width: 720px) {
  .sidebar { overflow: hidden; height: calc(82px + env(safe-area-inset-bottom, 0px)); padding-bottom: calc(7px + env(safe-area-inset-bottom, 0px)); }
  .sidebar nav { display: flex; gap: 5px; overflow: auto hidden; scroll-snap-type: x proximity; }
  .sidebar .nav-item { display: flex; min-width: 76px; flex: 0 0 76px; scroll-snap-align: start; }
  main { padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)); }
  .ops-card-grid,.config-grid { grid-template-columns: 1fr; }.robot-action-distribution { grid-template-columns:repeat(3,1fr); }.robot-recent { grid-template-columns:1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .ops-dialog { max-height: calc(100vh - 20px); overflow: auto; }
}
/* Long identifiers and approval payloads stay inside the existing panels. */
.ops-approval pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
#ops-player-detail, #ops-player-content, #ops-approvals { min-width: 0; }
#ops-player-content td, #ops-requests td { white-space: normal; overflow-wrap: anywhere; max-width: 220px; }
[data-panel="diagnostics"] table, #ops-player-content table { table-layout: fixed; width: 100%; min-width: 760px; }
[data-panel="diagnostics"] > .panel { margin-bottom: 16px; }
#ops-player-content h4 { margin: 20px 0 10px; }
#user-detail-dialog .dialog-heading { position: sticky; top: 0; z-index: 3; background: #9edcfa; border-radius: 12px; padding: 4px 8px; }
[hidden] { display: none !important; }
.request-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.request-filters label{display:grid;gap:6px;min-width:0;color:#407795;font-size:12px}.request-filters input,.request-filters select{width:100%;min-width:0}.request-filter-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.request-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.request-summary>div{padding:15px;border:1px solid #acd7ec;border-radius:15px;background:linear-gradient(135deg,#eefaff,#cfe9f5)}.request-summary small,.request-summary strong{display:block}.request-summary strong{font-size:22px;color:#2479a6;margin-top:6px}.request-table{table-layout:fixed;min-width:1060px}.request-table td{white-space:normal;overflow-wrap:anywhere}.request-table small{display:block;margin-top:5px;color:#638ba1;font-size:11px}.request-table code{display:block;font-size:11px;margin-bottom:7px}[data-panel=requests]>.panel{margin-bottom:16px}#requests-coverage{line-height:1.7}#requests-status{overflow-wrap:anywhere}
@media(max-width:1050px){.request-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.request-filters{grid-template-columns:1fr}.request-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.request-summary strong{font-size:18px}[data-panel=requests] .panel-heading{align-items:flex-start;gap:10px}}
[data-panel="operators"] td { white-space: normal; overflow-wrap: anywhere; }
[data-panel="operators"] td small { display: block; margin-top: 5px; }
#operator-error { color: #aa2c22; overflow-wrap: anywhere; }
#operator-dialog .dialog-heading { position: sticky; top: 0; z-index: 3; background: #9edcfa; padding: 4px 8px; border-radius: 12px; }
#operator-dialog { padding: 24px; max-height: calc(100dvh - 28px); overflow: hidden; }
#operator-dialog::before { display: none; }
#operator-dialog form { padding: 0; max-height: calc(100dvh - 76px); overflow: hidden; display: flex; flex-direction: column; gap: 8px; }
#operator-dialog .dialog-heading { position: static; margin: 0; flex-shrink: 0; }
#operator-dialog form > .subtle, #operator-error { margin: 0; flex-shrink: 0; }
#operator-fields, #operator-result { min-height: 0; overflow: auto; padding: 4px; overscroll-behavior: contain; }
#operator-dialog .dialog-actions { margin: 0; padding: 6px 0; flex-shrink: 0; }
.queue-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin: 18px 0; }
.queue-filters label { display: grid; gap: 5px; flex: 1 1 140px; min-width: 0; color: #437697; }
.queue-filters .queue-search { flex: 2 1 220px; }
.queue-filters input, .queue-filters select { width: 100%; min-width: 0; }
.queue-summary, .queue-pagination { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
.queue-summary button[aria-pressed="true"] { outline: 2px solid #168fd1; outline-offset: 2px; }
.ops-approval { overflow-wrap: anywhere; }
.ops-approval .dialog-actions { flex-wrap: wrap; }
.ops-approval input { width: 100%; min-width: 0; }

/* Retained ledger and read-only review share the existing art, without tall empty panels. */
[data-panel="economy"] > .panel.full { min-height: 0; margin-top: 18px; }
#economy-metrics { grid-template-columns: repeat(5,minmax(0,1fr)); }
#ops-player-content .ledger-table { min-width: 850px; table-layout: fixed; }
#ops-player-content .ledger-table th:last-child { width: 28%; }
#ops-player-content .ledger-table td { vertical-align: top; overflow-wrap: anywhere; white-space: normal; }
#ops-player-content .ledger-table td small { display: block; margin-top: 5px; }
#ops-player-content .ledger-table details p { margin: 8px 0; }
#history-review-body td { vertical-align: top; overflow-wrap: anywhere; white-space: normal; }
@media(max-width:1100px) { #economy-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); } }
#ops-alerts { grid-template-columns: minmax(0,1fr); min-width: 0; }
#ops-alerts > * { min-width: 0; }
#ops-alerts table { min-width: 0; }
#ops-alerts td { white-space: normal; overflow-wrap: anywhere; }
