:root {
  --rim-bg: #eef2f7;
  --rim-card: #ffffff;
  --rim-border: #c9d9ee;
  --rim-border-soft: #d9e5f4;
  --rim-text: #22324a;
  --rim-muted: #6f7d92;
  --rim-blue: #2f6fb1;
  --rim-blue-dark: #255f9a;
}

html,
body {
  background: var(--rim-bg);
  color: var(--rim-text);
  font-family: "Segoe UI", Tahoma, sans-serif;
}

.container-fluid {
  padding-left: 14px;
  padding-right: 14px;
}

#app_header {
  background: var(--rim-card);
  border: 1px solid var(--rim-border-soft);
  border-radius: 14px;
  padding: 10px 14px;
  margin-top: 10px;
  margin-bottom: 10px;
}

#app_header h3 {
  margin: 0;
  font-weight: 700;
  letter-spacing: 0.2px;
}

#top_nav .nav {
  gap: 8px;
}

#top_nav .nav-link {
  border: 1px solid var(--rim-border);
  background: #f3f7fc;
  color: var(--rim-text);
  border-radius: 999px;
  padding: 7px 14px;
  font-weight: 600;
  line-height: 1.1;
}

#top_nav .nav-link.active,
#top_nav .nav-link:hover {
  background: #dceafe;
  border-color: #9fbfe8;
  color: #1d4f86;
}

#app_divider {
  border-color: #dbe5f2;
  margin-top: 6px;
  margin-bottom: 12px;
}

#search_input,
#ppt_address,
#ppt_zip_code,
#ppt_deal_on_plan,
#ppt_premises,
#ppt_market_rent,
#ppt_roll_in_info,
#ppt_building_owned_or_leased,
#ppt_broker_used,
#login_username,
#login_password,
#admin_username,
#admin_password,
#admin_role,
#history_search_query_filter,
#history_search_page_size {
  border-radius: 10px !important;
  border: 1px solid var(--rim-border) !important;
  background: #f6f9fd !important;
}

#search_btn,
#download_ppt_btn,
#admin_upsert_btn,
#admin_refresh_btn,
#admin_export_audit_btn,
#admin_export_debug_btn,
#login_btn {
  border-radius: 10px !important;
  font-weight: 700;
}

#search_btn,
#download_ppt_btn,
#admin_upsert_btn,
#admin_refresh_btn,
#login_btn {
  background: var(--rim-blue) !important;
  border-color: var(--rim-blue-dark) !important;
  color: #fff !important;
}

#search_btn:hover,
#download_ppt_btn:hover,
#admin_upsert_btn:hover,
#admin_refresh_btn:hover,
#login_btn:hover {
  background: var(--rim-blue-dark) !important;
}

#admin_export_audit_btn,
#admin_export_debug_btn {
  background: #f3f7fc !important;
  border-color: var(--rim-border) !important;
  color: var(--rim-text) !important;
}

#search_history_panel,
#data_placeholder,
#image_output,
#floorplan_placeholder,
#map_output,
#closest_centers_box,
#ppt_preview_panel,
#admin_users_table,
#admin_audit_table,
#admin_debug_table,
#history_search_table {
  border: 1px solid var(--rim-border-soft) !important;
  border-radius: 12px;
  background: var(--rim-card) !important;
  box-shadow: 0 1px 0 rgba(18, 52, 91, 0.04);
}

.table {
  margin-bottom: 0;
  color: var(--rim-text);
}

.table thead th {
  background: var(--rim-blue);
  color: #fff;
  border-color: #2a649f;
  font-weight: 700;
  font-size: 13px;
}

.table td,
.table th {
  border-color: #d5e1f0;
}

#page_content h4,
#page_content h5,
#page_content h6 {
  font-weight: 700;
  color: var(--rim-text);
}

#login_message {
  margin-top: 10px;
}
