[data-dbm-popup][hidden] { display:none !important; }
.google-preferred-rail, .dbm-global-preferred, .dbm-next-level { display:none; visibility:hidden; opacity:0; pointer-events:none; }
.google-preferred-rail[data-dbm-popup="source"]:not([hidden]), .dbm-global-preferred[data-dbm-popup="source"]:not([hidden]), .dbm-next-level[data-dbm-popup="garage"]:not([hidden]) { display:block; visibility:visible; opacity:1; pointer-events:auto; }

.google-preferred-rail[data-dbm-popup="source"],
.dbm-global-preferred[data-dbm-popup="source"] {
  transition:opacity .2s ease, transform .2s ease;
}

.dbm-global-preferred[data-dbm-popup="source"] {
  top:118px;
  border-left:3px solid #c8ff3d;
}

.dbm-source-kicker,
.dbm-email-kicker {
  margin:0 0 6px;
  color:#c8ff3d;
  font:800 10px/1.4 ui-monospace,monospace;
  letter-spacing:.14em;
}

.dbm-global-preferred .dbm-source-kicker { color:#c8ff3d; }

.dbm-global-preferred .dbm-global-actions,
.google-preferred-rail .dbm-global-actions {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.dbm-global-preferred .dbm-global-actions a,
.google-preferred-rail .dbm-global-actions a {
  min-height:32px;
  border-color:#c8ff3d;
  background:#c8ff3d;
  color:#07100f;
}

.dbm-global-preferred .dbm-global-actions a:hover,
.google-preferred-rail .dbm-global-actions a:hover {
  background:#e5ff92;
}

.dbm-garage-close-text { position:static !important; top:auto !important; right:auto !important; display:block; margin-top:9px; padding:0; border:0; background:transparent; color:#b8c8c0; font:600 11px/1.3 system-ui,sans-serif; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.dbm-garage-close-text:hover { color:#c8ff3d; }

.dbm-global-garage[data-dbm-popup="garage"] {
  transition:opacity .2s ease, transform .2s ease;
}

/* Fallback geometry keeps the rails usable even if an older shell exits early. */
.dbm-global-preferred, .dbm-global-garage {
  position:fixed;
  left:12px;
  z-index:1990;
  width:220px;
  padding:10px;
  border:1px solid #496057;
  border-radius:10px;
  background:#07100fee;
  color:#dce7df;
  box-shadow:0 8px 24px #0005;
  font:600 11px/1.35 system-ui,sans-serif;
}
.dbm-global-preferred { top:118px; border-left:3px solid #c8ff3d; }
.dbm-global-garage { bottom:14px; border-left:3px solid #c8ff3d; background:linear-gradient(120deg,#071827,#10231d 68%,#1a2518); }
.dbm-global-preferred h2, .dbm-global-garage h2 { margin:0 0 6px; color:#fff; font:900 15px/1.1 system-ui,sans-serif; }
.dbm-global-garage .dbm-global-actions { display:flex; flex-wrap:wrap; gap:7px; }
.dbm-global-garage .dbm-global-actions a { display:inline-flex; align-items:center; min-height:32px; padding:7px 9px; border:1px solid #c8ff3d; border-radius:7px; color:#c8ff3d; text-decoration:none; font-size:11px; font-weight:900; }
.dbm-global-garage .dbm-global-actions a:nth-of-type(2) { border-color:#71d8ff; color:#71d8ff; }

.dbm-email-modal {
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:1985;
  width:min(390px,calc(100% - 32px));
  padding:20px;
  border:1px solid #496057;
  border-left:4px solid #c8ff3d;
  border-radius:12px;
  background:#07100ff7;
  color:#f8faf5;
  box-shadow:0 14px 42px #000b;
  font:14px/1.5 Inter,system-ui,sans-serif;
}

.dbm-email-modal h2 { margin:0 0 7px; color:#fff; font-size:24px; line-height:1.05; letter-spacing:-.035em; }
.dbm-email-modal p { margin:7px 0; color:#c7d4d0; }
.dbm-email-modal form { display:grid; gap:9px; margin-top:13px; }
.dbm-email-modal label { display:grid; gap:4px; color:#dce7df; font-size:12px; font-weight:800; }
.dbm-email-modal input[type="text"], .dbm-email-modal input[type="email"] { width:100%; min-height:40px; padding:9px 10px; border:1px solid #587068; border-radius:6px; background:#09100f; color:#fff; font:inherit; }
.dbm-email-modal input:focus-visible { outline:3px solid #c8ff3d; outline-offset:2px; }
.dbm-email-modal .dbm-email-consent { display:flex; grid-template-columns:none; grid-template-rows:none; align-items:flex-start; gap:8px; font-size:12px; font-weight:500; }
.dbm-email-modal .dbm-email-consent input { flex:0 0 auto; margin-top:4px; accent-color:#c8ff3d; }
.dbm-email-modal button[type="submit"] { min-height:40px; border:1px solid #c8ff3d; border-radius:7px; background:#c8ff3d; color:#07100f; font-weight:900; cursor:pointer; }
.dbm-email-modal button[type="submit"]:hover { background:#e5ff92; }
.dbm-email-modal button[type="submit"]:focus-visible, .dbm-email-modal .dbm-email-close:focus-visible, .dbm-email-modal .dbm-email-not-now:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.dbm-email-close { position:absolute; top:7px; right:8px; min-height:28px; padding:0 7px; border:0; background:transparent; color:#dce7df; font:700 20px/1 system-ui,sans-serif; cursor:pointer; }
.dbm-email-close:hover, .dbm-email-not-now:hover { color:#c8ff3d; }
.dbm-email-not-now { justify-self:start; padding:0; border:0; background:transparent; color:#b8c8c0; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.dbm-email-privacy { font-size:11px !important; color:#9fb1a8 !important; }
.dbm-email-status { min-height:20px; margin:0 !important; color:#c8ff3d !important; font-size:12px; }
.dbm-email-error { color:#ffbe91 !important; }
.dbm-inline-signup { margin-top:20px; padding:16px; border:1px solid #496057; border-left:3px solid #c8ff3d; border-radius:9px; background:#101d1a; color:#dce7df; }
.dbm-inline-signup h2 { margin:0 0 5px; color:#fff; font:800 15px/1.1 ui-monospace,monospace; letter-spacing:.04em; }
.dbm-inline-signup p { margin:5px 0; }
.dbm-inline-signup form { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.dbm-inline-signup input { min-width:0; flex:1 1 150px; min-height:38px; padding:8px 9px; border:1px solid #587068; border-radius:6px; background:#09100f; color:#fff; font:inherit; }
.dbm-inline-signup button { min-height:38px; padding:8px 11px; border:1px solid #c8ff3d; border-radius:6px; background:#c8ff3d; color:#07100f; font-weight:900; cursor:pointer; }
.dbm-inline-signup input:focus-visible, .dbm-inline-signup button:focus-visible { outline:3px solid #fff; outline-offset:2px; }
.dbm-inline-signup small { display:block; margin-top:7px; color:#9fb1a8; }
.dbm-inline-signup .dbm-email-status { margin-top:7px !important; }

@media(max-width:720px) {
  .dbm-global-preferred[data-dbm-popup="source"] { top:118px; }
  .dbm-global-preferred, .dbm-global-garage { left:8px; width:190px; }
  .dbm-global-garage { bottom:10px; }
  .dbm-email-modal { right:10px; bottom:10px; width:calc(100% - 20px); padding:17px; }
  .dbm-inline-signup form { display:grid; }
}

@media(prefers-reduced-motion:reduce) {
  .google-preferred-rail[data-dbm-popup="source"], .dbm-global-preferred[data-dbm-popup="source"], .dbm-global-garage[data-dbm-popup="garage"] { transition:none; }
}
