/* Clear Note final polish: additive only; no component geometry replacement. */
.cn-desktop-search{display:flex;align-items:center;gap:.55rem;width:min(42vw,520px);height:40px;padding:0 .8rem;border:1px solid rgba(127,145,134,.24);border-radius:12px;background:rgba(255,255,255,.055);color:var(--cn-white);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.cn-desktop-search i{width:16px;height:16px;flex:0 0 auto;color:var(--cn-gray-400)}
.cn-desktop-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--cn-white);font:inherit;font-size:.82rem}
.cn-desktop-search input::placeholder{color:var(--cn-gray-500)}
.cn-desktop-search span{font-size:.62rem;color:var(--cn-gray-500);border:1px solid rgba(127,145,134,.22);border-radius:6px;padding:.2rem .35rem;white-space:nowrap}
.cn-desktop-search:focus-within{border-color:var(--cn-green);box-shadow:0 0 0 3px rgba(34,197,94,.10),0 6px 18px rgba(0,0,0,.12)}
.cn-mobile-search{display:none}
.cn-notification-nav{position:relative}
.cn-notification-nav-dot{position:absolute;right:.16rem;top:.12rem;width:5px;height:5px;border-radius:50%;background:#22c55e;border:0;box-shadow:0 0 0 1px rgba(34,197,94,.2);z-index:2}
.cn-notification-nav-dot::after{display:none}
@keyframes cn-notification-pulse{0%,100%{transform:scale(1)}12%{transform:scale(1.14)}22%{transform:scale(1)}}
@keyframes cn-notification-ring{0%{transform:scale(.65);opacity:.7}65%,100%{transform:scale(1.55);opacity:0}}
.cn-contact-message-card,.cn-admin-notification-card{min-width:0}
.cn-contact-message-card .cn-contact-message{overflow-wrap:anywhere}
.cn-header .cn-logo-premium {
  align-items: baseline;
  gap: .28rem;
}
.cn-header .cn-logo-premium > i {
  align-self: center;
  margin-right: -.04rem;
}
.cn-header .cn-logo-premium .cn-clear,
.cn-header .cn-logo-premium .cn-note {
  display: inline-block;
  line-height: 1;
  vertical-align: baseline;
}
.cn-header .cn-logo-premium .cn-note {
  position: relative;
  top: .5px;
}
@media(max-width:820px){.cn-desktop-search{display:none}.cn-mobile-search{display:inline-flex}}
@media(max-width:767px){.cn-header .cn-logo-premium{gap:.2rem}}
@media(max-width:420px){
  .cn-header-inner{width:100%;max-width:100%;padding:.58rem .5rem!important;gap:.2rem;overflow:hidden}
  .cn-header-left{gap:.25rem;min-width:0;flex:1 1 auto}
  .cn-header-left .cn-menu-btn{width:2rem;height:2rem;min-width:2rem}
  .cn-header .cn-logo-premium{gap:.16rem;min-width:0;white-space:nowrap}
  .cn-header .cn-logo-premium>i{font-size:.78rem}
  .cn-header .cn-logo-premium .cn-clear,
  .cn-header .cn-logo-premium .cn-note{font-size:.74rem;letter-spacing:-.35px}
  .cn-header-right{gap:.12rem;flex:0 0 auto}
  .cn-header-right .cn-icon-btn{width:1.9rem;height:1.9rem;min-width:1.9rem;padding:0}
  .cn-header-right .cn-icon-btn>svg,
  .cn-header-right .cn-icon-btn>i{width:.92rem;height:.92rem}
  .cn-header-right .cn-avatar-sm{width:1.35rem;height:1.35rem}
}
@media(max-width:350px){
  .cn-header-inner{padding-left:.35rem!important;padding-right:.35rem!important}
  .cn-header .cn-logo-premium .cn-clear,
  .cn-header .cn-logo-premium .cn-note{font-size:.68rem}
  .cn-header-right .cn-icon-btn{width:1.75rem;height:1.75rem;min-width:1.75rem}
}
@media(max-width:820px){
  .cn-account-page .cn-account-action-btn{flex:0 1 auto;padding:.52rem .78rem;font-size:.78rem;white-space:nowrap}
  .cn-account-page .cn-account-action-btn i{font-size:.72rem}
  .cn-account-page .cn-account-actions{gap:.45rem}
}
@media(max-width:560px){.cn-contact-actions{display:grid;grid-template-columns:1fr}.cn-contact-actions .cn-btn{width:100%;justify-content:center}}
/* Light-mode refinements */
body.cn-light-theme .cn-desktop-search{background:#fbfdfc;color:#101828;border-color:#dfe6e2;box-shadow:0 1px 2px rgba(16,24,40,.025)}
body.cn-light-theme .cn-desktop-search input{color:#101828}
body.cn-light-theme .cn-desktop-search input::placeholder{color:#98a2b3}
body.cn-light-theme .cn-desktop-search span{color:#98a2b3;border-color:#e4e9e6}
body.cn-light-theme .cn-notification-nav-dot{border-color:#fff;box-shadow:0 0 0 2px rgba(22,163,74,.14),0 2px 6px rgba(16,24,40,.16)}
@media (prefers-reduced-motion:reduce){.cn-notification-nav-dot,.cn-notification-nav-dot::after{animation:none}}
/* Admin Inbox refinements (theme-aware; original admin.css remains protected). */
.cn-admin-inbox-grid{align-items:start}.cn-contact-message-card,.cn-admin-notification-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.cn-contact-message-card:hover,.cn-admin-notification-card:hover{transform:translateY(-2px)}.cn-contact-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.8rem}.cn-contact-actions form{margin:0}.cn-contact-message{line-height:1.65;white-space:pre-wrap}.cn-inbox-panel-icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.75rem}.cn-inbox-panel-icon svg,.cn-inbox-panel-icon i{width:1rem;height:1rem}@media(max-width:850px){.cn-admin-inbox-grid{grid-template-columns:1fr!important}.cn-contact-actions .cn-btn{flex:1 1 auto}}@media(max-width:560px){.cn-contact-actions .cn-btn{width:100%;justify-content:center}.cn-contact-message-card,.cn-admin-notification-card{padding:1rem!important}}
body.cn-light-theme.cn-admin-body{background:#f4f7f5!important;color:#101828!important}body.cn-light-theme.cn-admin-body .cn-admin-card{background:#fff!important;color:#101828!important;border-color:#dfe6e2!important;box-shadow:0 2px 6px rgba(16,24,40,.035),0 16px 38px rgba(16,24,40,.06)!important}body.cn-light-theme.cn-admin-body .cn-admin-title{color:#101828!important}body.cn-light-theme.cn-admin-body .cn-admin-subtitle{color:#667085!important}body.cn-light-theme.cn-admin-body .cn-admin-sidebar{background:#fff!important;border-color:#dfe6e2!important}body.cn-light-theme.cn-admin-body .cn-admin-nav a{color:#475467!important}body.cn-light-theme.cn-admin-body .cn-admin-nav a:hover,body.cn-light-theme.cn-admin-body .cn-admin-nav a.active{background:#f1f8f4!important;color:#15803d!important}


/* =========================================================
   CLEAR NOTE — NAV / NEWSLETTER / INBOX POLISH
   Surface and alignment refinement only.
   Original dark theme geometry is preserved.
   ========================================================= */

/* ---------- Notification navigation: true visual centering ---------- */
.cn-notification-nav {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle;
  line-height: 1;
  text-align: center;
  flex: 0 0 2rem;
}
.cn-notification-nav > svg,
.cn-notification-nav > i {
  display: block !important;
  width: 1.18rem !important;
  height: 1.18rem !important;
  margin: 0 !important;
  flex: 0 0 auto;
}
.cn-notification-nav-badge {
  position: absolute !important;
  top: -0.18rem !important;
  right: -0.22rem !important;
  min-width: 1rem;
  height: 1rem;
  padding: 0 .2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-size: .58rem;
  line-height: 1;
  font-weight: 800;
  background: var(--cn-green) !important;
  color: #06130a !important;
  border: 2px solid var(--cn-black);
  box-shadow: 0 3px 9px rgba(0,0,0,.22);
}
.cn-notification-nav-dot {
  position: absolute !important;
  right: .28rem !important;
  top: .24rem !important;
  width: 1px !important;
  height: 1px !important;
  border-radius: 50%;
  background: #22c55e;
  border: 0;
  box-shadow: 0 0 0 1px rgba(34,197,94,.2);
  z-index: 2;
  animation: none;
}
body.cn-light-theme .cn-notification-nav-dot {
  border-color: #fff !important;
}
body.cn-light-theme .cn-notification-nav-badge {
  display: none !important;
}

/* Top-nav unread state: a discreet empty indicator, not a numbered badge. */
.cn-header .cn-notification-nav-badge {
  top: .2rem !important;
  right: .2rem !important;
  min-width: 2px !important;
  width: 2px !important;
  height: 2px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #22c55e !important;
  box-shadow: none !important;
  outline: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  transform: scale(.5) !important;
  transform-origin: center center !important;
}
.cn-header .cn-notification-nav-dot {
  display: none !important;
}
.cn-header .cn-notification-nav-badge::before,
.cn-header .cn-notification-nav-badge::after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
}
@media (max-width: 820px) {
  .cn-header .cn-notification-nav-badge {
    width: 2px !important;
    min-width: 2px !important;
    height: 2px !important;
    transform: scale(.35) !important;
    transform-origin: center center !important;
  }
}

/* ---------- Professional newsletter CTA ---------- */
.cn-newsletter-form {
  position: relative;
  display: flex !important;
  align-items: stretch;
  gap: .6rem !important;
  width: min(100%, 34rem) !important;
  max-width: 34rem !important;
  margin: 1.4rem auto 0 !important;
  padding: .35rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(255,255,255,.055);
  box-shadow:
    0 1px 0 rgba(255,255,255,.05) inset,
    0 12px 32px rgba(0,0,0,.16);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.cn-newsletter-form .cn-input {
  min-height: 46px;
  flex: 1 1 auto;
  min-width: 0;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  background: rgba(0,0,0,.22) !important;
  color: #fff !important;
  padding: .75rem .9rem !important;
  outline: none;
}
.cn-newsletter-form .cn-input::placeholder {
  color: rgba(255,255,255,.54);
}
.cn-newsletter-form .cn-input:focus {
  border-color: rgba(34,197,94,.65) !important;
  box-shadow: 0 0 0 3px rgba(34,197,94,.12) !important;
}
.cn-newsletter-form .cn-btn {
  min-height: 46px;
  min-width: 142px;
  padding: .72rem 1rem !important;
  border-radius: 12px !important;
  font-weight: 800;
  letter-spacing: -.01em;
  box-shadow: 0 7px 18px rgba(34,197,94,.16);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.cn-newsletter-form .cn-btn::before {
  content: "\f1d8";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: .48rem;
}
.cn-newsletter-form .cn-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 11px 25px rgba(34,197,94,.22);
}
.cn-newsletter-form .cn-btn:disabled {
  opacity: .72;
  cursor: wait;
  transform: none;
}
.cn-newsletter-msg {
  min-height: 1.25rem;
  max-width: 34rem;
  margin: .75rem auto 0 !important;
  font-size: .78rem !important;
  line-height: 1.5;
}

/* Light newsletter: crisp premium surface */
body.cn-light-theme .cn-newsletter-form {
  border-color: #dce5df;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(16,24,40,.03),
    0 14px 34px rgba(16,24,40,.075);
}
body.cn-light-theme .cn-newsletter-form .cn-input {
  background: #fbfdfc !important;
  color: #101828 !important;
  border-color: #dfe6e2 !important;
}
body.cn-light-theme .cn-newsletter-form .cn-input::placeholder {
  color: #98a2b3;
}
body.cn-light-theme .cn-newsletter-form .cn-input:focus {
  border-color: #8bd3a5 !important;
  box-shadow: 0 0 0 3px rgba(34,197,94,.10) !important;
}
body.cn-light-theme .cn-newsletter-form .cn-btn {
  background: #15803d !important;
  color: #fff !important;
  border-color: #15803d !important;
}
body.cn-light-theme .cn-newsletter-form .cn-btn:hover:not(:disabled) {
  background: #166534 !important;
}

/* ---------- Full inbox: dark-mode parity ---------- */
body:not(.cn-light-theme) .cn-account-inbox-head,
body:not(.cn-light-theme) .cn-admin-topbar {
  color: var(--cn-white);
}
body:not(.cn-light-theme) .cn-inbox-kicker {
  color: var(--cn-green);
  letter-spacing: .11em;
  font-weight: 800;
}
body:not(.cn-light-theme) .cn-admin-subtitle {
  color: var(--cn-gray-400);
}
body:not(.cn-light-theme) .cn-inbox-filters {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  gap: .45rem;
  margin: 1rem 0 1.2rem;
  padding-bottom: .35rem;
}
body:not(.cn-light-theme) .cn-inbox-filters .cn-btn {
  flex: 0 0 auto;
  min-height: 36px;
  padding: .45rem .7rem;
  white-space: nowrap;
  font-size: .78rem;
}
@media (max-width: 560px) {
  .cn-inbox-filters { flex-wrap: nowrap !important; overflow-x: auto; }
  .cn-inbox-filters .cn-btn { min-height: 34px; padding-inline: .62rem; }
  .cn-contact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem; }
  .cn-contact-actions .cn-btn { width: 100%; min-width: 0; padding-inline: .55rem; font-size: .76rem; }
}
body:not(.cn-light-theme) .cn-inbox-filters .cn-btn-dark {
  background: #111 !important;
  color: #d1d5db !important;
  border: 1px solid #242424 !important;
}
body:not(.cn-light-theme) .cn-inbox-filters .cn-btn-dark:hover,
body:not(.cn-light-theme) .cn-inbox-filters .cn-btn-dark.is-active {
  background: rgba(34,197,94,.10) !important;
  color: #86efac !important;
  border-color: rgba(34,197,94,.28) !important;
}
body:not(.cn-light-theme) .cn-inbox-panel {
  background: #0d0d0d !important;
  border: 1px solid #202020 !important;
  border-radius: 18px;
  box-shadow:
    0 2px 6px rgba(0,0,0,.32),
    0 18px 42px rgba(0,0,0,.28) !important;
}
body:not(.cn-light-theme) .cn-inbox-panel-head {
  border-bottom: 1px solid #202020;
}
body:not(.cn-light-theme) .cn-inbox-panel-head .cn-section-title {
  color: #fff;
}
body:not(.cn-light-theme) .cn-inbox-panel-icon {
  background: rgba(34,197,94,.10) !important;
  color: #4ade80 !important;
  border: 1px solid rgba(34,197,94,.20) !important;
}
body:not(.cn-light-theme) .cn-contact-message-card,
body:not(.cn-light-theme) .cn-admin-notification-card,
body:not(.cn-light-theme) .cn-user-notification {
  background: #111 !important;
  color: #f3f4f6 !important;
  border: 1px solid #242424 !important;
  border-radius: 15px;
  box-shadow:
    0 2px 5px rgba(0,0,0,.24),
    0 10px 25px rgba(0,0,0,.20) !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body:not(.cn-light-theme) .cn-contact-message-card:hover,
body:not(.cn-light-theme) .cn-admin-notification-card:hover,
body:not(.cn-light-theme) .cn-user-notification:hover {
  transform: translateY(-2px);
  border-color: #303030 !important;
  box-shadow:
    0 5px 10px rgba(0,0,0,.24),
    0 18px 38px rgba(0,0,0,.26) !important;
}
body:not(.cn-light-theme) .cn-contact-message-card.is-unread,
body:not(.cn-light-theme) .cn-admin-notification-card.is-unread,
body:not(.cn-light-theme) .cn-user-notification.is-unread {
  background: linear-gradient(100deg, rgba(34,197,94,.075), #111) !important;
  border-color: rgba(34,197,94,.27) !important;
}
body:not(.cn-light-theme) .cn-contact-sender strong,
body:not(.cn-light-theme) .cn-contact-subject,
body:not(.cn-light-theme) .cn-admin-notification-card strong,
body:not(.cn-light-theme) .cn-user-notification h2 {
  color: #fff !important;
}
body:not(.cn-light-theme) .cn-contact-sender div,
body:not(.cn-light-theme) .cn-contact-message,
body:not(.cn-light-theme) .cn-admin-notification-card p,
body:not(.cn-light-theme) .cn-user-notification p {
  color: #b8bec8 !important;
}
body:not(.cn-light-theme) .cn-contact-time,
body:not(.cn-light-theme) .cn-admin-notification-card small,
body:not(.cn-light-theme) .cn-user-notification time {
  color: #737b87 !important;
}
body:not(.cn-light-theme) .cn-contact-actions {
  border-top: 1px solid #242424;
}
body:not(.cn-light-theme) .cn-contact-actions .cn-btn-dark {
  background: #151515 !important;
  color: #d1d5db !important;
  border: 1px solid #292929 !important;
}
body:not(.cn-light-theme) .cn-contact-actions .cn-btn-dark:hover {
  background: #1b1b1b !important;
  color: #86efac !important;
  border-color: rgba(34,197,94,.28) !important;
}
body:not(.cn-light-theme) .cn-user-notification-mark {
  background: rgba(34,197,94,.10) !important;
  color: #4ade80 !important;
  border-color: rgba(34,197,94,.20) !important;
}
body:not(.cn-light-theme) .cn-user-inbox-empty,
body:not(.cn-light-theme) .cn-empty {
  background: #0f0f0f !important;
  color: #a1a1aa !important;
  border-color: #2a2a2a !important;
}
body:not(.cn-light-theme) .cn-inbox-panel-icon svg,
body:not(.cn-light-theme) .cn-inbox-panel-icon i {
  width: 18px;
  height: 18px;
}

/* Responsive newsletter */
@media (max-width: 620px) {
  .cn-newsletter-form {
    flex-direction: column;
    padding: .45rem;
  }
  .cn-newsletter-form .cn-input,
  .cn-newsletter-form .cn-btn {
    width: 100%;
    min-width: 0;
  }
  .cn-newsletter-form .cn-btn {
    justify-content: center;
  }
}

/* Account dashboard notification summary card. */
.cn-account-notifications-card {
  padding: 1.15rem 1.2rem;
}
.cn-account-notifications-subtitle,
.cn-account-notifications-empty {
  margin: .25rem 0 0;
  color: var(--muted, #8f9b94);
  font-size: .78rem;
}
.cn-account-notifications-icon {
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  flex: 0 0 2.35rem;
  border: 1px solid rgba(34,197,94,.22);
  border-radius: 11px;
  background: rgba(34,197,94,.10);
  color: #70dc95;
}
.cn-account-notification-preview {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  margin: 1rem 0;
  padding: .75rem .8rem;
  border: 1px solid var(--cn-border, rgba(255,255,255,.10));
  border-radius: 11px;
  background: rgba(255,255,255,.025);
}
.cn-account-notification-preview.is-unread {
  border-color: rgba(34,197,94,.28);
  background: rgba(34,197,94,.06);
}
.cn-account-notification-dot {
  width: .45rem;
  height: .45rem;
  flex: 0 0 .45rem;
  margin-top: .35rem;
  border-radius: 50%;
  background: #7d8982;
}
.is-unread .cn-account-notification-dot { background: #22c55e; }
.cn-account-notification-preview strong {
  display: block;
  color: var(--text, #f4f7f5);
  font-size: .84rem;
  line-height: 1.35;
}
.cn-account-notification-preview p {
  margin: .25rem 0 0;
  color: var(--muted, #a7b0ab);
  font-size: .76rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.cn-account-notifications-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 38px;
  padding: .5rem .75rem;
  border-radius: 9px;
}
.cn-account-notifications-count {
  display: inline-grid;
  place-items: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 .3rem;
  border-radius: 6px;
  background: #22c55e;
  color: #06110a;
  font-size: .68rem;
  font-weight: 800;
}
body.cn-light-theme .cn-account-notifications-subtitle,
body.cn-light-theme .cn-account-notifications-empty { color: #66736b; }
body.cn-light-theme .cn-account-notifications-icon { background: #edf8f0; border-color: #cce5d3; color: #15803d; }
body.cn-light-theme .cn-account-notification-preview { background: #f8fbf9; border-color: #dfe7e2; }
body.cn-light-theme .cn-account-notification-preview.is-unread { background: #f2fbf4; border-color: #bfe0c9; }
body.cn-light-theme .cn-account-notification-preview strong { color: #172019; }
body.cn-light-theme .cn-account-notification-preview p { color: #66736b; }
body.cn-light-theme .cn-account-notifications-link { background: #fff; color: #344054; border-color: #d8e2dc; }
@media (max-width: 460px) {
  .cn-account-notifications-card { padding: 1rem; }
  .cn-account-notifications-link { width: 100%; justify-content: center; }
}

/* Keep notification actions compact and side by side on small screens. */
.cn-user-notification-actions {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: .45rem;
}
.cn-user-notification-actions form {
  display: flex;
  width: auto;
  margin: 0;
}
.cn-user-notification-actions .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 {
    padding-inline: 8px;
    font-size: .76rem;
  }
}

/* Inbox controls: compact, readable actions with a stable mobile layout. */
.cn-account-inbox-head > form .cn-btn {
  min-height: 40px;
  padding: .58rem .9rem;
  border-radius: 9px;
  white-space: nowrap;
}
.cn-user-notification-actions {
  gap: .5rem;
  overflow: visible;
}
.cn-user-notification-actions form,
.cn-user-notification-actions .cn-btn,
.cn-user-notification-actions form .cn-btn {
  width: auto !important;
}
.cn-user-notification-actions .cn-btn {
  min-height: 36px;
  padding: .45rem .72rem;
  border-radius: 8px;
  line-height: 1.1;
}

/* Account quick actions and verification CTA remain touch-friendly on phones. */
.cn-account-page .cn-pro-action-btn {
  min-height: 46px;
  padding: .7rem .75rem;
  border-radius: 10px;
}
.cn-account-page .cn-verify-actions .cn-btn {
  min-height: 44px;
  padding: .7rem 1rem;
  border-radius: 9px;
}
@media (max-width: 620px) {
  .cn-account-inbox-head > form,
  .cn-account-inbox-head > form .cn-btn {
    width: 100%;
  }
  .cn-user-notification-actions {
    flex-wrap: wrap;
  }
  .cn-user-notification-actions .cn-btn {
    flex: 0 1 auto;
  }
  .cn-account-page .cn-pro-actions-grid {
    grid-template-columns: 1fr;
  }
  .cn-account-page .cn-pro-action-primary {
    grid-column: auto;
  }
  .cn-account-page .cn-verify-actions {
    align-items: stretch;
    gap: .65rem;
  }
  .cn-account-page .cn-verify-actions .cn-btn {
    width: 100%;
    justify-content: center;
  }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .cn-newsletter-form .cn-btn,
  .cn-contact-message-card,
  .cn-admin-notification-card,
  .cn-user-notification {
    transition: none !important;
  }
}


/* =========================================================
   CLEAR NOTE — TOP NAVIGATION SEARCH BAR POLISH
   Corrects the SEARCH BAR (not the notification icon).
   ========================================================= */

.cn-nav-search,
.nav-search,
.search-form {
  position: relative;
  display: flex !important;
  align-items: center !important;
  justify-content: center;
  min-width: 0;
}

/* Keep the search control visually centered inside its nav slot */
.cn-nav-search {
  width: min(100%, 34rem);
  margin-inline: auto;
}

.cn-nav-search input,
.nav-search input,
.search-form input {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px;
  padding: 0 44px 0 16px !important;
  border-radius: 999px !important;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}

.cn-nav-search button,
.nav-search button,
.search-form button {
  position: absolute !important;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: inherit;
}

.cn-nav-search button i,
.cn-nav-search button svg,
.nav-search button i,
.nav-search button svg,
.search-form button i,
.search-form button svg {
  width: 15px;
  height: 15px;
  margin: 0;
}

/* Dark navigation */
body:not(.cn-light-theme) .cn-nav-search input,
body:not(.cn-light-theme) .nav-search input,
body:not(.cn-light-theme) .search-form input {
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,.035) inset,
    0 7px 20px rgba(0,0,0,.14);
}

body:not(.cn-light-theme) .cn-nav-search input::placeholder,
body:not(.cn-light-theme) .nav-search input::placeholder,
body:not(.cn-light-theme) .search-form input::placeholder {
  color: rgba(255,255,255,.52);
}

body:not(.cn-light-theme) .cn-nav-search input:focus,
body:not(.cn-light-theme) .nav-search input:focus,
body:not(.cn-light-theme) .search-form input:focus {
  border-color: rgba(34,197,94,.48) !important;
  background: rgba(255,255,255,.075) !important;
  box-shadow:
    0 0 0 3px rgba(34,197,94,.10),
    0 10px 24px rgba(0,0,0,.18);
}

body:not(.cn-light-theme) .cn-nav-search button:hover,
body:not(.cn-light-theme) .nav-search button:hover,
body:not(.cn-light-theme) .search-form button:hover {
  background: rgba(255,255,255,.07) !important;
}

/* Light navigation */
body.cn-light-theme .cn-nav-search input,
body.cn-light-theme .nav-search input,
body.cn-light-theme .search-form input {
  background: #fff !important;
  border: 1px solid #d9e2dc !important;
  color: #101828 !important;
  box-shadow:
    0 1px 2px rgba(16,24,40,.035),
    0 7px 20px rgba(16,24,40,.065);
}

body.cn-light-theme .cn-nav-search input::placeholder,
body.cn-light-theme .nav-search input::placeholder,
body.cn-light-theme .search-form input::placeholder {
  color: #98a2b3;
}

body.cn-light-theme .cn-nav-search input:focus,
body.cn-light-theme .nav-search input:focus,
body.cn-light-theme .search-form input:focus {
  border-color: #8bcfa5 !important;
  box-shadow:
    0 0 0 3px rgba(34,197,94,.10),
    0 9px 24px rgba(16,24,40,.08);
}

body.cn-light-theme .cn-nav-search button:hover,
body.cn-light-theme .nav-search button:hover,
body.cn-light-theme .search-form button:hover {
  background: #f1f6f3 !important;
}

/* Prevent neighboring nav items from pushing the search control off-center */
@media (min-width: 900px) {
  .cn-nav-search {
    flex: 0 1 34rem;
  }
}

/* Smaller screens: preserve the existing navigation structure */
@media (max-width: 899px) {
  .cn-nav-search {
    width: 100%;
    max-width: none;
  }

  .cn-nav-search input,
  .nav-search input,
  .search-form input {
    height: 40px;
  }
}


/* =========================================================
   FINAL PASS — STRUCTURAL DESKTOP NAVIGATION SEARCH
   Search occupies the center column. Logo and right controls
   retain their original positions and remain visible.
   ========================================================= */

@media (min-width: 821px) {
  .cn-header-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 500px) minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 1.25rem !important;
    flex-wrap: nowrap !important;
  }

  .cn-header-left {
    grid-column: 1 !important;
    justify-self: start !important;
    min-width: 0 !important;
  }

  .cn-header-inner > .cn-desktop-search {
    grid-column: 2 !important;
    justify-self: center !important;
    align-self: center !important;
    width: 100% !important;
    max-width: 500px !important;
    min-width: 280px !important;
    height: 40px !important;
    margin: 0 !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    z-index: 2;
  }

  .cn-header-right {
    grid-column: 3 !important;
    justify-self: end !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: .75rem !important;
    flex-wrap: nowrap !important;
  }

  .cn-header-right > .cn-icon-btn,
  .cn-header-right > .cn-btn {
    flex: 0 0 auto !important;
    visibility: visible !important;
  }
}

@media (min-width: 821px) and (max-width: 1120px) {
  .cn-header-inner {
    grid-template-columns: minmax(0, 1fr) minmax(230px, 360px) minmax(0, 1fr) !important;
    column-gap: .75rem !important;
  }

  .cn-header-inner > .cn-desktop-search {
    min-width: 230px !important;
  }
}

@media (max-width: 820px) {
  .cn-header-inner > .cn-desktop-search {
    display: none !important;
  }
}

.cn-header [data-cn-theme-toggle] > i,
.cn-header [data-cn-theme-toggle] [data-cn-theme-icon] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  font-size: 15px;
  line-height: 1;
  color: #d9fbe5;
  filter: drop-shadow(0 1px 3px rgba(34,197,94,.18));
}
.cn-header [data-cn-theme-toggle] {
  width: 2.2rem;
  height: 2.2rem;
  min-width: 2.2rem;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  transition: color .18s ease, background .18s ease, border-color .18s ease;
}
.cn-header [data-cn-theme-toggle]:hover {
  background: rgba(255,255,255,.07);
  border-color: rgba(127,145,134,.18);
}
.cn-header [data-cn-theme-toggle]:focus-visible {
  outline: 2px solid rgba(74,222,128,.7);
  outline-offset: 2px;
}
body.cn-light-theme .cn-header [data-cn-theme-toggle] {
  background: transparent;
  border-color: transparent;
}
body.cn-light-theme .cn-header [data-cn-theme-toggle] [data-cn-theme-icon] {
  color: #166534;
  filter: none;
}
body.cn-light-theme .cn-header [data-cn-theme-toggle]:hover {
  background: #eff9f2;
  border-color: #b9d8c3;
}

.cn-theme-control .fa-circle-half-stroke {
  width: 16px;
  text-align: center;
}

.account-page i[class*="fa-"],
.cn-profile-view i,
.cn-profile-create-btn i {
  line-height: 1;
  vertical-align: middle;
}

.cn-profile-view > i,
.cn-profile-create-btn > i {
  font-size: .82rem;
}

/* ===== v11: sign-in polish, popups on mobile, notifications, listing headers, credibility ===== */
.cn-login-card { box-shadow: 0 30px 80px rgba(0,0,0,.45), 0 0 0 1px rgba(37,211,102,.08); }
.cn-login-card input { min-height: 48px; font-size: 16px; border-radius: 12px; }
.cn-login-card button[type=submit], .cn-login-card .cn-btn-primary { min-height: 48px; border-radius: 12px; font-weight: 700; }
@media (max-width: 640px) {
  .cn-modal-root { align-items: flex-end !important; padding: 0 !important; }
  .cn-modal-dialog { width: 100% !important; max-width: 100% !important; max-height: 88vh; overflow-y: auto; border-radius: 22px 22px 0 0 !important; padding-bottom: max(1rem, env(safe-area-inset-bottom)); }
  .cn-modal-dialog::before { content: ""; display: block; width: 42px; height: 4px; border-radius: 4px; background: rgba(148,163,184,.55); margin: .6rem auto .2rem; }
  .cn-modal-dialog .cn-btn, .cn-modal-dialog a.cn-btn { width: 100%; min-height: 48px; justify-content: center; }
}
.cn-user-notification { border-radius: 16px; gap: .9rem; padding: 1rem; transition: border-color .15s, transform .15s; }
.cn-user-notification:hover { transform: translateY(-1px); }
.cn-user-notification.is-unread { border-left: 4px solid #16a34a; background: linear-gradient(90deg, rgba(22,163,74,.09), transparent 60%); }
.cn-user-notification-mark { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: rgba(22,163,74,.14); color: #16a34a; flex: none; }
.cn-user-notification time { font-size: .75rem; opacity: .65; white-space: nowrap; }
.cn-inbox-filters { overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; padding-bottom: .25rem; }
.cn-inbox-filters::-webkit-scrollbar { display: none; }
.cn-lb-me { position: sticky; bottom: 76px; box-shadow: 0 10px 28px rgba(0,0,0,.2); border: 1px solid rgba(22,163,74,.45); }
.cn-lb-row { min-height: 60px; }
.cn-lb-row.is-me { background: rgba(22,163,74,.1); }
.cn-hero-title { letter-spacing: -.02em; }
.cn-hero-sub { max-width: 40rem; }
body:has(.cn-hero) .cn-hero + * { margin-top: 0; }
@media (max-width: 640px) { .cn-hero-sub { font-size: .95rem; line-height: 1.5; } }

.cn-section-dark .cn-hero-title + .cn-hero-sub { opacity: .85; }
.cn-section-dark .cn-container > nav.cn-breadcrumb { opacity: .8; font-size: .85rem; }

/* v16: PWA update banner + iPhone install guide */
.cn-pwa-bar{position:fixed;left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:9999;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#0f3d22;color:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 12px 32px rgba(0,0,0,.35);font-size:.9rem;max-width:520px;margin:0 auto}
.cn-pwa-bar span{flex:1 1 180px}
.cn-pwa-btn{background:#fff;color:#0f3d22;border:0;border-radius:99px;min-height:42px;padding:0 18px;font-weight:700;cursor:pointer}
.cn-pwa-later{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:99px;min-height:42px;padding:0 14px;cursor:pointer}
.cn-pwa-sheet{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.55);display:flex;align-items:flex-end;justify-content:center}
.cn-pwa-card{background:#fff;color:#0f172a;width:100%;max-width:520px;border-radius:22px 22px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px))}
.cn-pwa-card h3{margin:0 0 10px;font-size:1.1rem}.cn-pwa-card ol{margin:0 0 16px;padding-left:20px;line-height:1.7}
.cn-pwa-card .cn-pwa-btn{background:#16a34a;color:#fff;width:100%}

/* v17: toast, username field, small bars, install button */
body .cn-toast{top:calc(env(safe-area-inset-top,0px) + 10px);left:12px;right:12px;transform:none;width:auto;max-width:460px;margin:0 auto;border-radius:16px;padding:.85rem 1rem .95rem;gap:.7rem;font-size:.95rem;line-height:1.35;overflow:hidden;font-weight:500;animation:cn-toast-drop .28s ease}
body .cn-toast span{flex:1;min-width:0}
body .cn-toast::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:currentColor;opacity:.25;transform-origin:left;animation:cn-toast-timer 4s linear forwards}
body .cn-toast-success{border-left:4px solid #16a34a}.cn-toast-error{border-left:4px solid #ef4444}
body .cn-toast .cn-toast-close{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:50%}
@keyframes cn-toast-drop{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes cn-toast-timer{to{transform:scaleX(0)}}
.cn-username-field{display:flex;align-items:center;gap:.6rem;min-height:58px;padding:0 16px;border:1.5px solid rgba(255,255,255,.22);border-radius:14px;background:#0b110d;transition:border-color .15s,box-shadow .15s}
.cn-username-field:focus-within{border-color:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.2)}
.cn-username-field .at{color:#86efac;font-weight:800;font-size:1.25rem}
.cn-username-input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#f1f5f2;-webkit-text-fill-color:#f1f5f2;caret-color:#22c55e;font:600 1.15rem/1.2 inherit;font-family:inherit;padding:14px 0}
.cn-username-input::placeholder{color:#7f8a83;-webkit-text-fill-color:#7f8a83;font-weight:400}
body.cn-light-theme .cn-username-field{background:#fff;border-color:#cfd8d2}
body.cn-light-theme .cn-username-field .at{color:#16a34a}
body.cn-light-theme .cn-username-input{color:#111827;-webkit-text-fill-color:#111827}
body.cn-light-theme .cn-username-input::placeholder{color:#8a948e;-webkit-text-fill-color:#8a948e}
.cn-mini-bar{position:fixed;left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom,0px));z-index:900;display:flex;align-items:center;gap:8px;max-width:440px;margin:0 auto;padding:7px 8px 7px 14px;background:#0f3d22;color:#fff;border-radius:99px;box-shadow:0 8px 24px rgba(0,0,0,.3);font-size:.82rem;line-height:1.25}
.cn-mini-bar span{flex:1;min-width:0}
.cn-mini-go{flex:none;background:#fff;color:#0f3d22;border:0;border-radius:99px;min-height:34px;padding:0 14px;font-weight:700;font-size:.82rem;cursor:pointer}
.cn-mini-x{flex:none;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:1.2rem;line-height:1;cursor:pointer}
[data-cn-install][hidden],[data-cn-install-ios][hidden]{display:none!important}
.cn-install-btn{background:transparent;color:inherit;border:1.5px solid #16a34a;display:inline-flex;align-items:center;gap:.5rem;justify-content:center}
@media(min-width:900px){.cn-mini-bar{bottom:24px;left:auto;right:24px;margin:0}}

/* v18: install pop-up (style A), drawer row, footer link, account card */
.cn-app-pop{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:900;width:min(380px,calc(100vw - 20px));display:flex;align-items:center;gap:clamp(8px,2.8vw,12px);padding:clamp(8px,2.6vw,12px) clamp(30px,9vw,36px) clamp(8px,2.6vw,12px) clamp(8px,2.6vw,12px);background:#141b16;color:#f2f6f3;border:1px solid #26302a;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.3);animation:cn-pop-up .3s ease}
body.cn-light-theme .cn-app-pop{background:#fff;color:#0f172a;border-color:#dfe6e2;box-shadow:0 10px 30px rgba(16,24,40,.16)}
@keyframes cn-pop-up{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.cn-app-ic{flex:none;width:clamp(38px,12vw,46px);height:clamp(38px,12vw,46px);border-radius:11px}
.cn-app-tx{flex:1;min-width:0}.cn-app-tx b{display:block;font-size:clamp(.8rem,3.7vw,.92rem);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cn-app-tx small{display:block;margin-top:2px;font-size:clamp(.68rem,3vw,.76rem);color:#9aa8a1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.cn-light-theme .cn-app-tx small{color:#5b6670}
.cn-app-go{flex:none;border:0;background:#16a34a;color:#fff;border-radius:99px;min-height:clamp(28px,8.5vw,32px);padding:0 clamp(10px,3.6vw,14px);font-weight:700;font-size:clamp(.72rem,3.2vw,.8rem);cursor:pointer;white-space:nowrap}
.cn-app-x{position:absolute;top:5px;right:7px;width:22px;height:22px;border:0;border-radius:50%;background:transparent;color:inherit;opacity:.6;font-size:16px;line-height:1;cursor:pointer;display:grid;place-items:center}
.cn-app-x:hover{opacity:1;background:rgba(127,127,127,.2)}
@media(min-width:900px){.cn-app-pop{left:auto;right:24px;bottom:24px;transform:none;animation:none}}
.cn-app-row{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px;border:1px solid var(--nv-ln,#26302a);border-radius:14px}
.cn-app-row img{border-radius:9px;flex:none}.cn-app-row span{flex:1;min-width:0;font-weight:600;font-size:.9rem;line-height:1.2}.cn-app-row small{display:block;font-weight:400;opacity:.65;font-size:.75rem}
.cn-app-row:has([data-cn-install][hidden]):has([data-cn-install-ios][hidden]){display:none}
.cn-app-card-wrap{padding:0 1rem 2rem}.cn-app-card{max-width:560px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(127,127,127,.25);border-radius:16px}
.cn-app-card img{border-radius:10px;flex:none}.cn-app-card div{flex:1;min-width:0}.cn-app-card b{display:block;font-size:.95rem}.cn-app-card small{opacity:.65;font-size:.8rem}
.cn-app-card:has([data-cn-install][hidden]):has([data-cn-install-ios][hidden]){display:none}
.cn-app-card-wrap:has(.cn-app-card[style]){display:block}
.cn-linkbtn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}
.cn-linkbtn[hidden]{display:none}
