:root {
  --lp-bg: #f5f7fb;
  --lp-surface: rgba(255, 255, 255, .92);
  --lp-surface-solid: #ffffff;
  --lp-text: #151b2b;
  --lp-muted: #687086;
  --lp-border: rgba(21, 27, 43, .09);
  --lp-primary: #3157d5;
  --lp-primary-hover: #2848b4;
  --lp-primary-soft: rgba(49, 87, 213, .10);
  --lp-success: #14845d;
  --lp-warning: #ad6d06;
  --lp-danger: #c43b4d;
  --lp-shadow: 0 18px 50px rgba(31, 42, 77, .08);
  --lp-radius: 20px;
  --lp-sidebar: 260px;
}

[data-bs-theme="dark"] {
  --lp-bg: #0c1019;
  --lp-surface: rgba(18, 24, 37, .94);
  --lp-surface-solid: #121825;
  --lp-text: #eef2ff;
  --lp-muted: #9ca6bd;
  --lp-border: rgba(255,255,255,.09);
  --lp-primary: #7c96ff;
  --lp-primary-hover: #93a8ff;
  --lp-primary-soft: rgba(124, 150, 255, .12);
  --lp-shadow: 0 18px 55px rgba(0, 0, 0, .24);
}

* { box-sizing: border-box; }
html { min-height: 100%; }
body {
  min-height: 100vh;
  margin: 0;
  color: var(--lp-text);
  background:
    radial-gradient(circle at 15% 0%, rgba(49, 87, 213, .10), transparent 28rem),
    var(--lp-bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -.01em;
}

a { color: inherit; }
code, .font-mono, #licensePlate, .vin-value { font-family: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, monospace; }

.app-shell { min-height: 100vh; }
.app-sidebar {
  position: fixed;
  z-index: 1030;
  inset: 0 auto 0 0;
  width: var(--lp-sidebar);
  padding: 22px 16px;
  background: var(--lp-surface);
  backdrop-filter: blur(18px);
  border-right: 1px solid var(--lp-border);
  display: flex;
  flex-direction: column;
}
.app-main { margin-left: var(--lp-sidebar); min-height: 100vh; padding: 30px; }
.app-content { width: min(1380px, 100%); margin: 0 auto; }

.brand-lockup { display:flex; align-items:center; gap:12px; text-decoration:none; padding: 2px 7px 22px; }
.brand-mark {
  width: 42px; height: 42px; border-radius: 13px;
  display:grid; place-items:center;
  color:#fff; background: linear-gradient(145deg, #3157d5, #6a7cf0);
  box-shadow: 0 10px 24px rgba(49,87,213,.25);
}
.brand-copy strong { display:block; font-size: 15px; line-height:1.1; }
.brand-copy span { display:block; color:var(--lp-muted); font-size: 11px; margin-top:4px; letter-spacing:.08em; text-transform:uppercase; }

.nav-section { margin: 8px 0 18px; }
.nav-label { color:var(--lp-muted); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; padding: 0 12px 8px; }
.app-nav { display:grid; gap:4px; }
.app-nav a, .app-nav button.nav-link-button {
  border:0; width:100%; background:transparent; text-align:left;
  display:flex; align-items:center; gap:11px; padding:10px 12px;
  border-radius:12px; color:var(--lp-muted); text-decoration:none;
  font-size:14px; font-weight:650; transition:.16s ease;
}
.app-nav a:hover, .app-nav button.nav-link-button:hover { background:var(--lp-primary-soft); color:var(--lp-text); }
.app-nav a.active { background:var(--lp-primary-soft); color:var(--lp-primary); }
.app-nav .bi { font-size:16px; width:19px; text-align:center; }
.sidebar-footer { margin-top:auto; border-top:1px solid var(--lp-border); padding-top:14px; }
.user-chip { display:flex; align-items:center; gap:10px; padding:8px; }
.user-avatar { width:34px; height:34px; border-radius:11px; display:grid; place-items:center; background:var(--lp-primary-soft); color:var(--lp-primary); font-weight:800; }
.user-meta { min-width:0; flex:1; }
.user-meta strong { font-size:13px; display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.user-meta span { color:var(--lp-muted); font-size:11px; }

.mobile-topbar { display:none; }
.page-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin: 0 0 24px; }
.page-heading h1 { font-size: clamp(25px, 3vw, 36px); letter-spacing:-.045em; font-weight:800; margin:0; }
.page-heading p { color:var(--lp-muted); margin:7px 0 0; max-width:720px; }
.eyebrow { color:var(--lp-primary); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; margin-bottom:6px; }

.surface-card {
  background: var(--lp-surface);
  border:1px solid var(--lp-border);
  border-radius:var(--lp-radius);
  box-shadow:var(--lp-shadow);
}
.card-pad { padding: 22px; }
.card-title-row { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; }
.card-title-row h2, .card-title-row h3 { font-weight:760; letter-spacing:-.03em; margin:0; }
.card-title-row p { color:var(--lp-muted); margin:4px 0 0; font-size:13px; }

.lookup-grid { display:grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap:22px; align-items:start; }
.lookup-card { position:sticky; top:30px; }
.lookup-form-grid { display:grid; grid-template-columns: 150px 1fr; gap:10px; }
.lookup-input-wrap { position:relative; }
#licensePlate { text-transform:uppercase; letter-spacing:.08em; font-size:17px; font-weight:750; }
#licensePlate::placeholder { text-transform:none; letter-spacing:normal; font-weight:500; }
.form-control, .form-select {
  min-height:48px; border-radius:13px; border-color:var(--lp-border); background-color:var(--lp-surface-solid);
}
.form-control:focus, .form-select:focus { border-color:rgba(49,87,213,.45); box-shadow:0 0 0 .22rem rgba(49,87,213,.10); }
.btn { border-radius:12px; font-weight:700; }
.btn-primary { --bs-btn-bg: var(--lp-primary); --bs-btn-border-color: var(--lp-primary); --bs-btn-hover-bg: var(--lp-primary-hover); --bs-btn-hover-border-color: var(--lp-primary-hover); }
.lookup-submit { min-height:48px; padding-inline:18px; }
.provider-badge, .status-pill {
  display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:6px 9px;
  font-size:11px; font-weight:800; background:var(--lp-primary-soft); color:var(--lp-primary);
}

#suggestions { position:absolute; z-index:20; top:calc(100% + 8px); left:0; right:0; background:var(--lp-surface-solid); border:1px solid var(--lp-border); border-radius:14px; box-shadow:var(--lp-shadow); overflow:hidden; }
.suggestion-item { display:flex; justify-content:space-between; align-items:center; padding:11px 12px; cursor:pointer; border-bottom:1px solid var(--lp-border); }
.suggestion-item:last-child { border-bottom:0; }
.suggestion-item:hover { background:var(--lp-primary-soft); }
.suggestion-meta { color:var(--lp-muted); font-size:12px; }

.result-empty { min-height:275px; display:grid; place-items:center; text-align:center; padding:30px; }
.empty-icon { width:62px; height:62px; border-radius:20px; display:grid; place-items:center; margin:0 auto 14px; background:var(--lp-primary-soft); color:var(--lp-primary); font-size:25px; }
.result-empty h3 { font-size:17px; margin:0 0 5px; }
.result-empty p { color:var(--lp-muted); margin:0; max-width:330px; font-size:13px; }
.result-panel { display:none; }
.vehicle-hero { display:flex; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--lp-border); margin-bottom:18px; }
.vehicle-title { margin:0; font-size:26px; font-weight:800; letter-spacing:-.04em; }
.vehicle-subtitle { color:var(--lp-muted); margin-top:5px; }
.data-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.data-item { padding:13px 14px; border:1px solid var(--lp-border); border-radius:14px; background:rgba(127,127,127,.025); min-width:0; }
.data-item.full { grid-column:1/-1; }
.data-label { display:block; color:var(--lp-muted); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; margin-bottom:5px; }
.data-value { display:block; font-weight:680; overflow-wrap:anywhere; }
.barcode-wrap { background:#fff; border-radius:12px; padding:10px; overflow:hidden; }
.barcode-wrap svg { width:100%!important; height:auto!important; }

.history-list { display:grid; gap:9px; }
.history-item { border:1px solid var(--lp-border); border-radius:15px; overflow:hidden; background:var(--lp-surface-solid); }
.history-button { width:100%; border:0; background:transparent; padding:13px 14px; display:grid; grid-template-columns:52px 1fr auto; gap:12px; align-items:center; text-align:left; color:inherit; }
.history-state { width:44px; height:34px; border-radius:10px; display:grid; place-items:center; background:var(--lp-primary-soft); color:var(--lp-primary); font-size:11px; font-weight:850; }
.history-main strong { display:block; font-family:"Roboto Mono", monospace; letter-spacing:.05em; }
.history-main span { color:var(--lp-muted); font-size:12px; }
.history-time { color:var(--lp-muted); font-size:11px; }
.history-details { display:none; padding:0 14px 14px; }
.history-item.open .history-details { display:block; }
.history-item.open .history-button { background:rgba(127,127,127,.03); }
.pagination { margin:16px 0 0; }
.page-link { border-color:var(--lp-border); color:var(--lp-muted); background:var(--lp-surface-solid); }

.notice { border-radius:14px; padding:12px 14px; font-size:13px; }
.notice-danger { background:rgba(196,59,77,.09); color:var(--lp-danger); border:1px solid rgba(196,59,77,.16); }
.notice-success { background:rgba(20,132,93,.09); color:var(--lp-success); border:1px solid rgba(20,132,93,.16); }

.settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.settings-grid .span-2 { grid-column:1/-1; }
.session-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px 0; border-bottom:1px solid var(--lp-border); }
.session-row:last-child { border-bottom:0; }
.session-device { font-weight:700; font-size:13px; overflow-wrap:anywhere; }
.session-meta { color:var(--lp-muted); font-size:11px; margin-top:4px; }
.secret-box { display:flex; gap:8px; align-items:center; padding:12px; border:1px dashed var(--lp-border); border-radius:13px; background:rgba(127,127,127,.025); }
.secret-box code { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.table { --bs-table-bg: transparent; --bs-table-border-color: var(--lp-border); color:var(--lp-text); }
.table > :not(caption) > * > * { padding:.85rem .75rem; }
.modal-content, .dropdown-menu { background:var(--lp-surface-solid); border-color:var(--lp-border); border-radius:16px; box-shadow:var(--lp-shadow); }

.login-page { min-height:100vh; display:grid; grid-template-columns: minmax(0,1fr) minmax(440px, .78fr); }
.login-showcase { padding:clamp(36px,6vw,80px); display:flex; flex-direction:column; justify-content:space-between; background:linear-gradient(145deg,#162451,#3157d5 62%,#6f7ff1); color:#fff; position:relative; overflow:hidden; }
.login-showcase::after { content:""; position:absolute; width:420px; height:420px; border-radius:50%; border:1px solid rgba(255,255,255,.16); right:-120px; bottom:-130px; box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 140px rgba(255,255,255,.025); }
.login-brand { display:flex; align-items:center; gap:12px; font-weight:800; font-size:17px; position:relative; z-index:1; }
.login-brand .brand-mark { background:rgba(255,255,255,.16); box-shadow:none; }
.login-copy { position:relative; z-index:1; max-width:620px; }
.login-copy h1 { font-size:clamp(42px,5vw,70px); line-height:.98; letter-spacing:-.06em; font-weight:850; margin:0 0 20px; }
.login-copy p { color:rgba(255,255,255,.72); font-size:16px; max-width:500px; }
.login-meta { position:relative; z-index:1; color:rgba(255,255,255,.62); font-size:12px; }
.login-panel { display:grid; place-items:center; padding:32px; }
.login-card { width:min(440px,100%); }
.login-card h2 { font-size:30px; letter-spacing:-.04em; font-weight:800; margin:0; }
.login-card .lead { color:var(--lp-muted); font-size:14px; margin:7px 0 28px; }
.login-card .form-label { font-size:12px; font-weight:750; }

.footer-note { color:var(--lp-muted); font-size:11px; text-align:center; margin-top:28px; }

@media (max-width: 1100px) {
  .lookup-grid { grid-template-columns:1fr; }
  .lookup-card { position:static; }
  .settings-grid { grid-template-columns:1fr; }
  .settings-grid .span-2 { grid-column:auto; }
}

@media (max-width: 820px) {
  .app-sidebar { display:none; }
  .mobile-topbar { display:flex; position:sticky; top:0; z-index:1020; height:64px; align-items:center; justify-content:space-between; padding:0 16px; background:var(--lp-surface); backdrop-filter:blur(18px); border-bottom:1px solid var(--lp-border); }
  .app-main { margin-left:0; padding:20px 15px 30px; }
  .page-heading { margin-top:8px; }
  .login-page { grid-template-columns:1fr; }
  .login-showcase { display:none; }
  .login-panel { min-height:100vh; padding:24px; }
}

@media (max-width: 560px) {
  .lookup-form-grid { grid-template-columns:1fr; }
  .data-grid { grid-template-columns:1fr; }
  .data-item.full { grid-column:auto; }
  .vehicle-hero { flex-direction:column; }
  .history-button { grid-template-columns:46px 1fr; }
  .history-time { grid-column:2; }
  .card-pad { padding:17px; }
  .page-heading h1 { font-size:27px; }
}

/* v3.2 unified platform/admin theme */
.balance-chip {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:10px 12px; border:1px solid var(--lp-border); border-radius:12px;
  background:rgba(127,127,127,.035); font-size:12px;
}
.balance-chip span { color:var(--lp-muted); display:flex; gap:7px; align-items:center; }
.balance-chip strong { font-family:"Roboto Mono", monospace; font-size:12px; }
.metric-value { font-size:clamp(30px,4vw,46px); font-weight:850; letter-spacing:-.05em; }

.code-wrap { min-height:64px; }
.barcode-wrap { background:#fff; border-radius:12px; padding:10px; overflow:hidden; }
.barcode-wrap svg { width:100%!important; height:auto!important; display:block; }
.qr-code-wrap { width:max-content; max-width:100%; background:#fff; border-radius:12px; padding:10px; }
.qr-code-wrap img, .qr-code-wrap canvas { display:block; max-width:100%; height:auto!important; }
.history-code-card { padding:13px 14px; border:1px solid var(--lp-border); border-radius:14px; background:rgba(127,127,127,.025); }
.history-code-card .barcode-wrap { max-width:440px; }

.segmented-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.segment-option { cursor:pointer; margin:0; }
.segment-option input { position:absolute; opacity:0; pointer-events:none; }
.segment-option span { display:flex; min-height:44px; align-items:center; justify-content:center; border:1px solid var(--lp-border); border-radius:12px; background:var(--lp-surface-solid); font-size:13px; font-weight:750; transition:.15s ease; }
.segment-option input:checked + span { border-color:rgba(49,87,213,.4); background:var(--lp-primary-soft); color:var(--lp-primary); }

.admin-heading { align-items:center; }
.admin-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.stat-card { padding:16px 18px; }
.stat-card span { display:block; color:var(--lp-muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.stat-card strong { display:block; margin-top:5px; font-size:24px; letter-spacing:-.04em; }
.admin-tabs { display:flex; gap:6px; flex-wrap:wrap; padding:6px; border:1px solid var(--lp-border); border-radius:15px; background:var(--lp-surface); box-shadow:var(--lp-shadow); width:max-content; max-width:100%; }
.admin-tabs a { padding:9px 13px; border-radius:10px; color:var(--lp-muted); text-decoration:none; font-size:13px; font-weight:750; }
.admin-tabs a:hover { color:var(--lp-text); background:rgba(127,127,127,.05); }
.admin-tabs a.active { color:var(--lp-primary); background:var(--lp-primary-soft); }
.admin-two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.provider-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.provider-admin-card { min-width:0; }
.page-subheading h2 { margin:0; font-size:22px; letter-spacing:-.035em; font-weight:800; }
.page-subheading p { margin:5px 0 0; color:var(--lp-muted); }
.switch-stack { display:grid; gap:12px; }
.switch-stack .form-check { margin:0; padding:12px 12px 12px 44px; border:1px solid var(--lp-border); border-radius:13px; background:rgba(127,127,127,.025); }
.switch-stack .form-check-label { display:block; }
.switch-stack .form-check-label strong { display:block; font-size:13px; }
.switch-stack .form-check-label small { display:block; color:var(--lp-muted); margin-top:3px; }
.check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 12px; }
.check-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.check-grid .form-check { margin:0; min-width:0; }
.check-grid .form-check-label { font-size:12px; overflow-wrap:anywhere; }
.credential-panel { padding:14px; border:1px solid var(--lp-border); border-radius:14px; background:rgba(49,87,213,.035); }
.credential-panel.muted-panel { color:var(--lp-muted); font-size:12px; background:rgba(127,127,127,.025); }
.surface-inset { border:1px solid var(--lp-border); border-radius:15px; background:rgba(127,127,127,.025); }
.role-chip-grid { display:flex; flex-wrap:wrap; gap:8px; }
.role-chip { display:flex; align-items:center; gap:6px; padding:7px 8px 7px 11px; border:1px solid var(--lp-border); border-radius:999px; background:var(--lp-surface-solid); font-size:12px; font-weight:700; }
.role-chip form { margin:0; }
.role-chip .btn { padding:0 4px; min-height:auto; }
.admin-table thead th { color:var(--lp-muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; border-bottom-width:1px; }
.status-dot { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:750; }
.status-dot::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--lp-muted); }
.status-active::before { background:var(--lp-success); }
.status-pending::before { background:var(--lp-warning); }
.status-banned::before { background:var(--lp-danger); }

/* Keep Bootstrap utility-heavy legacy fragments visually aligned with the app. */
.bg-body, .bg-body-tertiary { background:var(--lp-surface)!important; }
.shadow-sm { box-shadow:var(--lp-shadow)!important; }
.rounded { border-radius:var(--lp-radius)!important; }
.input-group-text { background:rgba(127,127,127,.05); border-color:var(--lp-border); color:var(--lp-muted); }
.modal-header, .modal-footer { border-color:var(--lp-border); }
.dropdown-item { color:var(--lp-text); }
.dropdown-item:hover, .dropdown-item:focus { background:var(--lp-primary-soft); color:var(--lp-text); }
.form-check-input { border-color:var(--lp-border); }
.form-check-input:checked { background-color:var(--lp-primary); border-color:var(--lp-primary); }
textarea.form-control { min-height:96px; }

@media (max-width: 1100px) {
  .admin-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .provider-admin-grid, .admin-two-column { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .admin-stat-grid { grid-template-columns:1fr 1fr; }
  .check-grid, .check-grid.compact { grid-template-columns:1fr; }
  .segmented-options { grid-template-columns:1fr; }
  .admin-tabs { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-tabs a { text-align:center; }
}

/* v3.3 administration, preferences, and provider URL polish */
.admin-metric-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.admin-metric-card {
  min-width:0;
  padding:18px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.admin-metric-card::after {
  content:"";
  position:absolute;
  inset:auto -30px -45px auto;
  width:100px;
  height:100px;
  border-radius:50%;
  background:var(--lp-primary-soft);
  opacity:.55;
  pointer-events:none;
}
.admin-metric-icon {
  width:48px;
  height:48px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:var(--lp-primary-soft);
  color:var(--lp-primary);
  font-size:20px;
  position:relative;
  z-index:1;
}
.admin-metric-card > div { min-width:0; position:relative; z-index:1; }
.admin-metric-label {
  display:block;
  color:var(--lp-muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-metric-card strong {
  display:block;
  margin-top:2px;
  font-size:27px;
  line-height:1.15;
  letter-spacing:-.045em;
  font-weight:850;
}
.admin-metric-card small { display:block; margin-top:4px; color:var(--lp-muted); font-size:11px; }
.admin-metric-card.metric-on .admin-metric-icon { background:rgba(24,160,100,.12); color:var(--lp-success); }
.admin-metric-card.metric-off .admin-metric-icon { background:rgba(127,127,127,.08); color:var(--lp-muted); }
.metric-status-text { font-size:22px!important; }

.admin-subnav {
  position:sticky;
  top:14px;
  z-index:1010;
  padding:6px;
  border:1px solid var(--lp-border);
  border-radius:17px;
  background:color-mix(in srgb, var(--lp-surface-solid) 92%, transparent);
  box-shadow:var(--lp-shadow);
  backdrop-filter:blur(18px);
}
.admin-subnav-track {
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:5px;
}
.admin-subnav a {
  min-width:0;
  min-height:45px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:8px 11px;
  border-radius:12px;
  color:var(--lp-muted);
  text-decoration:none;
  font-size:12px;
  font-weight:780;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.admin-subnav a i { font-size:14px; }
.admin-subnav a:hover { color:var(--lp-text); background:rgba(127,127,127,.055); transform:translateY(-1px); }
.admin-subnav a.active { color:var(--lp-primary); background:var(--lp-primary-soft); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lp-primary) 13%,transparent); }

#adminTabPanel { transition:opacity .16s ease; }
#adminTabPanel.admin-loading { opacity:.55; pointer-events:none; }
.admin-toast {
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1100;
  max-width:min(420px,calc(100vw - 30px));
  padding:12px 15px;
  border-radius:13px;
  border:1px solid var(--lp-border);
  background:var(--lp-surface-solid);
  color:var(--lp-text);
  box-shadow:0 18px 55px rgba(0,0,0,.18);
  font-size:13px;
  font-weight:650;
  opacity:0;
  transform:translateY(12px);
  pointer-events:none;
  transition:.18s ease;
}
.admin-toast.show { opacity:1; transform:translateY(0); }
.admin-toast.is-success { border-color:color-mix(in srgb,var(--lp-success) 38%,var(--lp-border)); }
.admin-toast.is-error { border-color:color-mix(in srgb,var(--lp-danger) 42%,var(--lp-border)); }

.admin-user-toolbar {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
}
.admin-user-toolbar p { color:var(--lp-muted); font-size:12px; }
.admin-user-search {
  width:min(390px,100%);
  position:relative;
  flex:0 1 390px;
}
.admin-user-search > i {
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:var(--lp-muted);
  pointer-events:none;
  z-index:2;
}
.admin-user-search .form-control { padding-left:38px; padding-right:40px; }
.admin-user-search .btn-link { position:absolute; right:5px; top:50%; transform:translateY(-50%); color:var(--lp-muted); text-decoration:none; }
.admin-empty-row { min-height:160px; display:grid; place-items:center; align-content:center; gap:4px; color:var(--lp-muted); text-align:center; }
.admin-empty-row i { font-size:25px; margin-bottom:4px; }
.admin-empty-row strong { color:var(--lp-text); }
.admin-empty-row span { font-size:12px; }
.admin-pagination { margin-top:18px; margin-bottom:0; }

.admin-guide-list { display:grid; gap:13px; }
.admin-guide-list > div { display:grid; grid-template-columns:38px minmax(0,1fr); gap:11px; align-items:center; padding:11px; border:1px solid var(--lp-border); border-radius:13px; background:rgba(127,127,127,.025); }
.admin-guide-list > div > i { width:38px; height:38px; border-radius:11px; display:grid; place-items:center; color:var(--lp-primary); background:var(--lp-primary-soft); }
.admin-guide-list strong,.admin-guide-list small { display:block; }
.admin-guide-list strong { font-size:12px; }
.admin-guide-list small { color:var(--lp-muted); margin-top:2px; font-size:11px; }

.provider-admin-stack { display:grid; gap:12px; }
.provider-admin-card { overflow:hidden; padding:0; }
.provider-admin-summary {
  list-style:none;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:13px;
  align-items:center;
  padding:14px 16px;
  cursor:pointer;
  user-select:none;
}
.provider-admin-summary::-webkit-details-marker { display:none; }
.provider-admin-summary:hover { background:rgba(127,127,127,.025); }
.provider-summary-icon { width:44px; height:44px; border-radius:13px; display:grid; place-items:center; background:var(--lp-primary-soft); color:var(--lp-primary); font-size:18px; }
.provider-summary-copy { min-width:0; }
.provider-summary-copy strong,.provider-summary-copy small { display:block; }
.provider-summary-copy strong { font-size:14px; }
.provider-summary-copy small { margin-top:3px; color:var(--lp-muted); font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.provider-summary-status { display:flex; align-items:center; gap:12px; }
.provider-chevron { color:var(--lp-muted); transition:transform .18s ease; }
.provider-admin-card[open] .provider-chevron { transform:rotate(180deg); }
.provider-admin-body { border-top:1px solid var(--lp-border); }
.status-pill.status-enabled { color:var(--lp-success); background:color-mix(in srgb,var(--lp-success) 10%,transparent); }
.status-pill.status-disabled { color:var(--lp-muted); background:rgba(127,127,127,.06); }

.code-render-error { padding:10px 12px; border:1px dashed var(--lp-border); border-radius:10px; color:var(--lp-muted); font-size:11px; }

@media (max-width:1100px) {
  .admin-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-subnav-track { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .admin-subnav { position:relative; top:auto; }
}
@media (max-width:700px) {
  .admin-user-toolbar { align-items:stretch; flex-direction:column; }
  .admin-user-search { width:100%; flex-basis:auto; }
  .provider-admin-summary { grid-template-columns:40px minmax(0,1fr); }
  .provider-summary-status { grid-column:2; justify-content:flex-start; }
}
@media (max-width:560px) {
  .admin-metric-grid { grid-template-columns:1fr; }
  .admin-subnav { overflow:hidden; padding:5px; }
  .admin-subnav-track { display:flex; overflow-x:auto; scrollbar-width:none; }
  .admin-subnav-track::-webkit-scrollbar { display:none; }
  .admin-subnav a { flex:0 0 auto; min-width:108px; }
}


/* v3.4 control-center polish + cache-safe lookup UI */
.admin-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.admin-metric-card{--metric-accent:var(--lp-primary);--metric-soft:var(--lp-primary-soft);min-width:0;min-height:156px;padding:20px;border:1px solid var(--lp-border);border-radius:20px;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--metric-accent) 14%,transparent),transparent 52%),var(--lp-surface);box-shadow:0 14px 38px rgba(31,42,77,.07);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.admin-metric-card::after{display:none}.admin-metric-card::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 4px 4px 0;background:var(--metric-accent);opacity:.85}
.admin-metric-users{--metric-accent:#3157d5;--metric-soft:rgba(49,87,213,.10)}.admin-metric-roles{--metric-accent:#7657d5;--metric-soft:rgba(118,87,213,.10)}.admin-metric-providers{--metric-accent:#0b8793;--metric-soft:rgba(11,135,147,.10)}.admin-metric-balance.metric-on{--metric-accent:#14845d;--metric-soft:rgba(20,132,93,.10)}.admin-metric-balance.metric-off{--metric-accent:#7a8398;--metric-soft:rgba(122,131,152,.10)}
.admin-metric-head{display:flex;align-items:center;gap:10px}.admin-metric-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--metric-soft);color:var(--metric-accent);font-size:16px}.admin-metric-label{color:var(--lp-muted);font-size:11px;text-transform:uppercase;letter-spacing:.095em;font-weight:850}.admin-metric-value{display:block;margin-top:15px;color:var(--lp-text);font-size:34px;line-height:1;letter-spacing:-.055em;font-weight:850}.admin-metric-card small{display:block;margin-top:7px;color:var(--lp-muted);font-size:12px}.metric-status-text{font-size:31px!important}
.admin-subnav{position:sticky;top:14px;z-index:1010;padding:7px;border:1px solid var(--lp-border);border-radius:18px;background:color-mix(in srgb,var(--lp-surface-solid) 94%,transparent);box-shadow:0 14px 40px rgba(31,42,77,.08);backdrop-filter:blur(18px)}.admin-subnav-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.admin-subnav a{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 12px;border:1px solid transparent;border-radius:12px;color:var(--lp-muted);text-decoration:none;font-size:12px;font-weight:780;transition:.16s ease}.admin-subnav a:hover{color:var(--lp-text);background:rgba(127,127,127,.05)}.admin-subnav a.active{color:var(--lp-primary);background:var(--lp-primary-soft);border-color:color-mix(in srgb,var(--lp-primary) 14%,transparent);box-shadow:0 6px 18px rgba(49,87,213,.08)}.admin-subnav a i{font-size:15px}
.provider-admin-stack{gap:14px}.provider-admin-card{overflow:hidden;padding:0;border:1px solid var(--lp-border);border-radius:18px;background:var(--lp-surface);box-shadow:0 10px 30px rgba(31,42,77,.055)}.provider-admin-summary{min-height:76px;padding:14px 18px}.provider-admin-summary:hover{background:color-mix(in srgb,var(--lp-primary-soft) 42%,transparent)}.provider-admin-card[open]{border-color:color-mix(in srgb,var(--lp-primary) 24%,var(--lp-border))}.provider-admin-card[open] .provider-admin-summary{background:color-mix(in srgb,var(--lp-primary-soft) 55%,transparent)}.provider-summary-copy strong{font-size:15px}.provider-summary-copy small{font-size:12px}
.lookup-suggestions{position:absolute;z-index:1050;top:calc(100% + 9px);left:0;right:0;padding:6px;border:1px solid color-mix(in srgb,var(--lp-primary) 12%,var(--lp-border));border-radius:16px;background:color-mix(in srgb,var(--lp-surface-solid) 96%,transparent);box-shadow:0 22px 55px rgba(31,42,77,.16);backdrop-filter:blur(18px);overflow:hidden}.lookup-suggestions:not([hidden]){display:block}.lookup-suggestions[hidden]{display:none!important}.suggestion-item{width:100%;min-height:48px;border:0;border-radius:11px;background:transparent;color:var(--lp-text);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;cursor:pointer;text-align:left}.suggestion-item+.suggestion-item{margin-top:2px}.suggestion-item:hover,.suggestion-item:focus-visible{outline:none;background:var(--lp-primary-soft)}.suggestion-plate{min-width:0;display:flex;align-items:center;gap:9px}.suggestion-plate>i{color:var(--lp-primary);font-size:13px}.suggestion-plate>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-meta{flex:0 0 auto;min-width:34px;padding:4px 7px;border-radius:999px;background:rgba(127,127,127,.07);color:var(--lp-muted);text-align:center;font-size:10px;font-weight:800;letter-spacing:.06em}
.code-wrap,.history-detail-code{min-height:70px}.barcode-wrap,.qr-code-wrap{border:1px solid rgba(21,27,43,.08);box-shadow:0 8px 22px rgba(21,27,43,.06)}.qr-code-wrap svg,.qr-code-wrap img,.qr-code-wrap canvas{display:block;max-width:100%;height:auto!important}.history-side{display:flex;align-items:center;justify-content:flex-end;min-width:0}.history-time{white-space:nowrap}.history-code-card{margin-top:12px!important;background:color-mix(in srgb,var(--lp-primary-soft) 26%,transparent)}
@media(max-width:1100px){.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-subnav-track{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-subnav{position:relative;top:auto}}
@media(max-width:720px){.admin-metric-card{min-height:135px}.history-button{grid-template-columns:48px minmax(0,1fr)}.history-side{grid-column:2;justify-content:flex-start;margin-top:7px}}
@media(max-width:560px){.admin-metric-grid{grid-template-columns:1fr 1fr;gap:10px}.admin-metric-card{min-height:126px;padding:15px;border-radius:16px}.admin-metric-icon{width:34px;height:34px}.admin-metric-label{font-size:9px}.admin-metric-value{margin-top:11px;font-size:29px}.admin-metric-card small{font-size:10px}.admin-subnav{overflow:hidden;padding:5px}.admin-subnav-track{display:flex;overflow-x:auto;scrollbar-width:none}.admin-subnav-track::-webkit-scrollbar{display:none}.admin-subnav a{flex:0 0 auto;min-width:112px}}
@media(max-width:390px){.admin-metric-grid{grid-template-columns:1fr}}

/* v3.9 themed confirmation dialog */
.lp-confirm-modal .modal-dialog{max-width:410px}.lp-confirm-card{border:1px solid var(--lp-border);border-radius:22px;background:var(--lp-surface-solid);box-shadow:0 28px 80px rgba(23,32,57,.24);overflow:visible;padding-top:24px}.lp-confirm-card .modal-body{padding:12px 26px 20px}.lp-confirm-message{color:var(--lp-muted);line-height:1.55}.lp-confirm-icon{width:56px;height:56px;margin:-52px auto 0;border-radius:18px;display:grid;place-items:center;font-size:24px;border:6px solid var(--lp-surface-solid);box-shadow:0 10px 26px rgba(31,42,77,.14)}.lp-confirm-icon.tone-danger{background:rgba(220,53,69,.12);color:#dc3545}.lp-confirm-icon.tone-warning{background:rgba(255,193,7,.18);color:#9a6b00}.lp-confirm-icon.tone-primary{background:var(--lp-primary-soft);color:var(--lp-primary)}.lp-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid var(--lp-border);padding:16px 20px 20px}.lp-confirm-actions .btn{margin:0;border-radius:12px;font-weight:700}

/* v3.9 search suggestions + icon-only submit */
.lookup-submit-icon{min-width:48px;display:inline-grid;place-items:center}.lookup-submit-icon .bi{margin-right:0!important;font-size:1.05rem}.suggestion-item{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:4px!important;background:transparent!important}.suggestion-item+.suggestion-item{margin-top:3px}.suggestion-fill{min-width:0;border:0;border-radius:11px;background:transparent;color:var(--lp-text);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px;text-align:left}.suggestion-fill:hover,.suggestion-fill:focus-visible{outline:none;background:var(--lp-primary-soft)}.suggestion-quick-search{height:38px;border:1px solid color-mix(in srgb,var(--lp-primary) 18%,var(--lp-border));border-radius:10px;background:color-mix(in srgb,var(--lp-primary-soft) 70%,var(--lp-surface-solid));color:var(--lp-primary);display:inline-flex;align-items:center;gap:6px;padding:0 10px;font-size:.76rem;font-weight:800;white-space:nowrap}.suggestion-quick-search:hover,.suggestion-quick-search:focus-visible{outline:none;border-color:var(--lp-primary);background:var(--lp-primary);color:#fff}.default-provider-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 7px;border-radius:999px;background:var(--lp-primary-soft);color:var(--lp-primary);font-size:.66rem;font-weight:800;vertical-align:middle}.default-provider-control{border-color:color-mix(in srgb,var(--lp-primary) 20%,var(--lp-border));background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 35%,var(--lp-surface-solid)),var(--lp-surface-solid))}
@media(max-width:575.98px){.suggestion-quick-search span{display:none}.suggestion-quick-search{width:38px;justify-content:center;padding:0}}

/* v3.9 confirmation overlay (works above existing Bootstrap modals) */
.lp-confirm-overlay{position:fixed;inset:0;z-index:2100;display:grid;place-items:center;padding:22px;background:rgba(15,23,42,.42);backdrop-filter:blur(6px);opacity:0;transition:opacity .12s ease}.lp-confirm-overlay[hidden]{display:none!important}.lp-confirm-overlay.show{opacity:1}.lp-confirm-overlay .lp-confirm-card{width:min(410px,100%);border:1px solid var(--lp-border);border-radius:22px;background:var(--lp-surface-solid);box-shadow:0 30px 90px rgba(10,18,38,.32);overflow:visible;padding-top:24px;transform:translateY(8px) scale(.985);transition:transform .12s ease}.lp-confirm-overlay.show .lp-confirm-card{transform:none}.lp-confirm-body{text-align:center;padding:12px 26px 20px}.lp-confirm-overlay .lp-confirm-icon{width:56px;height:56px;margin:-52px auto 0;border-radius:18px;display:grid;place-items:center;font-size:24px;border:6px solid var(--lp-surface-solid);box-shadow:0 10px 26px rgba(31,42,77,.14)}

/* v4.0 VIN intelligence workspace */
.vin-search-input .form-control{min-height:48px;letter-spacing:.055em;font-weight:700}.vin-hero{align-items:flex-start}.vin-source-row{display:flex;justify-content:space-between;gap:16px;margin-top:12px;padding:10px 12px;border:1px dashed var(--lp-border);border-radius:12px;color:var(--lp-muted);font-size:12px}.vin-section{margin-top:20px}.vin-section-heading{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--lp-text);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.vin-section-heading i{color:var(--lp-primary)}.vin-data-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vin-highlight-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.vin-highlight-card{padding:14px;border:1px solid var(--lp-border);border-radius:15px;background:color-mix(in srgb,var(--lp-primary-soft) 25%,var(--lp-surface-solid));display:flex;flex-direction:column;min-width:0}.vin-highlight-card>span{display:flex;align-items:center;gap:7px;color:var(--lp-muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.vin-highlight-card>span i{color:var(--lp-primary)}.vin-highlight-card strong{margin-top:8px;font-size:18px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vin-highlight-card small{margin-top:4px;color:var(--lp-muted);font-size:10px}.vin-history-flags{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.vin-history-unavailable{grid-column:1/-1;margin:0}.vin-history-flag{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--lp-border);border-radius:13px;background:rgba(127,127,127,.025)}.vin-history-flag>i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(24,160,100,.09);color:var(--lp-success)}.vin-history-flag span{min-width:0}.vin-history-flag strong,.vin-history-flag small{display:block}.vin-history-flag strong{font-size:15px}.vin-history-flag small{color:var(--lp-muted);font-size:10px}.vin-history-flag.has-records{border-color:rgba(220,53,69,.2);background:rgba(220,53,69,.035)}.vin-history-flag.has-records>i{background:rgba(220,53,69,.1);color:#dc3545}.vin-chip-list{display:flex;flex-wrap:wrap;gap:7px}.vin-chip{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--lp-primary) 13%,var(--lp-border));border-radius:999px;background:var(--lp-primary-soft);color:var(--lp-text);font-size:10px;font-weight:700}.vin-chip-muted{background:rgba(127,127,127,.04);color:var(--lp-muted);border-color:var(--lp-border);font-weight:600}.vin-detail-disclosure{margin-top:20px;border:1px solid var(--lp-border);border-radius:16px;overflow:hidden}.vin-detail-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;cursor:pointer;font-size:12px;font-weight:800;background:rgba(127,127,127,.025)}.vin-detail-disclosure>summary::-webkit-details-marker{display:none}.vin-detail-disclosure>summary span{display:flex;align-items:center;gap:8px}.vin-detail-disclosure>summary>i{transition:transform .18s ease}.vin-detail-disclosure[open]>summary>i{transform:rotate(180deg)}.vin-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:16px;border-top:1px solid var(--lp-border)}.vin-more-grid h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px}.vin-warranty-list{display:grid;gap:7px}.vin-warranty-row{display:flex;justify-content:space-between;gap:10px;padding:8px 9px;border:1px solid var(--lp-border);border-radius:10px;font-size:10px}.vin-warranty-row span{color:var(--lp-muted);text-align:right}.vin-history-button{width:100%;border:0;background:transparent;text-align:left}.vin-history-button:hover{background:var(--lp-primary-soft)}.vin-history-icon{display:grid;place-items:center}.vin-history-icon i{font-size:15px}.provider-kind-heading{display:flex;align-items:center;gap:9px;margin:22px 0 10px}.provider-kind-heading:first-child{margin-top:0}.provider-kind-heading span{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.075em;color:var(--lp-muted)}.provider-kind-heading i{color:var(--lp-primary)}.provider-icon-preview{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--lp-border);border-radius:11px;background:var(--lp-primary-soft);color:var(--lp-primary);font-size:17px}
@media(max-width:900px){.vin-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vin-history-flags{grid-template-columns:repeat(3,minmax(0,1fr))}.vin-more-grid{grid-template-columns:1fr}.vin-highlight-row{grid-template-columns:1fr}}
@media(max-width:575px){.vin-data-grid{grid-template-columns:1fr}.vin-history-flags{grid-template-columns:repeat(2,minmax(0,1fr))}.vin-hero{display:block}.vin-hero>.text-end{text-align:left!important;margin-top:12px}.vin-hero .justify-content-end{justify-content:flex-start!important}}

/* v4.1 Partify configuration resolution */
.provider-extra-panel{margin-top:14px;padding-top:14px;border-top:1px solid var(--lp-border)}
.configuration-notice{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:13px 14px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.025)}
.configuration-notice.is-warning{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.055)}
.configuration-notice.is-info{border-color:color-mix(in srgb,var(--lp-primary) 24%,var(--lp-border));background:color-mix(in srgb,var(--lp-primary-soft) 45%,transparent)}
.configuration-notice-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--lp-surface-solid);border:1px solid var(--lp-border);color:var(--lp-primary);font-size:17px}
.configuration-notice.is-warning .configuration-notice-icon{color:#a66900}
.configuration-notice-title{font-size:12px;font-weight:850;color:var(--lp-text)}
.configuration-notice-copy{margin-top:3px;color:var(--lp-muted);font-size:11px;line-height:1.5}
.provider-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.provider-extra-block{padding:12px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.018)}
.provider-extra-block:first-child:nth-last-child(1){grid-column:1/-1}
@media(max-width:700px){.provider-extra-grid{grid-template-columns:1fr}}

/* v4.3 VIN rendering + mobile navigation */
.vin-grid-empty{
  grid-column:1/-1;
  padding:14px;
  border:1px dashed var(--lp-border);
  border-radius:13px;
  color:var(--lp-muted);
  background:rgba(127,127,127,.018);
  font-size:12px;
}
.history-expand-indicator{
  color:var(--lp-muted);
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(127,127,127,.045);
  transition:transform .16s ease, background .16s ease, color .16s ease;
}
.history-item.open .history-expand-indicator{
  color:var(--lp-primary);
  background:var(--lp-primary-soft);
}
.history-item.open .history-expand-indicator i{transform:rotate(180deg)}
.history-expand-indicator i{transition:transform .16s ease}
.vin-history-action{gap:8px;color:var(--lp-primary);font-size:11px;font-weight:800;white-space:nowrap}
.vin-history-action-text{display:inline}

.mobile-brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.mobile-brand .brand-mark{width:38px;height:38px;border-radius:12px;flex:0 0 auto}
.mobile-brand .brand-copy{min-width:0}
.mobile-brand .brand-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-menu-button{
  width:42px;height:42px;flex:0 0 42px;border:1px solid var(--lp-border);border-radius:13px;
  display:grid;place-items:center;background:var(--lp-surface-solid);color:var(--lp-text);
  box-shadow:0 7px 20px rgba(31,42,77,.07);font-size:20px;
}
.mobile-menu-button:hover,.mobile-menu-button:focus-visible{background:var(--lp-primary-soft);color:var(--lp-primary);outline:none}
.lp-mobile-nav{
  --bs-offcanvas-width:min(390px,92vw);
  color:var(--lp-text);
  background:var(--lp-surface-solid);
  border-left:1px solid var(--lp-border)!important;
  box-shadow:-24px 0 60px rgba(20,29,55,.14);
}
.mobile-nav-header{
  min-height:76px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  border-bottom:1px solid var(--lp-border);
  background:linear-gradient(180deg,color-mix(in srgb,var(--lp-primary-soft) 45%,var(--lp-surface-solid)),var(--lp-surface-solid));
}
.mobile-nav-brand{display:flex;align-items:center;gap:11px;min-width:0}
.mobile-nav-brand .brand-mark{width:40px;height:40px;border-radius:13px;flex:0 0 auto}
.mobile-nav-close{
  width:38px;height:38px;border:1px solid var(--lp-border);border-radius:12px;background:var(--lp-surface-solid);
  color:var(--lp-muted);display:grid;place-items:center;font-size:17px;
}
.mobile-nav-close:hover,.mobile-nav-close:focus-visible{color:var(--lp-text);background:var(--lp-primary-soft);outline:none}
.mobile-nav-body{display:flex;flex-direction:column;padding:16px!important;overflow-y:auto}
.mobile-balance-card{
  display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;margin-bottom:15px;
  border:1px solid color-mix(in srgb,var(--lp-primary) 16%,var(--lp-border));border-radius:14px;
  background:var(--lp-primary-soft);
}
.mobile-balance-card span{display:flex;align-items:center;gap:8px;color:var(--lp-muted);font-size:11px;font-weight:750}
.mobile-balance-card strong{font-family:"Roboto Mono",monospace;font-size:13px;color:var(--lp-text)}
.mobile-nav-section{margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid var(--lp-border)}
.mobile-nav-section .nav-label{display:block;padding:0 5px 8px;color:var(--lp-muted);font-size:10px;letter-spacing:.13em}
.mobile-app-nav{gap:5px}
.mobile-app-nav a,.mobile-app-nav button.nav-link-button{
  min-height:45px;padding:10px 11px;border-radius:12px;color:var(--lp-muted);
}
.mobile-app-nav a span,.mobile-app-nav button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-app-nav a.active{background:var(--lp-primary-soft);color:var(--lp-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lp-primary) 12%,transparent)}
.mobile-app-nav a.active::after{content:"";margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--lp-primary)}
.mobile-nav-spacer{flex:1;min-height:8px}
.mobile-nav-account{padding-top:4px}
.mobile-nav-account .user-chip{padding:10px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.025)}
.mobile-signout{color:var(--lp-danger)!important}

@media(max-width:820px){
  .mobile-topbar{height:66px;padding:0 14px;background:color-mix(in srgb,var(--lp-surface-solid) 95%,transparent);box-shadow:0 8px 24px rgba(31,42,77,.045)}
  .mobile-topbar .brand-copy span{display:block;font-size:9px;letter-spacing:.07em;margin-top:2px}
  .vin-lookup-grid .lookup-card{position:static}
}
@media(max-width:560px){
  .history-button{grid-template-columns:44px minmax(0,1fr) auto}
  .history-side{grid-column:auto;justify-content:flex-end;margin-top:0}
  .vin-history-action-text{display:none}
  .vin-history-action{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--lp-primary-soft)}
  .mobile-nav-body{padding:14px!important}
}

/* v4.4 history alignment + SuperAdmin Data Center */
.history-expand-indicator{
  flex:0 0 32px;
  min-width:32px;
  max-width:32px;
  padding:0!important;
  margin:0;
  align-self:center;
  justify-self:end;
  line-height:1;
}
.history-expand-indicator i{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  line-height:1;
  margin:0;
}
.history-expand-indicator i::before{display:block;line-height:1}

.data-center-intro{overflow:hidden;position:relative}
.data-center-intro::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-120px;background:var(--lp-primary-soft);filter:blur(2px);pointer-events:none}
.data-center-intro>*{position:relative;z-index:1}
.data-center-guardrail{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--lp-primary) 13%,var(--lp-border));border-radius:12px;background:color-mix(in srgb,var(--lp-primary-soft) 38%,transparent);color:var(--lp-muted);font-size:11px;line-height:1.55}
.data-center-guardrail i{color:var(--lp-primary);margin-top:1px}
.data-analytics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.data-stat-card{min-width:0;padding:16px;border:1px solid var(--lp-border);border-radius:17px;background:var(--lp-surface);box-shadow:0 10px 28px rgba(31,42,77,.055);display:flex;align-items:flex-start;gap:11px}
.data-stat-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:var(--lp-primary-soft);color:var(--lp-primary);font-size:16px}
.data-stat-card>div{min-width:0}.data-stat-card small,.data-stat-card strong,.data-stat-card>div>span{display:block}.data-stat-card small{color:var(--lp-muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.data-stat-card strong{margin-top:7px;color:var(--lp-text);font-size:25px;line-height:1;letter-spacing:-.04em}.data-stat-card>div>span{margin-top:5px;color:var(--lp-muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.data-insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.data-insight-grid-compact{grid-template-columns:1.2fr .8fr}.data-chart-card{min-width:0}.data-chart-card .card-title-row p{font-size:10px}
.data-bar-list,.data-coverage-list{display:grid;gap:10px}.data-bar-row,.data-coverage-row{min-width:0}.data-bar-label,.data-coverage-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;font-size:10px}.data-bar-label span,.data-coverage-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--lp-text);font-weight:700}.data-bar-label strong,.data-coverage-row strong{color:var(--lp-muted);font-size:9px}.data-bar-track{height:7px;border-radius:999px;background:rgba(127,127,127,.08);overflow:hidden}.data-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--lp-primary),color-mix(in srgb,var(--lp-primary) 60%,#7c6ee6));min-width:3px}.data-empty{text-align:center;color:var(--lp-muted);font-size:11px;padding:14px}
.data-browser-card{overflow:hidden;border:1px solid var(--lp-border);border-radius:20px;background:var(--lp-surface);box-shadow:0 14px 38px rgba(31,42,77,.06)}.data-browser-head{padding:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--lp-border)}.data-browser-head p{color:var(--lp-muted);font-size:11px}.data-table-tabs{display:flex;gap:6px;padding:9px 12px;overflow-x:auto;border-bottom:1px solid var(--lp-border);background:rgba(127,127,127,.018);scrollbar-width:thin}.data-table-tabs a{flex:0 0 auto;min-height:38px;padding:8px 10px;display:flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:10px;color:var(--lp-muted);text-decoration:none;font-size:10px;font-weight:780}.data-table-tabs a:hover{background:rgba(127,127,127,.05);color:var(--lp-text)}.data-table-tabs a.active{background:var(--lp-primary-soft);color:var(--lp-primary);border-color:color-mix(in srgb,var(--lp-primary) 13%,transparent)}
.data-filter-panel{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(4,minmax(100px,.7fr)) auto;gap:10px;align-items:end;padding:14px 16px;border-bottom:1px solid var(--lp-border)}.data-filter-panel .form-label{font-size:9px;margin-bottom:5px}.data-filter-actions{display:flex;gap:6px}.data-browser-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 16px;border-bottom:1px solid var(--lp-border);font-size:10px;color:var(--lp-muted)}.data-browser-meta>span{display:flex;align-items:center;gap:6px}.data-browser-meta strong{color:var(--lp-text)}.data-browser-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.data-table-wrap{max-height:650px}.data-table{margin:0;min-width:max-content}.data-table thead th{position:sticky;top:0;z-index:2;background:var(--lp-surface-solid);box-shadow:0 1px 0 var(--lp-border);font-size:9px;text-transform:none;letter-spacing:.02em}.data-table td{max-width:240px;vertical-align:middle}.data-cell{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.data-cell.is-null{color:var(--lp-muted);font-style:italic}.data-actions-col{position:sticky;right:0;background:var(--lp-surface-solid)!important;box-shadow:-1px 0 0 var(--lp-border);z-index:1}.data-table thead .data-actions-col{z-index:3}.data-row-actions{display:flex;gap:5px;align-items:center}.data-row-actions form{margin:0}.data-row-actions .btn{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.data-pagination{padding:12px 16px;border-top:1px solid var(--lp-border);display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--lp-muted);font-size:10px}.data-pagination>div{display:flex;gap:5px}
.data-record-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.data-field{min-width:0}.data-field-wide{grid-column:1/-1}.data-field .form-label{font-size:10px;font-family:"Roboto Mono",monospace}.data-field-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;color:var(--lp-muted);font-size:8px}.data-field-meta label{display:flex;align-items:center;gap:4px;cursor:pointer}.data-field textarea{font-size:10px;line-height:1.45}.data-field input[readonly]{background:rgba(127,127,127,.05);color:var(--lp-muted)}

