/* ARBE AssetHub v3.4 — Minimal, informative UI */
:root,
[data-bs-theme="dark"] {
  --minimal-radius: 10px;
  --minimal-gap: 12px;
  --minimal-line: rgba(148, 163, 184, .18);
  --minimal-surface: #0f1724;
  --minimal-surface-2: #111c2b;
  --minimal-text: #eef3f9;
  --minimal-muted: #8fa0b5;
  --minimal-accent: #e42a34;
}
[data-bs-theme="light"] {
  --minimal-line: #d9e2ec;
  --minimal-surface: #ffffff;
  --minimal-surface-2: #f7f9fc;
  --minimal-text: #172033;
  --minimal-muted: #607087;
  --minimal-accent: #d91f2a;
}

/* Reduce visual noise without removing functionality. */
.enterprise-topbar {
  min-height: 58px !important;
  box-shadow: none !important;
  border-bottom-width: 1px !important;
}
.enterprise-topbar-title { display: none !important; }
.enterprise-brand-logo { width: 82px !important; height: 40px !important; border-radius: 9px !important; }
.enterprise-brand-copy strong { font-size: .92rem !important; }
.enterprise-brand-copy small { font-size: .68rem !important; }
.enterprise-sidebar { width: 218px !important; }
.enterprise-content { padding: 14px !important; }
.sidebar-utility [data-tree-expand],
.sidebar-utility [data-tree-collapse] { display: none !important; }
.sidebar-utility { justify-content: flex-end !important; min-height: 40px; }
.tree-link,
.tree-group summary { min-height: 38px !important; padding-block: .5rem !important; }
.tree-link i,
.tree-group summary i { opacity: .88; }
.enterprise-footer { opacity: .65; padding-block: .7rem !important; }

.page-header,
.page-hero,
.panel-card,
.module-section,
.form-section,
.filter-card,
.detail-hero,
.card,
.table-card {
  border-radius: var(--minimal-radius) !important;
  box-shadow: none !important;
}
.page-header,
.page-hero {
  padding: .9rem 1rem !important;
  margin-bottom: 12px !important;
  border-left-width: 3px !important;
}
.page-header h1,
.page-hero h1 { font-size: clamp(1.25rem, 2vw, 1.7rem) !important; }
.page-eyebrow { margin-bottom: .2rem !important; font-size: .66rem !important; }
.page-actions { gap: .45rem !important; }
.btn { border-radius: 8px !important; box-shadow: none !important; }
.btn:hover { transform: none !important; }
.btn-sm { border-radius: 7px !important; }
.action-label { display: inline; }

.panel-card,
.module-section,
.form-section,
.filter-card,
.detail-hero {
  background: var(--minimal-surface) !important;
  border: 1px solid var(--minimal-line) !important;
}
.panel-header {
  min-height: 46px;
  padding: .72rem .9rem !important;
  border-bottom: 1px solid var(--minimal-line);
}
.panel-header h3 { font-size: .98rem !important; margin: 0 !important; }
.minimal-panel { overflow: hidden; }
.minimal-panel-header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.minimal-panel-header > div:first-child { display: flex; align-items: center; gap: .55rem; }

/* Help appears on hover/focus/click rather than taking permanent space. */
.help-dot,
.inline-help-dot {
  width: 26px;
  height: 26px;
  border: 1px solid var(--minimal-line);
  border-radius: 999px;
  background: transparent;
  color: var(--minimal-muted);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: .76rem;
  flex: 0 0 auto;
}
.help-dot:hover,
.help-dot:focus,
.inline-help-dot:hover,
.inline-help-dot:focus {
  color: #fff;
  border-color: rgba(228, 42, 52, .55);
  background: rgba(228, 42, 52, .12);
  outline: none;
}
.form-help[data-help-processed="1"],
.form-text[data-minimal-help-hidden="1"] { display: none !important; }
.form-label-with-help { display: flex !important; align-items: center; gap: .35rem; }
.popover { max-width: 320px; font-size: .82rem; }
.tooltip { font-size: .74rem; }

