/*
Theme Name: Vind ik leuk Button
Template: legal-base
Author: Onlino
Description: Child-thema voor vindikleukbutton.nl (facebook-tools, nl). Retro-web / brutalist ontwerp, tool-first.
Version: 3.0.0
*/

/* === Palet: warm papier, bijna-zwarte inkt, felle magenta als accentkleur.
   Bewust ver van Facebook-blauw (#1877F2) om merkverwarring te vermijden.
   Geen gradients, geen blur-schaduwen, geen afgeronde hoeken. === */
:root{
  --paper:      #F2EFE6;
  --paper-2:    #E8E4D8;
  --ink:        #16130F;
  --ink-2:      #4A443B;
  --rule:       #16130F;
  --spot:       #E8246E;
  --spot-2:     #FFD23F;
  --warn:       #B4341C;

  --accent:        #E8246E;
  --accent-rgb:    232,36,110;
  --accent-2:      #E8246E;
  --accent-2-rgb:  232,36,110;
  --accent-3:      #16130F;
  --accent-3-rgb:  22,19,15;
  --accent-light:  #FFD23F;
  --accent-bg:     #F2EFE6;
  --accent-bg-2:   #E8E4D8;
  --accent-bg-3:   #16130F;
  --accent-bg-soft:#F2EFE6;
  --accent-bg-alt: #E8E4D8;

  --mono: ui-monospace,SFMono-Regular,Menlo,Consolas,'Courier New',monospace;
  --sans: -apple-system,BlinkMacSystemFont,'Helvetica Neue',Helvetica,Arial,sans-serif;
}

body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
}

/* ── Header / footer: dikke kaders, niets "SaaS" ────────────────────────── */
.avg-header{
  background:var(--paper);
  border-bottom:3px solid var(--ink);
  box-shadow:none;
}
.avg-nav a{ color:var(--ink);font-weight:600;font-size:14px }
.avg-nav a:hover{ color:var(--spot);text-decoration:underline;text-underline-offset:3px }
.avg-header__cta .btn-dark{
  background:var(--spot);border:2px solid var(--ink);color:#fff;border-radius:0;
  box-shadow:3px 3px 0 var(--ink);font-weight:700;
}
.avg-header__cta .btn-dark:hover{ background:var(--ink);box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px) }
.avg-burger span{ background:var(--ink) }
.avg-mobile-menu{ background:var(--paper);border-bottom:3px solid var(--ink) }
.avg-mobile-menu nav a{ color:var(--ink);border-bottom:1px solid var(--ink) }

.avg-footer{ background:var(--paper-2);border-top:3px solid var(--ink);color:var(--ink-2) }
.avg-footer__logo{ color:var(--ink) }
.avg-footer__tagline,.avg-footer__links a{ color:var(--ink-2) }
.avg-footer__heading{ color:var(--ink);font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;font-size:12px }
.avg-footer__links a:hover{ color:var(--spot) }
.avg-footer__bottom{ color:var(--ink-2);border-top:2px solid var(--ink) }
.vlb-trademark-note{
  font-family:var(--mono);font-size:11.5px;color:var(--ink-2);margin:18px 0 0;line-height:1.6;
  max-width:720px;padding-top:20px;border-top:2px solid var(--ink);
}

.avg-breadcrumbs{ background:transparent;font-family:var(--mono);font-size:12px }
.avg-breadcrumbs ol li,.avg-breadcrumbs a{ color:var(--ink-2) }
.avg-breadcrumbs a:hover{ color:var(--spot) }

.page-hero,.page-body{ background:var(--paper) }
.page-hero h1{ color:var(--ink) }
.page-hero__sub,.prose{ color:var(--ink-2) }
.prose h2,.prose h3,.prose strong{ color:var(--ink) }
.prose a{ color:var(--spot);text-underline-offset:3px }

/* ── Statusbalk: mono regel bovenaan, "machine"-toon, bevat trademark-disclaimer ── */
.rw-status{
  background:var(--ink);color:var(--paper);
  font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
}
.rw-status__row{
  display:flex;gap:26px;flex-wrap:wrap;align-items:center;
  padding:9px 0;
}
.rw-status__row span::before{ content:"/ ";opacity:.5 }
.rw-status a{ color:var(--spot-2);text-decoration:none }
.rw-status a:hover{ text-decoration:underline }