@media(max-width:1200px){.data-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.data-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.data-filter-search{grid-column:span 2}.data-filter-actions{grid-column:auto}}
@media(max-width:820px){.data-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-insight-grid,.data-insight-grid-compact{grid-template-columns:1fr}.data-browser-head{align-items:stretch;flex-direction:column}.data-browser-head .btn{align-self:flex-start}.data-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.data-filter-search{grid-column:1/-1}.data-filter-actions{grid-column:1/-1}.data-browser-meta{align-items:flex-start;flex-direction:column;gap:4px}.data-record-form-grid{grid-template-columns:1fr}.data-field-wide{grid-column:auto}}
@media(max-width:520px){.data-analytics-grid{grid-template-columns:1fr}.data-stat-card{align-items:center}.data-filter-panel{grid-template-columns:1fr}.data-filter-search,.data-filter-actions{grid-column:auto}.data-filter-actions .btn{flex:1}.data-row-actions .btn span{display:none}.data-pagination{align-items:flex-start;flex-direction:column}}

/* v4.5 interaction polish + Data Center VIN-assisted entry */
/* Draw the history chevron with CSS instead of the icon font. Font glyph
   baselines varied between browsers and made the chevron look off-center. */
.history-side.history-expand-indicator{
  position:relative;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  flex:0 0 34px!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:end!important;
  padding:0!important;
  margin:0!important;
  line-height:0!important;
}
.history-side.history-expand-indicator i{display:none!important}
.history-side.history-expand-indicator::before{
  content:"";
  width:8px;
  height:8px;
  border-right:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transform-origin:center;
  transition:transform .16s ease;
}
.history-item.open .history-side.history-expand-indicator::before{
  transform:translateY(2px) rotate(225deg);
}

