/* Provery — soft blueberry. Functional color tokens, independent of layout. */
:root {
  --color-canvas: #faf9fd;
  --color-surface: #ffffff;
  --color-surface-raised: #ffffff;
  --color-surface-subtle: #f5f3fa;
  --color-surface-hover: #efecf7;
  --color-surface-selected: #eee9fa;
  --color-text: #383541;
  --color-text-strong: #272530;
  --color-text-secondary: #615c70;
  --color-text-muted: #746d82;
  --color-text-placeholder: #797287;
  --color-border: #e3dfec;
  --color-border-subtle: #efecf4;
  --color-border-input: #b7adc7;
  --color-rule-strong: #8b82a1;
  --color-action: #ded5ef;
  --color-action-hover: #d3c5e8;
  --color-action-pressed: #c7b6df;
  --color-on-action: #594577;
  --color-link: #705995;
  --color-focus: #a38ac4;
  --color-disabled-bg: #f0edf5;
  --color-disabled-text: #8a8396;
  --color-accent: #9c8ba8;
  --color-accent-soft: #f0ebf2;
  --color-success: #3d6559;
  --color-success-soft: #eaf0e9;
  --color-warning: #795c32;
  --color-warning-soft: #f5efe3;
  --color-danger: #913f40;
  --color-danger-soft: #f6ebea;
  --color-mine: #f8f6fc;
  --color-mine-border: #c1b6e0;
  --color-overlay: rgba(37, 31, 53, .36);
  --shadow-surface: 0 2px 12px rgba(66, 48, 103, .025);
  --shadow-floating: 0 12px 38px rgba(66, 48, 103, .12);
  --color-badge: #705095;
  --color-expert-label: #60417f;
  --color-tool-fill: #f0ebf8;
  /* Compatibility for existing components. */
  --deep-blue: var(--color-link);
  --sidebar-logo-muted: var(--color-text-strong);
  --text-main: var(--color-text);
  --surface-white: var(--color-surface-raised);
  --soft-gray: var(--color-surface-subtle);
  --sidebar-bg: var(--color-surface-subtle);
  --line-gray: var(--color-border-subtle);
  --border-soft: var(--color-border);
  --focus-ring: 0 0 0 3px rgba(116, 94, 181, .15);
}
body.provery-theme { background: var(--color-canvas); color: var(--color-text); }
.provery-theme ::selection { background: var(--color-surface-selected); color: var(--color-text-strong); }
.provery-theme a { color: var(--color-link); }
.provery-theme :is(h1,h2,h3,h4,.field-label) { color: var(--color-text-strong); }
.provery-theme :is(input,textarea,select) { color: var(--color-text); background-color: var(--color-surface-raised); border-color: var(--color-border-input); accent-color: var(--color-link); }
.provery-theme :is(input,textarea)::placeholder { color: var(--color-text-placeholder); opacity: 1; }
.provery-theme :is(button,a,input,textarea,select,summary):focus-visible { outline: 2px solid var(--color-focus); outline-offset: 3px; }
.provery-theme :is(input,textarea,select):focus { border-color: var(--color-focus); box-shadow: var(--focus-ring); }

/* Identity, navigation and search: restrained navy, no active underline. */
.theme-community .community-wordmark,
.theme-community .community-wordmark strong,
.theme-community .community-wordmark .wordmark-korean { color: var(--color-text-strong); }
.theme-community .community-wordmark :is(.wordmark-tagline,.wordmark-description) { color: var(--color-text-muted); }
.theme-community .portal-nav { background: var(--color-surface); border-color: var(--color-border); box-shadow: var(--shadow-surface); }
.theme-community .portal-nav .menu-btn { color: var(--color-text-secondary); }
.theme-community .portal-nav .menu-btn.active { color: var(--color-link); background: transparent; box-shadow: none; }
.theme-community .portal-nav .menu-btn:hover { color: var(--color-link); background: var(--color-surface-subtle); }
.theme-community .hero-search-input { background: var(--color-surface-raised); color: var(--color-text); border-color: var(--color-border-input); }
.theme-community .hero-search-btn { background: var(--color-action); color: var(--color-on-action); border-color: var(--color-link); }
.theme-community .hero-search-btn:hover { background: var(--color-action-hover); }
.theme-community .header-search-options { color: var(--color-text-secondary); }
.theme-community .header-search-options .search-options { background: var(--color-surface-raised); border-color: var(--color-border); box-shadow: var(--shadow-floating); }
.theme-community :is(.question-board-links,.reading-post .post-board-nav) { border-color: var(--color-rule-strong); }
.theme-community :is(.question-board-links a,.post-board-nav a) { color: var(--color-text-strong); border-color: var(--color-border-subtle); }
.theme-community :is(.question-board-links a:hover,.post-board-nav a:hover,.post-board-nav a[aria-current="page"]) { background: var(--color-surface-selected); color: var(--color-link); }
.theme-community .question-board-links .topic-hover-example { color: var(--color-text-secondary); border-color: var(--color-border); }
.theme-community .question-board-links .topic-hover-example small { color: var(--color-text-muted); }

