
:root {
  --color-primary: #4b4343;
  --color-accent: #a19688;
  --color-highlight: #ece8d3;
  --color-page: #ffffff;
  --color-surface: #f8f0e3;   
  --color-text: #1a1a1a;
  --color-border: #4b4343;    
  --plate-alpha: 0.88;
  
  --color-primary-rgb: 75, 67, 67;
  --color-primary-hover: #3f3838;
  --color-accent-hover: #887f73;
  --color-on-dark: #ece8d3;        
  --color-on-accent: #1a1a1a;    
  --color-on-highlight: var(--color-text);
  --color-accent-text: var(--color-primary); 
  --color-control-border: #4b4343;  
  
  --color-primary-dark: #4b4343;
  --color-premium: #4b4343;
  --color-premium-dark: #4b4343;
  --color-secondary: #a19688;
  --color-gold: #ece8d3;
  --color-gold-light: #ece8d3;
  --color-bg-page: #ffffff;
  --color-success: #4b4343;
}
body { color: var(--color-text); background: var(--color-page); }



.demo-banner { background: var(--color-primary) !important; color: var(--color-on-dark) !important; font-size: var(--text-sm); line-height: 1.5; }
.demo-banner strong { color: var(--color-on-dark) !important; }
.demo-banner code { background: rgba(255,255,255,.15); color: var(--color-on-dark); padding: 0 4px; border-radius: 4px; font-family: inherit; font-weight: 700; }

input:not([type=checkbox]):not([type=radio]), select, textarea,
.hh-edit-btn, .admin-btn, .hh-pg-btn, .rsvp-pill, .cp-search, .lk-search, .pl-search { border-color: var(--color-control-border) !important; }

.demo-note { max-width: var(--container-max); margin: var(--space-md) auto; padding: var(--space-md) var(--space-xl); background: var(--color-surface); border: 2px solid var(--color-border); border-radius: 12px; }
.demo-note h4 { margin: 0 0 4px; color: var(--color-primary); font-size: var(--text-lg); }
.demo-map-placeholder { width: 100%; box-sizing: border-box; min-height: 300px; height: 100%; display: flex; align-items: center; justify-content: center; background: var(--color-surface); color: var(--color-text); font-weight: 600; border-radius: 8px; }

html body[data-demo-tier] .portal-welcome #portal-admin-link, html body[data-demo-tier] .portal-welcome #portal-admin-link[style] { display: inline-flex !important; }
body[data-demo-tier] #portal-admin-link, body[data-demo-tier] .button--admin { color: var(--color-on-highlight) !important; }

.demo-banner code { background: transparent; color: inherit; text-decoration: underline; text-underline-offset: 3px; padding: 0; }
.rights-role-btn--owner[aria-pressed="true"], .rights-role-btn--board[aria-pressed="true"] { color: var(--color-on-accent) !important; }
.rights-role-btn--board[aria-pressed="true"] { color: var(--color-on-dark) !important; }
.outro__button { color: var(--color-on-highlight) !important; }
p a, li a, .board-member__role, .cta-centered a, [class*="status-pending"] { color: var(--color-accent-text) !important; }
.contact-records-card__address { color: var(--color-on-highlight) !important; }
.auth-panel__submit, .auth-panel__submit.button { color: var(--color-on-accent) !important; }


@media (min-width: 769px) { .main__title-wrap { background-color: rgba(0, 0, 0, 0.62) !important; } .main__title { text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6); } }
@media (max-width: 480px) { .demo-banner { font-size: 12px !important; line-height: 1.35 !important; padding: 6px 10px !important; } }

@media (max-width: 768px) {
  .header__top-row { gap: 8px; }
  .header__logo { flex: 0 1 auto !important; min-width: 0; }
  .header__logo img { height: auto !important; width: 100%; max-width: 411px; max-height: 6rem; }
}
@media (max-width: 480px) {
  .header__actions > .button { display: none !important; }
  .header__menu-portal-link { display: list-item !important; }
}

html, body { background: #ffffff !important; }
body::before { background: #ffffff !important; }

.demo-news-box .demo-news-item { padding: var(--space-sm) 0; border-bottom: 1px solid var(--color-border); }
.demo-news-box .demo-news-item:last-child { border-bottom: 0; }
.demo-news-item__title { margin: 0; font-size: var(--text-md); color: var(--color-primary); }
.demo-news-item__date { margin: 2px 0 4px; font-size: var(--text-sm); color: var(--color-text); }
.demo-news-item__text { margin: 0; color: var(--color-text); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.demo-news-item.is-open .demo-news-item__text { display: block; -webkit-line-clamp: unset; overflow: visible; }
.demo-news-item__more { margin-top: 4px; background: none; border: 0; padding: 0; min-height: 32px; font: inherit; font-weight: 600; color: var(--color-accent-text); text-decoration: underline; cursor: pointer; }
body:has(.admin-bucket:not([hidden])) .demo-news--portal { display: none; }

.demo-sos__title { margin: 0 0 4px; font-size: var(--text-md); color: var(--color-text); }
.demo-sos p { margin: 0; color: var(--color-text); }

.demo-map-caption { margin: var(--space-xs) 0 0; font-size: var(--text-sm); color: var(--color-text); text-align: center; }

.map-wrap, .contact-two-col .map-wrap { flex-direction: column !important; align-items: stretch !important; }
.map-wrap iframe, .contact-two-col .map-wrap iframe { width: 100% !important; flex: 1 1 auto; min-height: 300px; }
.map-wrap .demo-map-caption { flex: 0 0 auto; }
.map-wrap .demo-map-img { display: block; width: 100%; height: auto; border-radius: 8px; }
.demo-map-credit { margin: 2px 0 0; font-size: var(--text-xs); color: var(--color-text); text-align: center; }
@media (min-width: 1024px) {
  
  .contact-two-col .map-wrap .demo-map-img { flex: 1 1 auto; min-height: 300px; height: 100%; object-fit: cover; object-position: 50% 45%; }
}

body.demo-homestead :is(.sbh-block, .admin-section, .admin-subsection, .admin-form-block, .stat-card, .admin-tile, .info-cards__item,
  .amenity-card, .board-member, .next-step-card, .contact-dept-card, .document-card, .demo-news-box, .demo-sos, .demo-value__line,
  .faq-item, .portal-welcome, .admin-dashboard__title, .admin-bucket__title, .form-section__container, .map-wrap, .admin-list-item,
  .rights-section, .rights-glance__item, .cp-panel, .hh-table, .contact-records-card, .community--overlay) { border: 1px solid #4b4343 !important; }

.demo-value__line { margin: 0; padding: var(--space-md) var(--space-lg); background: var(--color-surface); border-radius: 12px;
  font-size: var(--text-lg); line-height: 1.5; color: var(--color-text); text-align: center; }

.demo-sos--portal { margin: var(--space-sm) 0 var(--space-md); padding: var(--space-sm) var(--space-md) !important; }
.demo-sos--portal .demo-sos__title { margin: 0 0 2px; font-weight: 700; font-size: var(--text-md); color: var(--color-text); }
.demo-sos--portal p { margin: 0; color: var(--color-text); }
.demo-template .admin-list-item__date { color: var(--color-text); font-style: italic; }