/* The search icon and spinner occupy the same single slot, never both at once. */
.lookup-submit-icon{width:48px;min-width:48px;height:42px;position:relative;display:inline-grid!important;place-items:center!important;padding:0!important}
.lookup-submit-icon #spinner,.lookup-submit-icon #searchIcon{grid-area:1/1;place-self:center;margin:0!important}
.lookup-loading-dots{display:inline-flex;align-items:center;justify-content:center;gap:3px;width:22px;height:12px}
.lookup-loading-dots i{display:block!important;width:4px;height:4px;border-radius:999px;background:currentColor;animation:lp-search-dot .9s ease-in-out infinite}
.lookup-loading-dots i:nth-child(2){animation-delay:.12s}.lookup-loading-dots i:nth-child(3){animation-delay:.24s}
@keyframes lp-search-dot{0%,70%,100%{transform:translateY(0);opacity:.45}35%{transform:translateY(-3px);opacity:1}}
.lookup-submit-icon.is-busy{cursor:wait;box-shadow:none}
.lookup-submit-icon.is-busy #searchIcon{display:none!important}
.lookup-submit-icon:not(.is-busy) #spinner{display:none!important}

.provider-message-panel,.provider-private-notes{
  padding:14px;
  border:1px solid var(--lp-border);
  border-radius:15px;
  background:color-mix(in srgb,var(--lp-surface-solid) 94%,var(--lp-primary-soft));
}
.provider-private-notes{background:color-mix(in srgb,var(--lp-surface-solid) 96%,rgba(127,127,127,.04))}
.provider-private-notes textarea{min-height:92px}

