/* =========================================================
   CLEAR NOTE — FOCUSED UX REFINEMENT
   Scope: Businesses directory, account dashboard, user inbox,
   and light-theme contrast on profile pages.
   Loaded last to resolve legacy CSS conflicts without changing
   application data, routes, or interaction logic.
   ========================================================= */

/* ---------- Shared focus and motion ---------- */
.cn-business-card:focus-visible,
.cn-user-notification:focus-within,
.cn-account-page .cn-pro-action-btn:focus-visible,
.cn-business-filter-panel select:focus-visible {
  outline: 3px solid rgba(34,197,94,.28);
  outline-offset: 3px;
}

/* =========================================================
   1. BUSINESSES DIRECTORY
   ========================================================= */
.cn-business-hero {
  position: relative;
  isolation: isolate;
  padding: clamp(2rem,4vw,4rem) clamp(1rem,4vw,2.5rem) clamp(2rem,4vw,3.25rem);
  background:
    radial-gradient(circle at 88% 8%, rgba(34,197,94,.13), transparent 30%),
    linear-gradient(145deg, #060807 0%, #0b100d 54%, #111714 100%);
}
.cn-business-hero::after {
  content:""; position:absolute; inset:auto 0 0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(34,197,94,.32),transparent);
  z-index:-1;
}
.cn-business-hero-copy { max-width:46rem; margin-top:1.35rem; }
.cn-business-hero h1 { font-size:clamp(2rem,4.5vw,3.4rem); line-height:1.08; letter-spacing:-.045em; }
.cn-business-hero-copy>p:last-child { max-width:42rem; color:#b8c3bc; font-size:1rem; line-height:1.7; }
.cn-business-filter-panel {
  grid-template-columns:minmax(250px,1.55fr) minmax(180px,.85fr) minmax(180px,.85fr) auto;
  gap:.85rem;
  margin-top:2rem;
  padding:.85rem;
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  background:rgba(12,16,14,.82);
  backdrop-filter:blur(18px) saturate(135%);
  box-shadow:0 22px 56px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.035);
}
.cn-business-search-field input,
.cn-business-select-wrap select {
  min-height:52px;
  border-radius:14px;
  background:#111714;
  border-color:#27312b;
  color:#f5f7f6;
}
.cn-business-search-field input { padding-left:2.7rem; }
.cn-business-search-field i { left:1rem; color:#7fd59d; }
.cn-business-select-wrap {
  min-width:0;
  padding:.5rem .6rem .6rem;
  border:1px solid #27312b;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012));
}
.cn-business-select-wrap label { margin:.05rem .25rem .42rem; color:#aab6ae; font-size:.68rem; text-transform:uppercase; letter-spacing:.09em; }
.cn-business-select-wrap select { border:0; background:transparent; padding:.65rem .55rem; box-shadow:none; }
.cn-business-select-wrap select:focus { box-shadow:none; }
.cn-business-filter-submit { min-height:52px; border-radius:14px; padding-inline:1.25rem; align-self:end; }
.cn-business-reset { color:#b8c3bc; padding:.15rem .35rem; }

.cn-business-results { padding:clamp(2.25rem,4vw,4rem) clamp(1rem,4vw,2.5rem) 7rem; background:#080a09; }
.cn-business-results-head { margin-bottom:1.5rem; }
.cn-business-results-head h2 { font-size:clamp(1.45rem,2.4vw,2rem); letter-spacing:-.035em; }
.cn-business-count {
  padding:.5rem .75rem; border:1px solid #29322d; border-radius:999px;
  background:#101411; color:#c4cec7; font-weight:700;
}
.cn-business-grid { gap:1.15rem; }
.cn-business-card {
  position:relative; overflow:hidden; min-height:100%;
  border-color:#28312c; border-radius:20px; padding:1.15rem;
  background:linear-gradient(145deg,#151a17 0%,#0d110f 100%);
  box-shadow:0 12px 30px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.025);
}
.cn-business-card::before { content:""; position:absolute; left:0; top:0; right:0; height:2px; background:linear-gradient(90deg,transparent,rgba(34,197,94,.7),transparent); opacity:0; transition:opacity .2s ease; }
.cn-business-card:hover::before { opacity:1; }
.cn-business-card:hover { transform:translateY(-4px); border-color:rgba(34,197,94,.45); box-shadow:0 20px 42px rgba(0,0,0,.32); }
.cn-business-logo { width:58px; height:58px; flex-basis:58px; border-radius:17px; background:linear-gradient(145deg,#1b2820,#111914); border-color:#344139; }
.cn-business-card-signals { max-width:65%; }
.cn-business-verified,.cn-business-rating { padding:.34rem .62rem; font-size:.7rem; }
.cn-business-card-body { padding:1rem 0 1.1rem; }
.cn-business-category { color:#7ee6a2; font-size:.68rem; }
.cn-business-card h3 { font-size:1.08rem; color:#f7faf8; }
.cn-business-location { color:#b3bdb7; font-size:.8rem; }
.cn-business-location i { color:#83d8a1; }
.cn-business-description { color:#c1cac4; font-size:.84rem; line-height:1.6; }
.cn-business-card-footer { border-top-color:#27312b; color:#a9b4ad; }
.cn-business-credibility { color:#c0cbc4; }

/* Light mode: explicit contrast rather than inherited dark-profile values. */
body.cn-light-theme .cn-business-hero {
  background:radial-gradient(circle at 88% 8%,rgba(34,197,94,.13),transparent 30%),linear-gradient(145deg,#f8fbf9 0%,#edf5ef 100%);
  color:#101828;
}
body.cn-light-theme .cn-business-hero-copy>p:last-child { color:#475467; }
body.cn-light-theme .cn-business-filter-panel { background:rgba(255,255,255,.94); border-color:#d9e4dd; box-shadow:0 18px 42px rgba(16,24,40,.08); }
body.cn-light-theme .cn-business-search-field input { background:#fff; color:#101828; border-color:#d8e2dc; }
body.cn-light-theme .cn-business-select-wrap { background:#f7faf8; border-color:#dbe5df; }
body.cn-light-theme .cn-business-select-wrap label { color:#667085; }
body.cn-light-theme .cn-business-select-wrap select { color:#101828; }
body.cn-light-theme .cn-business-results { background:#f6f8f7; }
body.cn-light-theme .cn-business-count { background:#fff; border-color:#dfe7e2; color:#475467; }
body.cn-light-theme .cn-business-card { background:linear-gradient(180deg,#fff,#fbfdfc); border-color:#dce5df; box-shadow:0 10px 26px rgba(16,24,40,.065); }
body.cn-light-theme .cn-business-card:hover { border-color:rgba(22,163,74,.4); box-shadow:0 18px 38px rgba(16,24,40,.1); }
body.cn-light-theme .cn-business-logo { background:#eef7f0; border-color:#d8e6dc; color:#166534; }
body.cn-light-theme .cn-business-card h3 { color:#101828; }
body.cn-light-theme .cn-business-category { color:#15803d; }
body.cn-light-theme .cn-business-location { color:#667085; }
body.cn-light-theme .cn-business-description { color:#475467; }
body.cn-light-theme .cn-business-card-footer { border-top-color:#e6ece8; color:#667085; }
body.cn-light-theme .cn-business-credibility { color:#475467; }

/* =========================================================
   2. ACCOUNT DASHBOARD — preserve existing structure;
      make desktop columns and the two sidebar cards reliable.
   ========================================================= */
.cn-account-page .cn-account-content-grid {
  width:100%; max-width:none;
  grid-template-columns:minmax(0,1fr) minmax(300px,340px);
  gap:1.5rem;
  align-items:start;
}
.cn-account-page .cn-account-main-column { min-width:0; }
.cn-account-page .cn-account-sidebar {
  width:100%; min-width:0; max-width:340px;
  justify-self:end; align-self:start;
  display:grid; grid-template-columns:minmax(0,1fr); gap:1rem;
}
.cn-account-page .cn-account-sidebar > * { min-width:0; max-width:100%; box-sizing:border-box; }
.cn-account-page .cn-account-quick-actions,
.cn-account-page .cn-verify-card { margin:0; }
.cn-account-page .cn-account-quick-actions { padding:1.1rem; }
.cn-account-page .cn-account-quick-actions .cn-pro-card-header { margin-bottom:1rem; }
.cn-account-page .cn-account-quick-actions .cn-pro-actions-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.cn-account-page .cn-account-quick-actions .cn-pro-action-btn { min-height:78px; padding:.7rem .55rem; flex-direction:column; gap:.42rem; text-align:center; line-height:1.2; overflow-wrap:anywhere; }
.cn-account-page .cn-account-quick-actions .cn-pro-action-btn i { font-size:1rem; }
.cn-account-page .cn-account-quick-actions .cn-pro-action-primary { grid-column:1 / -1; min-height:48px; flex-direction:row; }
.cn-account-page .cn-verify-card { padding:1.1rem; border-radius:16px; }
.cn-account-page .cn-verify-head { margin-bottom:.85rem; }
.cn-account-page .cn-verify-body { line-height:1.58; }
.cn-account-page .cn-verify-actions { gap:.75rem; }
@media (max-width:1050px) {
  .cn-account-page .cn-account-content-grid { grid-template-columns:minmax(0,1fr) minmax(280px,310px); gap:1.25rem; }
  .cn-account-page .cn-account-sidebar { max-width:310px; }
}
@media (max-width:820px) {
  .cn-account-page .cn-account-content-grid { grid-template-columns:1fr; }
  .cn-account-page .cn-account-sidebar { max-width:none; justify-self:stretch; grid-template-columns:1fr; }
}

/* =========================================================
   3. USER INBOX — full component geometry for dark + light.
   ========================================================= */
.cn-notifications-page .cn-container { max-width:70rem; }
.cn-account-inbox-head {
  display:flex; align-items:flex-start; justify-content:space-between; gap:1rem;
  padding:1.35rem 1.45rem;
  border:1px solid #252b28; border-radius:20px;
  background:linear-gradient(145deg,#131715,#0e1110);
  box-shadow:0 16px 38px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025);
}
.cn-inbox-kicker { margin:0 0 .4rem; color:#73dc99; font-size:.7rem; font-weight:800; letter-spacing:.12em; }
.cn-account-inbox-head .cn-admin-title { margin:0; color:#f7faf8; font-size:clamp(1.45rem,2.5vw,2rem); }
.cn-account-inbox-head .cn-admin-subtitle { margin:.45rem 0 0; color:#aeb8b2; line-height:1.6; }
.cn-inbox-filters { display:flex; gap:.45rem; flex-wrap:wrap; width:max-content; max-width:100%; margin:1rem 0 1.15rem; padding:.3rem; border:1px solid #252d28; border-radius:14px; background:#101411; }
.cn-inbox-filters .cn-btn { min-height:38px; border-radius:10px; }
.cn-inbox-filters .cn-btn-dark { background:transparent; border-color:transparent; color:#aeb8b2; }
.cn-inbox-filters .cn-btn-dark:hover { background:#1a211d; color:#f5f7f6; }
.cn-inbox-filters .cn-btn-primary { box-shadow:0 7px 18px rgba(22,163,74,.16); }
.cn-user-inbox-list { display:flex; flex-direction:column; gap:.75rem; }
.cn-user-notification {
  display:flex; gap:1rem; align-items:flex-start;
  padding:1rem 1.05rem;
  border:1px solid #252d28; border-radius:18px;
  background:linear-gradient(145deg,#121614,#0e1110);
  color:#f4f7f5;
  box-shadow:0 8px 24px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.018);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.cn-user-notification:hover { transform:translateY(-2px); border-color:#344139; box-shadow:0 16px 34px rgba(0,0,0,.24); }
.cn-user-notification.is-unread { border-color:rgba(34,197,94,.34); background:linear-gradient(100deg,rgba(34,197,94,.09),#111513 55%); }
.cn-user-notification-mark { flex:0 0 2.75rem; width:2.75rem; height:2.75rem; display:grid; place-items:center; border:1px solid rgba(34,197,94,.22); border-radius:14px; background:rgba(34,197,94,.10); color:#77e39c; }
.cn-user-notification-mark svg { width:1.15rem; height:1.15rem; }
.cn-user-notification-body { flex:1; min-width:0; }
.cn-user-notification-top { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.cn-user-notification-top > div:first-child { display:flex; align-items:center; gap:.55rem; min-width:0; flex-wrap:wrap; }
.cn-user-notification h2 { margin:0; color:#f8faf9; font-size:1rem; line-height:1.35; }
.cn-user-notification time { flex:0 0 auto; color:#89958e; font-size:.76rem; white-space:nowrap; }
.cn-user-notification p { margin:.42rem 0 0; color:#b7c1ba; font-size:.9rem; line-height:1.62; }
.cn-user-notification-actions { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin-top:.85rem; }
.cn-user-notification-actions form { margin:0; }
.cn-user-notification-actions .cn-btn-dark { background:#171d19; color:#e6ece8; border-color:#303a34; }
.cn-user-notification-actions .cn-btn-dark:hover { background:#202a24; border-color:#3c4a42; color:#fff; }
.cn-user-inbox-empty { border:1px dashed #303934; border-radius:20px; background:#101411; padding:3.5rem 1.5rem; }

body.cn-light-theme .cn-account-inbox-head { background:linear-gradient(145deg,#fff,#f8fbf9); border-color:#dce6e0; box-shadow:0 14px 34px rgba(16,24,40,.065); }
body.cn-light-theme .cn-account-inbox-head .cn-admin-title { color:#101828; }
body.cn-light-theme .cn-account-inbox-head .cn-admin-subtitle { color:#667085; }
body.cn-light-theme .cn-inbox-filters { background:#f3f7f4; border-color:#dce6e0; }
body.cn-light-theme .cn-inbox-filters .cn-btn-dark { color:#475467; }
body.cn-light-theme .cn-inbox-filters .cn-btn-dark:hover { background:#e8f2eb; color:#166534; }
body.cn-light-theme .cn-user-notification { background:linear-gradient(145deg,#fff,#fbfdfc); border-color:#dfe7e2; color:#101828; box-shadow:0 8px 24px rgba(16,24,40,.055); }
body.cn-light-theme .cn-user-notification.is-unread { border-color:#bfe0c9; background:linear-gradient(100deg,#f4fcf6,#fff 58%); }
body.cn-light-theme .cn-user-notification h2 { color:#101828; }
body.cn-light-theme .cn-user-notification p { color:#475467; }
body.cn-light-theme .cn-user-notification time { color:#667085; }
body.cn-light-theme .cn-user-notification-mark { background:#edf8f0; color:#15803d; border-color:#cce5d3; }
body.cn-light-theme .cn-user-notification-actions .cn-btn-dark { background:#fff; color:#344054; border-color:#d8e2dc; }
body.cn-light-theme .cn-user-notification-actions .cn-btn-dark:hover { background:#f4f8f5; color:#166534; border-color:#c6dacd; }
body.cn-light-theme .cn-user-inbox-empty { background:#fff; border-color:#d8e3dc; }

/* =========================================================
   4. PROFILE PAGES — light theme contrast parity.
   ========================================================= */
body.cn-light-theme.cn-dark-profile {
  background:linear-gradient(180deg,#f8faf9 0%,#eef3f0 100%);
  color:#101828;
}
body.cn-light-theme.cn-dark-profile .cn-profile-card,
body.cn-light-theme.cn-dark-profile .cn-profile-section-card {
  background:linear-gradient(145deg,#fff,#fbfdfc);
  border-color:#dce5df;
  box-shadow:0 12px 32px rgba(16,24,40,.07);
}
body.cn-light-theme.cn-dark-profile .cn-profile-section-card:hover { border-color:#bfdac7; box-shadow:0 18px 42px rgba(16,24,40,.10); }
body.cn-light-theme.cn-dark-profile .cn-profile-name,
body.cn-light-theme.cn-dark-profile h1,
body.cn-light-theme.cn-dark-profile h2,
body.cn-light-theme.cn-dark-profile h3 { color:#101828; }
body.cn-light-theme.cn-dark-profile .cn-section-subtitle,
body.cn-light-theme.cn-dark-profile .cn-profile-detail,
body.cn-light-theme.cn-dark-profile .cn-profile-info-pill { color:#475467; }
body.cn-light-theme.cn-dark-profile .cn-profile-info-pill,
body.cn-light-theme.cn-dark-profile .cn-link-pill { background:#f7faf8; border-color:#dfe7e2; color:#344054; box-shadow:none; }
body.cn-light-theme.cn-dark-profile .cn-social-icon { background:#fff; border-color:#dce5df; color:#475467; }
body.cn-light-theme.cn-dark-profile .cn-connect-pill { background:#f8faf9; border-color:#dce5df; color:#475467; }
body.cn-light-theme.cn-dark-profile .cn-catalog-heading { border-bottom-color:#e3e9e5; }
body.cn-light-theme.cn-dark-profile .cn-btn-dark { background:#fff; color:#344054; border-color:#d8e2dc; box-shadow:none; }

@media (max-width:760px) {
  .cn-business-filter-panel { grid-template-columns:1fr; border-radius:18px; }
  .cn-business-filter-submit { width:100%; }
  .cn-business-select-wrap { padding:.45rem .5rem; }
  .cn-account-inbox-head { padding:1rem; flex-direction:column; }
  .cn-account-inbox-head form, .cn-account-inbox-head form .cn-btn { width:100%; }
  .cn-user-notification { gap:.8rem; padding:.9rem; }
  .cn-user-notification-top { flex-direction:column; gap:.35rem; }
  .cn-user-notification time { white-space:normal; }
}
@media (max-width:460px) {
  .cn-business-card { padding:1rem; border-radius:17px; }
  .cn-business-logo { width:52px; height:52px; flex-basis:52px; }
  .cn-business-card-signals { max-width:62%; }
  .cn-inbox-filters { width:100%; overflow-x:auto; flex-wrap:nowrap; }
  .cn-inbox-filters .cn-btn { flex:0 0 auto; }
  .cn-user-notification { flex-direction:column; }
  .cn-user-notification-mark { width:2.45rem; height:2.45rem; flex-basis:2.45rem; }
  .cn-user-notification-actions .cn-btn { width:100%; justify-content:center; }
  .cn-user-notification-actions form { width:100%; }
  .cn-user-notification-actions form .cn-btn { width:100%; }
}

/* Notification actions stay compact and side by side on every card. */
.cn-user-notification-actions {
  flex-wrap: nowrap;
  gap: .45rem;
}
.cn-user-notification-actions form {
  width: auto;
  display: flex;
  margin: 0;
}
.cn-user-notification-actions .cn-btn,
.cn-user-notification-actions form .cn-btn {
  width: auto;
  min-width: 0;
  min-height: 34px;
  padding: 4px 10px;
  white-space: nowrap;
  justify-content: center;
}
@media (max-width:460px) {
  .cn-user-notification-actions {
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .cn-user-notification-actions .cn-btn,
  .cn-user-notification-actions form,
  .cn-user-notification-actions form .cn-btn {
    width: auto;
  }
  .cn-user-notification-actions .cn-btn,
  .cn-user-notification-actions form .cn-btn {
    padding-inline: 8px;
    font-size: .76rem;
  }
}

@media (max-width:820px) {
  .cn-account-page .cn-account-content-grid,
  .cn-account-page .cn-account-main-column,
  .cn-account-page .cn-account-tools-flow,
  .cn-account-page .cn-account-sidebar {
    width:100%; min-width:0; max-width:none; box-sizing:border-box;
  }
  .cn-account-page .cn-account-tools-flow {
    display:flex; flex-direction:column; gap:1rem;
  }
  .cn-account-page .cn-account-quick-actions,
  .cn-account-page .cn-verify-card,
  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.6rem;
  }
  .cn-account-page .cn-account-quick-actions .cn-pro-action-btn {
    min-width:0; min-height:68px; padding:.65rem .45rem;
    overflow-wrap:normal; word-break:normal; white-space:nowrap; font-size:.74rem;
  }
  .cn-account-page .cn-account-quick-actions .cn-pro-action-primary {
    grid-column:1 / -1; min-height:52px;
  }
  .cn-account-page .cn-verify-head,
  .cn-account-page .cn-verify-status-row,
  .cn-account-page .cn-verify-actions {
    min-width:0;
  }
  .cn-account-page .cn-verify-status-row {
    gap:.55rem; flex-wrap:wrap;
  }
  .cn-account-page .cn-verify-status-left { min-width:0; flex:1 1 10rem; }
  .cn-account-page .cn-verify-status-pill { flex:0 0 auto; }
  .cn-account-page .cn-verify-actions { flex-wrap:wrap; }
  .cn-account-page .cn-verify-actions .cn-btn { margin-left:auto; }
}
@media (max-width:480px) {
  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns:1fr;
  }
  .cn-account-page .cn-account-quick-actions .cn-pro-action-primary { grid-column:auto; }
  .cn-account-page .cn-verify-actions .cn-btn { margin-left:0; width:100%; justify-content:center; }
}

@media (prefers-reduced-motion:reduce) {
  .cn-business-card,.cn-user-notification { transition:none; }
}

/* =========================================================
   ACCOUNT DASHBOARD — DESKTOP FULL-WIDTH STACK
   Desktop only. Mobile rules above remain untouched.
   Every dashboard card keeps its own full row so the layout
   cannot create an artificial sidebar, overlap, or leave a
   large empty column.
   ========================================================= */
@media (min-width:821px) {
  .cn-account-page .cn-account-content-grid {
    display:block !important;
    width:100%;
    max-width:78rem;
    margin:0 auto;
  }

  .cn-account-page .cn-account-main-column,
  .cn-account-page .cn-account-sidebar {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  .cn-account-page .cn-account-main-column > *,
  .cn-account-page .cn-account-sidebar > * {
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box;
    margin:0 0 1.25rem !important;
    align-self:auto !important;
    height:auto !important;
  }

  .cn-account-page .cn-account-sidebar > *:last-child {
    margin-bottom:0 !important;
  }

  /* Keep the original visual components, but give each full-width
     desktop card a consistent edge and comfortable internal rhythm. */
  .cn-account-page .cn-pro-card,
  .cn-account-page .cn-profiles-card,
  .cn-account-page .cn-verify-card {
    border-radius:18px;
  }

  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.75rem;
  }

  .cn-account-page .cn-account-quick-actions .cn-pro-action-btn {
    min-height:82px;
  }

  .cn-account-page .cn-account-quick-actions .cn-pro-action-primary {
    grid-column:auto;
  }
}

/* On narrower desktop widths, avoid compressed action tiles while still
   keeping the account cards full width. */
@media (min-width:821px) and (max-width:1080px) {
  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* =========================================================
   ACCOUNT DASHBOARD — FINAL DESKTOP STRUCTURE
   Desktop only. The account page intentionally uses one
   centered column: every dashboard card gets its own full row.
   Mobile rules are not changed.
   ========================================================= */
@media (min-width: 821px) {
  .cn-account-page .cn-container {
    max-width: 1240px;
  }

  .cn-account-page .cn-account-content-grid {
    display: block !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
  }

  .cn-account-page .cn-account-main-column,
  .cn-account-page .cn-account-sidebar {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .cn-account-page .cn-account-main-column > .cn-pro-card,
  .cn-account-page .cn-account-main-column > .cn-profiles-card,
  .cn-account-page .cn-account-sidebar > .cn-pro-card,
  .cn-account-page .cn-account-sidebar > .cn-verify-card {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin: 0 0 1.5rem !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
  }

  .cn-account-page .cn-account-sidebar > .cn-verify-card:last-child {
    margin-bottom: 0 !important;
  }

  /* Keep full-width cards readable instead of turning the whole page
     into a wall of stretched action controls. */
  .cn-account-page .cn-pro-card-header,
  .cn-account-page .cn-profiles-head,

  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: .75rem !important;
  }

  .cn-account-page .cn-account-quick-actions .cn-pro-action-btn,
  .cn-account-page .cn-account-quick-actions .cn-pro-action-primary {
    grid-column: auto !important;
    min-height: 76px !important;
  }
}

@media (min-width: 821px) and (max-width: 1100px) {
  .cn-account-page .cn-account-quick-actions .cn-pro-actions-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* =====================================================
   SEARCH — PROFESSIONAL DISCOVERY UX
   ===================================================== */
.cn-search-page .cn-search-shell { max-width:1100px; margin:0 auto; }
.cn-search-page .cn-search-form { max-width:760px !important; }
.cn-search-page .cn-section-dark { background:linear-gradient(180deg,#070908 0%,#0d1210 100%); }
.cn-search-page .cn-section-light { background:linear-gradient(180deg,#111613 0%,#0a0d0c 100%); color:#f3f7f4; }
.cn-search-page .cn-hero-title { color:#f8faf9; letter-spacing:-.035em; }
.cn-search-page .cn-search-form input {
  min-height:44px;
  background:#18201c;
  border:1px solid rgba(255,255,255,.18);
  color:#f8faf9;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.cn-search-page .cn-search-form input::placeholder { color:#91a097; }
.cn-search-page .cn-search-form input:focus { border-color:rgba(34,197,94,.65); box-shadow:0 0 0 3px rgba(34,197,94,.14); }
.cn-search-page .cn-search-filters { margin-top:1rem; }
.cn-search-page .cn-search-filter-label { display:block; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--cn-gray-400); margin-bottom:.45rem; }
.cn-search-page .cn-search-filter-scroll { overflow-x:auto; scrollbar-width:thin; padding-bottom:.25rem; }
.cn-search-page .cn-search-results-head { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.cn-search-page .cn-search-result-count { color:var(--cn-gray-500); font-size:.82rem; }
.cn-search-page .cn-search-clear { color:var(--cn-gray-500); font-size:.8rem; font-weight:700; }
.cn-search-page .cn-search-clear:hover { color:var(--cn-green); }
.cn-search-page .cn-search-section { margin-top:1.75rem; }
.cn-search-page .cn-section-light > .cn-search-shell > h2 {
  color:#f4f8f5;
  font-size:1.05rem;
  letter-spacing:-.015em;
  margin:1.5rem 0 .65rem;
}
.cn-search-page .cn-section-light > .cn-search-shell > div[style*="flex-direction:column"] { gap:.55rem !important; }
.cn-search-page .cn-search-section-title { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.75rem; }
.cn-search-page .cn-search-section-title h2 { margin:0; font-size:1rem; font-weight:800; color:var(--cn-white); }
.cn-search-page .cn-search-section-title span { color:var(--cn-gray-500); font-size:.75rem; }
.cn-search-page .cn-row-item {
  min-width:0;
  color:#edf4ef;
  text-decoration:none;
  background:linear-gradient(135deg,rgba(28,38,33,.96),rgba(18,24,21,.96));
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  padding:.8rem .9rem;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.cn-search-page .cn-row-item:hover,
.cn-search-page .cn-row-item:focus-visible {
  color:#fff;
  border-color:rgba(34,197,94,.48);
  background:linear-gradient(135deg,rgba(31,48,38,.98),rgba(19,29,24,.98));
  box-shadow:0 12px 28px rgba(0,0,0,.24);
  transform:translateY(-1px);
}
.cn-search-page .cn-row-main { min-width:0; }
.cn-search-page .cn-row-title, .cn-search-page .cn-row-sub { overflow-wrap:anywhere; }
.cn-search-page .cn-row-title { color:#f5faf6; font-size:.9rem; line-height:1.4; }
.cn-search-page .cn-row-sub { color:#aebbb3; font-size:.74rem; line-height:1.45; margin-top:.2rem; }
.cn-search-page .cn-row-avatar {
  width:2.8rem;
  height:2.8rem;
  border:1px solid rgba(255,255,255,.14);
  background:#202a24;
  flex:0 0 auto;
}
.cn-search-page .cn-row-item > .cn-pill {
  flex:0 0 auto;
  font-size:.68rem;
  color:#c8d5cc;
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
}
.cn-search-page .cn-search-result-count { color:#b1beb5; }
.cn-search-page .cn-search-empty { max-width:620px; margin:2rem auto; text-align:center; padding:2.5rem 1.25rem; }
.cn-search-page .cn-search-empty h2 { color:#f5faf6; font-size:1.2rem; }
.cn-search-page .cn-search-empty p { color:#aebbb3; }
.cn-search-page .cn-search-empty svg { color:#56d681; }
@media(max-width:640px){
 .cn-search-page .cn-search-form { flex-direction:column !important; }
 .cn-search-page .cn-search-form .cn-btn { width:100%; }
 .cn-search-page .cn-search-results-head { align-items:flex-start; }
}

/* =========================================================
   V4 LIGHT THEME CONTRAST — public reading + discovery surfaces
   ========================================================= */
body.cn-light-theme .cn-section-light .cn-article-card,
body.cn-light-theme .cn-section-light .cn-row-item,
body.cn-light-theme .cn-section-light .cn-search-result,
body.cn-light-theme .cn-section-light .cn-card { color:#17211b; }
body.cn-light-theme .cn-article-page,
body.cn-light-theme .cn-article-page .cn-article-content,
body.cn-light-theme .cn-article-page .cn-article-content p,
body.cn-light-theme .cn-article-page .cn-article-content li { color:#24332a; }
body.cn-light-theme .cn-article-page .cn-article-content h1,
body.cn-light-theme .cn-article-page .cn-article-content h2,
body.cn-light-theme .cn-article-page .cn-article-content h3,
body.cn-light-theme .cn-article-page .cn-article-content h4 { color:#101828; }
body.cn-light-theme .cn-article-page .cn-article-meta,
body.cn-light-theme .cn-article-page .cn-article-content blockquote,
body.cn-light-theme .cn-article-page .cn-article-caption { color:#475467; }
body.cn-light-theme .cn-account-page .cn-account-tools-flow { min-width:0; }

/* V4 Search discovery shell */
.cn-search-shell{min-width:0;}
.cn-search-shell .cn-search-filter-scroll{min-width:0;scrollbar-width:thin;}
.cn-search-shell .cn-search-filter-scroll>div{padding-bottom:.25rem;}
.cn-search-shell .cn-pill{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.cn-search-shell .cn-pill:hover{transform:translateY(-1px);}
body.cn-light-theme .cn-search-shell .cn-hero-title{color:#101828;}
body.cn-light-theme .cn-search-shell .cn-search-filter-label{color:#475467;}
body.cn-light-theme .cn-search-shell .cn-row-item{background:#fff;border-color:#dfe7e2;color:#17211b;}
body.cn-light-theme .cn-search-shell .cn-row-title{color:#101828;}
body.cn-light-theme .cn-search-shell .cn-row-sub{color:#667085;}
body.cn-light-theme .cn-search-page .cn-section-light { background:linear-gradient(180deg,#f8fbf9 0%,#eef4f0 100%); color:#17211b; }
body.cn-light-theme .cn-search-page .cn-section-dark { background:linear-gradient(180deg,#f6faf7 0%,#edf4ef 100%); }
body.cn-light-theme .cn-search-page .cn-hero-title { color:#101828; }
body.cn-light-theme .cn-search-page .cn-search-form input { background:#fff; border-color:#cfdad3; color:#17211b; box-shadow:0 8px 24px rgba(15,23,20,.08); }
body.cn-light-theme .cn-search-page .cn-search-form input::placeholder { color:#66756c; }
body.cn-light-theme .cn-search-page .cn-section-light > .cn-search-shell > h2 { color:#17211b; }
body.cn-light-theme .cn-search-page .cn-row-item { background:linear-gradient(135deg,#fff,#f7faf8); border-color:#d7e2da; color:#17211b; box-shadow:0 8px 22px rgba(15,23,20,.07); }
body.cn-light-theme .cn-search-page .cn-row-item:hover,
body.cn-light-theme .cn-search-page .cn-row-item:focus-visible { background:#fff; border-color:#79bf91; color:#17211b; box-shadow:0 12px 28px rgba(15,23,20,.1); }
body.cn-light-theme .cn-search-page .cn-row-title { color:#101828; }
body.cn-light-theme .cn-search-page .cn-row-sub,
body.cn-light-theme .cn-search-page .cn-search-result-count { color:#66756c; }
body.cn-light-theme .cn-search-page .cn-search-empty h2 { color:#17211b; }
body.cn-light-theme .cn-search-page .cn-search-empty p { color:#66756c; }
@media(max-width:640px){.cn-search-shell form{max-width:none!important;}.cn-search-shell form .cn-btn{min-width:5.2rem;}.cn-search-shell .cn-search-filter-scroll{margin-inline:-.25rem;padding-inline:.25rem;}}

/* Search surfaces: use a consistent compact radius across the discovery flow. */
.cn-search-page .cn-section-dark,
.cn-search-page .cn-section-light {
  background: #0d1210 !important;
  background-image: none !important;
  border-radius: 12px !important;
}
.cn-search-page .cn-search-form input,
.cn-search-page .cn-row-item,
.cn-search-page .cn-pill,
.cn-search-page .cn-btn,
.cn-search-page .cn-search-empty {
  border-radius: 12px !important;
}
.cn-search-page input.cn-input {
  border-radius: 12px !important;
}
.cn-search-page .cn-search-form input,
.cn-search-page .cn-row-item,
.cn-search-page .cn-search-empty {
  background: #111714;
}
.cn-search-page .cn-row-item:hover,
.cn-search-page .cn-row-item:focus-visible {
  background: #17231b;
}
body.cn-light-theme.cn-search-page .cn-section-dark,
body.cn-light-theme.cn-search-page .cn-section-light {
  background: #fff !important;
  background-image: none !important;
}
body.cn-light-theme.cn-search-page .cn-search-form input,
body.cn-light-theme.cn-search-page .cn-row-item,
body.cn-light-theme.cn-search-page .cn-search-empty {
  background: #fff;
}
body.cn-light-theme.cn-search-page .cn-row-item:hover,
body.cn-light-theme.cn-search-page .cn-row-item:focus-visible {
  background: #fff;
}
