/* Punareo — "Utopia Tokyo"-style theme (self-contained recreation) */
:root{
  --bg:#14171f;
  --bg-2:#191d27;
  --red:#ff1919;
  --red-muted:rgba(255,25,25,.2);
  --cream:#ebe5ce;
  --cream-muted:rgba(235,229,206,.55);
  --line:rgba(235,229,206,.14);
  --mono:'Share Tech Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --display:'Archivo Black','Arial Black',sans-serif;
  --body:'Manrope',-apple-system,BlinkMacSystemFont,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}
body{background:var(--bg);color:var(--cream);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--red);color:var(--bg)}

.u-container{max-width:1400px;margin:0 auto;padding:0 2rem}
.section{padding:clamp(3rem,7vw,7rem) 0;position:relative}
.section--alt{background:var(--bg-2)}

/* Eyebrow / mono labels */
.eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--cream-muted)}
.eyebrow--red{color:var(--red)}
.u-red{color:var(--red)}

/* Display type */
.h-display{font-family:var(--display);text-transform:uppercase;line-height:.88;letter-spacing:-.01em;font-size:clamp(3rem,11vw,11rem)}
.u-outline{color:transparent;-webkit-text-stroke:2px var(--cream)}
h2.h2{font-family:var(--display);text-transform:uppercase;line-height:.95;letter-spacing:-.01em;font-size:clamp(1.9rem,4.5vw,3.4rem);margin-bottom:.6rem}
h3{font-family:var(--display);text-transform:uppercase;font-size:1.1rem;letter-spacing:.02em}
.p-m{font-size:1rem;color:var(--cream);max-width:none}
.lead{font-size:clamp(1rem,1.4vw,1.2rem)}

/* Cornered frame */
.frame{position:relative;display:block}
.frame::before,.frame::after,.frame>.c1,.frame>.c2{content:"";position:absolute;width:16px;height:16px;border:2px solid var(--red);pointer-events:none}
.frame::before{top:0;left:0;border-right:0;border-bottom:0}
.frame::after{top:0;right:0;border-left:0;border-bottom:0}
.frame>.c1{bottom:0;left:0;border-right:0;border-top:0}
.frame>.c2{bottom:0;right:0;border-left:0;border-top:0}

/* Bracket buttons */
.btn{display:inline-block;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.85rem;padding:.85rem 1.6rem;border:1px solid var(--red);color:var(--cream);background:transparent;transition:background .2s,color .2s;cursor:pointer}
.btn:hover{background:var(--red);color:var(--bg)}
.btn--sm{padding:.5rem 1rem;font-size:.78rem;white-space:nowrap}
.btn--solid{background:var(--red);color:var(--bg)}
.btn--solid:hover{background:var(--cream);border-color:var(--cream)}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(20,23,31,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav__in{max-width:1400px;margin:0 auto;padding:.9rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.nav__logo{font-family:var(--display);text-transform:uppercase;font-size:1.4rem;letter-spacing:.02em;line-height:1}
.nav__logo .u-outline{-webkit-text-stroke:1px var(--cream)}
.nav__links{display:flex;gap:1.6rem;align-items:center;list-style:none}
.nav__links a{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--cream-muted);position:relative;padding:.4rem 0;transition:color .2s}
.nav__links a:hover{color:var(--red)}
.nav__drop{position:relative}
.nav__drop>a::after{content:" ▾";font-size:.6rem}
.nav__menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:var(--bg-2);border:1px solid var(--line);padding:.5rem 0;min-width:230px;max-height:70vh;overflow-y:auto;box-shadow:0 12px 40px rgba(0,0,0,.5);z-index:60}
.nav__drop::before{content:"";position:absolute;top:100%;left:0;right:0;height:14px}
.nav__drop:hover .nav__menu{display:block}
.nav__menu a{display:block;padding:.5rem 1.2rem;white-space:nowrap;font-size:.72rem;color:var(--cream-muted)}
.nav__menu a:hover{background:var(--red-muted);color:var(--red)}
.nav__lbl{display:block;padding:.55rem 1.2rem .25rem;font-size:.62rem;letter-spacing:.15em;color:rgba(235,229,206,.35);font-family:var(--mono)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}
.hamburger span{width:24px;height:2px;background:var(--cream)}