.data-vin-autofill-panel{
  padding:15px;
  border:1px solid color-mix(in srgb,var(--lp-primary) 18%,var(--lp-border));
  border-radius:17px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 58%,var(--lp-surface-solid)),var(--lp-surface-solid));
  box-shadow:0 10px 28px rgba(31,42,77,.055);
}
.data-vin-autofill-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.data-vin-autofill-head>div:first-child{display:flex;align-items:flex-start;gap:10px;min-width:0}
.data-vin-autofill-head strong,.data-vin-autofill-head small{display:block}
.data-vin-autofill-head strong{font-size:12px;color:var(--lp-text)}
.data-vin-autofill-head small{margin-top:3px;color:var(--lp-muted);font-size:9px;line-height:1.5}
.data-vin-autofill-icon{width:36px;height:36px;flex:0 0 36px;border-radius:11px;display:grid;place-items:center;background:var(--lp-primary-soft);color:var(--lp-primary)}
.data-vin-autofill-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:13px}
.data-vin-autofill-controls .btn{min-height:39px;white-space:nowrap}
.data-vin-autofill-status{margin-top:9px;padding:8px 10px;border-radius:10px;background:rgba(127,127,127,.045);color:var(--lp-muted);font-size:9px;line-height:1.45}
.data-vin-autofill-status.is-success{background:rgba(20,132,93,.09);color:var(--lp-success)}
.data-vin-autofill-status.is-error{background:rgba(196,59,77,.09);color:var(--lp-danger)}
@media(max-width:620px){.data-vin-autofill-controls{grid-template-columns:1fr}.data-vin-autofill-controls .btn{width:100%}}


