/* Instance-specific additions. Reference layout and breakpoints remain in styles.css. */
.local-instance-note { opacity:.7; font-size:11px; }
.local-instance-note a { color:inherit; text-decoration:none; }
.local-instance-note a:hover { text-decoration:underline; }
.local-community-note,.local-mail-note { font-size:12px;line-height:1.65;color:var(--muted,#777);margin:0 0 16px; }
.local-mail-note { background:var(--surface-subtle,#f7f7f7);border:1px solid var(--border,#e7e7e7);border-radius:10px;padding:12px 14px; }
.local-empty {padding:32px 24px;color:var(--muted,#777);font-size:14px;line-height:1.8;list-style:none;}
.local-news-toggle {margin-top:16px;}
.news-body {overflow-wrap:anywhere;}
.community-cards {display:grid;gap:1.25rem;align-items:start;}
.community-dialog .community-card {min-width:0;max-width:100%;}
.community-dialog .wechat-dialog-label {flex-wrap:wrap;overflow-wrap:anywhere;}
.community-dialog .wechat-dialog-label > span {min-width:0;}
.community-dialog .community-card-description {margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere;}
.community-dialog .wechat-dialog-media {background:#fff;border-radius:var(--radius-sm);overflow:hidden;}
.wechat-float-label {max-width:18rem;overflow:hidden;text-overflow:ellipsis;}
@media (max-width:32rem) {
  .community-dialog .community-cards {grid-template-columns:minmax(0,1fr);gap:1.5rem;}
  .community-dialog .community-card {width:min(100%,260px);}
  .community-dialog .wechat-dialog-close {width:2.75rem;height:2.75rem;}
}

/* Keep clock content in the full second row, including its loading wrapper. */
@media (max-width: 48rem) {
  .clock-bar-now-slot { grid-area: now; min-width: 0; }
  .topbar-inner { gap: .6rem; }
  .topbar .control-btn { min-width: 2.5rem; min-height: 2.5rem; }
  .control-option { min-height: 2.75rem; }
  .reaction-btn { min-height: 2.5rem; }
  .tz-btn, .event-time-btn { min-height: 2.25rem; }
  .email-form input, .email-form select, .email-form textarea { font-size: 16px; }
  .email-form button, .poster-dialog-theme-btn, .poster-dialog-save { min-height: 44px; }
  .modal-close { min-width: 44px; min-height: 44px; }
  .site-footer a { min-height: 36px; display: inline-flex; align-items: center; }
}
@media (max-width: 23rem) {
  .brand { gap: .35rem; }
  .brand-mark { width: 1.65rem; height: 1.65rem; }
  .brand-text strong { font-size: .8rem; white-space: nowrap; }
  .topbar-inner { gap: .35rem; }
  .topbar .control-btn { min-width: 2.25rem; }
}
