* { box-sizing: border-box; }

:root {
  --dash-bg: #08070b;
  --dash-panel: rgba(16, 11, 20, .94);
  --dash-panel-solid: #100b14;
  --dash-raised: #17101d;
  --dash-border: #35233f;
  --dash-accent: #e17fff;
  --dash-accent-strong: #b53ee0;
  --dash-accent-soft: rgba(181, 62, 224, .18);
  --dash-text: #f5edf8;
  --dash-muted: #ab99b3;
  --dash-dim: #725f7b;
  --dash-green: #44d49b;
  --dash-amber: #f1b659;
  --dash-red: #ff6f86;
}

html, body { min-height: 100%; }
body.dashboard-body {
  margin: 0;
  min-width: 0;
  height: 100dvh;
  overflow: hidden;
  background: #000;
  color: var(--dash-text);
  font-family: "Inter", sans-serif;
  letter-spacing: 0;
}

button, input, select, textarea { font: inherit; letter-spacing: 0; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--dash-accent);
  outline-offset: 2px;
}

.app-background {
  min-height: 100dvh;
  height: 100dvh;
  overflow: hidden;
  isolation: isolate;
}
.app-background > .background-grid { position: fixed; z-index: -1; }
.dashboard-page {
  position: relative;
  z-index: 2;
  width: min(1440px, 100%);
  min-height: 100dvh;
  height: 100dvh;
  margin: 0 auto;
  background: rgba(8, 7, 11, .82);
  box-shadow: 0 0 70px rgba(153, 0, 255, .16);
}

