/* IPBA UI System / Compact Light and Dark. Shared by Studio and tactical board. */
:root {
  --ipba-bg: #f3f3f3;
  --ipba-surface: #fff;
  --ipba-surface-muted: #fafafa;
  --ipba-field-bg: #fff;
  --ipba-border: #ddd;
  --ipba-border-strong: #ccc;
  --ipba-text: #333;
  --ipba-text-muted: #667078;
  --ipba-text-label: #555;
  --ipba-nav: #2f2f2f;
  --ipba-nav-text: #fff;
  --ipba-accent: #00acd6;
  --ipba-accent-border: #00a5bb;
  --ipba-link: #0073b7;
  --ipba-focus: rgba(0,172,214,.2);
  --ipba-warning-bg: #fff6e6;
  --ipba-warning-text: #775113;
  --ipba-warning-border: #e4c68d;
  --ipba-success-bg: #edf7f1;
  --ipba-success-text: #246544;
  color-scheme: light;
}
html[data-ipba-theme="dark"] {
  --ipba-bg: #172126;
  --ipba-surface: #223038;
  --ipba-surface-muted: #293840;
  --ipba-field-bg: #1b272d;
  --ipba-border: #3a4a52;
  --ipba-border-strong: #51636c;
  --ipba-text: #e7eef1;
  --ipba-text-muted: #a2b1b8;
  --ipba-text-label: #c6d1d6;
  --ipba-nav: #10191d;
  --ipba-nav-text: #f4f8f9;
  --ipba-accent: #29c3e6;
  --ipba-accent-border: #29c3e6;
  --ipba-link: #67d8ef;
  --ipba-focus: rgba(41,195,230,.25);
  --ipba-warning-bg: #3c3322;
  --ipba-warning-text: #f0d49b;
  --ipba-warning-border: #716042;
  --ipba-success-bg: #193f35;
  --ipba-success-text: #95dfb7;
  color-scheme: dark;
}
body.ipba-layout-tool {
  margin: 0;
  width: 100%;
  min-width: 0;
  background: var(--ipba-bg);
  color: var(--ipba-text);
  font: 13px/1.35 Arial, Helvetica, sans-serif;
}
.ipba-layout-tool *, .ipba-layout-tool *::before, .ipba-layout-tool *::after { box-sizing: border-box; }
.ipba-layout-tool .ipba-layout-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
  width: 100%;
  max-width: none;
  min-height: 64px;
  margin: 0;
  padding: 10px 16px;
  border: 0;
  border-bottom: 3px solid var(--ipba-accent);
  background: var(--ipba-nav);
  color: var(--ipba-nav-text);
}
.ipba-layout-tool .ipba-layout-home {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 0;
  border: 0;
  background: transparent;
}
.ipba-layout-home img { display: block; width: auto; height: 36px; max-width: 130px; object-fit: contain; }
.ipba-layout-identity { min-width: 0; }
.ipba-layout-identity h1 { margin: 0; color: inherit; font-size: 19px; line-height: 1.2; font-weight: 600; }
.ipba-layout-identity p { margin: 3px 0 0; color: #d4dadd; font-size: 11px; line-height: 1.3; }
.ipba-layout-tool .ipba-layout-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  padding: 0;
  margin: 0 0 0 auto;
  border: 0;
  background: transparent;
}
.ipba-layout-nav a, .ipba-layout-tool .ipba-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #68747a;
  border-radius: 3px;
  color: #fff;
  background: transparent;
  font: 12px/1.3 Arial, Helvetica, sans-serif;
  text-decoration: none;
  white-space: nowrap;
}
.ipba-layout-nav a[aria-current="page"] { color: #fff; border-color: var(--ipba-accent); box-shadow: inset 0 -2px var(--ipba-accent); background: #414141; }
.ipba-layout-nav a:hover, .ipba-layout-tool .ipba-theme-toggle:hover { color: #fff; background: #414141; border-color: var(--ipba-accent); text-decoration: none; }
.ipba-theme-icon { display: block; width: 13px; height: 13px; border: 1px solid currentColor; border-radius: 50%; background: linear-gradient(90deg,currentColor 50%,transparent 50%); }
.ipba-layout-tool :is(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--ipba-accent); outline-offset: 2px; }
.ipba-layout-tool button, .ipba-layout-tool input, .ipba-layout-tool select, .ipba-layout-tool textarea { font-family: Arial, Helvetica, sans-serif; }
.ipba-layout-tool .ipba-layout-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 16px; background: var(--ipba-surface); border-bottom: 1px solid var(--ipba-border); }
.ipba-layout-tool .ipba-layout-actions .ipba-layout-name { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; color: var(--ipba-text-label); font-size: 11px; font-weight: 600; }
.ipba-layout-tool .ipba-layout-actions #title { width: clamp(220px,25vw,410px); min-height: 34px; padding: 7px 9px; color: var(--ipba-text); background: var(--ipba-field-bg); border: 1px solid var(--ipba-border-strong); border-radius: 3px; font-size: 13px; }
.ipba-layout-tool .ipba-layout-actions #saveState { margin: 0 auto 0 4px; color: var(--ipba-text-muted); font-size: 11px; }

