/* ============================================================================
   FinnWald — brand overrides (from finnwald.nl theme tokens)
   Source: wp-content/themes/finnwald-child/assets/css/styles.min.css
   ============================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Noto+Serif+Display:wght@600;700&display=swap');

:root {
  /* Accent = terracotta CTA (knoppen op finnwald.nl) */
  --client-accent:       #c26234;
  --client-accent-ink:   #a4532c;
  --client-accent-glow:  rgba(194, 98, 52, 0.20);
  --client-gradient:     linear-gradient(110deg, #c26234, #e3c4b6);

  /* FinnWald palette */
  --fw-green:            #203d2e;
  --fw-green-dark:       #11291d;
  --fw-green-light:      #899f72;
  --fw-cream:            #f4efea;
  --fw-cream-clear:      #faf8f5;
}

/* Typography — alleen Corporate (standaard FinnWald) */
[data-theme="corporate"] {
  --client-font-display: "Noto Serif Display", Georgia, "Times New Roman", serif;
  --client-font-sans:    "Montserrat", "Schibsted Grotesk", system-ui, sans-serif;
  --client-font-mono:    "Geist Mono", ui-monospace, monospace;
}

/* App shell — strakkere rhythm (niet op login) */
body:not(.fw-login-page) .main {
  padding: 16px 22px 40px;
}
body:not(.fw-login-page) .topbar {
  margin-bottom: 14px;
}
body:not(.fw-login-page) .page-header {
  margin-bottom: 18px;
}
body:not(.fw-login-page) .op-hero {
  padding: 14px 18px;
  margin-bottom: 14px;
}
body:not(.fw-login-page) .stat-card {
  padding: 16px 18px;
}
body:not(.fw-login-page) .section-card {
  padding: 16px 18px;
}
body:not(.fw-login-page) .sidebar {
  padding: 16px 12px;
}
body:not(.fw-login-page) .nav-section {
  margin-top: 16px;
}
body:not(.fw-login-page) .nav-item {
  padding: 8px 10px;
}
body:not(.fw-login-page) [data-anim] {
  opacity: 1;
  transform: none;
  filter: none;
  clip-path: none;
}
.theme-toggle.theme-locked {
  cursor: default;
  pointer-events: none;
}
.theme-toggle.theme-locked .corp {
  display: block;
}

/* Sidebar — FinnWald beeldmerk (vierkant icoon) */
.sidebar .brand-mark .mark-img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  border-radius: 7px;
}

/* Login + auth surfaces */
body.fw-login-page {
  --canvas: var(--fw-cream);
  --surface: var(--fw-cream-clear);
}
body.fw-login-page .auth-mark {
  width: auto;
  min-width: 200px;
  max-width: 240px;
  height: auto;
  padding: 14px 16px;
  border-radius: 12px;
  background: var(--fw-green);
  border: none;
  box-shadow: 0 8px 28px rgba(17, 41, 29, 0.22);
}
body.fw-login-page .auth-mark .mark-img {
  width: 100%;
  height: auto;
  max-height: 52px;
  animation: none;
}
body.fw-login-page .auth-mark::after { display: none; }
body.fw-login-page .auth-name { display: none; }
body.fw-login-page .auth-sub {
  font-family: var(--client-font-sans);
  letter-spacing: 0.22em;
  color: var(--fw-green-dark);
}
body.fw-login-page .auth-lead {
  font-family: var(--client-font-sans);
}
body.fw-login-page .auth-lead .i {
  font-family: var(--client-font-display);
  font-style: italic;
}
body.fw-login-page .instrument-panel.auth-rail {
  background: linear-gradient(165deg, var(--fw-green) 0%, var(--fw-green-dark) 100%);
  --ip-ink: #f4efea;
  --ip-mut: rgba(244, 239, 234, 0.78);
  --ip-faint: rgba(244, 239, 234, 0.58);
  border: none;
  box-shadow: none;
}
body.fw-login-page .instrument-panel.auth-rail::after {
  background-image: none;
}
body.fw-login-page .instrument-panel.auth-rail::before {
  background: var(--client-accent);
  opacity: 0.9;
}
body.fw-login-page .instrument-panel.auth-rail .ip-num,
body.fw-login-page .rail-hero .rh-num,
body.fw-login-page .rail-hero .rh-num .ip-num {
  color: #fff !important;
}
body.fw-login-page .rail-line .rl-name {
  color: var(--ip-ink);
}
body.fw-login-page .rail-line .rl-val {
  color: var(--ip-mut);
}
body.fw-login-page .rail-line {
  border-bottom-color: rgba(255, 255, 255, 0.12);
}
body.fw-login-page .rail-kicker,
body.fw-login-page .rail-hero .rh-sub {
  color: var(--ip-mut) !important;
}
body.fw-login-page .rail-hero .rh-cap,
body.fw-login-page .rail-clock,
body.fw-login-page .rail-foot .rf-text {
  color: var(--ip-faint) !important;
}
body.fw-login-page .auth-rail::after {
  background: var(--client-accent);
  opacity: 0.85;
  box-shadow: 0 0 12px var(--client-accent-glow);
}
body.fw-login-page .rail-hero .rh-under {
  background: var(--client-accent);
  box-shadow: 0 0 10px var(--client-accent-glow);
}
body.fw-login-page .rail-hero .rh-sub span {
  color: var(--fw-green-light) !important;
}
body.fw-login-page .auth-card {
  background: #fff;
}
body.fw-login-page .auth-form .field label {
  color: var(--fw-green-dark);
  font-weight: 600;
}
body.fw-login-page .auth-form .field .lbl-hint {
  color: var(--ink-muted);
}
body.fw-login-page .auth-form .input {
  font-family: var(--client-font-sans);
  border-radius: 10px;
  color: var(--ink-strong);
  background: #fff;
  border-color: rgba(17, 41, 29, 0.2);
}
body.fw-login-page .auth-form .input::placeholder {
  color: rgba(28, 28, 28, 0.4);
}
body.fw-login-page .auth-lead {
  color: var(--ink-body);
}
body.fw-login-page .auth-foot .stamp {
  color: var(--ink-muted);
}
body.fw-login-page .btn-primary {
  border-radius: 15px;
  font-family: var(--client-font-sans);
  font-weight: 600;
  letter-spacing: 0.02em;
}