/* Hero */
.hero{padding:1.4rem 0 0}
.hero + .section,.hero + .section--alt,.hero + .content{padding-top:1.5rem}
.hero__meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;flex-wrap:wrap;gap:.5rem}
.hero__frame{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:1.4rem;background:var(--red);color:var(--bg);padding:clamp(1.6rem,3vw,2.4rem);clip-path:polygon(9rem 0,8rem 1.4rem,0 1.4rem,0 calc(100% - 1.2rem),1.2rem 100%,calc(100% - 7rem) 100%,calc(100% - 5.8rem) calc(100% - 1.2rem),100% calc(100% - 1.2rem),100% 1.2rem,calc(100% - 1.2rem) 0)}
.hero__grid{display:grid;grid-template-columns:1.3fr 1fr;gap:1.4rem;align-items:end;margin-top:0}
.hero__frame .h-display{color:var(--bg);font-size:clamp(1.7rem,4vw,3rem)}
.hero__frame .u-outline{-webkit-text-stroke:1.5px var(--bg)}
.hero__subs{list-style:none;display:flex;gap:1rem;flex-wrap:wrap;margin:.6rem 0}
.hero__subs li{font-family:var(--display);text-transform:uppercase;font-size:clamp(.8rem,1.3vw,1.05rem)}
.hero__cta .btn{border-color:var(--bg);color:var(--bg)}
.hero__cta .btn:hover{background:var(--bg);color:var(--red)}
.hero__text{border-left:2px solid rgba(20,23,31,.5);padding-left:1rem}
.hero__text p{color:var(--bg);font-size:.82rem;font-weight:500}
.hero__logos{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap}
.hero__logos img{height:34px;width:auto;background:#fff;border-radius:6px;padding:4px}
.hero__logos a{display:block;transition:transform .15s ease,box-shadow .15s ease}
.hero__logos a:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.35)}

/* Section heading block */
.sec-head{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.6rem;flex-wrap:wrap}
.sec-head .eyebrow{white-space:nowrap}

/* Affiliate table */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line)}
.aff-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:720px}
.aff-table thead th{background:var(--red);color:var(--bg);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;padding:.8rem .9rem;text-align:left}
.aff-table td{padding:.85rem .9rem;border-bottom:1px solid var(--line);vertical-align:middle}
.aff-table tbody tr:nth-child(even){background:rgba(235,229,206,.03)}
.aff-table tbody tr:hover{background:var(--red-muted)}
.aff-table .rank{font-family:var(--display);color:var(--red);font-size:1.1rem}
.aff-table .brand{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em}
.aff-table .kts{font-family:var(--mono);color:var(--red)}
.aff-note{font-size:.78rem;color:var(--cream-muted);margin-top:.8rem;font-family:var(--mono)}

/* Cards / lists */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{background:var(--bg-2);border:1px solid var(--line);padding:1.4rem}
.card h3{color:var(--red);margin-bottom:.5rem}
.ul-clean{list-style:none;display:grid;gap:.5rem}
.ul-clean li{padding-left:1.2rem;position:relative}
.ul-clean li::before{content:"›";position:absolute;left:0;color:var(--red)}

/* RG / footer */
.rg{background:var(--red);color:var(--bg);padding:2.4rem 0}
.rg .u-container{max-width:1000px}
.rg h2{font-family:var(--display);text-transform:uppercase;font-size:1.4rem;margin-bottom:.5rem}
.rg a{text-decoration:underline}
.footer{padding:3rem 0 2rem;border-top:1px solid var(--line)}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
.footer__grid h4{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--red);margin-bottom:.9rem}
.footer__grid a{color:var(--cream-muted);font-size:.85rem;display:block;padding:.25rem 0}
.footer__grid a:hover{color:var(--red)}
.footer__logo{font-family:var(--display);text-transform:uppercase;font-size:clamp(3rem,10vw,8rem);line-height:.9;margin:2rem 0 1rem;opacity:.9}
.footer__bottom{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.2rem;font-size:.78rem;color:var(--cream-muted);font-family:var(--mono)}
.age{display:inline-block;background:var(--red);color:var(--bg);font-weight:800;padding:1px 7px;border-radius:3px;margin-right:6px}

