/* Sign In and Zvendor Control Center, built from the Zvendor design system (navy hero, white cards, pill buttons). */
body.members-theme { background: #fff; }
.members-theme main { color: #0b173f; font-family: Arial, Helvetica, sans-serif; }
.zm-hero { position: relative; color: #fff; background: radial-gradient(circle at 50% 0%, rgba(19,102,255,.42), rgba(0,0,0,0) 38%), radial-gradient(circle at 80% 45%, rgba(0,188,255,.25), rgba(0,0,0,0) 34%), linear-gradient(180deg, #041341, #020b25); }
.zm-wrap { box-sizing: border-box; width: 100%; max-width: 1160px; margin: 0 auto; padding: 0 32px; }
.zm-eyebrow { margin: 0; font-size: 14px; line-height: 1.7; font-weight: 700; letter-spacing: 1.68px; text-transform: uppercase; color: #a8d6ff; }
.zm-eyebrow--dark, .zm-kicker { color: #084cda; }
.zm-kicker { margin: 0; font-size: 14px; line-height: 1.6; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; }
.zm-muted { margin: 0; color: #3f4c67; font-size: 16px; line-height: 1.6; }
.zm-stack { display: flex; flex-direction: column; gap: 20px; align-items: stretch; }
.zm-stack--tight { gap: 6px; }
.zm-stack[hidden], .zm-card form[hidden] { display: none; }

/* Sign In */
.zm-signin { min-height: 100vh; box-sizing: border-box; padding: 150px 24px 80px; display: flex; align-items: center; }
.zm-signin__inner { width: 100%; max-width: 1060px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 56px 72px; }
.zm-signin__inner--single { max-width: 520px; }
.zm-signin__copy { flex: 1 1 360px; max-width: 480px; display: flex; flex-direction: column; gap: 18px; }
.zm-signin__copy h1 { margin: 0; font-size: clamp(40px, 6vw, 56px); line-height: .98; font-weight: 900; letter-spacing: -2.4px; color: #fff; text-transform: none; text-shadow: none; }
.zm-signin__copy h1 span { color: #a8d6ff; }
.zm-signin__copy p { margin: 0; font-size: 18px; line-height: 1.7; color: #9dd7ff; }
.zm-signin__copy p:last-child { font-size: 16px; }
.zm-signin__copy strong { color: #fff; }
.zm-card { flex: 0 1 460px; box-sizing: border-box; padding: 40px; background: #fff; color: #0b173f; box-shadow: 0 24px 60px rgba(2,11,37,.35); }
.zm-card h2, .zm-card-title { margin: 0; font-size: 28px; line-height: 1.1; font-weight: 900; color: #0a1b63; text-transform: none; text-shadow: none; letter-spacing: 0; }
.zm-card p { margin: 0; font-size: 16px; line-height: 1.6; }
.zm-card h2:focus { outline: none; }
.zm-field { display: flex; flex-direction: column; gap: 8px; }
.zm-field label { font-size: 14px; font-weight: 700; color: #0b173f; }
.zm-input { box-sizing: border-box; width: 100%; height: 50px; padding: 0 14px; border: 1px solid #638ac0; border-radius: 8px; font: 16px Arial, Helvetica, sans-serif; color: #0b173f; background: #fff; }
.zm-input:focus { outline: 2px solid #0d53ff; outline-offset: 1px; border-color: #0d53ff; }
.zm-check { display: flex; align-items: flex-start; gap: 12px; font-size: 16px; line-height: 1.5; cursor: pointer; }
.zm-check input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: #0d53ff; flex: none; }
.zm-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.zm-status { margin: 0; min-height: 1.5em; font-size: 16px; line-height: 1.5; color: #0a1b63; }
.zm-status:empty { min-height: 0; }
.zm-status--on-navy { color: #fff; }
.zm-fine { font-size: 14px !important; color: #3f4c67; }
.zm-card a:not(.zm-btn) { color: #084cda; }
.zm-icon-disc { width: 88px; height: 88px; border-radius: 50%; background: #e1f3ff; display: flex; align-items: center; justify-content: center; }
.zm-noscript { margin: 24px auto 0; max-width: 480px; text-align: center; color: #fff; }

/* Resources sign-up (/resources) */
.zm-resources-hero { min-height: 0; }
.zm-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 16px; color: #fff; }
.zm-checks li::before { content: "\2713"; margin-right: 8px; color: #23d5ff; font-weight: 700; }
.zm-bar-heading::after { content: ""; display: block; width: 72px; height: 5px; margin-top: 18px; border-radius: 99px; background: #0d53ff; }
.zm-grid.zm-grid--four { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; }
.zm-tile__icon { width: 64px; height: 64px; border-radius: 50%; background: #e1f3ff; color: #0d53ff; display: flex; align-items: center; justify-content: center; }
.zm-tile > .zm-tag { align-self: flex-start; }
.zm-band { margin-top: 32px; padding: 36px; background: #e1f3ff; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.zm-section .zm-band h2 { margin: 0; font-size: 28px; line-height: 1.1; }
.zm-band .zm-muted { color: #0b173f; }
.zm-public-note { margin-top: 32px; font-size: 14px; }
.zm-public-note a { color: #084cda; }

/* Buttons */
.zm-btn { white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: 10px; box-sizing: border-box; min-height: 48px; padding: 0 24px; border: 1px solid transparent; border-radius: 999px; font: 700 16px/1 Arial, Helvetica, sans-serif; text-decoration: none; cursor: pointer; transition: background-color .15s ease; }
.zm-btn svg { width: 20px; height: 20px; flex: none; }
.zm-btn--primary { background: #0d53ff; color: #fff; }
.zm-btn--primary:hover { background: #084cda; color: #fff; }
.zm-btn--secondary { background: #fff; color: #084cda; border-color: #638ac0; }
.zm-btn--secondary:hover { background: #f6f9ff; color: #0a1b63; }
.zm-btn--sm { min-height: 44px; padding: 0 18px; font-size: 15px; }
.zm-btn--block { width: 100%; }
.zm-btn:focus-visible { outline: 2px solid #0d53ff; outline-offset: 3px; }
.zm-btn:disabled { opacity: .6; cursor: progress; }
.zm-btn[hidden] { display: none; }

/* Control Center */
.zm-cc-hero { padding: 156px 0 64px; }
.zm-cc-hero h1 { margin: 12px 0 16px; font-size: clamp(38px, 5vw, 56px); line-height: 1.02; font-weight: 900; letter-spacing: -2px; color: #fff; text-transform: none; text-shadow: none; }
.zm-hero-lead { margin: 0 0 12px; max-width: 720px; font-size: 18px; line-height: 1.7; color: #9dd7ff; }
.zm-hero-lead strong { color: #fff; }
.zm-section { padding: 56px 0; }
.zm-section--soft { background: #f6f9ff; border-top: 1px solid #d8e1f4; border-bottom: 1px solid #d8e1f4; }
.zm-section h2 { margin: 0 0 24px; font-size: clamp(28px, 3.5vw, 36px); line-height: 1.08; font-weight: 900; color: #0a1b63; text-transform: none; text-shadow: none; letter-spacing: -.5px; }
.zm-section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin-bottom: 24px; }
.zm-section-head h2 { margin: 0; }
.zm-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
.zm-tile { display: flex; flex-direction: column; gap: 12px; padding: 28px; background: #fff; border: 1px solid #d8e1f4; box-shadow: 0 4px 24px rgba(2,11,37,.06); }
.zm-tile h3 { margin: 0; font-size: 24px; line-height: 1.15; font-weight: 900; color: #0a1b63; }
.zm-tile p { margin: 0; font-size: 16px; line-height: 1.6; color: #3f4c67; }
.zm-tile .zm-kicker { color: #084cda; font-size: 13px; }
.zm-tile--soon { background: #f6f9ff; border-style: dashed; }
.zm-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: auto; padding-top: 8px; }
.zm-switch { display: flex; align-items: center; gap: 12px; font-size: 15px; line-height: 1.4; color: #0b173f; cursor: pointer; }
.zm-switch input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.zm-switch__track { position: relative; flex: none; width: 46px; height: 26px; border-radius: 99px; background: #c6d3ea; transition: background .15s ease; }
.zm-switch__track::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(2,11,37,.3); transition: transform .15s ease; }
.zm-switch input:checked + .zm-switch__track { background: #0d53ff; }
.zm-switch input:checked + .zm-switch__track::after { transform: translateX(20px); }
.zm-switch input:focus-visible + .zm-switch__track { outline: 2px solid #0d53ff; outline-offset: 2px; }
.zm-switch input:disabled + .zm-switch__track { opacity: .6; }
.zm-issues { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.zm-issue { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 26px; background: #fff; border: 1px solid #d8e1f4; color: #0b173f; text-decoration: none; transition: border-color .15s ease, box-shadow .15s ease; }
.zm-issue:hover { border-color: #638ac0; box-shadow: 0 8px 28px rgba(2,11,37,.1); }
.zm-issue:focus-visible { outline: 2px solid #0d53ff; outline-offset: 2px; }
.zm-issue--lead { grid-column: 1 / -1; padding: 36px; background: #07133f; border-color: #07133f; color: #fff; }
.zm-issue__meta { font-size: 14px; font-weight: 700; letter-spacing: .6px; color: #084cda; }
.zm-issue--lead .zm-issue__meta { color: #a8d6ff; }
.zm-issue__title { font-size: 22px; line-height: 1.2; font-weight: 900; color: #0a1b63; }
.zm-issue--lead .zm-issue__title { font-size: clamp(26px, 3.4vw, 36px); line-height: 1.08; color: #fff; }
.zm-issue__dek { font-size: 16px; line-height: 1.6; color: #3f4c67; }
.zm-issue--lead .zm-issue__dek { color: #9dd7ff; max-width: 720px; }
.zm-issue__more { margin-top: auto; padding-top: 6px; font-size: 15px; font-weight: 700; color: #084cda; }
.zm-issue--lead .zm-issue__more { color: #23d5ff; }
.zm-tag { display: inline-block; padding: 4px 10px; border-radius: 99px; font-size: 13px; font-weight: 700; background: #e1f3ff; color: #0a1b63; }
.zm-tag--warn { background: #fff3cd; color: #5c4400; }
.zm-account { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.zm-account h2 { margin-bottom: 8px; }

/* Issue reader */
.zm-reader { padding: 48px 0 72px; }
.zm-reader[hidden], #cc-home[hidden] { display: none; }
.zm-prose { max-width: 824px; display: flex; flex-direction: column; gap: 22px; }
.zm-prose > p { margin: 0; font-size: 18px; line-height: 1.7; color: #0b173f; }
.zm-prose > p.zm-muted, .zm-prose > p.zm-kicker { font-size: 14px; }
.zm-back { align-self: flex-start; font-size: 15px; font-weight: 700; color: #084cda; text-decoration: none; }
.zm-back:hover { text-decoration: underline; text-underline-offset: 3px; }
.zm-notice { padding: 16px 20px; background: #fff3cd; border: 1px solid #e6cf7a; color: #5c4400 !important; font-size: 16px !important; }
.zm-reader__title { margin: 0; font-size: clamp(32px, 4.6vw, 48px); line-height: 1.04; font-weight: 900; letter-spacing: -1.5px; color: #0a1b63; text-transform: none; text-shadow: none; }
.zm-reader__dek { font-size: 20px !important; color: #3f4c67 !important; }
.zm-reader__h { margin: 14px 0 0; font-size: 30px; line-height: 1.1; font-weight: 900; color: #0a1b63; }
.zm-stats { display: flex; flex-wrap: wrap; border-top: 1px solid #d8e1f4; border-bottom: 1px solid #d8e1f4; }
.zm-stat { flex: 1 1 200px; padding: 20px 20px 20px 0; display: flex; flex-direction: column; gap: 4px; }
.zm-stat + .zm-stat { padding-left: 20px; border-left: 1px solid #d8e1f4; }
.zm-stat__value { font-size: 40px; line-height: 1.1; font-weight: 900; color: #0d53ff; }
.zm-stat__label { font-size: 14px; line-height: 1.5; color: #3f4c67; }
.zm-callout { margin: 0; padding: 28px 32px; background: #f6f9ff; border: 1px solid #d8e1f4; display: flex; flex-direction: column; gap: 10px; }
.zm-callout p { margin: 0; font-size: 17px; line-height: 1.65; }
.zm-callout--tip { background: #e1f3ff; border-color: #a8d6ff; }
.zm-callout__title { font-size: 22px !important; font-weight: 900; color: #0a1b63; }
.zm-quote { margin: 8px 0; padding: 0 0 0 24px; border-left: 4px solid #23d5ff; }
.zm-quote p { margin: 0 0 8px; font-size: 24px; line-height: 1.35; font-weight: 700; color: #0a1b63; }
.zm-quote cite { font-style: normal; font-size: 14px; color: #3f4c67; }
.zm-sources { font-size: 14px !important; color: #3f4c67 !important; }
.zm-reader__end { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; padding: 28px 32px; background: #07133f; }
.zm-reader__end p { margin: 0; font-size: 20px; font-weight: 900; color: #fff; }

@media (max-width: 600px) {
  .zm-wrap { padding: 0 16px; }
  .zm-signin { padding: 120px 16px 56px; }
  .zm-card { padding: 28px 20px; }
  .zm-cc-hero { padding: 124px 0 48px; }
  .zm-issue--lead { padding: 26px; }
  .zm-stat + .zm-stat { padding-left: 0; border-left: 0; border-top: 1px solid #d8e1f4; }
  .zm-callout, .zm-reader__end, .zm-band { padding: 22px 20px; }
}
@media (prefers-reduced-motion: reduce) { .zm-btn, .zm-issue, .zm-switch__track, .zm-switch__track::after { transition: none; } }

/* Star rating (design system: five 24px stars, 4px gaps, filled then half then outline, always with a text equivalent) */
.zm-stars { display: inline-flex; gap: 4px; vertical-align: middle; }
.zm-stars svg, .zm-rate__stars svg { display: block; width: 24px; height: 24px; }
.zm-rating { display: flex; flex-direction: column; gap: 10px; padding: 28px 32px; border: 1px solid #d8e1f4; background: #fff; }
.zm-rating__q { margin: 0; font-size: 22px; font-weight: 900; color: #0a1b63; }
.zm-rate { margin: 0; padding: 0; border: 0; }
.zm-rate__legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.zm-rate__box { position: relative; display: inline-block; }
.zm-rate__stars { display: flex; gap: 4px; }
.zm-rate__stars svg { width: 36px; height: 36px; }
.zm-rate__hits { position: absolute; inset: 0; display: flex; }
.zm-rate__input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.zm-rate__hit { flex: 0 0 20px; height: 36px; cursor: pointer; }
.zm-rate__hit--first { flex-basis: 40px; }
.zm-rate__input:focus-visible + .zm-rate__hit { outline: 2px solid #0d53ff; outline-offset: 2px; border-radius: 4px; }
.zm-rate__status { margin: 0; min-height: 1.4em; font-size: 15px; color: #0a1b63; }
.zm-rate__summary { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 15px; color: #3f4c67; }
.zm-rate__summary:empty { display: none; }

/* Zvendor Score level icons (line art from the mockup, drawn in currentColor) */
.lv-ico{display:inline-block;flex:none;width:18px;height:18px;vertical-align:-3px;background-color:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.lv-top1{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 4h8v5.5a4 4 0 0 1-8 0z'/%3E%3Cpath d='M8 6.5H5.5a2.5 2.5 0 0 0 2.6 3.7M16 6.5h2.5a2.5 2.5 0 0 1-2.6 3.7'/%3E%3Cpath d='M12 13.5V17M8.5 20.5h7M10 17h4l.5 3.5h-5z'/%3E%3C/svg%3E")}
.lv-top5{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 16.5L3.8 7.5l4.7 3.6L12 4.8l3.5 6.3 4.7-3.6L19 16.5z'/%3E%3Cpath d='M5.5 20h13'/%3E%3Ccircle cx='12' cy='13' r='1'/%3E%3C/svg%3E")}
.lv-top10{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3l3.2 6.2M16 3l-3.2 6.2M10 3h4'/%3E%3Ccircle cx='12' cy='15' r='5.8'/%3E%3Cpath d='M12 12.2l.9 1.8 2 .3-1.45 1.4.35 2-1.8-.95-1.8.95.35-2L9.1 14.3l2-.3z'/%3E%3C/svg%3E")}
.lv-top25{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13.5 3L5.5 13.5h6L10.5 21l8-10.5h-6z'/%3E%3C/svg%3E")}
.lv-top50{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c3.2 2.2 4.8 5.7 4.6 9.6L14.8 16H9.2l-1.8-3.4C7.2 8.7 8.8 5.2 12 3z'/%3E%3Ccircle cx='12' cy='9.8' r='1.8'/%3E%3Cpath d='M9.2 16l-2.4 2.6 3.1.2M14.8 16l2.4 2.6-3.1.2M12 18.5V21'/%3E%3C/svg%3E")}
.lv-rising{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 3l1.95 3.95 4.35.63-3.15 3.07.74 4.33-3.89-2.04-3.89 2.04.74-4.33-3.15-3.07 4.35-.63z'/%3E%3Cpath d='M3 21l5.5-5.5M3 16.5l3-3M7.5 21l3-3'/%3E%3C/svg%3E")}

/* Profile photo with the Zvendor Score ring: a solid logo-blue arc filled to the member's level, no glow. */
.zm-avatar { position: relative; flex: none; display: inline-flex; box-sizing: border-box; padding: 4px; border: 0; border-radius: 50%; background: #d8e1f4; text-decoration: none; }
.zm-avatar__inner { flex: 1; display: flex; align-items: center; justify-content: center; overflow: hidden; border-radius: 50%; border: 3px solid #fff; background: #0d53ff; color: #fff; font: 900 20px/1 Arial, Helvetica, sans-serif; }
.zm-avatar__inner img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zm-avatar--md { width: 80px; height: 80px; padding: 5px; }
.zm-avatar--md .zm-avatar__inner { font-size: 22px; }
.zm-avatar--lg { width: 96px; height: 96px; padding: 6px; }
.zm-avatar--lg .zm-avatar__inner { font-size: 28px; border-color: #041341; }
.zm-avatar--xl { width: 144px; height: 144px; padding: 8px; }
.zm-avatar--xl .zm-avatar__inner { font-size: 44px; border: 4px solid #041341; }
.zm-avatar--edit { cursor: pointer; }
.zm-avatar__badge { position: absolute; right: 4px; bottom: 4px; width: 36px; height: 36px; border-radius: 50%; background: #fff; color: #084cda; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(2,11,37,.3); }
a.zm-avatar:focus-visible, button.zm-avatar:focus-visible { outline: 2px solid #23d5ff; outline-offset: 3px; }
.zm-cc-id { display: flex; align-items: center; gap: 20px; }
.zm-cc-id h1 { margin-bottom: 0; }
.zm-cc-hero .zm-hero-lead { margin-top: 18px; }

/* Zvendor Score */
.zm-score-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 40px; margin-bottom: 24px; }
.zm-score-head h2 { margin: 0 0 18px; }
.zm-score-head .zm-muted { max-width: 560px; }
.zm-score-head strong { color: #0b173f; }
.zm-bar { display: block; width: 72px; height: 5px; border-radius: 99px; background: #0d53ff; }
.zm-score { display: flex; flex-wrap: wrap; border: 1px solid #d8e1f4; }
.zm-score__main { flex: 1 1 520px; min-width: 0; box-sizing: border-box; padding: 40px 44px; display: flex; flex-wrap: wrap; align-items: center; gap: 32px 40px; }
.zm-donut { flex: none; }
.zm-score__levels { flex: 1 1 220px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.zm-levels { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.zm-level { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 99px; font-size: 14px; font-weight: 700; background: #f6f9ff; color: #3f4c67; }
.zm-level--you { background: #0d53ff; color: #fff; }
.zm-score__copy { margin: 0; font-size: 18px; line-height: 1.7; color: #0b173f; }
.zm-score__ways { flex: 1 1 340px; box-sizing: border-box; padding: 40px 44px; background: #e1f3ff; display: flex; flex-direction: column; gap: 6px; }
.zm-score__ways h3 { margin: 0 0 10px; font-size: 26px; line-height: 1.08; font-weight: 900; color: #0a1b63; }
.zm-ways { list-style: none; margin: 0; padding: 0; }
.zm-ways li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid #a8d6ff; font-size: 16px; color: #0b173f; }
.zm-ways__done { flex: none; font-size: 14px; font-weight: 700; color: #084cda; }
.zm-score__ways .zm-fine { margin: 10px 0 0; }
.zm-leaders { display: flex; flex-direction: column; gap: 16px; padding-top: 32px; }
.zm-leaders h3 { margin: 0; font-size: 22px; line-height: 1.15; font-weight: 900; color: #0a1b63; }
.zm-leaders__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 20px 28px; }
.zm-leader { display: flex; flex-direction: column; align-items: center; gap: 8px; width: 104px; text-align: center; }
.zm-leader__name { font-size: 14px; line-height: 1.3; font-weight: 700; color: #0b173f; overflow-wrap: anywhere; }
.zm-leader__level { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; line-height: 1.3; color: #3f4c67; }
.zm-leader__level .lv-ico { color: #0d53ff; }
.zm-leader--you .zm-leader__name { color: #084cda; }

/* Comments and sharing in the issue reader */
.zm-textarea { height: auto; min-height: 88px; padding: 12px 14px; line-height: 1.5; resize: vertical; }
.zm-comment { margin-top: 8px; }
.zm-actions--flat { margin-top: 0; padding-top: 0; }
.zm-share-issue { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px 32px; background: #f6f9ff; border: 1px solid #d8e1f4; }
.zm-btn--tertiary { background: transparent; color: #084cda; border-color: transparent; padding: 0 8px; }
.zm-btn--tertiary:hover { color: #0a1b63; text-decoration: underline; text-underline-offset: 3px; }

/* Profile */
.zm-profile-hero { padding-bottom: 56px; }
.zm-profile-id { display: flex; flex-wrap: wrap; align-items: center; gap: 24px 32px; }
.zm-profile-id__text { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.zm-profile-id h1 { margin: 0; font-size: clamp(34px, 5vw, 52px); line-height: 1.02; font-weight: 900; letter-spacing: -1.5px; color: #fff; text-transform: none; text-shadow: none; overflow-wrap: anywhere; }
.zm-profile-id__biz { margin: 0; font-size: 18px; color: #9dd7ff; }
.zm-profile-id__biz:empty { display: none; }
.zm-profile-id__meta { margin: 4px 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; font-size: 15px; color: #9dd7ff; }
.zm-level-pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 99px; background: #fff; color: #0a1b63; font-weight: 700; }
.zm-level-pill .lv-ico { color: #0d53ff; }
.zm-profile-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.zm-profile-form { display: flex; flex-direction: column; gap: 22px; }
.zm-profile-form h2, .zm-share h2 { margin: 0 0 8px; }
.zm-photo-field { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 10px; }
.zm-photo-field legend { padding: 0; margin-bottom: 10px; font-size: 14px; font-weight: 700; color: #0b173f; }
.zm-photo-field__row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 20px; }
.zm-fine { margin: 0; font-size: 14px; line-height: 1.5; color: #3f4c67; }
.zm-fine a { color: #084cda; }
.zm-input[readonly] { background: #f6f9ff; color: #3f4c67; }
.zm-toggles { display: flex; flex-direction: column; gap: 18px; padding: 22px 0; border-top: 1px solid #d8e1f4; border-bottom: 1px solid #d8e1f4; }
.zm-toggles .zm-switch { align-items: flex-start; }
.zm-toggles .zm-switch strong { display: block; font-size: 16px; }
.zm-switch__hint { display: block; margin-top: 4px; font-size: 14px; line-height: 1.5; color: #3f4c67; }
.zm-share { position: sticky; top: 96px; display: flex; flex-direction: column; gap: 14px; padding: 32px; background: #f6f9ff; border: 1px solid #d8e1f4; }
.zm-share h3 { margin: 10px 0 0; font-size: 18px; font-weight: 900; color: #0a1b63; }
.zm-share__link { display: flex; gap: 10px; }
.zm-share__link .zm-input { min-width: 0; font-size: 15px; }
.zm-share__count { margin: 0; font-size: 16px; font-weight: 700; color: #0a1b63; }
.zm-share__msg { margin: 0; padding: 16px 18px; background: #fff; border: 1px solid #d8e1f4; font-size: 16px; line-height: 1.6; color: #0b173f; overflow-wrap: anywhere; }
.zm-share__ideas { margin: 0; padding-left: 20px; font-size: 16px; line-height: 1.7; color: #0b173f; }
.zm-share__status { margin: 0; font-size: 14px; color: #0a1b63; }
.zm-share__status:empty { display: none; }
@media (max-width: 900px) { .zm-profile-grid { grid-template-columns: 1fr; } .zm-share { position: static; } }
@media (max-width: 600px) {
  .zm-score__main, .zm-score__ways { padding: 28px 20px; }
  .zm-donut { width: 180px; height: 180px; }
  .zm-cc-id { gap: 14px; }
  .zm-avatar--lg { width: 72px; height: 72px; padding: 5px; }
  .zm-avatar--xl { width: 112px; height: 112px; padding: 6px; }
  .zm-share { padding: 24px 18px; }
  .zm-share__link { flex-direction: column; }
  .zm-share-issue { padding: 22px 20px; }
  .zm-leader { width: 88px; }
}