/* Studio commands use the shared theme; the field and exports retain their own colours. */
body.ipba-layout-studio { --bg: var(--ipba-bg); --panel: var(--ipba-surface); --line: var(--ipba-border); --muted: var(--ipba-text-muted); --cyan: var(--ipba-accent); --ink: var(--ipba-text); }
.ipba-layout-studio button, .ipba-layout-studio .button { min-height: 32px; padding: 7px 10px; border-radius: 3px; border-color: var(--ipba-border-strong); color: var(--ipba-text); background: var(--ipba-surface-muted); }
.ipba-layout-studio button:hover, .ipba-layout-studio .button:hover { border-color: var(--ipba-accent); background: var(--ipba-surface-muted); }
.ipba-layout-studio button:disabled { opacity: .48; }
.ipba-layout-studio input, .ipba-layout-studio select { min-height: 32px; padding: 6px 8px; background: var(--ipba-field-bg); color: var(--ipba-text); border-color: var(--ipba-border-strong); border-radius: 3px; }
.ipba-layout-studio input[type="checkbox"] { width: 15px; height: 15px; min-height: 0; padding: 0; accent-color: var(--ipba-accent); }
.ipba-layout-studio .primary, .ipba-layout-studio #openGallery { color: #07323c; background: var(--ipba-accent); border-color: var(--ipba-accent-border); font-weight: 700; }
.ipba-layout-studio .primary:hover, .ipba-layout-studio #openGallery:hover { color: #07323c; background: var(--ipba-accent); filter: brightness(.95); }
.ipba-layout-studio .active { color: var(--ipba-link); border-color: var(--ipba-accent-border); box-shadow: inset 0 -2px var(--ipba-accent); }
.ipba-layout-studio > nav { gap: 10px 14px; padding: 9px 16px; background: var(--ipba-surface-muted); border-color: var(--ipba-border); }
.ipba-layout-studio > nav label { margin: 0; font-size: 12px; }
.ipba-layout-studio #sourceBtn, .ipba-layout-studio .inspector a { color: var(--ipba-link); }
.ipba-layout-studio main { width: 100%; max-width: none; min-width: 0; grid-template-columns: 230px minmax(0,1fr) 235px; }
.ipba-layout-studio aside { padding: 14px 12px; background: var(--ipba-surface); }
.ipba-layout-studio .workspace { padding: 14px; background: var(--ipba-bg); }
.ipba-layout-studio .catalog { max-height: calc(100vh - 200px); min-height: 300px; }
.ipba-layout-studio .notice, .ipba-layout-studio .badge { color: var(--ipba-warning-text); border-color: var(--ipba-warning-border); background: var(--ipba-warning-bg); border-radius: 3px; }
.ipba-layout-studio .badge.ok { color: var(--ipba-success-text); background: var(--ipba-success-bg); border-color: var(--ipba-success-text); }
.ipba-layout-studio .card { padding: 7px 5px; }
.ipba-layout-studio .card .stock { background: var(--ipba-field-bg); color: var(--ipba-text-label); border: 1px solid var(--ipba-border); border-radius: 3px; }
.ipba-layout-studio #stage { border-color: var(--ipba-border-strong); border-radius: 4px; background: var(--ipba-surface); box-shadow: 0 3px 14px #0000000a; }
.ipba-layout-studio #field.is-panning, .ipba-layout-studio #field.is-dragging { cursor: grabbing; }
.ipba-layout-studio .fieldbar, .ipba-layout-studio .fieldfoot { color: var(--ipba-text-muted); }
.ipba-layout-studio #alerts { color: var(--ipba-warning-text); }
.ipba-layout-studio #alerts .good { color: var(--ipba-success-text); }
.ipba-layout-studio .pill { color: var(--ipba-success-text); border-color: var(--ipba-success-text); border-radius: 3px; }
.ipba-layout-studio .kit-alert { color: var(--ipba-warning-text); border-color: var(--ipba-warning-border); background: var(--ipba-warning-bg); }
.ipba-layout-studio .kit-alert strong { color: inherit; }
.ipba-layout-studio dialog { color: var(--ipba-text); background: var(--ipba-surface); border-color: var(--ipba-border-strong); border-radius: 6px; padding: 20px; }
.ipba-layout-studio dialog p { color: var(--ipba-text-muted); }
.ipba-layout-studio dialog a { color: var(--ipba-link); }
.ipba-layout-studio th, .ipba-layout-studio td { border-color: var(--ipba-border); padding: 6px 8px; }
.ipba-layout-studio th { background: var(--ipba-surface-muted); color: var(--ipba-text-label); }
.ipba-layout-studio #auditTable tr[style*="background"] { background: var(--ipba-warning-bg) !important; }
.ipba-layout-studio .threeToolbar, .ipba-layout-studio .presetKeys { color: var(--ipba-text); background: var(--ipba-surface); border-color: var(--ipba-border); }
.ipba-layout-studio .presetKeys span, .ipba-layout-studio .threeHelp, .ipba-layout-studio .threeNote { color: var(--ipba-text-muted); }
.ipba-layout-studio .threeNote { background: var(--ipba-surface-muted); }
.ipba-layout-studio .motionHint { color: var(--ipba-link); }
.ipba-layout-studio .heightControl, .ipba-layout-studio .cameraPresetLabel { color: var(--ipba-text); background: var(--ipba-surface); border: 1px solid var(--ipba-border-strong); border-radius: 4px; }
.ipba-layout-studio .heightControl { padding: 10px 6px; opacity: .96; }
.ipba-layout-studio .heightControl input[type="range"] { accent-color: var(--ipba-accent); }
body.ipba-layout-studio.focus3d main,
body.ipba-layout-studio.expanded3d main { grid-template-columns: minmax(0,1fr); }
body.ipba-layout-studio.focus3d main > aside,
body.ipba-layout-studio.expanded3d main > aside { display: none; }
body.ipba-layout-studio.focus3d main > .workspace,
body.ipba-layout-studio.expanded3d main > .workspace { grid-column: 1/-1; width: 100%; max-width: none; margin: 0; }
.ipba-layout-studio #toast { max-width: calc(100vw - 28px); color: var(--ipba-text); background: var(--ipba-surface); border: 1px solid var(--ipba-accent); box-shadow: 0 5px 20px #0003; }

