:root{
  --bg:#f7f6f0;
  --paper:#ffffff;
  --ink:#171914;
  --muted:#66685f;
  --line:#d7d8d0;
  --line-strong:#aaaC9f;
  --yellow:#f3cc2f;
  --yellow-soft:#fff5be;
  --yellow-faint:#fffbdf;
  --yellow-deep:#806400;
  --shell:1200px;
  --heading:Arial,"Helvetica Neue",Helvetica,sans-serif;
  --sans:Arial,"Helvetica Neue",Helvetica,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
img{display:block;max-width:100%}
button,input{font:inherit}
.shell{width:min(calc(100% - 36px),var(--shell));margin-inline:auto}
.muted{color:var(--muted)}

/* Header: editorial, but still recognisable */
.site-header{position:sticky;top:0;z-index:30;background:#fff;border-top:5px solid var(--yellow);border-bottom:1px solid var(--ink)}
.header-main{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:block;text-decoration:none!important}
.brand-copy{display:flex;flex-direction:column;gap:3px}
.brand-line{display:flex;align-items:baseline;gap:7px;white-space:nowrap}
.brand-line strong{font-family:var(--heading);font-size:1.75rem;line-height:1;font-weight:700;letter-spacing:-.018em}
.brand-line em{font-style:normal;font-size:.84rem;color:var(--muted);font-weight:600}
.brand-copy small{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.header-pill{font-size:.69rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;border:1px solid var(--line-strong);border-left:4px solid var(--yellow);padding:7px 9px;background:#fff}
.header-pill:hover{background:var(--yellow-faint);text-decoration:none}
.category-nav{border-top:1px solid var(--line);background:#fff}
.category-scroll{display:flex;gap:4px;overflow:auto;scrollbar-width:none;align-items:stretch;min-height:43px}
.category-scroll::-webkit-scrollbar{display:none}
.category-scroll a{flex:none;display:flex;align-items:center;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.055em;color:#474940;padding:0 11px;border-bottom:4px solid transparent}
.category-scroll a:hover{background:#f6f5ef;text-decoration:none;color:#000}
.category-scroll a.is-active{background:var(--yellow-soft);border-bottom-color:var(--yellow);color:#111;font-weight:700}

/* Advertisement placeholders */
.ad-strip,.ad-slot{background:#fbfaf5;color:#96978e;border:1px dashed #c9cbc1;display:grid;place-items:center;text-align:center}
.ad-strip{height:60px;margin-block:18px}
.ad-slot{min-height:130px;margin-top:16px}
.ad-slot.small{min-height:90px}
.ad-slot span,.ad-strip span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:.57rem}
.ad-slot strong,.ad-strip strong{display:block;font-size:.64rem;margin-top:2px;font-weight:600}
.article-ad,.feed-ad{min-height:90px;margin:18px 0}

/* Homepage */
.home-grid{display:grid;grid-template-columns:190px minmax(0,1fr) 270px;gap:24px;align-items:start;padding:4px 0 58px}
.left-rail,.right-rail{position:sticky;top:145px}
.rail-card{background:#fff;border:1px solid var(--line);border-top:4px solid #222;padding:15px;margin-bottom:16px}
.rail-card>strong,.rail-title strong{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.095em;margin-bottom:9px}
.rail-card>a{display:block;font-size:.82rem;color:#4e5049;padding:7px 6px;border-top:1px solid #ecece6}
.rail-card>a:first-of-type{border-top:0}
.rail-card>a:hover{background:var(--yellow-faint);text-decoration:none}
.rail-card>a.is-active{background:var(--yellow-soft);font-weight:700;color:#111;border-left:3px solid var(--yellow)}
.yellow-card{border-top-color:var(--yellow);background:var(--yellow-faint)}
.yellow-card h3{font-family:var(--heading);font-size:1.28rem;line-height:1.12;letter-spacing:-.018em;margin:7px 0 8px;font-weight:700}
.yellow-card p{font-size:.8rem;line-height:1.45;margin:0;color:#5f6158}
.mini-kicker,.eyebrow{font-size:.61rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--yellow-deep)}
.rail-links a:before{content:"";display:inline-block;width:6px;height:6px;background:var(--yellow);margin:0 8px 1px 0}
.trending-list{margin:0;padding:0;list-style:none;counter-reset:item}
.trending-list li{counter-increment:item;display:grid;grid-template-columns:24px 1fr;gap:7px;padding:10px 0;border-top:1px solid var(--line);font-family:var(--heading);font-size:.9rem;font-weight:700;line-height:1.28}
.trending-list li:first-child{border-top:0}
.trending-list li:before{content:counter(item);font-family:var(--sans);font-size:.72rem;font-weight:700;color:var(--yellow-deep);padding-top:2px}
.quote-card{border-top-color:var(--yellow)}
.quote-card p{font-family:var(--heading);font-size:.96rem;font-weight:700;line-height:1.42;margin:8px 0 0}

.feed-column{min-width:0}
.feed-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--yellow);padding:16px 17px;margin-bottom:14px}
.feed-intro h1{font-family:var(--heading);font-size:clamp(1.65rem,2.8vw,2.3rem);line-height:1.08;letter-spacing:-.02em;margin:4px 0 0;max-width:19ch;font-weight:700}
.live-badge{white-space:nowrap;font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;color:#5d6058;padding-bottom:2px;font-weight:700}
.live-badge i{display:inline-block;width:7px;height:7px;background:var(--yellow);border:1px solid #9a7e00;margin-right:6px}

/* Feed cards: square, bordered and calm */
.feed-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);margin:0 0 14px;overflow:hidden}
.feed-card:hover{border-color:#b8baaf;border-left-color:var(--yellow)}
.post-meta-row{display:flex;align-items:center;gap:8px;min-height:37px;padding:9px 14px;border-bottom:1px solid var(--line);background:#fbfaf6;font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.post-category{font-weight:700;color:var(--yellow-deep)}
.post-category:hover{text-decoration:none;color:#4b3b00}
.post-separator{color:#aaaC9f}
.post-author-name{font-weight:700;color:#4a4c45}
.post-date{margin-left:auto;color:#85877f}
.feed-link{display:block;text-decoration:none!important}
.feed-copy{padding:15px 16px 14px}
.feed-copy h2{font-family:var(--heading);font-size:clamp(1.35rem,2.25vw,1.78rem);font-weight:700;letter-spacing:-.03em;line-height:1.12;margin:0 0 8px}
.feed-copy p{margin:0;color:#575950;font-size:.92rem;line-height:1.52;max-width:65ch}
.feed-image{width:100%;aspect-ratio:16/9;object-fit:cover;background:#f0efe9;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}
.social-row{display:flex;align-items:center;gap:13px;min-height:39px;padding:8px 14px;background:#fbfaf6;font-size:.67rem;color:#73766d}
.social-row span+span:before{content:"·";margin-right:13px;color:#aaaC9f}
.social-row a{margin-left:auto;font-weight:700;color:#272922;border-bottom:2px solid var(--yellow)}
.social-row a:hover{text-decoration:none;background:var(--yellow-soft)}
.load-more{min-height:48px;background:var(--yellow);border:1px solid #b99a11;border-bottom:4px solid #9e820b;display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--heading);font-size:.95rem;font-weight:700;margin-top:18px;padding:0 16px;text-decoration:none!important}
.load-more:hover{background:#f7d94c}
.load-more.loading{opacity:.55;pointer-events:none}
.load-more.inline{display:inline-flex;padding:0 16px;min-width:190px}
.empty-card{padding:26px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);text-align:center;color:var(--muted)}

/* Article page */
.article-shell{display:grid;grid-template-columns:minmax(0,780px) 250px;gap:32px;justify-content:center;align-items:start;padding-top:30px;padding-bottom:68px}
.article-main{min-width:0;background:#fff;border:1px solid var(--line);border-top:5px solid var(--yellow);padding:clamp(22px,4vw,42px)}
.article-category{display:inline-block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#5e4b00;background:var(--yellow-soft);border:1px solid #e2cc5d;padding:5px 7px}
.article-main>h1{font-family:var(--heading);font-size:clamp(2.15rem,5vw,4rem);font-weight:700;line-height:1;letter-spacing:-.018em;margin:16px 0 15px;max-width:17ch}
.article-deck{font-family:var(--sans);font-size:clamp(1.04rem,1.7vw,1.25rem);font-weight:500;line-height:1.5;color:#50534b;margin:0 0 20px;max-width:62ch}
.article-byline{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:16px 0 24px}
.avatar{width:32px;height:32px;border-radius:0;display:grid;place-items:center;font-size:.72rem;font-weight:700;background:var(--yellow-soft);color:#544300;border:1px solid #d4c05c}
.avatar.large{width:36px;height:36px}
.article-byline>div:last-child{display:flex;flex-direction:column}
.article-byline strong{font-size:.78rem}
.article-byline span{font-size:.67rem;color:var(--muted)}
.article-hero{margin:0 0 20px}
.article-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line);border-radius:0}
.article-hero figcaption{font-size:.64rem;color:var(--muted);padding:7px 0 0}
.satire-notice{display:flex;gap:10px;background:var(--yellow-faint);border:1px solid #e9dd91;border-left:5px solid var(--yellow);padding:11px 12px;margin:18px 0 25px}
.satire-notice span{font-size:1rem;line-height:1.3}
.satire-notice p{font-size:.73rem;margin:0;color:#62645c}
.article-copy{font-family:var(--sans);color:#292b26;max-width:700px}
.article-copy p{font-size:1.06rem;line-height:1.78;margin:0 0 1.35em}
.article-copy h2{font-family:var(--heading);font-size:1.65rem;font-weight:700;line-height:1.15;letter-spacing:-.018em;margin:1.65em 0 .55em;padding-left:10px;border-left:4px solid var(--yellow)}
.article-copy blockquote{font-family:var(--heading);font-size:1.22rem;font-weight:650;line-height:1.5;border-left:5px solid var(--yellow);background:#fbfaf5;margin:1.5em 0;padding:13px 16px;color:#3f413a;font-style:normal}
.affiliate-box{font-family:var(--sans);background:var(--yellow-faint);border:1px solid #dfd187;border-left:5px solid var(--yellow);padding:14px 15px;margin:24px 0}
.affiliate-box>div{display:flex;flex-direction:column;align-items:flex-start}
.affiliate-box strong{font-family:var(--heading);font-size:1.08rem;line-height:1.2;margin:4px 0}
.affiliate-box p{font-family:var(--sans)!important;font-size:.8rem!important;line-height:1.5!important;margin:0 0 7px!important;color:#595b54}
.affiliate-box a{font-size:.76rem;font-weight:700;border-bottom:2px solid var(--yellow)}
.affiliate-box a:hover{text-decoration:none;background:var(--yellow-soft)}
.affiliate-box small{font-size:.59rem;color:#818278;margin-top:8px}
.share-box{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fbfaf6;padding:12px}
.share-box strong{font-family:var(--heading);font-size:.94rem}
.share-box button{border:1px solid #b99a11;border-bottom:3px solid #9e820b;background:var(--yellow);padding:7px 10px;font-size:.73rem;font-weight:700;cursor:pointer}
.related{margin-top:34px}
.related>h2{font-family:var(--heading);font-size:1.65rem;letter-spacing:-.018em;margin:5px 0 13px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.related-grid a{border:1px solid var(--line);border-top:4px solid var(--yellow);background:#fff}
.related-grid img{aspect-ratio:16/10;object-fit:cover;border-bottom:1px solid var(--line);border-radius:0}
.related-grid strong{display:block;padding:9px;font-family:var(--heading);font-size:.84rem;line-height:1.28}
.related>small{display:block;color:var(--muted);font-size:.62rem;margin-top:9px}
.article-side{position:sticky;top:145px}
.article-side .rail-card{margin-top:16px}
.truth-meter{height:7px;background:#eee6b8;border:1px solid #d8cf97;overflow:hidden;margin-top:10px}
.truth-meter span{display:block;height:100%;background:#252721}
.preview-banner{grid-column:1/-1;background:#222;color:#fff;border-left:5px solid var(--yellow);padding:10px 14px;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-align:center}

/* Legal pages */
.legal-shell{padding:38px 0 72px}
.legal-card{max-width:780px;margin:auto;background:#fff;border:1px solid var(--line);border-top:5px solid var(--yellow);padding:clamp(24px,5vw,44px)}
.legal-card h1{font-family:var(--heading);font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1;letter-spacing:-.018em;margin:11px 0 16px}
.legal-card .lead{font-size:1.08rem;color:#55574f;line-height:1.55}
.legal-copy{margin-top:28px;border-top:1px solid var(--line);padding-top:7px}
.legal-copy h2{font-family:var(--heading);font-size:1.45rem;margin:1.45em 0 .35em}
.legal-copy p{font-size:1rem;line-height:1.72;color:#383a34}

/* Footer */
.site-footer{border-top:4px solid var(--yellow);margin-top:10px;padding:32px 0 40px;background:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:42px}
.footer-brand{font-family:var(--heading);font-size:1.2rem;font-weight:700;letter-spacing:-.018em}
.footer-brand span{font-family:var(--sans);font-size:.72rem;font-weight:500;color:var(--muted)}
.footer-grid p{font-size:.78rem;margin:7px 0}
.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.footer-grid>div>strong{font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px}
.footer-grid a,.footer-grid span{font-size:.72rem;color:#595b54}

/* 404 */
.not-found{padding:70px 0 110px;max-width:700px!important}
.not-found .big-emoji{font-size:2rem}
.not-found h1{font-family:var(--heading);font-size:clamp(2.25rem,5vw,4rem);line-height:1;letter-spacing:-.018em;margin:14px 0}
.not-found p{color:var(--muted)}

/* Admin */
.admin-login{min-height:100vh;display:grid;place-items:center;padding:25px;background:var(--bg)}
.admin-login form{width:min(100%,390px);background:#fff;border:1px solid var(--line);border-top:5px solid var(--yellow);padding:28px}
.admin-login .brand-mark.big{display:none}
.admin-login h1{font-family:var(--heading);font-size:1.85rem;letter-spacing:-.03em;margin:10px 0 5px}
.admin-login p{color:var(--muted);font-size:.82rem}
.admin-login input{width:100%;padding:11px;border:1px solid var(--line-strong);border-radius:0;margin:10px 0}
.admin-login button{width:100%;border:1px solid #b99a11;border-bottom:4px solid #9e820b;background:var(--yellow);font-weight:700;padding:10px;cursor:pointer}
.error{background:#fff1ef;color:#8c2e25;border:1px solid #dca9a3;border-left:4px solid #8c2e25;padding:9px;font-size:.78rem}
.admin-top{height:60px;background:#171914;color:#fff;border-bottom:4px solid var(--yellow);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1100px)/2));font-size:.8rem}
.admin-top a{color:#d1d2cb}
.admin-shell{width:min(calc(100% - 40px),1100px);margin:38px auto}
.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--yellow);padding:14px}
.admin-heading h1{font-family:var(--heading);font-size:2.2rem;letter-spacing:-.02em;margin:4px 0 0}
.count-pill{background:var(--yellow-soft);border:1px solid #dfca62;padding:5px 7px;font-size:.7rem;font-weight:700}
.draft-list{display:grid;gap:12px;margin-top:12px}
.draft-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);padding:18px;display:grid;grid-template-columns:1fr auto;gap:28px}
.draft-card h2{font-family:var(--heading);font-size:1.32rem;line-height:1.15;letter-spacing:-.02em;margin:6px 0}
.draft-card p{color:var(--muted);font-size:.84rem}
.draft-card small{color:#8c8e85}
.draft-actions{min-width:250px;display:flex;flex-direction:column;align-items:flex-end;gap:11px}
.draft-actions>a{text-decoration:underline;font-size:.75rem}
.draft-actions form{display:flex;gap:8px}
.draft-actions button{border:1px solid var(--line-strong);border-radius:0;padding:8px 10px;font-weight:700;cursor:pointer;background:#fff}
.draft-actions .approve{border-left:4px solid #8ea943}
.draft-actions .reject{border-left:4px solid #c77b70}

@media(max-width:1050px){
  .home-grid{grid-template-columns:minmax(0,690px) 250px;justify-content:center}
  .left-rail{display:none}
  .article-shell{grid-template-columns:minmax(0,780px)}
  .article-side{display:none}
}

@media(max-width:760px){
  .shell{width:min(calc(100% - 24px),var(--shell))}
  .site-header{position:static;border-top-width:5px}
  .header-main{min-height:68px}
  .brand-line strong{font-size:1.4rem}
  .brand-line em{font-size:.7rem}
  .brand-copy small{font-size:.57rem}
  .header-pill{font-size:.61rem;padding:6px 7px}
  .category-scroll{min-height:41px}
  .category-scroll a{font-size:.66rem;padding:0 9px}
  .home-grid{display:block;padding-top:0;padding-bottom:42px}
  .right-rail,.desktop-only{display:none!important}
  .ad-strip{height:48px;margin-block:10px}
  .feed-intro{align-items:flex-end;padding:13px 14px;margin-bottom:11px}
  .feed-intro h1{font-size:1.65rem;max-width:15ch}
  .live-badge{font-size:.56rem}
  .feed-card{margin-bottom:11px}
  .post-meta-row{font-size:.58rem;gap:6px;flex-wrap:wrap;padding:8px 11px}
  .post-date{margin-left:auto}
  .feed-copy{padding:13px 13px 12px}
  .feed-copy h2{font-size:1.38rem;line-height:1.13}
  .feed-copy p{font-size:.87rem;line-height:1.5}
  .social-row{font-size:.61rem;gap:8px;padding:8px 11px}
  .social-row span+span:before{margin-right:8px}
  .load-more{margin-top:14px}
  .article-shell{display:block;width:min(calc(100% - 24px),780px);padding:20px 0 48px}
  .article-main{padding:19px 16px}
  .article-main>h1{font-size:2.35rem;max-width:none;margin-top:13px}
  .article-deck{font-size:1.02rem}
  .article-copy p{font-size:1rem;line-height:1.72}
  .article-copy h2{font-size:1.48rem}
  .article-copy blockquote{font-size:1.1rem}
  .related-grid{grid-template-columns:1fr}
  .related-grid a{display:grid;grid-template-columns:118px 1fr;align-items:start;border-top:1px solid var(--line);border-left:4px solid var(--yellow)}
  .related-grid img{height:82px;width:118px;aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line)}
  .related-grid strong{padding:9px}
  .share-box{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr;gap:26px}
  .legal-shell{padding-top:28px}
  .draft-card{grid-template-columns:1fr}
  .draft-actions{min-width:0;align-items:flex-start}
  .draft-actions form{flex-wrap:wrap}
}

@media(max-width:430px){
  .header-pill{display:none}
  .brand-line strong{font-size:1.32rem}
  .feed-intro{display:block}
  .live-badge{display:inline-block;margin-top:6px}
  .post-author-name{display:none}
  .post-separator{display:none}
  .social-row span:nth-child(2){display:none}
  .article-main>h1{font-size:2.05rem}
}


/* V4 typography refinement */
.feed-copy h2,.article-main>h1,.feed-intro h1,.related>h2,.legal-card h1,.not-found h1{font-family:var(--heading);font-weight:700;letter-spacing:-.018em}
.feed-copy h2{line-height:1.16}
.article-main>h1{line-height:1.06}
.yellow-card h3,.trending-list li,.quote-card p,.article-copy h2,.article-copy blockquote,.related-grid strong{font-weight:700}

/* Legal content */
.legal-copy a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#b79a14}
.legal-copy ul{margin:.55em 0 1.2em;padding-left:1.25em;color:#383a34}
.legal-copy li{margin:.42em 0;line-height:1.65}
.legal-copy code{font-family:Consolas,"Courier New",monospace;font-size:.88em;background:#f3f1e8;border:1px solid var(--line);padding:1px 4px}
.legal-table-wrap{overflow-x:auto;margin:20px 0 26px;border:1px solid var(--line)}
.legal-table{width:100%;border-collapse:collapse;background:#fff;font-size:.86rem;min-width:650px}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:11px 12px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.legal-table th:last-child,.legal-table td:last-child{border-right:0}
.legal-table tr:last-child td{border-bottom:0}
.legal-table th{background:#faf7e8;font-size:.69rem;text-transform:uppercase;letter-spacing:.07em}

/* Cookie consent */
[hidden]{display:none!important}
.consent-open{overflow:hidden}
.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:80;padding:14px;background:rgba(247,246,240,.97);border-top:1px solid #aaaC9f;box-shadow:0 -8px 30px rgba(0,0,0,.08)}
.consent-banner__inner{width:min(calc(100% - 12px),980px);margin:auto;background:#fff;border:1px solid var(--line-strong);border-left:6px solid var(--yellow);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;padding:18px 20px;align-items:center}
.consent-banner__copy h2{font-family:var(--heading);font-size:1.18rem;line-height:1.2;margin:4px 0 6px;letter-spacing:-.01em}
.consent-banner__copy p{margin:0;color:#55574f;font-size:.8rem;line-height:1.55;max-width:730px}
.consent-banner__copy .consent-banner__links{margin-top:7px;font-size:.7rem}
.consent-banner__links a{text-decoration:underline;text-underline-offset:2px}
.consent-banner__actions{display:flex;flex-direction:column;gap:7px;min-width:170px}
.consent-btn{border:1px solid var(--line-strong);background:#fff;color:#20221d;padding:8px 11px;font-size:.72rem;font-weight:700;cursor:pointer;text-align:center;border-radius:0}
.consent-btn:hover{background:#f7f6f0}
.consent-btn--primary{background:var(--yellow);border-color:#ad9012;color:#171914}
.consent-btn--primary:hover{background:#eac323}
.consent-btn--text{border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:3px}
.footer-link-button{border:0;background:none;padding:0;font:inherit;font-size:.72rem;color:#595b54;cursor:pointer;text-align:left}
.footer-link-button:hover{text-decoration:underline;text-underline-offset:3px}
.consent-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px}
.consent-modal__backdrop{position:absolute;inset:0;background:rgba(17,18,15,.58)}
.consent-panel{position:relative;width:min(100%,650px);max-height:min(760px,calc(100vh - 40px));overflow:auto;background:#fff;border:1px solid #222;border-top:6px solid var(--yellow);padding:22px}
.consent-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px}
.consent-panel__head h2{font-family:var(--heading);font-size:1.55rem;line-height:1.1;letter-spacing:-.015em;margin:5px 0 0}
.consent-close{border:1px solid var(--line);background:#fff;width:34px;height:34px;display:grid;place-items:center;font-size:1.3rem;line-height:1;cursor:pointer;border-radius:0}
.consent-panel__intro{font-size:.82rem;line-height:1.6;color:#55574f;margin:15px 0}
.consent-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;border-top:1px solid var(--line);padding:15px 2px;cursor:pointer}
.consent-choice strong{font-size:.83rem}
.consent-choice p{font-size:.72rem;line-height:1.48;color:#696b63;margin:3px 0 0}
.consent-choice--locked{cursor:default;background:#fbfaf5;padding-inline:10px;border:1px solid var(--line)}
.consent-status{font-size:.63rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#5b5d55;white-space:nowrap}
.switch{position:relative;width:42px;height:23px;display:block;flex:none}
.switch input{position:absolute;opacity:0;pointer-events:none}
.switch span{position:absolute;inset:0;background:#e2e2dc;border:1px solid #9fa097;transition:.15s}
.switch span:after{content:"";position:absolute;width:15px;height:15px;left:3px;top:3px;background:#fff;border:1px solid #85877f;transition:.15s}
.switch input:checked+span{background:var(--yellow);border-color:#9c8110}
.switch input:checked+span:after{transform:translateX(19px);border-color:#755f08}
.switch input:focus-visible+span{outline:2px solid #111;outline-offset:2px}
.consent-panel__actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:15px;margin-top:4px}

@media(max-width:760px){
  .consent-banner{padding:8px}
  .consent-banner__inner{width:100%;grid-template-columns:1fr;gap:13px;padding:14px}
  .consent-banner__actions{display:grid;grid-template-columns:1fr 1fr;min-width:0}
  .consent-btn--text{grid-column:1/-1}
  .consent-panel{padding:17px 14px;max-height:calc(100vh - 18px)}
  .consent-choice{gap:10px}
  .consent-panel__actions{display:grid;grid-template-columns:1fr 1fr}
}

@media(max-width:430px){
  .consent-banner__actions,.consent-panel__actions{grid-template-columns:1fr}
  .consent-btn--text{grid-column:auto}
  .consent-choice{grid-template-columns:1fr auto}
}

/* V5 monetization/admin */
.ad-label{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.57rem;color:#8c8e85;margin-bottom:6px}
.house-ad{display:block!important;text-align:left!important;padding:0!important;overflow:hidden;background:#fff!important;border-style:solid!important;border-left:4px solid var(--yellow)!important}
.house-ad>a{display:flex;align-items:stretch;color:inherit;text-decoration:none;min-height:100%}
.house-ad img{width:34%;max-width:180px;object-fit:cover;border-right:1px solid var(--line)}
.house-ad__copy{display:flex;flex:1;flex-direction:column;justify-content:center;padding:12px 14px;min-width:0}
.house-ad__copy small{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:3px}
.house-ad__copy strong{font-size:.88rem!important;line-height:1.25;margin:0!important;color:var(--ink)}
.house-ad__copy em{font-style:normal;font-size:.7rem;line-height:1.4;color:var(--muted);margin-top:4px}
.adsense-slot{display:block;min-height:80px;padding:8px;background:#fff}
.custom-ad-slot{min-height:90px}

.admin-top{gap:24px}
.admin-nav{display:flex;align-items:center;gap:18px}
.admin-nav a{font-size:.72rem;text-decoration:none;padding:20px 0 17px;border-bottom:3px solid transparent}
.admin-nav a:hover,.admin-nav a.is-active{color:#fff;border-bottom-color:var(--yellow)}
.admin-settings-shell{padding-bottom:70px}
.admin-alert{background:#fff7cf;border:1px solid #d8bd3f;border-left:5px solid var(--yellow);padding:12px 14px;margin:14px 0;font-size:.78rem}
.admin-alert--error{background:#fff0ed;border-color:#d39589;border-left-color:#b84b3d}
.settings-form{display:grid;gap:14px;margin-top:14px}
.settings-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);padding:20px;margin-top:14px}
.settings-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:15px}
.settings-card__head h2{font-family:var(--heading);font-size:1.35rem;line-height:1.15;margin:3px 0 0}
.settings-card label{display:block}
.settings-card label>span:first-child,.settings-card>label>span:first-child{display:block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.055em;margin-bottom:5px;color:#55574f}
.settings-card input[type=text],.settings-card input[type=url],.settings-card input:not([type]),.settings-card select,.settings-card textarea{width:100%;border:1px solid var(--line-strong);background:#fff;border-radius:0;padding:9px 10px;color:var(--ink);font:inherit;font-size:.78rem}
.settings-card textarea{font-family:Consolas,"Courier New",monospace;font-size:.69rem;line-height:1.45;resize:vertical}
.settings-grid{display:grid;gap:12px;margin:12px 0}
.settings-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.settings-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.settings-help{font-size:.72rem;line-height:1.55;color:var(--muted);margin:10px 0}
.admin-toggle{display:flex!important;align-items:center;gap:8px;background:#faf9f3;border:1px solid var(--line);padding:7px 9px;font-size:.7rem;font-weight:700;white-space:nowrap}
.admin-toggle span{display:inline!important;margin:0!important;text-transform:none!important;letter-spacing:0!important;font-size:.7rem!important;color:var(--ink)!important}
.checkbox-line{display:flex!important;align-items:center;gap:8px;margin-top:22px;border:1px solid var(--line);padding:9px 10px;background:#faf9f3}
.checkbox-line span{display:inline!important;margin:0!important;text-transform:none!important;letter-spacing:0!important}
.settings-status-row{display:flex;gap:8px;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:.72rem}
.settings-status-row a{text-decoration:underline;text-underline-offset:2px}
.settings-save{display:flex;justify-content:flex-end;position:sticky;bottom:12px;z-index:5}
.settings-save button,.house-ad-form button{border:1px solid #9a8010;border-bottom:4px solid #8e7409;background:var(--yellow);padding:10px 16px;font-weight:800;cursor:pointer;border-radius:0}
.house-ad-form{background:#faf9f3;border:1px solid var(--line);padding:14px;margin-top:12px}
.house-ad-list{display:grid;gap:8px;margin-top:14px}
.house-admin-item{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--line);padding:10px;background:#fff}
.house-admin-item.is-disabled{opacity:.55}
.house-admin-item>div{display:flex;align-items:center;gap:10px;min-width:0}
.house-admin-item img{width:70px;height:50px;object-fit:cover;border:1px solid var(--line)}
.house-admin-item div div{display:flex;flex-direction:column;min-width:0}
.house-admin-item small{font-size:.58rem;text-transform:uppercase;color:var(--muted)}
.house-admin-item strong{font-size:.78rem;line-height:1.25}
.house-admin-item span{font-size:.62rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}
.house-admin-item form{display:flex;gap:6px;flex:none}
.house-admin-item button{border:1px solid var(--line-strong);background:#fff;padding:7px 8px;font-size:.67rem;font-weight:700;cursor:pointer;border-radius:0}
.house-admin-item .reject{border-left:4px solid #c77b70}

@media(max-width:760px){
  .admin-top{height:auto;min-height:60px;align-items:flex-start;flex-direction:column;padding:14px 18px;gap:9px}
  .admin-nav{width:100%;gap:12px;overflow-x:auto}
  .admin-nav a{padding:5px 0;white-space:nowrap}
  .settings-grid.two,.settings-grid.three{grid-template-columns:1fr}
  .settings-card__head{flex-direction:column}
  .checkbox-line{margin-top:0}
  .settings-save{position:static}
  .settings-save button{width:100%}
  .house-admin-item{align-items:flex-start;flex-direction:column}
  .house-admin-item form{width:100%;flex-wrap:wrap}
  .house-admin-item span{max-width:72vw}
  .house-ad img{width:110px}
}