/* v4.5.1 Data Center record modal — viewport-safe and visually unified */
.data-record-modal{--data-modal-gutter:22px}
.data-record-modal .data-record-dialog{
  width:min(1120px,calc(100vw - (var(--data-modal-gutter) * 2)));
  max-width:none;
  height:min(900px,calc(100vh - (var(--data-modal-gutter) * 2)));
  max-height:calc(100vh - (var(--data-modal-gutter) * 2));
  height:min(900px,calc(100dvh - (var(--data-modal-gutter) * 2)));
  max-height:calc(100dvh - (var(--data-modal-gutter) * 2));
  margin:var(--data-modal-gutter) auto;
}
.data-record-card{
  height:100%;
  min-height:0;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--lp-border) 90%,var(--lp-primary) 10%);
  border-radius:24px;
  box-shadow:0 32px 90px rgba(24,35,65,.22);
  background:var(--lp-surface-solid);
}
.data-record-header{
  flex:0 0 auto;
  padding:19px 22px;
  border-bottom:1px solid var(--lp-border);
  background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 30%,var(--lp-surface-solid)),var(--lp-surface-solid) 52%);
}
.data-record-heading{display:flex;align-items:center;gap:13px;min-width:0;padding-right:12px}
.data-record-heading-icon{width:44px;height:44px;flex:0 0 44px;border-radius:14px;display:grid;place-items:center;background:var(--lp-primary-soft);color:var(--lp-primary);font-size:18px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lp-primary) 10%,transparent)}
.data-record-heading h2{color:var(--lp-text);font-weight:820;letter-spacing:-.02em}
.data-record-heading p{color:var(--lp-muted);font-size:10px;line-height:1.45}
.data-record-form{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;flex-direction:column}
.data-record-body{flex:1 1 auto;min-height:0;overflow-y:auto!important;overscroll-behavior:contain;padding:19px 22px 24px;scrollbar-gutter:stable}
.data-record-body>.data-vin-autofill-panel{margin-bottom:16px}
.data-record-section{border:1px solid var(--lp-border);border-radius:18px;background:color-mix(in srgb,var(--lp-surface-solid) 97%,var(--lp-primary-soft));overflow:hidden}
.data-record-section-head{padding:14px 16px;border-bottom:1px solid var(--lp-border);display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(127,127,127,.018)}
.data-record-section-head>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.data-record-section-head strong,.data-record-section-head small{display:block}.data-record-section-head strong{font-size:12px;color:var(--lp-text)}.data-record-section-head small{margin-top:2px;color:var(--lp-muted);font-size:9px;line-height:1.4}
.data-record-section-icon{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:var(--lp-primary-soft);color:var(--lp-primary)}
.data-record-section-badge{flex:0 0 auto;display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:rgba(127,127,127,.055);border:1px solid var(--lp-border);color:var(--lp-muted);font-size:8px;font-weight:800}
.data-record-section .data-record-form-grid{padding:15px;gap:11px}
.data-record-section .data-field{padding:11px;border:1px solid var(--lp-border);border-radius:13px;background:var(--lp-surface-solid);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.data-record-section .data-field:focus-within{border-color:color-mix(in srgb,var(--lp-primary) 38%,var(--lp-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--lp-primary-soft) 65%,transparent)}
.data-record-section .data-field-system{background:color-mix(in srgb,var(--lp-surface-solid) 94%,rgba(127,127,127,.045))}
.data-field-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;min-width:0}
.data-field-label-row .form-label{color:var(--lp-text);font-family:inherit;font-size:9px;font-weight:800;letter-spacing:.005em}.data-field-label-row code{min-width:0;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 6px;border-radius:6px;background:rgba(127,127,127,.05);color:var(--lp-muted);font-size:7px}
.data-auto-pill{display:inline-flex;align-items:center;margin-left:6px;padding:2px 5px;border-radius:999px;background:var(--lp-primary-soft);color:var(--lp-primary);font-size:7px;font-weight:850;vertical-align:middle}
.data-record-section .form-control,.data-record-section .form-select{min-height:40px;border-radius:10px;background:var(--lp-surface-solid);font-size:10px}.data-record-section textarea.form-control{min-height:92px;resize:vertical}
.data-record-section .data-field-meta{margin-top:6px;font-size:7.5px}.data-record-section .data-field-meta label{padding:2px 5px;border-radius:6px;background:rgba(127,127,127,.045)}
.data-record-footer{flex:0 0 auto;min-height:70px;padding:13px 20px;border-top:1px solid var(--lp-border);display:flex;align-items:center;justify-content:space-between;gap:16px;background:color-mix(in srgb,var(--lp-surface-solid) 96%,var(--lp-primary-soft));box-shadow:0 -10px 30px rgba(31,42,77,.035)}
.data-record-footer-note{display:flex;align-items:center;gap:8px;min-width:0;color:var(--lp-muted);font-size:9px}.data-record-footer-note i{color:var(--lp-primary);font-size:15px}.data-record-footer-note strong{color:var(--lp-text)}
.data-record-footer-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.data-record-footer-actions .btn{min-width:110px;border-radius:11px;font-weight:760}

