:root{--liac-accent:#057c8d;--liac-accent-2:#3fafac;--liac-heading:#1a202c;--liac-text:#2d3748;--liac-muted:#7A7A7A;--liac-box-bg:#ffffff;--liac-fill:#f7fafc;--liac-box-border:#edf2f7;--liac-line:#cbd2d9;}
.liac-hub { background: var(--liac-page-bg, inherit); color: var(--liac-text, inherit); }
.liac-box { background: var(--liac-box-bg, transparent); border: 1px solid var(--liac-box-border, currentColor); border-radius: 10px; padding: 16px; margin: 0 0 16px; }
.liac-box h3 { color: var(--liac-heading, inherit); }
.liac-muted { color: var(--liac-muted, inherit); }
.liac-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin: 16px 0; }
.liac-code { margin: 8px 0; padding: 8px 12px; border: 1px dashed currentColor; border-radius: 8px; }
.liac-btn { display: inline-block; padding: 8px 16px; border-radius: 8px; border: 1px solid #057c8d; background: #057c8d !important; color: #fff !important; cursor: pointer; font: inherit; text-decoration: none; }
.liac-empty { opacity: 0.7; }
.liac-form { display: grid; gap: 12px; max-width: 520px; }
.liac-form label { display: flex; flex-direction: column; gap: 4px; font-size: 14px; }
.liac-form input, .liac-form select, .liac-form textarea { padding: 8px 10px; border: 1px solid var(--liac-box-border, #ccc); border-radius: 8px; background: var(--liac-box-bg, #fff); color: inherit; font: inherit; }
.liac-note-ok { background: #e8f5e9; border: 1px solid #a5d6a7; color: #1b5e20; padding: 10px 12px; border-radius: 8px; margin-bottom: 12px; }
.liac-note-err { background: #fdeaea; border: 1px solid #f3c6c6; color: #a12020; padding: 10px 12px; border-radius: 8px; margin-bottom: 12px; }
.liac-review { font-size: 12px; border-left: 2px solid var(--liac-box-border, #ccc); padding-left: 8px; margin: 4px 0; }
.liac-rform { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.liac-rform select, .liac-rform input { padding: 6px 8px; border: 1px solid var(--liac-box-border, #ccc); border-radius: 6px; }
.liac-emergency { position: fixed; top: 0; left: 0; right: 0; z-index: 9999; background: #a12020; color: #fff; text-align: center; padding: 8px 12px; font-size: 14px; }
.liac-emergency strong { text-transform: uppercase; letter-spacing: .04em; }
.liac-feed { display: flex; flex-direction: column; gap: 14px; max-width: 640px; }
.liac-fcard { background: var(--liac-box-bg, transparent); border: 1px solid var(--liac-box-border, #ddd); border-radius: 12px; padding: 16px; }
.liac-fcard h3 { margin: 4px 0; color: var(--liac-heading, inherit); }
.liac-factions { margin-top: 8px; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.liac-feed { display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.liac-current { outline: 2px solid #639922; }
.liac-ad { display: inline-block; max-width: 100%; }
.liac-adimg { display: block; width: 100%; height: auto; }
.liac-ad-banner { width: 100%; max-width: 728px; }
.liac-ad-margin { width: 100%; max-width: 300px; }
.liac-ad-inpage { width: 100%; max-width: 336px; }

.liac-member { display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.liac-mcard { background: var(--liac-box-bg, #fff); border: 1px solid var(--liac-box-border, #e5e5e5); border-radius: 12px; padding: 20px; }
.liac-mcard h3 { margin: 0 0 4px; color: var(--liac-heading, inherit); }
.liac-mhead { display: flex; align-items: center; gap: 14px; }
.liac-avatar { width: 48px; height: 48px; border-radius: 50%; background: var(--liac-accent, #295CFF); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 600; }
.liac-mname { font-size: 18px; font-weight: 600; color: var(--liac-heading, inherit); }
.liac-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0; }
.liac-chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--liac-box-border, #ccc); border-radius: 20px; padding: 4px 12px; font-size: 14px; }

.liac-dash { max-width: 760px; }
.liac-dash-head { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.liac-crumb { font-size: 13px; margin-bottom: 14px; }
.liac-crumb a { color: var(--liac-accent, inherit); text-decoration: none; }
.liac-bannerslot { margin: 18px 0; }
.liac-tiny { font-size: 12px; color: var(--liac-muted, #999); margin-top: 28px; text-align: center; }
.liac-tiny a { color: var(--liac-muted, #999); }

.liac-app { max-width: 900px; margin: 0 auto; border: 1px solid var(--liac-box-border, #e2e0d8); border-radius: 12px; overflow: hidden; background: var(--liac-box-bg, #fff); }
.liac-appbar { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--liac-box-border, #eceae2); }
.liac-appbar .n { font-weight: 600; color: var(--liac-heading, inherit); }
.liac-appbody { display: flex; }
.liac-appnav { flex: 0 0 152px; border-right: 1px solid var(--liac-box-border, #eceae2); padding: 12px 8px; display: flex; flex-direction: column; gap: 4px; }
.liac-appnav a { display: block; text-decoration: none; font-size: 14px; color: var(--liac-muted, #555); padding: 8px 12px; border-radius: 8px; }
.liac-appnav a:hover { background: rgba(0,0,0,.05); }
.liac-appnav a.on { background: var(--liac-accent, #295CFF); color: #fff; font-weight: 600; }
.liac-appmain { flex: 1; padding: 18px 20px; min-width: 0; }
.stats2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin: 12px 0; max-width: 360px; }
.stat2 { background: rgba(0,0,0,.03); border-radius: 8px; padding: 12px 14px; }
.stat2 .l { font-size: 12px; color: var(--liac-muted, #777); }
.stat2 .v { font-size: 22px; font-weight: 600; color: var(--liac-heading, inherit); }
@media (max-width: 640px) {
  .liac-appbody { flex-direction: column; }
  .liac-appnav { flex: none; flex-direction: row; flex-wrap: wrap; border-right: 0; border-bottom: 1px solid var(--liac-box-border, #eceae2); }
  .liac-appnav a { padding: 6px 10px; }
}

.liac-titlebar { display: flex; align-items: center; gap: 8px; background: var(--liac-fill, #faf9f6); border-bottom: 1px solid var(--liac-box-border, #eceae2); padding: 8px 12px; }
.liac-dots { display: flex; gap: 5px; }
.liac-dots i { width: 9px; height: 9px; border-radius: 50%; background: var(--liac-line, #ddd); display: inline-block; }
.liac-tt { font-size: 13px; font-weight: 600; color: var(--liac-heading, inherit); }
.liac-navid { display: flex; align-items: center; gap: 8px; padding: 2px 8px 10px; margin-bottom: 6px; border-bottom: 1px solid var(--liac-box-border, #eceae2); font-size: 13px; font-weight: 600; color: var(--liac-heading, inherit); }
.liac-x { border: 0; background: transparent; color: var(--liac-muted, #999); cursor: pointer; font-size: 13px; line-height: 1; padding: 0 0 0 4px; }
.liac-x:hover { color: #a00; }

.liac-logout { margin-top: 8px; padding-top: 12px; border-top: 1px solid var(--liac-box-border, #eceae2); color: var(--liac-accent, #057c8d); }

.liac-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; border-bottom: 1px solid var(--liac-box-border, #eceae2); padding-bottom: 8px; }
.liac-tab { font-size: 13px; text-decoration: none; color: var(--liac-muted, #666); padding: 6px 12px; border-radius: 8px; }
.liac-tab.on { background: var(--liac-accent, #057c8d); color: #fff; }

/* --- dashboard readability: white surfaces, dark text, theme-proof --- */
.liac-app { color: #2d3748; }
.liac-app h3, .liac-app h4, .liac-mname, .liac-tt { color: #1a202c !important; }
.liac-app label { color: #2d3748 !important; }
.liac-app p, .liac-app .stat2 .l { color: #2d3748; }
.liac-app .liac-muted { color: #6b7280 !important; }
.liac-form input, .liac-form select, .liac-form textarea { background: #ffffff !important; color: #1a202c !important; border: 1px solid #cbd2d9 !important; }
.liac-form input::placeholder, .liac-form textarea::placeholder { color: #9aa5b1 !important; }
.liac-appnav a { color: #2d3748 !important; }
.liac-appnav a.on { color: #ffffff !important; }
.liac-tab { color: #2d3748 !important; }
.liac-tab.on { color: #ffffff !important; }
.liac-crumb, .liac-crumb a { color: #057c8d !important; }
.liac-chip { color: #2d3748 !important; }
.liac-stat2 .v, .stat2 .v { color: #1a202c !important; }

.liac-pane { display: none; }
.liac-pane.on { display: block; }
.liac-fieldgroup { display: none; }
.liac-fieldgroup.on { display: block; }

/* ============================================================
   GLOBAL FRONT-END READABILITY (color-controllable)
   Text on every LIA box is dark and visible by default, but reads
   from the Colors admin variables, so LIA Core > Colors controls it.
   Only teal-painted elements (buttons, active menu/tab) stay white.
   ============================================================ */
.liac-app, .liac-feed, .liac-grid, .liac-box, .liac-mcard, .liac-quote,
.liac-wallet, .liac-plans, .liac-directory, .liac-public, .liac-account,
.liac-member, .liac-form,
.liac-app p, .liac-app li, .liac-app td, .liac-app label, .liac-app span, .liac-app a,
.liac-app strong, .liac-app small,
.liac-feed p, .liac-feed li, .liac-feed td, .liac-feed span, .liac-feed a, .liac-feed strong,
.liac-grid p, .liac-grid li, .liac-grid span, .liac-grid a, .liac-grid strong,
.liac-box p, .liac-box li, .liac-box span, .liac-box a, .liac-box strong,
.liac-mcard p, .liac-mcard li, .liac-mcard span, .liac-mcard a, .liac-mcard strong,
.liac-quote p, .liac-quote li, .liac-quote span, .liac-quote a, .liac-quote strong,
.liac-form label, .liac-form p, .liac-form span {
  color: var(--liac-text, #23303e) !important;
}

.liac-app h1, .liac-app h2, .liac-app h3, .liac-app h4,
.liac-feed h1, .liac-feed h2, .liac-feed h3, .liac-feed h4,
.liac-grid h1, .liac-grid h2, .liac-grid h3, .liac-grid h4,
.liac-box h3, .liac-box h4, .liac-mcard h3, .liac-mcard h4,
.liac-quote h3, .liac-quote h4, .liac-tt, .liac-mname {
  color: var(--liac-heading, #111827) !important;
}

.liac-form input, .liac-form select, .liac-form textarea,
.liac-app input, .liac-app select, .liac-app textarea {
  background: var(--liac-box-bg, #ffffff) !important;
  color: var(--liac-heading, #111827) !important;
  border: 1px solid var(--liac-box-border, #cbd2d9) !important;
}
.liac-form input::placeholder, .liac-form textarea::placeholder,
.liac-app input::placeholder, .liac-app textarea::placeholder {
  color: var(--liac-muted, #9aa5b1) !important;
}

/* teal-painted elements keep white text (declared last) */
.liac-app a.liac-btn, .liac-form .liac-btn, .liac-btn {
  color: #ffffff !important;
}
.liac-appnav a.on, .liac-appnav a.on span, .liac-tab.on, .liac-avatar {
  color: #ffffff !important;
}
.liac-crumb, .liac-crumb a { color: var(--liac-accent, #057c8d) !important; }
.liac-muted, .liac-app .liac-muted { color: var(--liac-muted, #6b7280) !important; }

.liac-table { width: 100%; border-collapse: collapse; margin-top: 8px; }
.liac-table th { text-align: left; font-size: 13px; color: var(--liac-muted, #6b7280) !important; border-bottom: 1px solid var(--liac-box-border, #edf2f7); padding: 6px 8px; }
.liac-table td { border-bottom: 1px solid var(--liac-box-border, #f1f1f1); padding: 6px 8px; color: var(--liac-text, #23303e) !important; }

.liac-svc { margin: 8px 0 0; padding-left: 18px; }
.liac-svc li { margin: 2px 0; color: var(--liac-text, #23303e) !important; }

/* ============================================================
   SAFETY NET — no light-on-light anywhere in the plugin.
   Any remaining LIA light surface gets dark, readable text.
   Standalone .liac-empty messages are left alone (they sit on
   the dark page and are correctly light there). Teal buttons and
   active menu/tab keep white text (declared earlier).
   ============================================================ */
.liac-fcard, .liac-fcard p, .liac-fcard span, .liac-fcard a, .liac-fcard li, .liac-fcard div,
.liac-titlebar span, .liac-current, .liac-current p, .liac-current span, .liac-current a {
  color: var(--liac-text, #23303e) !important;
}
.liac-fcard h3, .liac-fcard h4 { color: var(--liac-heading, #111827) !important; }

.liac-video { margin: 12px 0; }

.liac-hub { max-width: 1000px; margin: 0 auto; }
.liac-hub-areas { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 16px; }
.liac-hub-areas .liac-chip.on { background: var(--liac-accent, #057c8d) !important; color: #fff !important; }
.liac-hub-areas a.liac-chip { text-decoration: none; }

.liac-login { max-width: 420px; margin: 0 auto; }
.liac-login h3 { margin: 0 0 12px; color: var(--liac-heading, #1a202c) !important; }
.liac-login label { display: block; margin-bottom: 10px; color: var(--liac-text, #2d3748) !important; font-weight: 500; }
.liac-login input[type="text"], .liac-login input[type="password"] {
  width: 100%; background: #ffffff !important; color: #1a202c !important;
  border: 1px solid var(--liac-box-border, #cbd2d9) !important; border-radius: 8px !important;
  padding: 12px !important; font-size: 16px !important; margin-top: 4px;
}
.liac-login .button, .liac-login input[type="submit"] {
  background: var(--liac-accent, #057c8d) !important; color: #fff !important;
  border: 1px solid var(--liac-accent, #057c8d) !important; border-radius: 8px !important;
  padding: 12px 18px !important; font-weight: 600; font-size: 16px !important; width: 100%; cursor: pointer;
}
.liac-login .login-remember { font-weight: 400; }
.liac-login a { color: var(--liac-accent, #057c8d) !important; }
.liac-paypal { margin-top: 8px; }
.liac-single { max-width: 760px; margin: 0 auto; }

/* readability fix: single-business page + community hub + h1/h2 in cards */
.liac-single, .liac-single p, .liac-single li, .liac-single span, .liac-single div, .liac-single strong, .liac-single td,
.liac-hub, .liac-hub p, .liac-hub li, .liac-hub span, .liac-hub div, .liac-hub strong {
  color: var(--liac-text, #23303e) !important;
}
.liac-single .liac-box, .liac-single .liac-box *, .liac-hub .liac-box, .liac-hub .liac-box * {
  color: var(--liac-text, #23303e) !important;
}
.liac-single h1, .liac-single h2, .liac-single h3, .liac-single h4,
.liac-hub h1, .liac-hub h2, .liac-hub h3, .liac-hub h4,
.liac-box h1, .liac-box h2, .liac-app h1, .liac-app h2,
.liac-single .liac-box h1, .liac-single .liac-box h2, .liac-single .liac-box h3 {
  color: var(--liac-heading, #111827) !important;
}
.liac-single a, .liac-hub a { color: var(--liac-accent, #057c8d) !important; }
/* teal buttons keep white text on these pages too */
.liac-single .liac-btn, .liac-hub .liac-btn { color: #ffffff !important; }
/* the "back to directory" + section headings that sit on the dark page stay light-readable there;
   only text inside white .liac-box is forced dark (handled above) */