/* Compact filters. */
.minimal-filter-card { padding: .75rem !important; margin-bottom: 12px; }
.minimal-filter-primary {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) minmax(140px, .8fr) minmax(180px, 1fr) auto;
  gap: .65rem;
  align-items: end;
}
.minimal-filter-secondary {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr)) auto;
  gap: .65rem;
  align-items: end;
  padding-top: .75rem;
}
.minimal-filter-more { margin-top: .55rem; }
.minimal-filter-more summary {
  color: var(--minimal-muted);
  cursor: pointer;
  font-size: .78rem;
  font-weight: 700;
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
}
.minimal-filter-more summary::-webkit-details-marker { display: none; }
.filter-card label,
.form-label { font-size: .76rem !important; margin-bottom: .3rem !important; color: var(--minimal-muted) !important; }
.form-control,
.form-select,
.input-group-text { min-height: 38px !important; border-radius: 8px !important; }
.input-group > .input-group-text:first-child { border-radius: 8px 0 0 8px !important; }
.input-group > .input-group-text:first-child + .form-control { border-radius: 0 8px 8px 0 !important; }

/* Simple state tabs. */
.minimal-state-tabs {
  display: flex;
  gap: 4px;
  margin-bottom: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
}
.minimal-state-tab {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  min-height: 34px;
  padding: .4rem .7rem;
  border: 1px solid var(--minimal-line);
  border-radius: 8px;
  color: var(--minimal-muted);
  text-decoration: none;
  font-size: .78rem;
  font-weight: 750;
  white-space: nowrap;
  background: transparent;
}
.minimal-state-tab span {
  min-width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(148, 163, 184, .12);
  font-size: .68rem;
}
.minimal-state-tab.active,
.minimal-state-tab:hover {
  color: var(--minimal-text);
  border-color: rgba(228, 42, 52, .45);
  background: rgba(228, 42, 52, .08);
}

