/* Browser-replica layout overrides.
   The desktop ran inside a fixed, narrower Qt window, so the Dashboard and
   Sessions views were capped at 900px and never needed their own scroll
   container. In a full-width browser they must fill the width and scroll.
   app.css stays byte-for-byte; these rules win by load order + specificity. */

/* Scroll: give the Dashboard and Sessions views their own vertical scroll,
   the way the chat #messages pane already has one. */
#view-dashboard.view.active,
#view-sessions.view.active {
  overflow-y: auto;
  min-height: 0;
}

/* Width: fill the window instead of a 900px column. Cards (flex 1 1 150px)
   grow to use the space; content stays comfortably padded. */
.dashv,
.brsv {
  max-width: none;
  width: 100%;
  box-sizing: border-box;
  padding: 20px 34px 72px;
}

/* A touch more breathing room between the card rows on wide screens. */
.dashv .db-cards { gap: 14px; margin-top: 14px; }
.dashv .db-chips { padding-bottom: 24px; }

/* Profile menu replaces the settings gear: hide the rail gear (kept in the
   DOM so the profile popup's "Settings" can trigger it programmatically). */
.rail-btn[data-view="settings"] { display: none !important; }
/* Reserve space so the last conversation isn't hidden behind the fixed
   profile bar at the bottom of the panel. */
#convlist { padding-bottom: 60px; }

/* [connectors-vault-v1] Browser Connectors page (per-tenant key vault) */
#dc-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: 9000;
  display: flex; align-items: center; justify-content: center; padding: 24px; }
#dc-overlay.hidden { display: none !important; }
#dc-modal { width: min(720px, 96vw); max-height: 86vh; display: flex; flex-direction: column;
  background: #14161c; color: #e7e9ee; border: 1px solid #2a2e39; border-radius: 14px;
  box-shadow: 0 24px 70px rgba(0,0,0,.5); overflow: hidden; }
#dc-title { display: flex; align-items: center; gap: 10px; padding: 16px 18px;
  border-bottom: 1px solid #23262f; }
#dc-title b { font-size: 16px; }
#dc-title .dc-sub { color: #99a0ad; font-size: 12px; flex: 1; }
#dc-x { background: none; border: none; color: #99a0ad; font-size: 22px; line-height: 1;
  cursor: pointer; padding: 2px 6px; border-radius: 8px; }
#dc-x:hover { background: #23262f; color: #e7e9ee; }
#dc-body { padding: 14px 18px 18px; overflow-y: auto; display: grid; gap: 12px; }
.dc-card { border: 1px solid #262a34; border-radius: 12px; padding: 14px; background: #171922; }
.dc-head { display: flex; align-items: center; gap: 10px; }
.dc-head b { font-size: 14px; }
.dc-badge { margin-left: auto; font-size: 11px; padding: 2px 9px; border-radius: 999px;
  background: #2a2e39; color: #99a0ad; }
.dc-badge.on { background: rgba(46,160,90,.18); color: #4bd07f; }
.dc-desc { color: #99a0ad; font-size: 12px; margin: 6px 0 10px; }
.dc-fields { display: grid; gap: 8px; }
.dc-f { display: grid; gap: 4px; font-size: 12px; color: #c3c8d2; }
.dc-f input { background: #0f1116; border: 1px solid #2a2e39; color: #e7e9ee;
  border-radius: 8px; padding: 9px 10px; font-size: 13px; outline: none; }
.dc-f input:focus { border-color: #d98a3d; }
.dc-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 12px; }
.dc-actions button { border-radius: 8px; padding: 8px 16px; font-size: 13px; cursor: pointer;
  border: 1px solid transparent; }
.dc-save { background: #d98a3d; color: #1a1206; font-weight: 600; }
.dc-save:hover { background: #e59a4f; }
.dc-save:disabled { opacity: .6; cursor: default; }
.dc-rm { background: none; border-color: #3a2530; color: #e0788f; }
.dc-rm:hover { background: rgba(224,120,143,.12); }
.dc-empty { color: #99a0ad; font-size: 13px; text-align: center; padding: 24px; }
.dc-empty.bad { color: #e0788f; }
#dc-toast { position: fixed; left: 50%; bottom: 26px; transform: translateX(-50%) translateY(20px);
  background: #1f2a20; color: #cdeecf; border: 1px solid #2f6b3f; padding: 10px 16px;
  border-radius: 10px; font-size: 13px; opacity: 0; pointer-events: none; transition: all .2s; z-index: 9999; }
#dc-toast.bad { background: #2a1c20; color: #f0c4cd; border-color: #6b2f3f; }
#dc-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* [connectors-vault-v1] auth-type tag on connector cards */
.dc-auth { font-size: 10px; letter-spacing: .3px; text-transform: uppercase;
  padding: 2px 7px; border-radius: 999px; background: #23262f; color: #9aa2b1; margin-left: 8px; }
.dc-hint { color: #8a91a0; font-size: 11px; margin: 2px 0 8px; }