/* Community boards retain their existing geometry and row rhythm. */
.theme-community .topic-board { background: var(--color-surface); border-color: var(--color-border); box-shadow: var(--shadow-surface); }
.theme-community .topic-board-header { border-top-color: var(--color-border); }
.theme-community .topic-board-header h3 { color: var(--color-text-strong); }
.theme-community .topic-board-header .topic-heading p { color: var(--color-text-secondary); }
.theme-community :is(.topic-list-heading,.topic-list-heading button) { color: var(--color-text-muted); }
.theme-community .topic-list-heading b { color: var(--color-link); }
.theme-community .topic-posts { background: transparent; border-color: var(--color-border-subtle); }
.theme-community .topic-posts .latest-item { border-color: var(--color-border-subtle); }
.theme-community :is(.latest-item:hover,.board-table tbody tr:hover) { background: var(--color-surface-hover); }
.theme-community :is(.topic-posts .post-title-btn,.board-table .post-title-btn) { color: var(--color-text); }
.theme-community :is(.topic-posts .post-title-btn:hover,.board-table .post-title-btn:hover) { color: var(--color-link); }
.theme-community .topic-posts .latest-item-date { color: var(--color-text-muted); }
.theme-community .topic-ask { background: var(--color-surface-subtle); color: var(--color-link); border-color: var(--color-border); }
.theme-community .topic-ask:hover { background: var(--color-surface-selected); }
.theme-community .title-meta { background: var(--color-badge); color: #fff; }
.theme-community .title-meta.is-empty { background: #8b8596; color: #fff; }
.theme-community :is(.new-badge,.post-new) { background: var(--color-success-soft); color: var(--color-success); }
.theme-community :is(.board-section,.member-activity-panel,.post-modal,.write-panel.open,.post-edit-form) { background: var(--color-surface); border-color: var(--color-border); box-shadow: var(--shadow-surface); }
.theme-community #homeCommunitySection:not([hidden]) ~ #integratedBoard { background: transparent; box-shadow: none; }
.theme-community :is(.board-wrap,.site-footer) { background: transparent; }
.theme-community .board-header { border-color: var(--color-border); }
.theme-community :is(.board-title,.latest-card-title,.post-modal-title) { color: var(--color-text-strong); }
.theme-community :is(.board-subtitle,.post-meta,.post-edit-note,.member-activity-caption,#memberActivityStatus) { color: var(--color-text-muted); }
.theme-community .board-table { border-color: var(--color-border); }
.theme-community .board-table th { background: var(--color-surface-subtle); color: var(--color-text-secondary); border-color: var(--color-border); }
.theme-community .board-table td { color: var(--color-text-muted); border-color: var(--color-border-subtle); }
.theme-community .post-subcategory-tag { background: var(--color-surface-selected); color: var(--color-text-secondary); }

/* Account panel, tools and main actions. Provider brand colors stay intact. */
.theme-community :is(.portal-login,.portal-login.is-member) { background: var(--color-surface); border-color: var(--color-border); box-shadow: var(--shadow-surface); }
.theme-community .portal-login.is-member { border-top-color: var(--color-rule-strong); }
.theme-community :is(.portal-login.is-member h2,.member-identity,.member-activity-links) { border-color: var(--color-border-subtle); }
.theme-community .member-identity #welcomeText { color: var(--color-text-strong); }
.theme-community .member-avatar { background: var(--color-surface-selected); color: var(--color-text-muted); }
.theme-community .member-identity .member-avatar:hover { background: var(--color-surface-hover); }
.theme-community :is(.member-joined,.member-verification-status,.portal-login p,.password-help,.member-grade-row>span) { color: var(--color-text-muted); }
.theme-community :is(.member-grade-row .member-category-label,.member-activity-links strong,.member-activity-links button,.account-actions button,.account-actions a) { color: var(--color-link); }
.provery-theme :is(.auth-btn,.ghost-btn,.write-cancel-btn,.mini-btn,.page-btn,.search-clear,.expert-entry,.quick-tools button,.quick-tool-dialog button,.media-preview button) { background: var(--color-surface-raised); color: var(--color-text-secondary); border-color: var(--color-border-input); }
.provery-theme :is(.auth-btn:hover,.ghost-btn:hover,.write-cancel-btn:hover,.mini-btn:hover,.page-btn:hover,.search-clear:hover,.expert-entry:hover,.quick-tools button:hover,.quick-tool-dialog button:hover) { background: var(--color-surface-hover); color: var(--color-link); border-color: var(--color-focus); }
.provery-theme :is(.write-btn,.sidebar-write,#openLoginBtn,.auth-btn.primary,.page-btn.active,.quick-tool-dialog .tool-primary) { background: var(--color-action); color: var(--color-on-action); border-color: var(--color-link); }
.provery-theme :is(.write-btn:hover,.sidebar-write:hover,#openLoginBtn:hover,.auth-btn.primary:hover,.quick-tool-dialog .tool-primary:hover) { background: var(--color-action-hover); color: var(--color-on-action); border-color: var(--color-action-hover); }
.provery-theme :is(.write-btn:active,.sidebar-write:active,.hero-search-btn:active) { background: var(--color-action-pressed); }
.theme-community .sidebar-write:disabled,.theme-community .sidebar-write:disabled:hover,
.provery-theme :is(.write-btn:disabled,.sidebar-write:disabled,.auth-btn:disabled,.mini-btn:disabled,#editOwnPost:disabled) { background: var(--color-disabled-bg); color: var(--color-disabled-text); border-color: var(--color-border); box-shadow: none; }
.theme-community :is(.post-success-toast,.quick-tool-body output) { color: var(--color-link); }
.theme-community .post-success-toast { background: var(--color-action); color: var(--color-on-action); box-shadow: var(--shadow-floating); }

/* Reading and writing: paper surface, quiet metadata, a distinct tint for mine. */
.theme-community :is(.post-content,.post-modal-content,.comment-item,.building-overview-editor) { background: transparent; color: var(--color-text); border-color: var(--color-border-subtle); }
.theme-community .post-page.is-mine .post-modal-head { background: var(--color-mine); border-color: var(--color-border); }
.theme-community :is(.post-modal-header,.post-meta,.comment-head-row,.comment-empty,.comment-media-composer) { border-color: var(--color-border-subtle); }
.theme-community .comment-main { background: var(--color-surface-subtle); }
.theme-community .comment-item.is-mine .comment-main { background: var(--color-mine); box-shadow: inset 3px 0 var(--color-mine-border); }
.theme-community .comment-item.is-mine .comment-avatar { color: var(--color-mine-border); }
.theme-community .comment-avatar { color: var(--color-border-input); }
.theme-community :is(.comment-author,.comment-body) { color: var(--color-text); }
.theme-community :is(.comment-meta,.comment-tool-btn,.comment-empty,.comment-length-hint,.comment-edit-hint,#commentMediaHelp,#commentMediaStatus) { color: var(--color-text-muted); }
.theme-community :is(.own-content-label,.response-kind-label) { background: var(--color-surface-selected); color: var(--color-link); }
.theme-community .comment-owner-label { background: var(--color-success-soft); color: var(--color-success); }
.theme-community .comment-just-added .comment-main { outline-color: var(--color-mine-border); }
.theme-community .comment-input[readonly] { background: var(--color-surface-subtle); color: var(--color-text-muted); }
.theme-community :is(.post-media-composer,.post-building-overview,.media-preview,.attachment-block) { background: var(--color-surface-subtle); border-color: var(--color-border); }
.theme-community :is(.post-media-composer input,.post-edit-form input,.post-edit-form textarea,#memberNickname,#verificationForm input,#verificationForm select,#buildingOverviewFields input) { background: var(--color-surface-raised); border-color: var(--color-border-input); color: var(--color-text); }
.theme-community #buildingOverviewFields input::placeholder { color: var(--color-text-placeholder); }
.theme-community #buildingOverviewFields input:focus { border-color: var(--color-focus); outline-color: var(--color-focus); }
.theme-community :is(.overview-help,.overview-field>label,.overview-label,.overview-label-hint,.overview-unit span,.overview-field small,#postMediaHelp,.post-media-gallery figcaption,.post-building-overview dt) { color: var(--color-text-muted); }
.theme-community :is(.overview-help strong,#postMediaStatus,.post-building-overview dd,.submission-status,.search-result-status,.quick-auth-status) { color: var(--color-link); }
.theme-community :is(.write-panel-notice,.connection-notice,.compose-lock-note) { background: var(--color-warning-soft); border-color: var(--color-accent); color: var(--color-warning); }
.theme-community .write-panel-notice-text { color: var(--color-warning); }
.theme-community .write-panel-notice a { color: var(--color-link); }
.theme-community :is(.muted,.quick-auth-note,.quick-auth-intro,.member-type-help,.verification-help,.verification-footer,.verification-process,.verification-intro,.verification-eyebrow) { color: var(--color-text-muted); }

/* Dialogs and membership: preserve the general/practitioner white choices. */
.provery-theme :is(.auth-modal,.verification-modal,.quick-tool-dialog,.site-guide-dialog) { background: var(--color-surface); color: var(--color-text); border-color: var(--color-border); box-shadow: var(--shadow-floating); }
.provery-theme :is(.auth-modal-overlay,.modal-overlay) { background-color: var(--color-overlay); }
.provery-theme :is(.quick-tool-dialog,.site-guide-dialog)::backdrop { background: var(--color-overlay); }
.theme-community :is(.auth-modal-header,.site-guide-header,.quick-tool-dialog header,.verification-footer,.verification-process,.auth-alternatives) { border-color: var(--color-border-subtle); }
.theme-community .auth-divider { color: var(--color-text-muted); }
.theme-community .auth-divider::before,.theme-community .auth-divider::after { background: var(--color-border); }
.theme-community .member-type-choices span { color: var(--color-text-secondary); background: var(--color-surface-raised); border-color: var(--color-border-input); }
.theme-community .member-type-choices [data-requires-verification=true] span,
.theme-community #openExpertVerification { background: var(--color-surface-selected); color: var(--color-link); border-color: var(--color-mine-border); }
.theme-community .member-type-choices input:checked+span { color: var(--color-link); border-color: var(--color-link); background: var(--color-surface-selected); }
.theme-community .member-type-choices input:is([value=general],[value=practitioner])+span { background: var(--color-surface-raised); }
.theme-community .expert-badge { color: var(--color-link); background: var(--color-surface-selected); border-color: var(--color-mine-border); }
.theme-community .expert-badge[data-group=practitioner] { color: var(--color-success); background: var(--color-success-soft); border-color: var(--color-success); }
.theme-community .verification-choices button { background: var(--color-surface-raised); border-color: var(--color-border-input); color: var(--color-text-strong); }
.theme-community .verification-choices button[aria-pressed=true] { background: var(--color-surface-selected); border-color: var(--color-link); }
.theme-community .verification-choices button[data-verification-group=practitioner][aria-pressed=true] { background: var(--color-success-soft); border-color: var(--color-success); }
.theme-community .verification-choices :is(span,small) { color: var(--color-text-secondary); }
.theme-community .verification-status { color: var(--color-link); }
.theme-community :is(#accountNotice,#postEditStatus) { color: var(--color-danger); }
.theme-community #deletePostBtn { color: var(--color-danger); background: var(--color-danger-soft); border-color: var(--color-danger); }
.provery-theme :is(.site-footer,.footer-links a,.footer-contact,.site-footer-disclaimer,.legal-foot) { color: var(--color-text-muted); border-color: var(--color-border); }
.provery-theme :is(.footer-links strong,.site-guide-copy h3,.site-guide-header h2) { color: var(--color-text-strong); }

/* Supporting pages use the same semantic palette. */
.theme-admin :is(header,aside,.stat,.list-panel,.detail-panel,.metric-card,#gate),
.theme-reset main { background: var(--color-surface); border-color: var(--color-border); }
.theme-admin :is(button,input,select,textarea) { color: var(--color-text); background: var(--color-surface-raised); border-color: var(--color-border-input); }
.theme-admin button:hover { background: var(--color-surface-hover); }
.theme-admin :is(.primary,.primary:hover),.theme-reset button { background: var(--color-action); color: var(--color-on-action); border-color: var(--color-link); }
.theme-admin .primary:hover,.theme-reset button:hover { background: var(--color-action-hover); }
.theme-admin :is(aside .active,tr.selected) { background: var(--color-surface-selected); color: var(--color-link); }
.theme-admin :is(.brand,.stat strong,td button),.theme-reset .brand { color: var(--color-text-strong); }
.theme-admin :is(th,.operations-summary span,.badge) { background: var(--color-surface-subtle); color: var(--color-text-secondary); }
.theme-admin :is(td,.pager,.activity li,.suspension-details,#searchForm) { border-color: var(--color-border-subtle); }
.theme-admin :is(td small,.stat span,.page-title p,.nav-group,.empty,.pager>span:first-child,.detail-grid dt) { color: var(--color-text-muted); }
.theme-admin .approved { background: var(--color-success-soft); color: var(--color-success); }
.theme-admin .pending { background: var(--color-warning-soft); color: var(--color-warning); }
.theme-admin .suspended { background: var(--color-danger-soft); color: var(--color-danger); border-color: var(--color-danger); }
.theme-admin :is(.suspension-alert,#status) { color: var(--color-danger); }
.theme-admin #metricsChart :is(polyline,circle) { stroke: var(--color-action-hover); }
.theme-admin #metricsChart circle { fill: var(--color-action-hover); }
.theme-admin #metricsChart line { stroke: var(--color-border); }
.theme-admin #metricsChart text { fill: var(--color-text-muted); }
.legal-page.provery-theme :is(.legal-notice,.legal-contact-box) { background: var(--color-surface-subtle); border-color: var(--color-border); }
.legal-page.provery-theme :is(.legal-section,.legal-table-wrap,.legal-nav,.legal-table td) { border-color: var(--color-border); }
.legal-page.provery-theme .legal-header { border-color: var(--color-link); }
.legal-page.provery-theme :is(.legal-section h2,.legal-section h3,.legal-contact-box strong) { color: var(--color-text-strong); }
.legal-page.provery-theme .legal-table th { background: var(--color-surface-selected); color: var(--color-text-secondary); }
.theme-reset :is(p,small,.back) { color: var(--color-text-secondary); }
@media print { body.provery-theme { background: white; color: black; } }

/* Neutral account navigation with a muted blueberry action accent. */
.theme-community :is(.member-activity-links button,.account-actions button,.account-actions a){color:var(--color-text-secondary)}
.theme-community :is(.member-activity-links button:hover,.account-actions button:hover,.account-actions a:hover){color:var(--color-link)}

/* Preserve the display of context on older replies. */
.response-experience-summary { margin: 8px 0 0; color: var(--color-text-muted); font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }

/* Compact reply composer: instructions stay beside their controls. */
.comment-length-hint { justify-content: flex-end; }
.comment-media-composer:not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.comment-media-composer > label { margin: 0; }
#commentMediaInput { width: 190px; min-width: 0; }
#commentMediaHelp { margin: 0; flex: 1 1 300px; }
#commentMediaPreviews, #commentMediaStatus { flex-basis: 100%; }
#commentMediaPreviews:empty { display: none; }


/* Wordmark: enlarged lettering with fine architectural hatching. */
.theme-community .community-wordmark { display: inline-grid; gap: 0; }
.theme-community .community-wordmark strong { font-size: 44px; line-height: 1.12; letter-spacing: -1.5px; white-space: nowrap; }
.theme-community .community-wordmark .wordmark-hatched { display: inline; margin: 0; padding: 0; border: 0; font: inherit; letter-spacing: inherit; color: var(--color-text-strong); }
@supports (background-clip: text) or (-webkit-background-clip: text) {
 .theme-community .community-wordmark .wordmark-hatched { background: repeating-linear-gradient(135deg, #202124 0, #202124 1.2px, #85898f 1.2px, #85898f 2.8px); background-clip: text; -webkit-background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
}
.theme-community .community-wordmark .wordmark-description { width: 0; min-width: 100%; white-space: nowrap; font-size: 13px; line-height: 1.5; letter-spacing: 0; text-align: left; text-align-last: left; }
@media (max-width: 760px) { .theme-community .community-wordmark strong { font-size: 39px; } }

.theme-community .community-wordmark .wordmark-tagline { position: relative; top: 4px; margin: 0 0 -3px; font-size: 13px; line-height: 1; }

/* Separate new contributions from the preceding conversation. */
.theme-community .comment-item.is-mine .comment-main { background: var(--color-mine); box-shadow: inset 3px 0 var(--color-mine-border); }
.theme-community .comment-form { margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--color-border); }
.theme-community .comment-composer-title { margin: 0 0 12px; color: var(--color-text-strong); font-size: 15px; font-weight: 700; line-height: 1.5; }
.theme-community .comment-input { background: #fff; border-color: var(--color-border-input); box-shadow: 0 1px 3px rgba(66, 48, 103, .04); }
.theme-community .comment-input:focus-visible { border-color: var(--color-link); outline: 2px solid var(--color-surface-selected); outline-offset: 2px; }
@media (max-width: 480px) { .theme-community .comment-form { margin-top: 22px; padding-top: 16px; } }

/* Login stays neutral beside the pale blueberry writing button. */
.theme-community #openLoginBtn { background: #efedf2; border-color: #e2dce9; color: #686071; }
.theme-community #openLoginBtn:hover { background: #e5e0eb; border-color: #d5cddd; color: #5e536b; }
.theme-community #openLoginBtn:active { background: #dad3e2; border-color: #c9bed5; }

.theme-community .portal-nav .menu-list { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 400px) { .theme-community .portal-nav { padding-left: 6px; padding-right: 6px; } .theme-community .portal-nav .menu-btn { font-size: 11px; } }

.theme-community .expert-reply-label { display: inline-block; margin-left: 5px; font-size: 11px; font-weight: 800; color: var(--color-expert-label); white-space: nowrap; }

/* Give the brand and search room above the main navigation. */
.theme-community .community-header { min-height: 124px; padding-top: 12px; padding-bottom: 12px; align-items: center; }
.theme-community .community-wordmark strong { font-size: 48px; }
@media (max-width: 760px) {
 .theme-community .community-header { min-height: 0; padding-top: 14px; padding-bottom: 14px; gap: 12px; }
 .theme-community .community-wordmark strong { font-size: 41px; }
}

/* Align the brand to the content edge and center the keyword field. */
.theme-community .community-header { padding-left: 0; padding-right: 0; position: relative; }
@media (min-width: 1001px) {
 .theme-community .header-search { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 48%; max-width: 540px; margin: 0; }
 .theme-community .header-search-options { position: absolute; left: 100%; margin-left: 8px; }
}

:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind] { border-radius:50%; background:#e7e8eb; color:#fff; display:inline-flex; align-items:center; justify-content:center; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind] svg { width:75%; height:75%; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=practitioner],:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=architect] { background:var(--color-action); color:var(--color-on-action); }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=engineer] { background:#dcebf7; color:#365d79; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=tax_accountant] { background:#dceee6; color:#38644f; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=lawyer] { background:#e7dff3; color:#665181; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=judicial_scrivener] { background:#e5e4f5; color:#555581; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=realtor] { background:#fae8d8; color:#8a5b35; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=appraiser] { background:#dcefeb; color:#336b61; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=civil_servant] { background:#e8edd7; color:#626f37; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=professor] { background:#f2dfe8; color:#85526a; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=other_expert] { background:#f4edcf; color:#80703a; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=business_owner] { background:#e9e1d9; color:#746050; }

:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=fire_business_owner] { background:#f8e0d9; color:#975441; } :is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=equipment_business_owner] { background:#dce8ec; color:#3d6976; }

:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=construction_business_owner] { background:#e9e1d9; color:#746050; }
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=interior_business_owner] { background:#eee1eb; color:#79586f; }

/* Tinted utility surfaces and secondary controls share the same palette. */
.theme-community :is(.vat-field,.fx-rates,.tool-keypad button) { background:var(--color-surface-subtle); }
.theme-community .vat-field.is-source { background:var(--color-surface-selected); }
.theme-community :is(.vat-korean,.fx-dollar,.quick-tool-body p,.quick-tool-body .tool-note) { color:var(--color-text-muted); }
.theme-community :is(.quick-tool-body input,.quick-tool-body select,.site-guide-header button) { border-color:var(--color-border-input); }
.theme-community .topic-symbol { opacity:.88; }

.theme-admin #metricsChart :is(polyline,circle) { stroke:var(--color-link); }
.theme-admin #metricsChart circle { fill:var(--color-link); }

/* Quiet utility fills relate to the stronger writing action. */
.theme-community .quick-tools .quick-tool-items button { background:var(--color-tool-fill); border-color:var(--color-mine-border); }
.theme-community .quick-tools .quick-tool-items button:hover { background:var(--color-action); color:var(--color-on-action); border-color:var(--color-focus); }

/* Align the visible P edge and fit the larger caption to the full brand row. */
.theme-community .community-wordmark .wordmark-name strong { margin-left:-2px; }
.comment-certification-source{display:inline-block;font-size:11px;font-weight:700;color:var(--accent,#705095);background:var(--surface-muted,#f0ebf8);padding:2px 6px;border-radius:3px}
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=master],:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=operations_team]{background:transparent;border-radius:0}
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=master] svg,:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=operations_team] svg{width:100%;height:100%;overflow:visible}
.staff-member-label{font-size:11px;font-weight:800;color:var(--color-expert-label);background:var(--color-surface-selected);border-radius:3px;padding:2px 6px}
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=operations_architect]{background:transparent;border-radius:0}:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind=operations_architect] svg{width:100%;height:100%;overflow:visible}

.theme-admin .suspension-details{background:#faf9fd;border-color:#ddd7e8}
.theme-admin .suspension-details summary{font-weight:700;color:var(--color-text-primary)}
.theme-admin .suspension-form{background:transparent;border:0;padding:0;color:var(--color-text-primary)}
.theme-admin .suspension-actions .danger{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-soft)}

.coffee-avatar-link{cursor:pointer;text-decoration:none;flex-shrink:0}.coffee-avatar-link:hover{box-shadow:0 0 0 3px #dcd2ec}.coffee-avatar-link:focus-visible{outline:2px solid #7c59a8;outline-offset:3px}
/* Every certified profession shares one coffee identity; approval deepens its tone. */
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind]:has(.coffee-symbol){background:#eee8f7;color:#b8a6d0;}
:is(.theme-community,.theme-admin) :is(.comment-avatar,.member-avatar)[data-member-kind][data-coffee-approved=true]:has(.coffee-symbol){background:#ded5ef;color:#594077;}
.inline-video{display:block;width:100%;max-width:720px;margin:14px 0 18px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-subtle);}
.inline-video-viewport{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;min-height:200px;width:100%;background:#eeebf4;color:var(--color-text-muted);}
.inline-video-viewport iframe{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:200px;border:0;}
.inline-video-shorts{max-width:320px;}
.inline-video-shorts .inline-video-viewport{aspect-ratio:9/16;}
.inline-video-note{display:block;padding:8px 12px;font-size:11px;line-height:1.5;color:var(--color-text-secondary);}

.pending-post-title{color:var(--color-text-muted,#777)}.pending-post-label{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:4px;background:#eeeaf5;color:#655181;font-size:11px;white-space:nowrap}

/* Category titles and icons share one accessible board link. */
.theme-community .topic-board-header{grid-template-columns:minmax(0,1fr);}
.theme-community .topic-title-link{display:inline-flex;align-items:center;gap:10px;min-width:0;max-width:100%;color:inherit;text-decoration:none;border-radius:3px;}
.theme-community .topic-title-link span{min-width:0;}
.theme-community .topic-title-link:hover{color:var(--color-primary,#7050a5);}
.theme-community .topic-title-link:hover span{text-decoration:underline;text-underline-offset:4px;}
.theme-community .topic-title-link:focus-visible{outline:2px solid #7050a5;outline-offset:4px;}
