/* ============================================================================
   AI DIGEST — Elementor Implementation Stylesheet  (v1.0)
   Loaded site-wide via the aidigest-assets sandbox loader plugin.
   All classes are namespaced  aid-  so they never collide with a theme.
   ============================================================================ */

@import url("https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,500&family=Archivo:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap");

:root{
  --aid-ink:#211C16;
  --aid-paper:#F4EFE3;
  --aid-white:#FFFFFF;
  --aid-rust:#B04A28;
  --aid-paper-warm:#ECE4D3;
  --aid-paper-deep:#E3DDCF;
  --aid-rust-deep:#8F3A1D;
  --aid-ink-soft:#6A6155;
  --aid-hair:#D6CDB8;
  --aid-hair-strong:#C7BDA6;

  --aid-cat-tools:#B04A28;
  --aid-cat-compare:#2F6D5B;
  --aid-cat-howto:#3B5A8C;
  --aid-cat-business:#8A6D2F;

  --aid-serif-display:"Libre Caslon Display", Georgia, "Times New Roman", serif;
  --aid-serif-read:"Newsreader", Georgia, serif;
  --aid-sans:"Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --aid-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;

  --aid-fs-display:60px;  --aid-fs-h1:40px;   --aid-fs-h2:30px;  --aid-fs-h3:18px;
  --aid-fs-standfirst:21px; --aid-fs-body:18px; --aid-fs-small:15px; --aid-fs-micro:11px;

  --aid-s1:4px; --aid-s2:8px; --aid-s3:12px; --aid-s4:16px; --aid-s6:24px;
  --aid-s8:32px; --aid-s11:44px; --aid-s16:64px; --aid-s22:88px;

  --aid-r-ui:5px; --aid-r-pill:999px;
  --aid-rule:1px solid var(--aid-hair);
  --aid-container:1240px; --aid-gutter:24px; --aid-margin:72px; --aid-measure:65ch;
}

/* TYPOGRAPHY HELPERS */
.aid-display{ font-family:var(--aid-serif-display); font-weight:400; font-size:var(--aid-fs-display); line-height:1.0; letter-spacing:-0.02em; color:var(--aid-ink); }
.aid-h1{ font-family:var(--aid-serif-display); font-weight:400; font-size:var(--aid-fs-h1); line-height:1.04; letter-spacing:-0.02em; color:var(--aid-ink); }
.aid-h2{ font-family:var(--aid-serif-display); font-weight:400; font-size:var(--aid-fs-h2); line-height:1.1; letter-spacing:-0.01em; color:var(--aid-ink); }
.aid-crosshead{ font-family:var(--aid-sans); font-weight:700; font-size:16px; line-height:1.2; letter-spacing:0.02em; text-transform:uppercase; color:var(--aid-ink); }
.aid-standfirst{ font-family:var(--aid-serif-read); font-style:italic; font-weight:400; font-size:var(--aid-fs-standfirst); line-height:1.45; color:var(--aid-ink-soft); }
.aid-body{ font-family:var(--aid-serif-read); font-weight:400; font-size:var(--aid-fs-body); line-height:1.62; color:var(--aid-ink); max-width:var(--aid-measure); }
.aid-caption{ font-family:var(--aid-serif-read); font-size:var(--aid-fs-small); color:var(--aid-ink-soft); }

.aid-kicker, .aid-tag, .aid-dateline{
  font-family:var(--aid-mono); font-weight:600; font-size:var(--aid-fs-micro);
  letter-spacing:0.12em; text-transform:uppercase; color:var(--aid-ink-soft);
}
.aid-tag{ letter-spacing:0.16em; }

.aid-logo{ font-size:0; white-space:nowrap; line-height:1; }
.aid-logo b{ font-family:var(--aid-mono); font-weight:600; font-size:38px; color:var(--aid-ink); }
.aid-logo i{ font-family:var(--aid-sans); font-weight:800; font-style:normal; font-size:42px; color:var(--aid-rust); }
.aid-logo em{ font-family:var(--aid-serif-read); font-style:italic; font-weight:500; font-size:46px; color:var(--aid-ink); }

/* BUTTONS */
.aid-btn{
  display:inline-flex; align-items:center; gap:var(--aid-s2);
  font-family:var(--aid-sans); font-weight:600; font-size:14px; line-height:1;
  padding:11px 18px; border-radius:var(--aid-r-ui); cursor:pointer;
  border:1px solid var(--aid-ink); background:transparent; color:var(--aid-ink);
  transition:background .12s ease, color .12s ease, border-color .12s ease;
}
.aid-btn:hover{ background:var(--aid-ink); color:var(--aid-paper); }
.aid-btn--accent{ background:var(--aid-rust); border-color:var(--aid-rust); color:var(--aid-paper); }
.aid-btn--accent:hover{ background:var(--aid-rust-deep); border-color:var(--aid-rust-deep); }
.aid-btn--ghost{ border-color:var(--aid-hair-strong); }
.aid-btn--ghost:hover{ background:var(--aid-ink); color:var(--aid-paper); border-color:var(--aid-ink); }