/* Minimal data table. */
.minimal-table { font-size: .79rem; }
.minimal-table thead th {
  padding: .62rem .7rem !important;
  font-size: .66rem !important;
  letter-spacing: .045em !important;
  white-space: nowrap;
}
.minimal-table tbody td { padding: .68rem .7rem !important; }
.minimal-table strong { font-weight: 760; }
.minimal-table small { margin-top: .18rem !important; color: var(--minimal-muted) !important; }
.minimal-table .status-badge { font-size: .66rem; padding: .25rem .48rem; }
.archived-row { opacity: .82; }
.archived-row:hover { opacity: 1; }
.table-actions a,
.table-actions button { width: 30px !important; height: 30px !important; border-radius: 7px !important; }
.table-actions .takeout-action:hover { color: #ff8a92 !important; border-color: rgba(228, 42, 52, .5) !important; }
.status-dot-label { display: inline-flex; align-items: center; gap: .38rem; }
.dot { width: 7px !important; height: 7px !important; }
.minimal-doc-icons { display: flex; gap: .35rem; flex-wrap: wrap; }
.minimal-doc-icons span {
  display: inline-flex;
  align-items: center;
  gap: .22rem;
  padding: .2rem .35rem;
  border-radius: 6px;
  background: rgba(85, 168, 255, .08);
  color: #8fc7ff;
  font-size: .66rem;
  font-weight: 800;
}
.minimal-doc-icons .muted { color: var(--minimal-muted); background: transparent; }

/* Detail page. */
.minimal-detail-hero { padding: .85rem 1rem !important; }
.minimal-description-grid { gap: .6rem !important; }
.minimal-description-grid > div { padding: .65rem .7rem !important; border-radius: 8px !important; box-shadow: none !important; }
.minimal-description-grid small { font-size: .66rem !important; }
.minimal-description-grid strong { font-size: .86rem !important; }
.minimal-required-docs { padding: .55rem .75rem !important; margin: 0 !important; border-radius: 0 !important; }

/* Take Out workflow. */
.takeout-layout {
  display: grid;
  grid-template-columns: minmax(230px, 310px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}
.minimal-summary-card { padding: 1rem; position: sticky; top: 76px; }
.minimal-vehicle-mark {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #26364d;
  margin-bottom: .75rem;
}
.minimal-summary-card h2 { margin: 0; font-size: 1.22rem; }
.minimal-summary-card > p { color: var(--minimal-muted); font-size: .8rem; margin: .2rem 0 1rem; }
.minimal-summary-list { margin: 0; }
.minimal-summary-list > div {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: .5rem;
  padding: .48rem 0;
  border-bottom: 1px solid var(--minimal-line);
}
.minimal-summary-list dt { color: var(--minimal-muted); font-size: .7rem; font-weight: 700; }
.minimal-summary-list dd { margin: 0; font-size: .78rem; font-weight: 700; }
.minimal-note {
  display: flex;
  gap: .55rem;
  align-items: flex-start;
  padding: .7rem;
  margin-top: .85rem;
  border-radius: 8px;
  border: 1px solid rgba(85, 168, 255, .2);
  background: rgba(85, 168, 255, .06);
  color: var(--minimal-muted);
  font-size: .72rem;
}
.minimal-form-card { overflow: hidden; }
.minimal-form { padding: .9rem; }
.minimal-form-actions { border-top: 1px solid var(--minimal-line); padding-top: .8rem; margin-top: .8rem; }
.compact-alert { display: flex; gap: .65rem; margin: .8rem; font-size: .78rem; }
.takeout-banner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .75rem .9rem;
  margin-bottom: 12px;
  border: 1px solid rgba(245, 185, 66, .28);
  border-radius: var(--minimal-radius);
  background: rgba(245, 185, 66, .07);
}
.takeout-banner-icon {
  width: 38px;
  height: 38px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: rgba(245, 185, 66, .14);
  color: #f5c767;
}
.takeout-banner-main p { color: var(--minimal-muted); font-size: .74rem; }
.takeout-banner-meta { display: flex; align-items: center; gap: .8rem; }
.takeout-banner-meta span { display: flex; flex-direction: column; }
.takeout-banner-meta small { color: var(--minimal-muted); font-size: .62rem; }
.takeout-banner-meta strong { font-size: .76rem; }

/* Flatten dashboard and cards globally. */
.metric-card,
.request-row,
.info-item,
.input-section,
.helper-card {
  box-shadow: none !important;
  border-radius: 8px !important;
}
.metric-card { min-height: 76px !important; padding: .75rem !important; }
.metric-card strong { font-size: 1.25rem !important; }
.metric-card small { font-size: .68rem !important; }
.metric-icon { width: 34px !important; height: 34px !important; border-radius: 8px !important; }
.empty-state { padding: 2rem 1rem !important; }
.empty-state.compact { padding: 1.25rem .75rem !important; }

@media (max-width: 1199.98px) {
  .minimal-filter-primary { grid-template-columns: minmax(220px, 2fr) repeat(2, minmax(140px, 1fr)) auto; }
  .minimal-filter-secondary { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
}
@media (max-width: 991.98px) {
  .takeout-layout { grid-template-columns: 1fr; }
  .minimal-summary-card { position: static; }
}
@media (max-width: 767.98px) {
  .enterprise-content { padding: 10px !important; }
  .minimal-filter-primary,
  .minimal-filter-secondary { grid-template-columns: 1fr; }
  .action-label { display: none; }
  .page-actions .btn { flex: 0 0 auto !important; }
  .takeout-banner { grid-template-columns: auto 1fr; }
  .takeout-banner-meta { grid-column: 1 / -1; justify-content: flex-start; flex-wrap: wrap; }
  .minimal-state-tabs { margin-inline: -2px; }
}
.minimal-title-row { display: flex; align-items: center; gap: .55rem; min-width: 0; }
.minimal-title-row h1 { margin: 0 !important; min-width: 0; }
.section-heading p[hidden],
.form-section-title p[hidden],
.panel-header .title-muted[hidden] { display: none !important; }
.section-heading > div > div,
.form-section-title > div { min-width: 0; }