/* Reviews write-ups */
.rev-list{display:grid;gap:1rem}
.rev{background:var(--bg-2);border:1px solid var(--line);padding:1.1rem 1.3rem;display:grid;grid-template-columns:3.5rem 1fr;gap:1rem;align-items:start}
.rev__kts{font-family:var(--display);color:var(--red);font-size:1.4rem;line-height:1}
.rev h3{margin-bottom:.35rem}
.rev p{font-size:.88rem;color:var(--cream-muted)}

/* Callout + timeline (2026 law) */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;align-items:start}
.callout{border:1px solid var(--red);border-left-width:4px;background:var(--bg-2);padding:1.3rem 1.5rem}
.callout h3{color:var(--red);margin-bottom:.7rem}
.timeline{list-style:none;display:grid;gap:.8rem}
.timeline li{padding-left:1.5rem;position:relative;font-size:.9rem}
.timeline li strong{color:var(--red);font-family:var(--mono)}
.timeline li::before{content:"";position:absolute;left:0;top:.45em;width:8px;height:8px;background:var(--red)}

/* FAQ accordion */
.faq{max-width:920px}
.faq details{border:1px solid var(--line);margin-bottom:.55rem;background:var(--bg-2)}
.faq summary{list-style:none;cursor:pointer;padding:.95rem 1.2rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.02em;font-size:.82rem;color:var(--cream);display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--red);font-size:1.1rem}
.faq details[open] summary::after{content:"\2212"}
.faq details .faq__a{padding:0 1.2rem 1.1rem;color:var(--cream-muted);font-size:.9rem;line-height:1.6}

@media(max-width:991px){
  .two-col{grid-template-columns:1fr}
  .rev{grid-template-columns:1fr}
  .hero__grid{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .nav__links{display:none}
  .nav__links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--bg-2);padding:1rem 2rem;border-bottom:2px solid var(--red);gap:.2rem;max-height:85vh;overflow-y:auto}
  .nav__links.open .nav__menu{position:static;transform:none;display:block;border:0;box-shadow:none;background:transparent;min-width:0;padding:.2rem 0 .6rem}
  .hamburger{display:flex}
  .hero__frame{clip-path:polygon(8rem 0,7rem 1.6rem,0 1.6rem,0 calc(100% - 1.4rem),1.4rem 100%,calc(100% - 6rem) 100%,calc(100% - 5rem) calc(100% - 1.4rem),100% calc(100% - 1.4rem),100% 1.4rem,calc(100% - 1.4rem) 0)}
}

/* ============================================================
   LEGACY BRIDGE — re-skins existing pages (pillars, spokes,
   reviews, guides, legal) into the Utopia dark/red theme.
   Loaded LAST so it wins the cascade. Colour/type/borders only;
   layout is left to each page's own CSS.
   ============================================================ */