.top-toolbar {
  position: sticky;
  top: 0;
  z-index: 50;
  width: 100%;
  height: 64px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: rgba(15, 10, 19, .96);
  border-bottom: 1px solid var(--dash-border);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.toolbar-brand { display: flex; align-items: center; gap: 9px; color: var(--dash-text); text-decoration: none; }
.brand-mark { color: var(--dash-accent); font-size: 22px; text-shadow: 0 0 14px var(--dash-accent-strong); }
.brand-name { font-size: 16px; font-weight: 800; letter-spacing: 2px; }
.toolbar-nav { height: 64px; display: flex; align-items: stretch; gap: 4px; }
.nav-tab {
  min-width: 82px;
  padding: 0 18px;
  display: grid;
  place-items: center;
  border-bottom: 2px solid transparent;
  color: var(--dash-muted);
  text-decoration: none;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.nav-tab:hover, .nav-tab.active { color: var(--dash-accent); background: rgba(225,127,255,.05); }
.nav-tab.active { border-bottom-color: var(--dash-accent); }
.toolbar-account { min-width: 210px; display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.nav-account-link { color: var(--dash-accent); text-decoration: none; font-size: 13px; font-weight: 700; }
.user-profile { min-width: 0; display: flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; }
.username { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 600; }
.user-avatar, .large-avatar {
  display: grid;
  place-items: center;
  border: 1px solid var(--dash-accent);
  border-radius: 50%;
  color: var(--dash-accent);
  background: var(--dash-accent-soft);
  font-weight: 800;
}
.user-avatar { width: 34px; height: 34px; flex: 0 0 34px; }
.icon-button, .square-button {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1px solid var(--dash-border);
  border-radius: 6px;
  background: var(--dash-bg);
  color: var(--dash-muted);
  cursor: pointer;
}

.argus-layout { height: calc(100dvh - 64px); min-height: 0; display: grid; grid-template-columns: 280px minmax(520px, 840px) 320px; overflow: hidden; }
.left-sidebar, .right-panel { background: var(--dash-panel); }
.left-sidebar {
  min-width: 0;
  border-right: 1px solid var(--dash-border);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}
.sidebar-header { padding: 16px; display: flex; flex-direction: column; gap: 12px; border-bottom: 1px solid var(--dash-border); }
.control-row { height: 36px; display: flex; gap: 8px; }
.control-field {
  min-width: 0;
  height: 36px;
  flex: 1;
  padding: 0 11px;
  border: 1px solid var(--dash-border);
  border-radius: 6px;
  background: var(--dash-bg);
  color: var(--dash-text);
  font-size: 12px;
}
.control-field::placeholder { color: var(--dash-dim); }
.filter-row { display: grid; grid-template-columns: 82px 1fr; gap: 8px; }
.scope-note { margin: -4px 0 0; color: var(--dash-dim); font-size: 10px; }
.servers-heading, .list-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--dash-muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}
.servers-list {
  min-height: 320px;
  overflow-y: auto;
  min-height: 0;
  flex: 1 1 auto;
}
.server-row {
  width: 100%;
  min-height: 58px;
  padding: 11px 16px;
  display: flex;
  align-items: center;
  gap: 11px;
  border: 0;
  border-bottom: 1px solid var(--dash-border);
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.server-row:hover { background: rgba(225,127,255,.06); }
.server-row.selected { padding-left: 13px; border-left: 3px solid var(--dash-accent); background: var(--dash-accent-soft); }
.server-row[aria-disabled="true"] { cursor: not-allowed; }
.status-dot { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--dash-green); }
.status-dot.stale { background: var(--dash-amber); }
.server-info { min-width: 0; flex: 1; display: grid; gap: 4px; }
.server-title { overflow: hidden; color: var(--dash-text); font-size: 13px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.server-meta { display: flex; gap: 12px; color: var(--dash-dim); font-size: 10px; }
.list-pagination { padding: 12px 16px; border-top: 1px solid var(--dash-border); }
.pagination-actions { display: flex; gap: 6px; }

.center-area { min-width: 0; min-height: 0; padding: 24px; display: flex; flex-direction: column; gap: 24px; overflow: hidden; }
.map-bar {
  min-height: 84px;
  padding: 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 20px;
  border: 1px solid var(--dash-border);
  border-radius: 8px;
  background: var(--dash-panel);
}
.map-summary { min-width: 0; display: grid; gap: 4px; }
.map-summary strong, .map-summary span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.map-summary strong { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.server-job-id { min-width: 0; color: var(--dash-muted); font-family: monospace; font-size: 9px; font-weight: 500; }
.map-summary span, .combatants { color: var(--dash-muted); font-size: 10px; }
.combatants { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.actions { display: grid; gap: 5px; }
.action-button, .small-button {
  min-height: 26px;
  padding: 4px 10px;
  border: 1px solid var(--dash-accent);
  border-radius: 4px;
  background: var(--dash-accent-soft);
  color: var(--dash-accent);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
}
.small-button { min-height: 30px; }
.action-button:disabled, .small-button:disabled { opacity: .45; cursor: not-allowed; }
.mobile-back { display: none; }

.radar-map {
  position: relative;
  min-height: 680px;
  flex: 1;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid var(--dash-accent-strong);
  border-radius: 8px;
  background:
    linear-gradient(rgba(8,7,11,.8), rgba(8,7,11,.8)),
    repeating-linear-gradient(0deg, transparent 0 39px, rgba(225,127,255,.07) 40px),
    repeating-linear-gradient(90deg, transparent 0 39px, rgba(225,127,255,.07) 40px),
    radial-gradient(circle at 50% 52%, rgba(181,62,224,.2), transparent 55%), #100c14;
}
.map-hud { position: absolute; z-index: 5; top: 92px; display: grid; gap: 3px; color: var(--dash-dim); font-size: 8px; }
.map-hud.left { left: 20px; }
.map-hud.right { right: 20px; text-align: right; }
.map-hud strong { color: var(--dash-accent); font-size: 10px; }
.map-hud.right strong { color: var(--dash-green); }
.player-strip {
  position: absolute;
  z-index: 10;
  inset: 0 0 auto;
  height: 72px;
  padding: 14px;
  display: flex;
  gap: 9px;
  overflow-x: auto;
  border-bottom: 1px solid var(--dash-border);
  background: rgba(10,7,13,.86);
}
.player-strip::-webkit-scrollbar { height: 6px; }
.player-strip::-webkit-scrollbar-thumb { background: var(--dash-accent-strong); border-radius: 3px; }
.player-chip {
  width: 48px;
  min-width: 48px;
  height: 48px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid var(--dash-border);
  border-radius: 50%;
  background: rgba(23,16,29,.95);
  color: var(--dash-text);
  text-align: left;
  cursor: pointer;
}
.player-chip:hover, .player-chip.selected { border-color: var(--dash-accent); box-shadow: 0 0 12px rgba(181,62,224,.3); }
.player-avatar { width: 46px; height: 46px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; }
.player-chip .avatar-image { width: 46px; height: 46px; border: 0; }
.radar-ring { position: absolute; z-index: 1; left: 50%; top: 55%; border: 1px dashed rgba(225,127,255,.25); border-radius: 50%; transform: translate(-50%,-50%); }
.ring-large { width: min(500px, 68%); aspect-ratio: 1; }
.ring-small { width: min(250px, 34%); aspect-ratio: 1; }
.map-marker-layer { position: absolute; z-index: 8; inset: 72px 0 0; pointer-events: none; }
.radar-empty { position: absolute; z-index: 4; inset: 45% 18% auto; color: var(--dash-dim); font-size: 12px; text-align: center; }

.right-panel { min-width: 0; min-height: 0; padding: 20px; overflow-y: auto; border-left: 1px solid var(--dash-border); }
.panel-heading { min-height: 24px; display: flex; align-items: center; justify-content: space-between; }
.panel-heading h2 { margin: 0; font-size: 13px; text-transform: uppercase; }
.profile-card, .inventory-card { margin-top: 14px; padding: 16px; border: 1px solid var(--dash-border); border-radius: 8px; background: var(--dash-bg); }
.profile-heading { display: flex; align-items: center; gap: 12px; }
.large-avatar { width: 56px; height: 56px; flex: 0 0 56px; font-size: 20px; }
.profile-name { min-width: 0; display: grid; gap: 5px; }
.profile-name strong { overflow-wrap: anywhere; font-size: 16px; }
.identity-field { min-width: 0; display: inline-flex; align-items: center; gap: 5px; color: var(--dash-muted); }
.profile-card > .small-button { width: fit-content; margin-top: 14px; display: inline-flex; align-items: center; text-decoration: none; }
.profile-tag { width: fit-content; padding: 2px 6px; border-radius: 4px; background: var(--dash-accent-soft); color: var(--dash-accent); font-size: 9px; font-weight: 700; }
.profile-stats { margin-top: 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.stat { min-width: 0; padding: 10px; border: 1px solid var(--dash-border); border-radius: 6px; background: var(--dash-raised); }
.stat span { display: block; color: var(--dash-dim); font-size: 9px; text-transform: uppercase; }
.stat strong { display: block; margin-top: 4px; overflow-wrap: anywhere; font-size: 16px; }
.inventory-section { margin-top: 24px; }
.inventory-list { display: grid; gap: 8px; }
.item-row { min-height: 38px; display: grid; grid-template-columns: 32px minmax(0,1fr) auto; gap: 9px; align-items: center; }
.item-icon { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid var(--dash-accent-strong); border-radius: 4px; color: var(--dash-accent); }
.item-info { min-width: 0; display: grid; gap: 2px; }
.item-info strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.item-info span { color: var(--dash-dim); font-size: 8px; text-transform: uppercase; }
.item-count { color: var(--dash-accent); font-size: 11px; }

.state-panel { margin: 16px; padding: 18px; border: 1px solid var(--dash-border); border-radius: 6px; background: rgba(16,11,20,.88); text-align: center; }
.state-panel strong { display: block; margin-bottom: 5px; font-size: 13px; }
.state-panel p { margin: 0; color: var(--dash-muted); font-size: 11px; line-height: 1.5; }
.state-panel.error { border-color: rgba(255,111,134,.5); }
.locked-value { color: var(--dash-accent); font-size: 11px; cursor: help; }
.skeleton { position: relative; overflow: hidden; background: var(--dash-raised); color: transparent; }
.skeleton::after { content: ""; position: absolute; inset: 0; transform: translateX(-100%); background: linear-gradient(90deg, transparent, rgba(225,127,255,.13), transparent); animation: shimmer 1.4s infinite; }
@keyframes shimmer { to { transform: translateX(100%); } }
.stale-badge, .live-badge { color: var(--dash-amber); font-size: 9px; font-weight: 700; text-transform: uppercase; }
.live-badge { color: var(--dash-green); }
.toast-region { position: fixed; z-index: 100; right: 20px; bottom: 20px; display: grid; gap: 8px; }
.toast { max-width: 320px; padding: 12px 14px; border: 1px solid var(--dash-accent); border-radius: 6px; background: var(--dash-panel-solid); box-shadow: 0 8px 30px #000; font-size: 11px; }
.drawer { position: fixed; z-index: 80; top: 64px; right: 0; bottom: 0; width: min(400px, 100%); padding: 20px; overflow: auto; border-left: 1px solid var(--dash-border); background: var(--dash-panel-solid); box-shadow: -20px 0 60px #000; }
.drawer[hidden] { display: none; }

.dossier-layout { height: calc(100dvh - 64px); min-height: 0; display: grid; grid-template-columns: 280px minmax(480px, 1fr) 360px; overflow: hidden; }
.dossier-sidebar { min-height: 0; display: flex; flex-direction: column; overflow: hidden; border-right: 1px solid var(--dash-border); background: var(--dash-panel); }
.dossier-main { min-width: 0; min-height: 0; padding: 24px; overflow-y: auto; }
.dossier-aside { min-width: 0; min-height: 0; padding: 20px; overflow-y: auto; border-left: 1px solid var(--dash-border); background: var(--dash-panel); }
.search-form { display: flex; gap: 8px; }
.search-form .control-field { width: 100%; }
.pdpd-search-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pdpd-search-controls .square-button { width: 100%; }
.pdpd-search-controls option.capability-locked { color: var(--dash-dim); }
.recent-heading { padding: 16px; }
.recent-list { min-height: 0; display: grid; align-content: start; flex: 1 1 auto; overflow-y: auto; }
.recent-button { min-height: 44px; padding: 10px 16px; border: 0; border-bottom: 1px solid var(--dash-border); background: transparent; color: var(--dash-muted); text-align: left; cursor: pointer; }
.recent-button:hover { color: var(--dash-accent); background: var(--dash-accent-soft); }
.matching-player { display: grid; gap: 4px; }
.matching-player strong { overflow: hidden; color: var(--dash-text); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.matching-player span { color: var(--dash-dim); font-size: 9px; }
.matching-player.selected { border-left: 3px solid var(--dash-accent); background: var(--dash-accent-soft); }
.result-pagination { margin-top: auto; }
.dossier-hero { min-height: 128px; padding: 20px; display: flex; align-items: center; gap: 18px; border: 1px solid var(--dash-border); border-radius: 8px; background: var(--dash-panel); }
.dossier-refresh { margin-left: auto; }
.dossier-hero .large-avatar { width: 76px; height: 76px; flex-basis: 76px; font-size: 26px; object-fit: cover; }
.dossier-identity { min-width: 0; }
.dossier-identity h1 { margin: 0 0 7px; overflow-wrap: anywhere; font-size: 24px; }
.identity-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: var(--dash-muted); font-size: 10px; }
.dossier-section { margin-top: 20px; }
.dossier-section > h2 { margin: 0 0 10px; font-size: 12px; text-transform: uppercase; }
.dossier-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.report-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.kill-list { margin-top: 12px; display: grid; gap: 7px; }
.kill-row { min-height: 54px; padding: 10px; display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; border: 1px solid var(--dash-border); border-radius: 5px; background: var(--dash-bg); }
.kill-row strong { font-size: 11px; }
.kill-row span { color: var(--dash-muted); font-size: 9px; }
.aside-section + .aside-section { margin-top: 24px; }

.admin-layout { height: calc(100dvh - 64px); min-height: 0; display: grid; grid-template-columns: 230px minmax(0,1fr); overflow: hidden; }
.resource-sidebar { height: 100%; overflow-y: auto; border-right: 1px solid var(--dash-border); background: var(--dash-panel); }
.resource-sidebar h1 { margin: 0; padding: 18px 16px 12px; font-size: 13px; text-transform: uppercase; }
.resource-list { display: grid; }
.resource-button { min-height: 42px; padding: 9px 16px; border: 0; border-left: 3px solid transparent; border-bottom: 1px solid var(--dash-border); background: transparent; color: var(--dash-muted); text-align: left; cursor: pointer; }
.resource-button:hover, .resource-button.active { color: var(--dash-accent); background: var(--dash-accent-soft); }
.resource-button.active { border-left-color: var(--dash-accent); }
.admin-workspace { min-width: 0; min-height: 0; padding: 20px; display: flex; flex-direction: column; overflow: hidden; }
.admin-actionbar { position: sticky; top: 64px; z-index: 20; min-height: 62px; padding: 10px 12px; display: flex; align-items: center; gap: 9px; border: 1px solid var(--dash-border); border-radius: 6px; background: rgba(16,11,20,.97); }
.admin-actionbar h1 { min-width: 150px; margin: 0 auto 0 0; font-size: 16px; }
.admin-actionbar .control-field { max-width: 220px; flex: 0 1 220px; }
.table-wrap { min-height: 0; margin-top: 14px; max-width: 100%; flex: 1 1 auto; overflow: auto; border: 1px solid var(--dash-border); border-radius: 6px; background: var(--dash-panel); }
.admin-table { width: max-content; min-width: 100%; border-collapse: collapse; font-size: 10px; }
.admin-table th { position: sticky; top: 0; z-index: 5; padding: 10px; border-bottom: 1px solid var(--dash-border); background: var(--dash-panel-solid); color: var(--dash-muted); text-align: left; text-transform: uppercase; white-space: nowrap; }
.admin-table td { max-width: 280px; padding: 9px 10px; border-bottom: 1px solid var(--dash-border); overflow: hidden; color: var(--dash-text); text-overflow: ellipsis; white-space: nowrap; }
.admin-table tbody tr:hover { background: rgba(225,127,255,.04); }
.admin-table .row-actions { position: sticky; right: 0; z-index: 4; min-width: 116px; background: var(--dash-panel-solid); }
.row-action-group { display: flex; gap: 5px; }
.null-value { color: var(--dash-dim); font-style: italic; }
.secret-value { color: var(--dash-accent); font-family: monospace; }
.secret-value[role="button"] { cursor: pointer; }
.secret-value[role="button"]:focus-visible { outline: 2px solid var(--dash-accent); outline-offset: -2px; }
.admin-pagination { padding: 12px 0; display: flex; justify-content: space-between; align-items: center; color: var(--dash-muted); font-size: 10px; }
.form-grid { margin-top: 16px; display: grid; gap: 14px; }
.field-group { display: grid; gap: 6px; }
.field-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.field-heading label { color: var(--dash-muted); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.field-hint { color: var(--dash-dim); font-size: 9px; overflow-wrap: anywhere; }
.field-input { width: 100%; min-height: 38px; padding: 8px 10px; border: 1px solid var(--dash-border); border-radius: 5px; background: var(--dash-bg); color: var(--dash-text); }
textarea.field-input { min-height: 108px; resize: vertical; font-family: monospace; font-size: 11px; }
.field-input:disabled { opacity: .55; }
.null-toggle { display: inline-flex; align-items: center; gap: 5px; color: var(--dash-dim); font-size: 9px; }
.form-error { padding: 10px; border: 1px solid rgba(255,111,134,.5); border-radius: 5px; color: var(--dash-red); font-size: 10px; }
.drawer-actions { position: sticky; bottom: -20px; margin: 20px -20px -20px; padding: 12px 20px; display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--dash-border); background: var(--dash-panel-solid); }
.confirm-dialog { width: min(440px, calc(100% - 32px)); padding: 0; border: 1px solid var(--dash-border); border-radius: 8px; background: var(--dash-panel-solid); color: var(--dash-text); }
.confirm-dialog::backdrop { background: rgba(0,0,0,.72); }
.confirm-content { padding: 22px; }
.confirm-content h2 { margin: 0 0 8px; font-size: 16px; }
.confirm-content p { color: var(--dash-muted); font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.danger-button { border-color: var(--dash-red); color: var(--dash-red); background: rgba(255,111,134,.1); }

.servers-list::-webkit-scrollbar, .player-strip::-webkit-scrollbar, .right-panel::-webkit-scrollbar, .recent-list::-webkit-scrollbar,
.dossier-main::-webkit-scrollbar, .dossier-aside::-webkit-scrollbar, .resource-sidebar::-webkit-scrollbar, .table-wrap::-webkit-scrollbar, .drawer::-webkit-scrollbar { width: 6px; height: 6px; }
.servers-list::-webkit-scrollbar-thumb, .player-strip::-webkit-scrollbar-thumb, .right-panel::-webkit-scrollbar-thumb, .recent-list::-webkit-scrollbar-thumb,
.dossier-main::-webkit-scrollbar-thumb, .dossier-aside::-webkit-scrollbar-thumb, .resource-sidebar::-webkit-scrollbar-thumb, .table-wrap::-webkit-scrollbar-thumb, .drawer::-webkit-scrollbar-thumb { border-radius: 3px; background: var(--dash-accent-strong); }

@media (max-width: 1180px) {
  .argus-layout { grid-template-columns: 280px minmax(0,1fr); }
  .right-panel { position: fixed; z-index: 60; top: 64px; right: 0; bottom: 0; width: 320px; overflow-y: auto; box-shadow: -18px 0 50px #000; transform: translateX(100%); transition: transform .2s ease; }
  .right-panel.open { transform: translateX(0); }
  .dossier-layout { grid-template-columns: 260px minmax(0,1fr); }
  .dossier-aside { grid-column: 2; border-left: 0; border-top: 1px solid var(--dash-border); }
}
@media (max-width: 820px) {
  body.dashboard-body { height: auto; overflow: auto; }
  .app-background, .dashboard-page { height: auto; min-height: 100dvh; overflow: visible; }
  .top-toolbar { padding: 0 12px; gap: 8px; }
  .brand-name, .username { display: none; }
  .toolbar-account { min-width: auto; }
  .toolbar-nav { overflow-x: auto; }
  .toolbar-nav::-webkit-scrollbar { display: none; }
  .nav-tab { min-width: 66px; padding: 0 10px; font-size: 10px; }
  .argus-layout { height: auto; min-height: calc(100dvh - 64px); display: block; overflow: visible; }
  .left-sidebar { height: auto; min-height: calc(100dvh - 64px); border: 0; }
  .center-area { display: none; padding: 12px; }
  .argus-layout.show-detail .left-sidebar { display: none; }
  .argus-layout.show-detail .center-area { display: flex; }
  .map-bar { grid-template-columns: 1fr auto; }
  .mobile-back { display: block; }
  .combatants { display: none; }
  .radar-map { min-width: 620px; min-height: 620px; }
  .radar-scroll { overflow-x: auto; }
  .dossier-layout { height: auto; min-height: calc(100dvh - 64px); display: block; overflow: visible; }
  .dossier-sidebar { border-right: 0; }
  .dossier-main, .dossier-aside { padding: 14px; }
  .dossier-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .admin-layout { height: auto; min-height: calc(100dvh - 64px); display: block; overflow: visible; }
  .resource-sidebar { position: static; height: auto; border-right: 0; border-bottom: 1px solid var(--dash-border); }
  .resource-list { display: flex; overflow-x: auto; }
  .resource-button { min-width: max-content; border-left: 0; }
  .admin-workspace { padding: 12px; display: block; overflow: visible; }
  .admin-actionbar { top: 64px; flex-wrap: wrap; }
  .admin-actionbar h1 { flex: 1 0 100%; }
  .admin-actionbar .control-field { max-width: none; flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}