/* ── Paginatitel, asymmetrisch ──────────────────────────────────────────── */
.rw-masthead{ border-bottom:3px solid var(--ink);padding:34px 0 26px }
.rw-masthead__grid{
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:40px;align-items:end;
}
@media (max-width:860px){ .rw-masthead__grid{ grid-template-columns:1fr;gap:20px } }
.rw-masthead h1{
  margin:0;font-size:clamp(34px,5.6vw,62px);line-height:.97;letter-spacing:-.03em;
  font-weight:800;color:var(--ink);text-transform:uppercase;
}
.rw-masthead h1 em{ font-style:normal;color:var(--spot);}
.rw-masthead__note{
  margin:0;font-family:var(--mono);font-size:13px;line-height:1.65;color:var(--ink-2);
  border-left:3px solid var(--spot);padding-left:14px;
}
.rw-masthead__note a{ color:var(--spot);font-weight:700 }

/* ── Toolbar: tekstlinks, geen "app"-tabs ───────────────────────────────── */
.rw-toolbar{
  display:flex;gap:0;flex-wrap:wrap;border-bottom:3px solid var(--ink);
  font-family:var(--mono);font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;
}
.rw-toolbar a{
  padding:11px 18px 11px 0;margin-right:18px;color:var(--ink-2);text-decoration:none;font-weight:700;
  border-bottom:4px solid transparent;margin-bottom:-3px;
}
.rw-toolbar a:hover{ color:var(--ink) }
.rw-toolbar a.is-active{ color:var(--ink);border-bottom-color:var(--spot) }

/* ── De tool: harde kaders, offset-schaduw ──────────────────────────────── */
.rw-tool{ padding:32px 0 44px }
.rw-tool__grid{
  display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:22px;align-items:start;
}
@media (max-width:900px){ .rw-tool__grid{ grid-template-columns:1fr } }

.rw-box{
  background:#fff;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);
}
.rw-box__bar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--ink);color:var(--paper);padding:8px 14px;
  font-family:var(--mono);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
}
.rw-box__body{ padding:20px 18px }