body{background:#14171f!important;color:#ebe5ce!important;font-family:var(--body)!important}
.container,.content-wrap{background:transparent!important}
h1,h2,h3,h4,.h-display{color:#ebe5ce!important;font-family:var(--display)!important;text-transform:uppercase;letter-spacing:-.01em}
h1{ }
p,li,td,span,div,a{border-color:rgba(235,229,206,.14)}
a{color:#ebe5ce}
.content p,.content li,.review-body p,.p-m{color:rgba(235,229,206,.82)!important}
.content a,.internal-link a,.breadcrumbs a,.footer-links a,a.u-red{color:#ff1919!important}

/* Sections / alt bands */
.section{background:#14171f!important}
.section-alt,.section.section-alt{background:#191d27!important}
.stats-bar{background:#191d27!important;border-color:rgba(235,229,206,.14)!important}
.stat-number{color:#ff1919!important;font-family:var(--display)!important}
.stat-label{color:rgba(235,229,206,.55)!important}

/* Nav (legacy .navbar) */
.navbar{background:#0f1219!important;border-bottom:1px solid rgba(235,229,206,.14)!important}
.logo-text{color:#ebe5ce!important;font-family:var(--display)!important}
.nav-links>li>a{color:rgba(235,229,206,.7)!important;font-family:var(--mono)!important;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem!important}
.nav-links>li>a:hover{color:#ff1919!important}
.dropdown-menu{background:#191d27!important;border:1px solid rgba(235,229,206,.14)!important}
.dropdown-menu a{color:rgba(235,229,206,.7)!important}
.dropdown-menu a:hover{background:rgba(255,25,25,.2)!important;color:#ff1919!important}
.hamburger span{background:#ebe5ce!important}

/* Hero / page-header / trusted badge */
.hero{background:#14171f!important}
.hero h1,.page-header h1{color:#ebe5ce!important}
.page-header{background:#191d27!important;border-bottom:2px solid #ff1919!important;color:#ebe5ce!important}
.page-header .rating{color:#ff1919!important}
.trusted-badge{background:rgba(255,25,25,.12)!important;color:#ebe5ce!important;border:1px solid #ff1919!important}
.trust-block,.trust-ribbon{color:rgba(235,229,206,.6)!important}
.trust-block a,.trust-ribbon a{color:#ff1919!important}
.breadcrumbs{color:rgba(235,229,206,.5)!important}

/* Cards / toplist / reviews / quick-info */
.toplist-item,.review-card,.card,.criteria-card,.playtest-card,.brand-spotlight-card,.aristocrat-card,.quick-info,.review-highlight,.pros-cons div,.spotlight-box,.act-callout,.bv-grid,.latency-table{background:#191d27!important;border:1px solid rgba(235,229,206,.14)!important;color:#ebe5ce!important}
.toplist-badge,.review-badge{background:#ff1919!important;color:#14171f!important}
.toplist-rank,.toplist-name,.quick-info-item .value,.kts-badge{color:#ff1919!important}
.toplist-bonus,.quick-info-item .label{color:rgba(235,229,206,.7)!important}
.kts-badge{background:rgba(255,25,25,.12)!important;border:1px solid #ff1919!important}
.star{color:#ff1919!important}
.star.empty{color:rgba(235,229,206,.25)!important}
.review-highlight strong{color:#ff1919!important}
.pros ul li::before{background:#2ecc71!important}
.cons ul li::before{background:#ff1919!important}

/* Buttons */
.btn-play,.btn-claim,.cta-button{background:#ff1919!important;color:#14171f!important;font-family:var(--mono)!important;text-transform:uppercase;letter-spacing:.06em;border-radius:0!important;border:1px solid #ff1919!important}
.btn-play:hover,.btn-claim:hover,.cta-button:hover{background:#ebe5ce!important;border-color:#ebe5ce!important;color:#14171f!important}

/* Tables */
.comparison-table{border-color:rgba(235,229,206,.14)!important}
.comparison-table th{background:#ff1919!important;color:#14171f!important;font-family:var(--mono)!important;text-transform:uppercase;border-color:rgba(235,229,206,.14)!important}
.comparison-table td{border-color:rgba(235,229,206,.14)!important;color:#ebe5ce!important}
.comparison-table tr:nth-child(even),.comparison-table tbody tr:nth-child(even){background:rgba(235,229,206,.03)!important}
.comparison-table tbody tr:hover{background:rgba(255,25,25,.12)!important}

/* FAQ accordion (legacy checkbox pattern) */
.faq-item{background:#191d27!important;border:1px solid rgba(235,229,206,.14)!important}
.faq-question{color:#ebe5ce!important;font-family:var(--mono)!important;text-transform:uppercase}
.faq-answer,.faq-answer-inner p{color:rgba(235,229,206,.72)!important}

/* Responsible-gambling / te-reo block -> red panel */
.te-reo-block{background:#ff1919!important;color:#14171f!important}
.te-reo-block h2,.te-reo-h,.te-reo-quote,.te-reo-block p,.te-reo-block strong{color:#14171f!important}
.te-reo-block a{color:#14171f!important;text-decoration:underline}

/* Footer */
.footer{background:#0f1219!important;border-top:1px solid rgba(235,229,206,.14)!important;color:rgba(235,229,206,.6)!important}
.footer h3,.footer h4{color:#ff1919!important;font-family:var(--mono)!important;text-transform:uppercase;letter-spacing:.1em}
.footer-links a{color:rgba(235,229,206,.6)!important}
.footer-links a:hover{color:#ff1919!important}
.footer-bottom,.publisher-block p,.disclaimer{color:rgba(235,229,206,.45)!important}
.age-badge{background:#ff1919!important;color:#14171f!important}

/* ============================================================
   COOKIE CONSENT BANNER
   ============================================================ */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:9998;background:#191d27;border-top:2px solid #ff1919;padding:1rem clamp(1rem,4vw,2.5rem);display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;justify-content:space-between;box-shadow:0 -10px 40px rgba(0,0,0,.5)}
.cookie-banner__txt{font-family:var(--body);font-size:.82rem;color:rgba(235,229,206,.8);max-width:72ch;line-height:1.5}
.cookie-banner__txt a{color:#ff1919!important;text-decoration:underline}
.cookie-banner__actions{display:flex;gap:.6rem;flex-wrap:wrap}
.cookie-banner[hidden]{display:none}
@media(max-width:600px){.cookie-banner{padding-bottom:1.2rem}.cookie-banner__actions{width:100%}.cookie-banner__actions .btn{flex:1}}

/* ============================================================
   TEXT CONTRAST FIX — force readable body copy on dark sections.
   (Red/light panels — hero__frame, .rg, .te-reo-block, table
   headers, buttons — keep their own dark text via their rules.)
   ============================================================ */
.section p,.section li,.section ul,.section ol,.section dl,.section dd,.section dt,.section blockquote,
.content-wrap p,.content-wrap li,.content-wrap ul,.content-wrap ol,
.container > p,.container > ul,.container > ol{color:#ebe5ce!important}
.section strong:not(.u-red),.content-wrap strong:not(.u-red){color:inherit!important}

/* ============================================================
   REVIEW CARD HEADER — replace legacy purple gradient
   ============================================================ */
.review-header{background:#14171f!important;border-bottom:2px solid var(--red)!important;border-left:3px solid var(--red)!important;border-radius:0!important}
.review-header h3{color:var(--cream)!important;font-family:var(--display)!important;text-transform:uppercase;letter-spacing:.01em}
.review-badge{background:var(--red)!important;color:var(--bg)!important;font-family:var(--mono)!important;text-transform:uppercase;letter-spacing:.05em;font-size:.68rem!important;border-radius:2px!important}
.review-card{overflow:hidden}

/* Operator logo inside affiliate-table brand cell */
.cell-brand{display:flex;align-items:center;gap:9px}
.tbl-logo{height:26px;width:auto;max-width:76px;object-fit:contain;background:#fff;border-radius:4px;padding:3px;flex:none}

/* ============================================================
   TOPLIST — ranked operator cards (below hero), themed sitewide
   ============================================================ */
.toplist{display:flex;flex-direction:column;gap:1rem;margin-top:.4rem}
.toplist-item{position:relative!important;display:grid!important;grid-template-columns:auto 128px 1fr auto;align-items:center;gap:1.3rem;background:#191d27!important;border:1px solid var(--line)!important;border-radius:10px;padding:1.3rem 1.4rem;overflow:visible!important}
.toplist-badge{position:absolute!important;top:-10px;left:16px;background:var(--red)!important;color:var(--bg)!important;font-family:var(--mono)!important;text-transform:uppercase;font-size:.62rem;letter-spacing:.05em;padding:3px 9px;border-radius:3px}
.toplist-rank{width:34px!important;height:34px!important;min-width:34px;border-radius:50%!important;background:var(--red)!important;color:var(--bg)!important;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:1rem}
.toplist-logo-wrap{display:flex;flex-direction:column;align-items:center;gap:.45rem}
.toplist-logo{background:#fff!important;border-radius:8px;padding:8px;width:118px;height:58px;display:flex;align-items:center;justify-content:center}
.toplist-logo img{max-height:100%;max-width:100%;width:auto;display:block}
.toplist-stars{letter-spacing:1px;font-size:.85rem}
.toplist-stars .star{color:var(--red)!important}
.toplist-stars .star.half{color:var(--red)!important;opacity:.5}
.toplist-stars .star.empty{color:rgba(235,229,206,.25)!important}
.toplist-name{font-family:var(--display)!important;text-transform:uppercase;color:var(--red)!important;font-size:1.15rem;letter-spacing:.01em}
.toplist-bonus{color:rgba(235,229,206,.72)!important;font-size:.9rem;margin-top:.25rem;font-family:var(--body)!important;text-transform:none!important}
.toplist-cta .btn-play,.btn-play{display:inline-block;background:var(--red)!important;color:var(--bg)!important;font-family:var(--mono)!important;text-transform:uppercase;letter-spacing:.06em;padding:.85rem 1.7rem;border:1px solid var(--red)!important;border-radius:0!important;white-space:nowrap}
.toplist-cta .btn-play:hover,.btn-play:hover{background:var(--cream)!important;border-color:var(--cream)!important;color:var(--bg)!important}
.show-more-toggle{display:none}
.show-more-content{display:none}
.show-more-toggle:checked~.show-more-content{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}
.show-more-label{display:inline-block;margin-top:1rem;color:var(--red);font-family:var(--mono);text-transform:uppercase;font-size:.78rem;cursor:pointer;border:1px solid var(--red);padding:.5rem 1rem}
@media(max-width:767px){.toplist-item{grid-template-columns:1fr!important;justify-items:center;text-align:center;gap:.7rem}}

/* Article byline (author + last-updated) — below hero, all pages */
.byline{background:var(--bg);border-bottom:1px solid rgba(255,25,25,.22)}
.byline .u-container{padding-top:.85rem;padding-bottom:.85rem}
.byline__line{margin:0;font-family:'Share Tech Mono',monospace;font-size:.78rem;line-height:1.5;letter-spacing:.05em;text-transform:uppercase;color:#b7b1a0;display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.byline__line a{color:var(--red);text-decoration:none;border-bottom:1px solid rgba(255,25,25,.45)}
.byline__line a:hover{color:#ebe5ce}
.byline__sep{opacity:.4}
.byline__upd{color:#ebe5ce}

/* Authors page — dark re-skin (page shipped with an old light-theme inline <style>) */
.page-header{background:linear-gradient(135deg,#14171f,#241012)!important;color:#ebe5ce!important;border-bottom:1px solid rgba(255,25,25,.25)}
.page-header h1{color:#ebe5ce!important}
.content h2{color:#ebe5ce!important}
.content h3{color:var(--red)!important}
.content p,.content li{color:#ebe5ce!important}
.content a{color:var(--red)}
.author-card{background:#181c26!important;border:1px solid rgba(255,25,25,.28)!important;border-radius:6px!important}
.author-card .author-info h2,.author-info h2{color:#ebe5ce!important}
.author-info .author-role{color:var(--red)!important}
.author-info .author-location{color:#b7b1a0!important}
.author-photo{border-color:var(--red)!important}
.author-stat{background:#11141b!important;border:1px solid rgba(235,229,206,.16)!important;border-radius:6px!important}
.author-stat .stat-number{color:var(--red)!important}
.author-stat .stat-label{color:#b7b1a0!important}