@media(max-width:820px){
  .data-record-modal{--data-modal-gutter:10px}
  .data-record-modal .data-record-dialog{width:calc(100vw - 20px);height:calc(100vh - 20px);max-height:calc(100vh - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}
  .data-record-header{padding:15px 16px}.data-record-body{padding:14px 15px 18px}.data-record-heading-icon{width:39px;height:39px;flex-basis:39px}.data-record-heading p{display:none}
  .data-record-section-head{align-items:flex-start}.data-record-section-badge{display:none}.data-record-section .data-record-form-grid{padding:11px}
  .data-record-footer{padding:11px 13px;min-height:64px}.data-record-footer-note{display:none}.data-record-footer-actions{width:100%}.data-record-footer-actions .btn{flex:1;min-width:0}
}
@media(max-width:520px){
  .data-record-modal{--data-modal-gutter:0px}.data-record-modal .data-record-dialog{width:100vw;height:100vh;max-height:100vh;height:100dvh;max-height:100dvh;margin:0}.data-record-card{border-radius:0;border-left:0;border-right:0}.data-record-header{padding-top:max(14px,env(safe-area-inset-top))}.data-record-footer{padding-bottom:max(11px,env(safe-area-inset-bottom))}
  .data-record-heading{gap:9px}.data-record-heading-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px;font-size:15px}.data-record-heading h2{font-size:16px}.data-record-body{padding-left:11px;padding-right:11px}.data-vin-autofill-panel{border-radius:14px}.data-record-section{border-radius:14px}.data-record-section .data-field{padding:10px}
}


