:root{--site-accent:#0d6efd;--site-muted:#6c757d;}
body{background:#f8f9fa;color:#1a1d21}
.card{background:#ffffff;color:#1a1d21}
.text-muted{color:#6c757d!important}
.modal-overlay{z-index:1060!important}
.guide-step{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:flex-start}.guide-num{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--site-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;font-size:1rem;line-height:1}
.stat-box{background:#f8f9fa;border-radius:8px;padding:1rem;text-align:center}.stat-box strong{display:block;font-size:1.5rem}
.checklist-styled{list-style:none;padding:0}.checklist-styled li{padding:.75rem 0 .75rem 2rem;border-bottom:1px solid #eee;position:relative}.checklist-styled li::before{content:'✓';position:absolute;left:0;color:var(--site-accent);font-weight:bold}
.quiz-opt{display:block;width:100%;text-align:left;padding:.85rem 1rem;margin:.35rem 0;border:1px solid #dee2e6;background:#fff;border-radius:8px;cursor:pointer}.quiz-opt:hover{border-color:var(--site-accent);background:#f8f9fa}
.drop-cap::first-letter{float:left;font-size:3.5rem;line-height:1;font-weight:700;margin-right:.5rem;color:var(--site-accent)}
.cat-section{margin:3rem 0}.cat-section h2{border-bottom:2px solid var(--site-accent);padding-bottom:.5rem;margin-bottom:1.5rem}
:root {
  --site-bg: #f8f9fa;
  --site-ink: #1a1d21;
  --site-accent: #0d6efd;
  --site-muted: #6c757d;
  --site-card: #ffffff;
  --font-h: 'Space Grotesk', system-ui, sans-serif;
  --font-b: 'Inter', system-ui, sans-serif;
}
body { font-family: var(--font-b); background: var(--site-bg); color: var(--site-ink); }
h1,h2,h3,.article-page h1,.longread-body h2 { font-family: var(--font-h); }
.article-lede { font-size: 1.2rem; line-height: 1.7; margin-bottom: 2rem; color: var(--site-muted); }
.longread-body p { margin-bottom: 1.15rem; line-height: 1.85; max-width: 68ch; }
.longread-body h2 { margin-top: 2.5rem; margin-bottom: 1rem; font-size: 1.5rem; }
.article-pullquote { border-left: 4px solid var(--site-accent); padding: 1rem 1.5rem; margin: 2rem 0; font-style: italic; background: var(--site-card); }
.article-box { background: var(--site-card); border: 1px solid rgba(0,0,0,.08); padding: 1.25rem; margin: 2.5rem 0; border-radius: 8px; }
.article-list { margin: 1rem 0 1.5rem 1.25rem; line-height: 1.8; }
.article-figure img,.card-img,.hero-img { width: 100%; display: block; background: #c8c8c8; object-fit: cover; }
.article-hero-img { max-height: 420px; width: 100%; object-fit: cover; border-radius: 8px; margin: 1.5rem 0 2rem; }
.promo-ribbon { background: var(--site-accent); color: #fff; text-align: center; padding: .5rem; font-size: .82rem; letter-spacing: .04em; }
.badge-sponsored { display: inline-block; background: var(--site-accent); color: #fff; padding: .25rem .75rem; font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; border-radius: 4px; }
.disclaimer-block { margin-top: 3rem; padding: 1.25rem; border: 1px solid rgba(0,0,0,.12); font-size: .88rem; color: var(--site-muted); background: var(--site-card); border-radius: 8px; }
.quiz-wrap { margin: 2.5rem 0; padding: 2rem; background: var(--site-card); border-radius: 12px; box-shadow: 0 4px 24px rgba(0,0,0,.06); }
.quiz-progress { height: 8px; background: #e9ecef; border-radius: 4px; overflow: hidden; margin: 1rem 0; }
.quiz-fill { height: 100%; background: var(--site-accent); width: 0; transition: width .35s ease; }
.quiz-answers button { display: block; width: 100%; text-align: left; margin: .5rem 0; padding: .85rem 1rem; border: 1px solid rgba(0,0,0,.1); background: #fff; cursor: pointer; border-radius: 8px; font: inherit; transition: border-color .2s, transform .15s; }
.quiz-answers button:hover { border-color: var(--site-accent); transform: translateX(4px); }
.hidden { display: none !important; }
.modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.55); display: flex; align-items: center; justify-content: center; z-index: 200; padding: 1rem; }
.modal-overlay[hidden] { display: none !important; }
.modal-panel { background: #fff; max-width: 540px; padding: 1.75rem; border-radius: 12px; max-height: 85vh; overflow: auto; box-shadow: 0 20px 60px rgba(0,0,0,.2); }
.modal-close-btn { float: right; border: none; background: none; font-size: 1.5rem; cursor: pointer; line-height: 1; }
.legal-link { background: none; border: none; color: inherit; cursor: pointer; font: inherit; text-decoration: underline; padding: 0; }
/* Cookie variants */
.cookie-bar-bottom { position: fixed; bottom: 0; left: 0; right: 0; background: #1a1a1a; color: #fff; z-index: 150; box-shadow: 0 -4px 20px rgba(0,0,0,.15); }
.cookie-corner { position: fixed; bottom: 1.5rem; right: 1.5rem; max-width: 280px; background: #fff; padding: 1.25rem; border-radius: 12px; box-shadow: 0 8px 32px rgba(0,0,0,.18); z-index: 150; }
.cookie-slide { position: fixed; bottom: 0; left: 0; right: 0; z-index: 150; }
.cookie-pill { position: fixed; bottom: 1.25rem; left: 50%; transform: translateX(-50%); background: #111; color: #fff; padding: .6rem 1.25rem; border-radius: 999px; z-index: 150; box-shadow: 0 4px 20px rgba(0,0,0,.25); }
.cookie-dark-min { position: fixed; bottom: 1rem; left: 1rem; background: #1a2218; color: #eef2ee; padding: .75rem 1rem; border-radius: 6px; font-size: .85rem; z-index: 150; }
.cookie-left { position: fixed; bottom: 1.5rem; left: 1.5rem; max-width: 260px; background: #fff; padding: 1rem; border-left: 4px solid var(--site-accent); box-shadow: 0 4px 16px rgba(0,0,0,.12); z-index: 150; }
.cookie-top { position: fixed; top: 0; left: 0; right: 0; background: #333; color: #fff; text-align: center; padding: .5rem; font-size: .85rem; z-index: 150; }
.cookie-fab { position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 150; text-align: center; }
.cookie-fab-label { display: block; font-size: .7rem; margin-top: .25rem; }
.cookie-soft { position: fixed; bottom: 1rem; right: 1rem; background: #fdf8f4; border: 2px solid #c45c3e; padding: 1rem 1.25rem; border-radius: 16px; max-width: 300px; z-index: 150; }
.cookie-stripe { position: fixed; top: 0; left: 0; right: 0; background: #e7f1ff; border-bottom: 1px solid #b6d4fe; padding: .35rem 0; z-index: 150; }
.cookie-uikit-dark { position: fixed; bottom: 0; left: 0; right: 0; background: #222; color: #fff; z-index: 150; }
.cookie-sidebar { position: fixed; top: 50%; right: 0; transform: translateY(-50%); width: 200px; background: #fff; padding: 1rem; border: 1px solid #ddd; border-right: none; z-index: 150; }
.cookie-gdpr { position: fixed; bottom: 1.5rem; right: 1.5rem; max-width: 320px; z-index: 150; }
.cookie-modal-prompt { position: fixed; inset: 0; background: rgba(0,0,0,.4); display: flex; align-items: center; justify-content: center; z-index: 150; }
.cookie-sharp { position: fixed; bottom: 0; left: 0; right: 0; background: #000; color: #fff; text-align: center; padding: .75rem; z-index: 150; }
.cookie-elegant { position: fixed; bottom: 0; left: 0; right: 0; background: #fafafa; border-top: 1px solid #e0e0e0; padding: .75rem 0; z-index: 150; }
.cookie-detailed { position: fixed; bottom: 0; left: 0; right: 0; background: #fff; border-top: 1px solid #ddd; padding: .75rem 0; z-index: 150; }
#cookieBar[hidden] { display: none !important; }
.footer-neon { background: #0e1410; color: #eef2ee; }
.footer-news { background: #f4f4f4; padding: 2rem 0; margin-top: 3rem; border-top: 3px double #0066cc; }
.site-header-custom .header-row { display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; max-width: 1100px; margin: 0 auto; }
.site-header-custom nav ul { display: flex; gap: 1.25rem; list-style: none; margin: 0; padding: 0; }
.site-header-custom a { text-decoration: none; color: inherit; }
@media (max-width: 768px) { .cookie-sidebar { display: none; } .longread-body p { max-width: 100%; } }
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}
.modal-overlay[hidden]{display:none!important}
.modal-panel{background:#fff;max-width:540px;width:100%;padding:1.75rem;border-radius:12px;max-height:85vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.modal-close-btn{float:right;border:none;background:none;font-size:1.75rem;line-height:1;cursor:pointer;color:#666}
.promo-tag{display:inline-block;font-size:.78rem;letter-spacing:.04em}
.promo-tag--pill{background:var(--site-accent);color:#fff;padding:.35rem .85rem;border-radius:99px;margin-bottom:1rem}
.promo-tag--corner{position:absolute;top:1rem;right:1rem;background:#fff;border:2px solid var(--site-accent);color:var(--site-accent);padding:.35rem .75rem;border-radius:6px;font-weight:600;z-index:2}
.promo-tag--overlay{background:rgba(0,0,0,.55);color:#fff;padding:.25rem .65rem;border-radius:4px;font-size:.72rem}
.promo-tag--badge{display:inline-block;background:rgba(196,77,14,.12);color:var(--site-accent);padding:.4rem .85rem;border-radius:6px;font-size:.75rem;margin-bottom:1rem}
.promo-tag--underline{border-bottom:2px solid var(--site-accent);padding-bottom:.35rem;color:var(--site-muted);margin-bottom:1.25rem}
.promo-tag--darkband{background:#1a1a1a;color:#f5f5f5;padding:.65rem 1rem;margin-bottom:1.5rem;border-radius:8px}
.promo-tag--mono{font-family:ui-monospace,monospace;font-size:.72rem;color:var(--site-muted);border-top:1px solid #ddd;padding-top:.5rem;margin-bottom:1rem}
.promo-tag--ribbon{float:right;writing-mode:vertical-rl;transform:rotate(180deg);background:#0d6efd;color:#fff;padding:.75rem .45rem;border-radius:6px;font-size:.7rem;margin-left:1rem}
.article-pullquote{border-left:4px solid var(--site-accent);padding:1rem 1.25rem;background:rgba(0,0,0,.03);font-style:italic}
.article-box{background:#ffffff;border:1px solid rgba(0,0,0,.08)}
.home-card-uniform{border-radius:10px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.home-card-uniform:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.1)!important}
.home-card-uniform .card-img-top{height:168px;object-fit:cover}
.stat-box{background:rgba(0,0,0,.04);border-radius:10px;padding:1rem;text-align:center;height:100%}
.stat-box strong{display:block;font-size:1.35rem;color:var(--site-accent)}
.longread h2{margin-top:2rem;margin-bottom:1rem}
.longread aside.article-tip{background:#fff8e6;border-left:4px solid #ffc107;padding:1rem 1.25rem;margin:1.5rem 0;font-size:.95rem}
.cookie-bar-bottom{position:fixed;bottom:0;left:0;right:0;background:#1a1a2e;color:#fff;border-top:1px solid rgba(255,255,255,.12);z-index:1040;box-shadow:0 -4px 20px rgba(0,0,0,.15)}
.cookie-bar-bottom p,.cookie-bar-bottom small{color:#fff}
.cookie-corner{position:fixed;bottom:1rem;left:1rem;max-width:300px;background:#fff;border:1px solid #dee2e6;border-radius:12px;padding:1rem;z-index:1040;box-shadow:0 8px 30px rgba(0,0,0,.12)}
.cookie-pill{position:fixed;bottom:1rem;right:1rem;background:#111;color:#fff;padding:.5rem 1rem;border-radius:99px;z-index:1040;font-size:.85rem}
.cookie-soft{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);background:#fff;border:1px solid #ddd;padding:.75rem 1.25rem;border-radius:12px;z-index:1040;box-shadow:0 8px 24px rgba(0,0,0,.1)}
.cookie-stripe{position:fixed;top:0;left:0;right:0;background:#f8f9fa;border-bottom:1px solid #dee2e6;z-index:1040;padding:.5rem 0}
.cookie-gdpr{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1040;max-width:320px}

body{font-family:'Inter', system-ui, sans-serif;color:#1a1d21;background:#f8f9fa;}
h1,h2,h3,.navbar-brand{font-family:'Space Grotesk', system-ui, sans-serif;}
.hidden{display:none!important;}