/* Font-generator invoer */
.fg-input-block label{
  display:block;font-family:var(--mono);font-weight:700;font-size:11.5px;text-transform:uppercase;
  letter-spacing:.05em;margin-bottom:8px;color:var(--ink);
}
.fg-input-block textarea{
  width:100%;min-height:80px;padding:12px 14px;border:2px solid var(--ink);border-radius:0;
  font-size:16px;font-weight:600;font-family:var(--sans);background:var(--paper);color:var(--ink);
  resize:vertical;outline:none;
}
.fg-input-block textarea:focus{ background:#fff;box-shadow:3px 3px 0 var(--spot) }

.rw-sub{
  font-family:var(--mono);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;
  color:var(--ink);margin:20px 0 10px;padding-top:14px;border-top:2px solid var(--ink);
}

.fg-results{ display:flex;flex-direction:column;gap:0;max-height:640px;overflow-y:auto }
.fg-row{
  display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:14px;align-items:center;
  padding:11px 0;border-bottom:1px dashed #B9B2A2;
}
.fg-row:last-child{ border-bottom:none }
.fg-row__label{ font-family:var(--mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2) }
.fg-row__output{ min-width:0;font-size:16px;color:var(--ink);word-break:break-word;line-height:1.4 }
.fg-row__copy{
  padding:8px 14px;border:2px solid var(--ink);border-radius:0;background:var(--spot-2);color:var(--ink);
  font-family:var(--mono);font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;
  cursor:pointer;box-shadow:3px 3px 0 var(--ink);white-space:nowrap;transition:none;
}
.fg-row__copy:hover{ background:var(--spot);color:#fff }
.fg-row__copy:active{ transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink) }
.fg-row__copy.is-copied{ background:var(--ink);color:var(--spot-2) }
@media (max-width:640px){
  .fg-row{ grid-template-columns:1fr;gap:6px }
}

.vlb-tool-note{
  font-family:var(--mono);font-size:11.5px;color:var(--ink-2);margin-top:14px;line-height:1.6;
  background:#fff;border:2px solid var(--ink);border-left:8px solid var(--spot);padding:12px 16px;
}

/* ── Sectiescheiding: dikke lijn met label ──────────────────────────────── */
.rw-rule{ border-top:3px solid var(--ink) }
.rw-rule__inner{ max-width:1160px;margin:0 auto;padding:0 24px }
.rw-rule__label{
  display:inline-block;font-family:var(--mono);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  background:var(--ink);color:var(--paper);padding:6px 14px;
}
@media (max-width:640px){ .rw-rule__inner{ padding:0 16px } }

/* ── Toolslijst: volle-breedte rijen, geen tegelrasters ─────────────────── */
.rw-list{ border-bottom:3px solid var(--ink) }
.rw-list__row{
  display:grid;grid-template-columns:minmax(0,32fr) minmax(0,52fr) auto;gap:22px;align-items:baseline;
  padding:18px 0;border-bottom:1px solid #C9C2B2;text-decoration:none;color:inherit;
}
.rw-list__row:hover{ background:var(--spot-2) }
.rw-list__row:last-child{ border-bottom:none }
@media (max-width:760px){ .rw-list__row{ grid-template-columns:1fr;gap:6px;padding:16px 0 } }
.rw-list__name{ font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:0;text-transform:uppercase }
.rw-list__desc{ margin:0;font-size:14px;line-height:1.5;color:var(--ink-2) }
.rw-list__go{ font-family:var(--mono);font-size:12px;font-weight:700;color:var(--spot);white-space:nowrap }
.rw-list__row:hover .rw-list__go{ color:var(--ink) }

/* ── Uitleg: smalle kolom, links uitgelijnd ─────────────────────────────── */
.rw-note{ padding:34px 0 10px }
.rw-note__grid{ display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:40px }
@media (max-width:860px){ .rw-note__grid{ grid-template-columns:1fr;gap:14px } }
.rw-note h2{ margin:0;font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1.15;color:var(--ink) }
.rw-note__body p{ margin:0 0 14px;font-size:15px;line-height:1.72;color:var(--ink-2);max-width:64ch }
.rw-note__body p:last-child{ margin-bottom:0 }
.rw-note__body a{ color:var(--spot);font-weight:600;text-underline-offset:3px }
.rw-note__body code{ font-family:var(--mono);font-size:13px;background:var(--paper-2);border:1px solid var(--ink);padding:1px 5px }

/* ── Journal: tekstlijst met datum, geen kaarten of afbeeldingen ────────── */
.rw-log{ padding:26px 0 46px }
.rw-log__head{ display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:6px }
.rw-log__head h2{ margin:0;font-family:var(--mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink) }
.rw-log__head a{ font-family:var(--mono);font-size:12px;font-weight:700;color:var(--spot);text-decoration:none }
.rw-log__head a:hover{ text-decoration:underline }
.rw-log__item{
  display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:baseline;
  padding:13px 0;border-top:1px solid #C9C2B2;text-decoration:none;color:inherit;
}
.rw-log__item:hover .rw-log__title{ color:var(--spot);text-decoration:underline;text-underline-offset:3px }
@media (max-width:600px){ .rw-log__item{ grid-template-columns:1fr;gap:3px } }
.rw-log__date{ font-family:var(--mono);font-size:11.5px;color:var(--ink-2);text-transform:uppercase }
.rw-log__title{ font-size:16.5px;font-weight:700;line-height:1.35;color:var(--ink);margin:0 }

/* ── Emoji-bibliotheek ───────────────────────────────────────────────────── */
.emo-cats{ display:flex;flex-direction:column;gap:0 }
.emo-cat{ padding:20px 0;border-bottom:1px solid #C9C2B2 }
.emo-cat:first-child{ padding-top:0 }
.emo-cat:last-child{ border-bottom:none }
.emo-cat__title{ font-family:var(--mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-bottom:14px }
.emo-grid{ display:grid;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:6px }
.emo-btn{
  aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:22px;background:#fff;
  border:2px solid var(--ink);border-radius:0;cursor:pointer;position:relative;
}
.emo-btn:hover{ background:var(--spot-2) }
.emo-btn.is-copied::after{
  content:'Gekopieerd';position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:6px;
  background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:10px;font-weight:700;text-transform:uppercase;
  padding:4px 8px;white-space:nowrap;
}
.emo-toast{
  position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;background:var(--ink);color:var(--paper);
  padding:11px 20px;border:2px solid var(--ink);font-family:var(--mono);font-size:12.5px;font-weight:700;text-transform:uppercase;
  z-index:300;transition:all .2s;pointer-events:none;
}
.emo-toast.is-visible{ opacity:1;transform:translateX(-50%) translateY(0) }

/* ── Verjaardagswensen ───────────────────────────────────────────────────── */
.wish-cats{ display:flex;flex-direction:column;gap:0 }
.wish-cat{ padding:24px 0;border-bottom:1px solid #C9C2B2 }
.wish-cat:first-child{ padding-top:0 }
.wish-cat:last-child{ border-bottom:none }
.wish-cat__title{ font-family:var(--mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-bottom:3px }
.wish-cat__desc{ font-size:13.5px;color:var(--ink-2);margin-bottom:16px }
.wish-grid{ display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--ink) }
.wish-card{ padding:14px 0;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:14px }
.wish-card:nth-child(odd){ padding-right:16px;border-right:1px solid var(--ink) }
.wish-card:nth-child(even){ padding-left:16px }
.wish-card p{ font-size:14px;line-height:1.5;color:var(--ink);margin:0 }
.wish-card__copy{
  flex-shrink:0;padding:7px 13px;border:2px solid var(--ink);border-radius:0;background:var(--spot-2);color:var(--ink);
  font-family:var(--mono);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;box-shadow:2px 2px 0 var(--ink);
}
.wish-card__copy:hover{ background:var(--spot);color:#fff }
.wish-card__copy.is-copied{ background:var(--ink);color:var(--spot-2) }
@media (max-width:640px){
  .wish-grid{ grid-template-columns:1fr }
  .wish-card:nth-child(odd){ border-right:none }
  .wish-card:nth-child(even){ padding-left:0 }
}

/* ── Formaten-cheatsheet ─────────────────────────────────────────────────── */
.fmt-dim{ font-family:var(--mono);font-weight:700;color:var(--spot);background:none;border:none;cursor:pointer;padding:0 }
.fmt-note{ font-size:13px;color:var(--ink-2) }
.table-wrap table{ border:2px solid var(--ink);border-collapse:collapse }
.table-wrap th,.table-wrap td{ border-bottom:1px solid var(--ink);font-family:var(--sans) }
.table-wrap th{ font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.05em;background:var(--ink);color:var(--paper) }

/* ── Archieven / blog / kennisbank: consistent blijven ──────────────────── */
.kb-hero,.kb-body,.kb-cta,.basis-section,.faq-section,.latest-section,.seo-section,.home-cta,
.archive-hero,.archive-body,.term-hero,.term-body,.term-faq,.term-related,.post-hero,
.vlb-tool-block,.vlb-tools-row,.vlb-guides,.vlb-faq,.vlb-seo,.vlb-cta{
  background:var(--paper);
}
.ph-title,.kb-section h2,.basis-head h2,.faq-head h2,.latest-head h2,.seo-head h2,.term-hero h1,
.archive-hero h1,.archive-featured__title,.archive-card__title,.post-hero h1,.home-cta h2{ color:var(--ink) }
.ph-lead,.kb-section p,.basis-head p,.faq-head p,.latest-head p,.seo-head p,.archive-hero p,
.archive-featured__excerpt,.archive-card__excerpt,.post-content,.post-meta,.term-definition p{ color:var(--ink-2) }
.kb-card,.basis-card,.latest-card,.archive-card,.archive-featured,.faq-item,.term-faq__item,.term-related__card{
  background:#fff;border:2px solid var(--ink);border-radius:0;box-shadow:none;
}
.kb-card__title,.basis-card__title,.latest-card__title,.term-related__card h3{ color:var(--ink) }

/* Knoppen sitebreed: hoekig, harde offset-schaduw */
.btn{ border-radius:0;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-weight:700 }
.btn:hover{ transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink) }
.btn:active{ transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink) }
.btn-dark{ background:var(--ink);color:var(--paper);border-color:var(--ink) }
.btn-dark:hover{ background:var(--spot) }
.btn-white{ background:#fff;color:var(--ink) }
.btn-outline{ background:transparent;border:2px solid var(--ink);color:var(--ink);box-shadow:none }
.btn-outline:hover{ background:var(--ink);color:var(--paper);box-shadow:3px 3px 0 var(--ink) }

/* ── Fix: netwerkwidget in footer moet leesbaar zijn op ons lichte papier-footer ── */
.avg-network{ border-top-color: rgba(22,19,15,.15); border-bottom-color: rgba(22,19,15,.15); }
.avg-network__label{ color: var(--ink); }
.avg-network__hint{ color: var(--ink-2); }
.avg-network__icon{ background: rgba(22,19,15,.08); color: var(--ink-2); }
.avg-network[open] .avg-network__icon{ background: var(--spot); color: #fff; }
.avg-network__grid a{ color: var(--ink-2); }
.avg-network__grid a:hover{ color: var(--spot); }