/* v4.5.2 provider editor: aligned icon field + unmistakable internal notes */
.provider-icon-control{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:stretch;
  width:100%;
  min-width:0;
}
.provider-icon-control .provider-icon-preview{
  width:54px;
  height:48px;
  display:grid;
  place-items:center;
  margin:0;
  border:1px solid color-mix(in srgb,var(--lp-primary) 18%,var(--lp-border));
  border-right:0;
  border-radius:14px 0 0 14px;
  background:color-mix(in srgb,var(--lp-primary-soft) 72%,var(--lp-surface-solid));
  color:var(--lp-primary);
  font-size:18px;
}
.provider-icon-control .provider-icon-input{
  width:100%;
  min-width:0;
  height:48px;
  min-height:48px;
  margin:0;
  border-radius:0 14px 14px 0!important;
  font-size:13px;
  line-height:1.2;
}
.provider-icon-control:focus-within .provider-icon-preview{
  border-color:color-mix(in srgb,var(--lp-primary) 55%,var(--lp-border));
  box-shadow:-2px 0 0 2px color-mix(in srgb,var(--lp-primary-soft) 70%,transparent);
}
.provider-icon-example{margin-top:7px;padding-left:2px}
.provider-private-notes{
  border-style:dashed;
  border-color:color-mix(in srgb,var(--lp-primary) 18%,var(--lp-border));
  background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 18%,var(--lp-surface-solid)),var(--lp-surface-solid));
}
.provider-private-notes .status-pill{white-space:nowrap}
.provider-private-notes textarea{background:var(--lp-surface-solid)}
@media(max-width:620px){
  .provider-icon-control{grid-template-columns:50px minmax(0,1fr)}
  .provider-icon-control .provider-icon-preview{width:50px;height:46px}
  .provider-icon-control .provider-icon-input{height:46px;min-height:46px}
}


/* v4.5.4 provider catalog + exact SVG history chevron */
.history-side.history-expand-indicator{
  width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;
  flex:0 0 40px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;margin:0!important;line-height:1!important;position:relative!important;
}
.history-side.history-expand-indicator::before{display:none!important;content:none!important}
.history-side.history-expand-indicator .history-chevron-svg{
  display:block!important;width:18px!important;height:18px!important;margin:0!important;padding:0!important;
  transform:none;transform-origin:50% 50%;transition:transform .16s ease;color:var(--lp-muted);overflow:visible;
}
.history-item.open .history-side.history-expand-indicator .history-chevron-svg{transform:rotate(180deg)}
.provider-private-notes-prominent{padding:16px;border:1px solid color-mix(in srgb,var(--lp-primary) 22%,var(--lp-border));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 55%,var(--lp-surface-solid)),var(--lp-surface-solid));}
.provider-private-notes-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.provider-private-notes-head>div{min-width:0}.provider-private-notes-head strong,.provider-private-notes-head small{display:block}.provider-private-notes-head strong{margin-top:4px;font-size:13px;color:var(--lp-text)}.provider-private-notes-head small{margin-top:3px;font-size:10px;line-height:1.45;color:var(--lp-muted)}.provider-private-kicker{display:inline-flex;align-items:center;gap:5px;color:var(--lp-primary);font-size:8px;font-weight:900;letter-spacing:.09em}.provider-private-notes-prominent textarea{min-height:104px;border-radius:12px;background:var(--lp-surface-solid)}