.aid-readmore{ font-family:var(--aid-sans); font-weight:600; font-size:14px; color:var(--aid-rust); display:inline-flex; align-items:center; gap:6px; }
.aid-readmore:hover{ color:var(--aid-rust-deep); }

.aid-chip{ font-family:var(--aid-sans); font-weight:600; font-size:13px; color:var(--aid-ink); padding:7px 15px; border:1px solid var(--aid-hair-strong); border-radius:var(--aid-r-pill); white-space:nowrap; cursor:pointer; transition:background .12s, color .12s, border-color .12s; }
.aid-chip:hover{ border-color:var(--aid-ink); }
.aid-chip.is-active{ background:var(--aid-ink); color:var(--aid-paper); border-color:var(--aid-ink); }

/* RULES & SURFACES */
.aid-rule{ border:0; border-top:var(--aid-rule); }
.aid-surface-cream{ background:var(--aid-paper); }
.aid-surface-white{ background:var(--aid-white); }
.aid-surface-warm{ background:var(--aid-paper-warm); }
.aid-surface-ink{ background:var(--aid-ink); color:var(--aid-paper); }
.aid-surface-ink .aid-h1, .aid-surface-ink .aid-h2, .aid-surface-ink .aid-display{ color:var(--aid-paper); }

/* CARD */
.aid-card{ display:block; }
.aid-card__media{ display:block; width:100%; border-radius:var(--aid-r-ui); overflow:hidden; margin-bottom:var(--aid-s4); }
.aid-card__media img{ display:block; width:100%; height:auto; }
.aid-card__title{ font-family:var(--aid-serif-display); font-weight:400; font-size:22px; line-height:1.14; letter-spacing:-0.01em; color:var(--aid-ink); margin:10px 0 8px; transition:color .12s; }
.aid-card:hover .aid-card__title{ color:var(--aid-rust); }
.aid-card__deck{ font-family:var(--aid-serif-read); font-size:16px; line-height:1.5; color:var(--aid-ink-soft); }

/* ASIDE MODULES */
.aid-module{ background:var(--aid-paper-warm); padding:var(--aid-s8); border-top:3px solid var(--aid-rust); border-radius:0 0 var(--aid-r-ui) var(--aid-r-ui); }
.aid-module--brief{ border-top-color:var(--aid-rust); }
.aid-module__title{ font-family:var(--aid-serif-display); font-weight:400; font-size:24px; color:var(--aid-ink); margin-bottom:var(--aid-s2); }
.aid-module--quote{ background:var(--aid-ink); color:var(--aid-paper); border-top-color:var(--aid-cat-compare); }
.aid-module--quote blockquote{ font-family:var(--aid-serif-read); font-style:italic; font-size:22px; line-height:1.36; color:var(--aid-paper); }
.aid-module--quote .aid-attrib{ font-family:var(--aid-mono); font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:#b8ad9b; margin-top:var(--aid-s4); }

/* FORM FIELDS */
.aid-field label{ display:block; font-family:var(--aid-sans); font-weight:600; font-size:12px; letter-spacing:0.04em; text-transform:uppercase; color:var(--aid-ink-soft); margin-bottom:7px; }
.aid-field input, .aid-field select, .aid-field textarea{ width:100%; font-family:var(--aid-serif-read); font-size:16px; color:var(--aid-ink); background:var(--aid-white); border:1px solid var(--aid-hair-strong); border-radius:var(--aid-r-ui); padding:12px 14px; }
.aid-field input:focus, .aid-field select:focus, .aid-field textarea:focus{ outline:2px solid var(--aid-rust); outline-offset:1px; border-color:transparent; }

/* CATEGORY ACCENT HELPERS */
.aid-accent-tools{ --aid-accent:var(--aid-cat-tools); }
.aid-accent-compare{ --aid-accent:var(--aid-cat-compare); }
.aid-accent-howto{ --aid-accent:var(--aid-cat-howto); }
.aid-accent-business{ --aid-accent:var(--aid-cat-business); }
.aid-dot{ display:inline-block; width:7px; height:7px; border-radius:var(--aid-r-pill); background:var(--aid-accent, var(--aid-rust)); }
.aid-toprule{ border-top:3px solid var(--aid-accent, var(--aid-rust)); }

/* LINKS */
.aid-scope a{ color:inherit; text-decoration:none; transition:opacity .12s ease; }
.aid-scope a:hover{ opacity:0.7; }
.aid-scope a.aid-link{ color:var(--aid-rust); }

/* CANONICAL GROUND = WHITE (redesign decision #2) */
body{ background:var(--aid-white); color:var(--aid-ink); }
