/* Ownr-style theme for the CLIENT portal — one seamless experience with the public intake/start flow.
 * Scoped to body.ownr so it only affects client pages (not the firm/admin portal) and so every rule
 * out-specifies the pages' own single-class inline styles. Cream + forest-green, rounded, friendly. */
body.ownr{
  --bg:#f6f2e9; --ink:#10241d; --muted:#5d6f66; --line:#e7ddcd; --card:#fffdf8;
  --brand:#0f4d38; --brand2:#0b3a2a; --gold:#1c7c54; --blue:#1c7c54; --green:#1c7c54;
  --soft:#fffdf8; --shadow:0 14px 40px rgba(16,42,29,.10);
  background:radial-gradient(circle at 12% -8%,rgba(28,124,84,.10),transparent 32rem),radial-gradient(circle at 92% 0,rgba(15,77,56,.07),transparent 30rem),#f6f2e9 !important;
  font-family:ui-rounded,"SF Pro Rounded","Segoe UI",Inter,system-ui,-apple-system,sans-serif;
}
/* ---- sidebar (hardcoded navy in portal.css) → forest green ---- */
body.ownr .portal-sidebar{background:linear-gradient(180deg,#0f4d38,#0a2e22);color:#eaf3ee;box-shadow:18px 0 40px rgba(16,42,29,.16)}
body.ownr .side-links a,body.ownr .side-topic-link,body.ownr .side-topic-toggle{color:#d7e7df}
body.ownr .side-links a span,body.ownr .side-topic-link span{background:rgba(255,255,255,.10)}
body.ownr .side-links a.active,body.ownr .side-links a:hover,body.ownr .side-topic-link.active,body.ownr .side-topic-link:hover{background:#eaf3ee;color:#0a2e22}
body.ownr .side-links a.active span,body.ownr .side-links a:hover span,body.ownr .side-topic-link.active span{background:#fff}
body.ownr .side-user{color:#cfe2d8}
body.ownr .side-settings,body.ownr .side-logout{color:#eaf3ee;border-color:rgba(255,255,255,.18)}
body.ownr .side-logo .mark,body.ownr .side-brand .mark{background:#fff;color:#0f4d38}
/* ---- top bar ---- */
body.ownr .top{background:rgba(255,253,248,.86);border-bottom:1px solid var(--line)}
body.ownr .brand{color:var(--brand)}
body.ownr .mark{background:linear-gradient(135deg,#0f4d38,#1c7c54);color:#fff}
/* ---- buttons (pill, green) ---- */
body.ownr .btn.primary{background:var(--brand);color:#fff}
body.ownr .btn.gold{background:linear-gradient(135deg,#0f4d38,#1c7c54);color:#fff}
body.ownr .btn.secondary{background:#fffdf8;border:1px solid var(--line);color:var(--brand)}
body.ownr .btn.good{background:#e7f1ea;border:1px solid #bfe0cf;color:#0f4d38}
/* ---- surfaces ---- */
body.ownr .card,body.ownr .panel,body.ownr .kpi,body.ownr .module,body.ownr .sidecard{background:var(--card);border-color:var(--line)}
body.ownr .hero-panel{background:linear-gradient(135deg,#0f4d38,#1c7c54)}
body.ownr .eyebrow{color:var(--brand2)}
body.ownr .split-nav a{background:#fffdf8;border-color:var(--line);color:#3f5249}
body.ownr .split-nav a.active{background:var(--brand);color:#fff;border-color:var(--brand)}
body.ownr .field input,body.ownr .field select,body.ownr .field textarea{border-color:var(--line);background:#fffdf8}
body.ownr .field input:focus,body.ownr .field select:focus,body.ownr .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #bfe0cf}
body.ownr .notice{border-color:#cfe6da;background:#eef6ef;color:#0f4d38}
body.ownr th{background:#f3ede1;color:#5d6f66}
/* ---- incorporation wizard inline classes (.wz/.steps/.btn/.banner/.sh/.pill) ---- */
body.ownr .wz,body.ownr .sh,body.ownr .docprev{border-color:var(--line);background:var(--card)}
body.ownr .wz h2,body.ownr .docprev summary{color:#10241d}
body.ownr .steps .s.active{color:#0f4d38;border-top-color:#1c7c54}
body.ownr .steps .s.done{color:#1c7c54;border-top-color:#1c7c54}
body.ownr .wz .btn,body.ownr button.btn{background:#0f4d38;color:#fff;border-radius:999px}
body.ownr .wz .btn.sec,body.ownr .btn.sec{background:#e7f1ea;color:#0f4d38}
body.ownr .fld input,body.ownr .fld select,body.ownr .fld textarea{border-color:var(--line);background:#fffdf8}
body.ownr .fld input:focus,body.ownr .fld select:focus,body.ownr .fld textarea:focus{outline:none;border-color:#0f4d38;box-shadow:0 0 0 3px #bfe0cf}
body.ownr .banner.info{background:#eef6ef;color:#0f4d38}
body.ownr .banner.ok{background:#e7f1ea;color:#0f6b3f}
body.ownr .pill.low{background:#e7f1ea;color:#0f6b3f}
/* progress bars → green (portal.css hardcodes a blue→cyan fill) */
body.ownr .progress i{background:linear-gradient(90deg,#0f4d38,#1c7c54)}
body.ownr .timeline-item:before{background:#1c7c54}
body.ownr .badge.info{background:#e7f1ea;color:#0f5132}
/* command palette / misc accents stay readable on cream */
body.ownr a{color:inherit}

/* ---- DARK THEME ----------------------------------------------------------
 * body.ownr redefines --bg/--ink/--card/--soft/--line ON THE BODY, which wins over
 * html[data-theme="dark"]'s :root token block for everything inside the page. Without the
 * remap below the client pages kept CREAM tokens (--ink:#10241d, near-black) while
 * portal.css's dark rules that use HARDCODED navy (.card, inputs, th, tr:hover, .btn.primary,
 * .nav a.active, .skeleton) still fired — dark navy surfaces painted with near-black text,
 * inputs effectively invisible. So: remap the ownr tokens to a dark-forest ground, and give
 * every body.ownr rule that bakes in a cream LITERAL a dark counterpart. Background AND
 * colour are routed together so both flip. Light mode is untouched. */
html[data-theme="dark"] body.ownr{
  --bg:#0c1712; --ink:#e8f2ec; --muted:#9db3a8; --line:#244036; --card:#12241d;
  --brand:#7fd6ac; --brand2:#a7e8c6; --gold:#4fbf8b; --blue:#4fbf8b; --green:#4fbf8b;
  --soft:#162b23; --shadow:0 18px 48px rgba(0,0,0,.55);
  background:radial-gradient(circle at 12% -8%,rgba(28,124,84,.16),transparent 32rem),radial-gradient(circle at 92% 0,rgba(79,191,139,.08),transparent 30rem),#0c1712 !important;
}
html[data-theme="dark"] body.ownr .top{background:rgba(12,23,18,.86);border-bottom-color:var(--line)}
/* out-specify portal.css's html[data-theme="dark"] .nav a.active / .btn.primary navy */
html[data-theme="dark"] body.ownr .nav a.active,html[data-theme="dark"] body.ownr .nav a:hover,html[data-theme="dark"] body.ownr .nav button:hover{background:var(--soft);color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] body.ownr .btn.primary{background:#0f5d43;color:#fff}
html[data-theme="dark"] body.ownr .btn.secondary{background:var(--soft);border-color:var(--line);color:var(--brand)}
html[data-theme="dark"] body.ownr .btn.good,html[data-theme="dark"] body.ownr .wz .btn.sec,html[data-theme="dark"] body.ownr .btn.sec{background:#10352a;border-color:#1e5c42;color:#6ee7b7}
html[data-theme="dark"] body.ownr .split-nav a{background:var(--soft);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] body.ownr .split-nav a.active{background:#0f5d43;color:#fff;border-color:#0f5d43}
html[data-theme="dark"] body.ownr :is(input,select,textarea),html[data-theme="dark"] body.ownr .field :is(input,select,textarea){background:#0f201a;border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] body.ownr .field :is(input,select,textarea):focus{border-color:#4fbf8b;box-shadow:0 0 0 3px rgba(79,191,139,.28)}
html[data-theme="dark"] body.ownr .notice{background:#10352a;border-color:#1e5c42;color:#a7e8c6}
html[data-theme="dark"] body.ownr th{background:var(--soft);color:var(--muted)}
html[data-theme="dark"] body.ownr tr:hover td{background:var(--soft)}
html[data-theme="dark"] body.ownr .badge.info{background:#10352a;color:#7fd6ac}
html[data-theme="dark"] body.ownr .skeleton{background:linear-gradient(90deg,#162b23 25%,#1e3a2f 37%,#162b23 63%);background-size:760px 100%}