/* v4.5.5 provider editor reliability / save visibility */
.provider-top-save-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:12px}.provider-top-save-row .small{margin-right:auto}
.provider-save-bar{position:sticky;bottom:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 16px;margin-left:-16px;margin-right:-16px;margin-bottom:-16px;border-top:1px solid var(--lp-border);background:color-mix(in srgb,var(--lp-surface-solid) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 -12px 28px rgba(31,42,77,.06)}
.provider-save-button{min-width:190px}
.provider-catalog-counts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.provider-catalog-counts span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--lp-border);border-radius:999px;background:var(--lp-surface);color:var(--lp-muted);font-size:12px;font-weight:800;white-space:nowrap}
.provider-catalog-counts i{color:var(--lp-primary)}
@media(max-width:575.98px){.provider-save-bar{align-items:stretch}.provider-save-bar>span{width:100%}.provider-save-button{width:100%;min-width:0}}

/* v4.7.2 platform API, canonical plate store, appearance, analytics and cache controls */
.notice-info{background:color-mix(in srgb,var(--lp-primary-soft) 72%,transparent);color:var(--lp-text);border:1px solid color-mix(in srgb,var(--lp-primary) 18%,var(--lp-border))}
.notice-warning{background:rgba(173,109,6,.09);color:var(--lp-warning);border:1px solid rgba(173,109,6,.18)}
.maintenance-banner{display:flex;align-items:flex-start;gap:5px}

.theme-control{padding:9px;border:1px solid var(--lp-border);border-radius:13px;background:rgba(127,127,127,.025)}
.theme-control-label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--lp-muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.theme-control-options{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.theme-control-options button,.mobile-theme-control button{border:1px solid var(--lp-border);background:var(--lp-surface-solid);color:var(--lp-muted);border-radius:9px;min-height:34px;display:flex;align-items:center;justify-content:center;gap:7px;transition:.15s ease}
.theme-control-options button:hover,.mobile-theme-control button:hover{color:var(--lp-text);border-color:color-mix(in srgb,var(--lp-primary) 28%,var(--lp-border))}
.theme-control-options button.active,.mobile-theme-control button.active{color:var(--lp-primary);background:var(--lp-primary-soft);border-color:color-mix(in srgb,var(--lp-primary) 25%,var(--lp-border))}
.mobile-theme-control{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 10px 10px}.mobile-theme-control button{padding:9px 6px;font-size:11px;font-weight:750}
.app-version{display:block;color:var(--lp-muted);font-size:9px;margin:3px 8px 8px}

.api-doc-grid{align-items:stretch}.api-doc-secret{min-height:56px}.api-doc-secret code{font-size:13px}.api-security-callout{display:flex;align-items:flex-start;gap:11px;padding:12px 13px;border-radius:13px;border:1px solid color-mix(in srgb,var(--lp-success) 18%,var(--lp-border));background:color-mix(in srgb,var(--lp-success) 7%,var(--lp-surface-solid))}.api-security-callout>i{color:var(--lp-success);font-size:18px}.api-security-callout strong,.api-security-callout span{display:block}.api-security-callout span{margin-top:2px;color:var(--lp-muted);font-size:11px;line-height:1.5}.api-endpoint-box{display:flex;align-items:center;gap:8px;padding:10px 11px;border:1px solid var(--lp-border);border-radius:12px;background:rgba(127,127,127,.025)}.api-endpoint-box code{flex:1;min-width:0;overflow-wrap:anywhere}.mini-metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mini-metric-grid>div{padding:11px;border:1px solid var(--lp-border);border-radius:12px;background:rgba(127,127,127,.025)}.mini-metric-grid span,.mini-metric-grid strong{display:block}.mini-metric-grid span{color:var(--lp-muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.mini-metric-grid strong{font-size:20px;margin-top:3px}.api-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.api-access-card{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.02)}.api-access-card .provider-icon{width:38px;height:38px;flex:0 0 38px;border-radius:11px;display:grid;place-items:center;background:var(--lp-primary-soft);color:var(--lp-primary)}.api-access-card strong,.api-access-card span,.api-access-card small{display:block}.api-access-card strong{font-family:"Roboto Mono",monospace;font-size:12px}.api-access-card span{font-size:11px;font-weight:700}.api-access-card small{color:var(--lp-muted);font-size:9px;margin-top:2px}.api-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.api-code{margin:0;min-height:170px;padding:15px;border-radius:14px;overflow:auto;background:#0f1522;color:#dce6ff;border:1px solid rgba(255,255,255,.06);font-size:11px;line-height:1.65}

.provider-cache-policy{padding:14px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.018)}
.data-ops-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.data-op-metric{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--lp-border);border-radius:16px;background:var(--lp-surface);box-shadow:var(--lp-shadow)}.data-op-metric>span{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;color:var(--lp-primary);background:var(--lp-primary-soft)}.data-op-metric small,.data-op-metric strong{display:block}.data-op-metric small{color:var(--lp-muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.data-op-metric strong{font-size:21px;margin-top:2px}.data-trend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.data-spark-chart{height:205px;display:flex;align-items:flex-end;gap:5px;padding:12px 4px 0;overflow-x:auto}.data-spark-col{height:100%;min-width:24px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}.data-spark-bar{position:relative;width:min(22px,80%);min-height:5px;border-radius:7px 7px 3px 3px;background:color-mix(in srgb,var(--lp-primary-soft) 90%,var(--lp-border));overflow:hidden}.data-spark-bar>span{position:absolute;left:0;right:0;bottom:0;background:var(--lp-primary);border-radius:inherit}.data-spark-col small{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--lp-muted);font-size:7px;transform:rotate(-36deg);transform-origin:center top;margin-bottom:6px}.data-provider-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.data-provider-health-card{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,.7fr));align-items:center;gap:10px;padding:12px 13px;border:1px solid var(--lp-border);border-radius:14px;background:rgba(127,127,127,.018)}.data-provider-health-card>div:first-child strong,.data-provider-health-card>div:first-child span{display:block}.data-provider-health-card>div:first-child strong{font-family:"Roboto Mono",monospace}.data-provider-health-card>div:first-child span{color:var(--lp-muted);font-size:9px;margin-top:2px}.data-health-values{text-align:right}.data-health-values b,.data-health-values small{display:block}.data-health-values b{font-size:12px}.data-health-values small{color:var(--lp-muted);font-size:7px;text-transform:uppercase;letter-spacing:.05em}.data-cache-control-form{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.65fr) minmax(190px,1fr) auto;gap:12px;align-items:end}.data-cache-actions{display:flex;gap:8px;align-items:center}.data-cache-center code{font-size:10px}

[data-bs-theme="dark"] .api-code{background:#070b12;color:#d8e1ff;border-color:rgba(255,255,255,.08)}
[data-bs-theme="dark"] .form-control,[data-bs-theme="dark"] .form-select,[data-bs-theme="dark"] .input-group-text{color:var(--lp-text);border-color:var(--lp-border)}
[data-bs-theme="dark"] .form-control::placeholder{color:#78829a}

@media(max-width:1100px){.api-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-ops-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-trend-grid{grid-template-columns:1fr}.data-provider-health-grid{grid-template-columns:1fr}.data-cache-control-form{grid-template-columns:repeat(2,minmax(0,1fr))}.data-cache-actions{grid-column:1/-1}}
@media(max-width:700px){.api-example-grid,.api-access-grid{grid-template-columns:1fr}.data-ops-metric-grid{grid-template-columns:1fr 1fr}.data-cache-control-form{grid-template-columns:1fr}.data-cache-actions{grid-column:auto;flex-direction:column;align-items:stretch}.data-provider-health-card{grid-template-columns:1fr 1fr}.data-provider-health-card>div:first-child{grid-column:1/-1}.data-health-values{text-align:left}.theme-control{display:none}}
@media(max-width:480px){.data-ops-metric-grid{grid-template-columns:1fr}.mini-metric-grid{grid-template-columns:1fr 1fr}}
.cache-policy-panel{padding:15px;border:1px solid var(--lp-border);border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--lp-primary-soft) 20%,var(--lp-surface-solid)),var(--lp-surface-solid))}.cache-policy-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.cache-policy-head strong,.cache-policy-head small{display:block}.cache-policy-head strong{font-size:13px;margin-top:3px}.cache-policy-head small{font-size:10px;color:var(--lp-muted);margin-top:2px}.cache-toggle{padding-top:8px}.sidebar-version{padding:5px 8px 0;color:var(--lp-muted);font-size:9px;letter-spacing:.02em}.footer-note{color:var(--lp-muted);font-size:11px;text-align:center;padding:26px 0 8px}
.login-panel{position:relative}.login-theme-switcher{position:absolute;top:20px;right:22px;display:flex;gap:5px;padding:5px;border:1px solid var(--lp-border);border-radius:12px;background:var(--lp-surface);box-shadow:var(--lp-shadow);z-index:3}.login-theme-switcher button{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--lp-muted)}.login-theme-switcher button:hover{background:var(--lp-primary-soft);color:var(--lp-text)}.login-theme-switcher button.active{background:var(--lp-primary-soft);color:var(--lp-primary)}
.api-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.api-status-grid>div{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--lp-border);border-radius:12px;background:rgba(127,127,127,.018)}.api-status-grid code{min-width:34px;text-align:center;padding:4px 6px;border-radius:7px;background:var(--lp-primary-soft);color:var(--lp-primary);font-weight:800}.api-status-grid span{color:var(--lp-muted);font-size:10px;line-height:1.35}@media(max-width:760px){.api-status-grid{grid-template-columns:1fr}}