/* Gallery is part of the same theme; physical preview colours stay unchanged. */
.ipba-layout-studio #galleryDialog { padding: 0; color: var(--ipba-text); background: var(--ipba-bg); border-color: var(--ipba-border-strong); }
.ipba-layout-studio .gallery-header { color: var(--ipba-nav-text); background: var(--ipba-nav); }
.ipba-layout-studio .gallery-header p { color: #d4dadd; }
.ipba-layout-studio .gallery-header small { color: #67d8ef; }
.ipba-layout-studio .gallery-header button { color: #fff; background: transparent; border-color: #68747a; }
.ipba-layout-studio .gallery-tools, .ipba-layout-studio .gallery-inventory, .ipba-layout-studio .gallery-footer details { border-color: var(--ipba-border); }
.ipba-layout-studio .gallery-card { background: var(--ipba-surface); border-color: var(--ipba-border); border-radius: 4px; }
.ipba-layout-studio .gallery-card h3 { color: var(--ipba-text); font-size: 17px; }
.ipba-layout-studio .gallery-count, .ipba-layout-studio .gallery-card-meta, .ipba-layout-studio .gallery-description, .ipba-layout-studio .gallery-inventory, .ipba-layout-studio .gallery-footer { color: var(--ipba-text-muted); }
.ipba-layout-studio .gallery-focus, .ipba-layout-studio .gallery-sources a { color: var(--ipba-link); }
.ipba-layout-studio .gallery-quantity, .ipba-layout-studio .gallery-footer summary { color: var(--ipba-text-label); }
.ipba-layout-studio .gallery-format { color: var(--ipba-link); background: var(--ipba-surface-muted); border-color: var(--ipba-accent-border); }
.ipba-layout-studio .gallery-filters button { color: var(--ipba-text); background: var(--ipba-surface); border-color: var(--ipba-border-strong); }
.ipba-layout-studio .gallery-filters button.active { color: #07323c; background: var(--ipba-accent); border-color: var(--ipba-accent-border); }
.ipba-layout-studio .gallery-open { color: #fff; background: #2f2f2f; border-radius: 3px; }
.ipba-layout-studio .gallery-open:hover { color: #fff; background: #414141; border-color: var(--ipba-accent-border); }

/* Tactical board keeps its tool permissions, panels and exported canvas. */
body.ipba-layout-tactical {
  --ipba-page-bg: var(--ipba-bg);
  --ipba-surface-alt: var(--ipba-surface-muted);
  --ipba-field-border: var(--ipba-border-strong);
  --ipba-title: var(--ipba-text);
  --ipba-muted: var(--ipba-text-muted);
  --ipba-accent-strong: var(--ipba-link);
  --ipba-accent-soft: var(--ipba-focus);
  --bg: var(--ipba-bg);
  --panel: var(--ipba-surface);
  --soft: var(--ipba-surface-muted);
  --muted-surface: var(--ipba-surface-muted);
  --ink: var(--ipba-text);
  --title: var(--ipba-text);
  --muted: var(--ipba-text-muted);
  --line: var(--ipba-border);
  --field: var(--ipba-border-strong);
  --accent: var(--ipba-accent);
  --accent-border: var(--ipba-accent-border);
  --accent-soft: var(--ipba-focus);
  --accent-strong: var(--ipba-link);
}
.ipba-layout-tactical .app-shell > .ipba-layout-header {
  grid-column: 1/-1;
  grid-row: 1;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.ipba-layout-tactical .ipba-layout-header span { padding-left: 0; }
.ipba-layout-tactical .ipba-layout-header span::before { content: none; }
.ipba-layout-tactical .ipba-layout-header .ipba-layout-nav a { color: #fff; }
.ipba-layout-tactical .ipba-layout-header .ipba-admin-link { margin: 0; font-size: 11px; }
.ipba-layout-tactical .ipba-layout-header .ipba-theme-toggle { height: auto; margin: 0; font-weight: 400; }
.ipba-layout-tactical .topbar { border-top: 0; box-shadow: none; padding: 9px 12px; background: var(--ipba-surface); }
.ipba-layout-tactical .stage-toolbar, .ipba-layout-tactical .layer-actions { background: var(--ipba-surface-muted); }
.ipba-layout-tactical .inspector textarea, .ipba-layout-tactical #archiveDialog { font-family: Arial, Helvetica, sans-serif; }
.ipba-layout-tactical button { font-weight: 400; }
.ipba-layout-tactical .formation-actions .formation-primary, .ipba-layout-tactical .primary-action, .ipba-layout-tactical #saveBtn, .ipba-layout-tactical #confirmExportBtn, .ipba-layout-tactical #guideDoneBtn { color: #07323c; background: var(--ipba-accent); border-color: var(--ipba-accent-border); font-weight: 700; }
.ipba-layout-tactical .formation-actions .formation-primary:hover, .ipba-layout-tactical .primary-action:hover, .ipba-layout-tactical #saveBtn:hover, .ipba-layout-tactical #confirmExportBtn:hover, .ipba-layout-tactical #guideDoneBtn:hover { color: #07323c; background: var(--ipba-accent); filter: brightness(.95); }
.ipba-layout-tactical #projectsBtn, .ipba-layout-tactical #viewerPreviewBtn, .ipba-layout-tactical #backToEditorBtn, .ipba-layout-tactical #newFromPhotosBtn, .ipba-layout-tactical #pastEventsBtn { color: var(--ipba-text); background: var(--ipba-surface-muted); border-color: var(--ipba-border-strong); }
.ipba-layout-tactical #projectsBtn:hover, .ipba-layout-tactical #viewerPreviewBtn:hover, .ipba-layout-tactical #backToEditorBtn:hover, .ipba-layout-tactical #newFromPhotosBtn:hover, .ipba-layout-tactical #pastEventsBtn:hover { color: var(--ipba-link); border-color: var(--ipba-accent); }
.ipba-layout-tactical #countdownOverlay button,
.ipba-layout-tactical .btn-accent,
.ipba-layout-tactical #loadEventBtn,
.ipba-layout-tactical #loadServerBtn,
.ipba-layout-tactical .toolrail button.active { color: #07323c; background: var(--ipba-accent); border-color: var(--ipba-accent-border); }
.ipba-layout-tactical #countdownOverlay button:hover,
.ipba-layout-tactical .btn-accent:hover,
.ipba-layout-tactical #loadEventBtn:hover,
.ipba-layout-tactical #loadServerBtn:hover { color: #07323c; background: var(--ipba-accent); border-color: var(--ipba-accent-border); filter: brightness(.95); }
.ipba-layout-tactical .ipba-layout-header .t-view { display: none; }
.ipba-layout-tactical.viewer .ipba-layout-header .t-view { display: inline; }
.ipba-layout-tactical.viewer .ipba-layout-header .t-edit { display: none; }
.ipba-layout-tactical .ipba-layout-header .ipba-layout-context { display: none; }
.ipba-layout-tactical.ipba-national-context .ipba-layout-header .ipba-layout-context { display: inline-flex; padding: 5px 7px; border: 1px solid var(--ipba-accent); border-radius: 3px; color: #fff; font-size: 11px; }

@media (max-width: 1100px) {
  .ipba-layout-tool .ipba-layout-header { gap: 10px 14px; }
  .ipba-layout-studio main { grid-template-columns: 190px minmax(0,1fr); }
  .ipba-layout-studio .inspector { grid-column: 1/-1; }
  .ipba-layout-studio .catalog { max-height: 750px; }
  .ipba-layout-tool .ipba-layout-actions #saveState { display: block; }
}
@media (max-width: 760px) {
  .ipba-layout-tool .ipba-layout-header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; padding: 10px 12px; gap: 10px; }
  .ipba-layout-home img { height: 36px; max-width: 100px; }
  .ipba-layout-identity h1 { font-size: 17px; }
  .ipba-layout-identity p { font-size: 10px; }
  .ipba-layout-tool .ipba-layout-nav { grid-column: 1/-1; width: 100%; margin: 0; }
  .ipba-layout-tool .ipba-layout-context { grid-column: 1/-1; justify-self: start; }
  .ipba-layout-nav a { flex: 1; min-height: 44px; }
  .ipba-layout-tool .ipba-theme-toggle { grid-column: 3; grid-row: 1; min-height: 44px; padding: 8px; }
  .ipba-layout-tool .ipba-layout-actions { padding: 10px 12px; }
  .ipba-layout-tool .ipba-layout-actions .ipba-layout-name { width: 100%; align-items: stretch; flex-direction: column; gap: 4px; }
  .ipba-layout-tool .ipba-layout-actions #title { width: 100%; font-size: 16px; min-height: 44px; }
  .ipba-layout-tool .ipba-layout-actions #saveState { width: 100%; order: 5; margin: 0; }
  .ipba-layout-studio button, .ipba-layout-studio .button { min-height: 44px; }
  .ipba-layout-studio input:not([type="checkbox"]):not([type="range"]), .ipba-layout-studio select { min-height: 44px; font-size: 16px; }
  .ipba-layout-studio > nav { padding: 10px 12px; gap: 9px; }
  .ipba-layout-studio > nav label { min-height: 34px; }
  .ipba-layout-studio .tabs { flex-wrap: wrap; }
  .ipba-layout-studio #sourceBtn { margin-left: 0; }
  .ipba-layout-studio main { display: flex; flex-direction: column; }
  .ipba-layout-studio .workspace { padding: 10px; order: 1; }
  .ipba-layout-studio .catalog { min-height: 0; max-height: 270px; order: 2; border: 1px solid var(--ipba-border); }
  .ipba-layout-studio #catalog { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .ipba-layout-studio .inspector { order: 3; border-left: 0; border-top: 1px solid var(--ipba-border); }
  .ipba-layout-studio .fieldbar { flex-wrap: wrap; }
  .ipba-layout-studio .fieldfoot, .ipba-layout-studio .threeHelp { flex-direction: column; gap: 5px; }
  .ipba-layout-studio .threeToolbar button { min-height: 44px; }
  .ipba-layout-studio .presetKeys { gap: 4px; }
  .ipba-layout-studio .presetKeys button { min-width: 39px; }
  .ipba-layout-studio .heightControl { width: 74px; right: 6px; }
  .ipba-layout-studio .heightControl input[type="number"] { width: 62px; font-size: 12px; min-height: 32px; }
  .ipba-layout-studio .gallery-filters { flex-wrap: wrap; }
}
@media (max-width: 900px) {
  .ipba-layout-tactical.ui-simplified .app-shell,
  .ipba-layout-tactical.viewer.ui-simplified .app-shell { grid-template-rows: auto auto minmax(0,1fr) auto; }
  .ipba-layout-tactical .app-shell > .ipba-layout-header { display: grid; padding: 8px 10px; }
  .ipba-layout-tactical .topbar-primary > button,
  .ipba-layout-tactical.ui-simplified .topbar-primary > #saveBtn,
  .ipba-layout-tactical.ui-simplified .topbar-primary > #viewerPreviewBtn { min-height: 44px; }
  .ipba-layout-tactical input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
  .ipba-layout-tactical select, .ipba-layout-tactical textarea { font-size: 16px; }
  .ipba-layout-tactical .ipba-layout-header .ipba-admin-link { display: inline-flex; }
  .ipba-layout-tactical .ipba-layout-header .ipba-admin-link[hidden] { display: none; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .ipba-layout-tactical .app-shell > .ipba-layout-header { grid-template-columns: auto minmax(0,1fr) auto auto; }
}
@media (max-width: 900px) and (max-height: 520px) and (orientation: landscape) {
  .ipba-layout-tactical .app-shell > .ipba-layout-header { display: flex; min-height: 48px; padding: 5px 8px; gap: 8px; }
  .ipba-layout-tactical .ipba-layout-header .ipba-layout-home img { height: 30px; }
  .ipba-layout-tactical .ipba-layout-header .ipba-layout-identity h1 { font-size: 14px; }
  .ipba-layout-tactical .ipba-layout-header .ipba-layout-identity p { display: none; }
  .ipba-layout-tactical .ipba-layout-header .ipba-layout-nav { width: auto; margin-left: auto; }
  .ipba-layout-tactical .ipba-layout-header .ipba-layout-nav a,
  .ipba-layout-tactical .ipba-layout-header .ipba-theme-toggle { min-height: 36px; font-size: 11px; padding: 5px 7px; }
}
@media (max-width: 420px) {
  .ipba-layout-tool .ipba-theme-toggle { font-size: 11px; }
  .ipba-theme-icon { display: none; }
  .ipba-layout-identity p { max-width: 150px; }
  .ipba-layout-studio #catalog { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .ipba-layout-studio .gallery-header h2 { font-size: 19px; }
}
@media print {
  .ipba-layout-tool .ipba-layout-header, .ipba-layout-tool .ipba-layout-actions { display: none; }
}

/* Labels remain controlled by the selector at every viewport size. */
.ipba-layout-studio .studio-view-toolbar > .layout-label-control { display: inline-flex; align-items: center; flex: 0 1 auto; flex-wrap: wrap; gap: 5px; min-width: 0; color: var(--ipba-text-label); font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.ipba-layout-studio .layout-label-control select { width: auto; max-width: 100%; min-width: 110px; }
.ipba-layout-studio .label3d-name { width: auto; height: auto; min-height: 21px; max-width: 240px; padding: 3px 6px; border-radius: 3px; color: #fff; background: #2f2f2f; border-color: #ddd; font: 600 11px/1.3 Arial, Helvetica, sans-serif; white-space: nowrap; }
.ipba-layout-studio .bunker-label-name { pointer-events: none; }
.ipba-layout-studio .bunker-label-name text { font-family: Arial, Helvetica, sans-serif; }
@media (max-width: 760px) {
  .ipba-layout-studio .studio-view-toolbar > .layout-label-control { min-height: 44px; }
  .ipba-layout-studio .layout-label-control select { min-height: 44px; }
}
