/* Solar Ink v2 — light default; dark via existing #dmode / swdmode only.
   Overlay on allstyles.min.css. Self-hosted Syne + Literata via fonts.css.
   Do not crush tile widths/heights from allstyles. */

:root{
  --si-solar:#ff7d01;
  --si-solar-2:#ffb45c;
  --si-ink:#0b0e14;
  --si-paper:#f7f5f1;
  --si-paper-2:#ffffff;
  --si-text:#16181f;
  --si-muted:#5c6578;
  --si-line:rgba(22,24,31,.1);
  --si-display:'Syne',sans-serif;
  --si-body:'Literata',Georgia,serif;
  --si-radius:14px;
}

html{background:var(--si-paper)}
body{
  background:var(--si-paper);
  color:var(--si-text);
  font-family:var(--si-display);
}
/* No !important on #page background — existing swdmode() must be able to set dark */
#page{
  background:var(--si-paper);
  color:var(--si-text);
}
a{color:var(--si-solar)}
a:hover{color:#e56e00}

/* Nav — logo truly centred in bar; language switcher right + vertically middle */
#nav_header{
  background:rgba(11,14,20,.92) !important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:none !important;
  display:flex !important;
  flex-wrap:wrap;
  align-items:center !important;
  justify-content:flex-end;
  /* keep existing fixed/absolute from allstyles/head — both contain absolute logo */
}
#nav_head_cont{
  float:none !important;
  padding-top:0 !important;
  padding-left:0 !important;
  width:auto !important;
  min-width:0 !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%);
  z-index:2;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:none; /* let empty sides pass clicks; re-enable on link */
}
#nav_head_cont > a{
  pointer-events:auto;
  line-height:0;
}
#logo_id{
  height:42px !important;
  width:auto !important;
  margin-top:0 !important;
  display:block;
}
/* Narrow: logo left with padding (not centred); lang switcher stays right/middle */
@media screen and (max-width:670px){
  #nav_head_cont{
    left:0 !important;
    right:auto !important;
    transform:translateY(-50%) !important;
    padding-left:12px !important;
    justify-content:flex-start !important;
  }
  #logo_id{
    height:36px !important;
  }
}
/* Language switcher: vertical middle of 65px bar (kill allstyles top:-56px) */
#nav_header > .right{
  float:none !important;
  margin-left:auto;
  display:flex !important;
  align-items:center !important;
  height:65px;
  box-sizing:border-box;
  padding-right:8px;
  position:relative;
  z-index:3; /* above centred logo if they ever overlap on narrow */
}
#nav_header .dropdown{
  top:0 !important;
  left:auto !important;
  position:relative !important;
  display:inline-block !important;
  padding-right:7px;
  line-height:1 !important;
}
#nav_header .langsel_n{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px;
  line-height:1 !important;
  padding-top:8px !important;
  padding-bottom:8px !important;
  box-sizing:border-box;
}
#nav_header .langsel_n img{
  position:static !important;
  top:auto !important;
  vertical-align:middle;
}
#nav_header > div[style*="clear"]{
  display:none !important;
}
#nav_header > .left{
  flex:0 0 100%;
  width:100% !important;
  float:none !important;
}
.dropdown-content{
  background:#fff !important;
  border:1px solid var(--si-line) !important;
  color:var(--si-text) !important;
}
.dropdown-content a{color:var(--si-text) !important}
.dropdown-content a:hover{color:var(--si-solar) !important}

/* Homepage hero — slightly less wide Syne than mock */
.head_ins{
  margin-top:96px !important;
  padding-left:clamp(16px,6vw,8%) !important;
  padding-right:clamp(16px,4vw,4%);
  max-width:1180px;
}
.slogan_1,.slogan_1_bg{
  margin:0 !important;
  color:var(--si-solar) !important;
  text-shadow:none !important;
  font-family:var(--si-display) !important;
  font-size:.72rem !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
}
.slogan_1_bg::before{
  content:"";
  display:inline-block;
  width:16px;height:2px;
  background:var(--si-solar);
  margin-right:8px;
  vertical-align:middle;
}
.slogan_2,.slogan_2_bg{
  margin:12px 0 10px !important;
  margin-left:0 !important;
  color:var(--si-text) !important;
  /* Soft lift for black + solar-orange slogan segments */
  text-shadow:0px 1px 2px #717171 !important;
  font-family:var(--si-display) !important;
  font-size:clamp(2.1rem,4.6vw,3.5rem) !important;
  font-weight:700 !important;
  letter-spacing:-.04em !important;
  line-height:1.05 !important;
  text-transform:none !important;
  max-width:14ch;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
}
.slogan_2 em,.slogan_2 .si-solar{
  font-style:normal;
  color:var(--si-solar) !important;
  /* Same offset as black segments so two-tone slogans stay even */
  text-shadow:0px 1px 2px #717171 !important;
}
.slogan_3,.slogan_3 span{
  margin:0 0 8px !important;
  margin-left:0 !important;
  color:var(--si-muted) !important;
  text-shadow:none !important;
  font-family:var(--si-body) !important;
  font-size:1.08rem !important;
  font-weight:400 !important;
  line-height:1.55 !important;
  text-transform:none !important;
  max-width:42ch;
}
.btn-home{
  margin-top:22px !important;
  margin-left:0 !important;
  background:var(--si-solar) !important;
  color:#1a0d00 !important;
  border:1px solid transparent !important;
  border-radius:12px !important;
  padding:12px 18px !important;
  font-family:var(--si-display) !important;
  font-weight:700 !important;
  font-size:.9rem !important;
  text-transform:none !important;
  letter-spacing:-.01em !important;
}
.btn-home:hover{background:var(--si-solar-2) !important}

/* Featured home tile — keep card proportions; do not invent a new grid */
#hometopnews{
  margin-top:20px;
  padding:0 clamp(12px,3vw,3%);
}
.tileframe_home{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  border-radius:var(--si-radius) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.1) !important;
  /* restore allstyles footprint (was crushed by earlier 360/auto rules) */
  width:240px !important;
  height:300px !important;
  overflow:hidden;
}
.tileframe_home .tilebackgr img,
.tileframe_home .tile_canvas img{
  width:238px !important;
  height:145px !important;
  object-fit:cover;
}
.tileframe_home .titleclick{
  background:transparent !important;
  color:var(--si-text) !important;
  margin-top:-65px !important;
  padding:11px !important;
}
.tileframe_home h1{
  color:var(--si-text) !important;
  font-family:var(--si-display) !important;
  letter-spacing:-.02em !important;
}
.tileframe_home h5{
  color:var(--si-muted) !important;
  font-family:var(--si-body) !important;
  margin-top:-5px !important;
}
.topheadartcl{
  background:#fff !important;
  color:var(--si-solar) !important;
  font-weight:700;
  border:1px solid rgba(255,125,1,.35);
}

/* Category / archive card rails — restore breathing room, keep original tile sizes */
#mobile_cont{
  /* do NOT override category.php margin-top:-140px / allstyles width — that crushed layout */
  width:90%;
  margin-left:30px;
}
.series_flow{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  border-radius:12px !important;
  box-shadow:0 6px 20px rgba(0,0,0,.06) !important;
  /* keep allstyles min-height/height/width — only skin */
}
/* Prefer orange text on white over allstyles orange badge fill */
.series_title{
  background:#fff !important;
  background-color:#fff !important;
  color:var(--si-solar) !important;
  font-family:var(--si-display) !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  border:1px solid rgba(255,125,1,.35) !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
.series_subtitle{
  color:var(--si-muted) !important;
  font-family:var(--si-body) !important;
}

/* Card tiles: skin + lock flex basis.
   .flow_slider* is display:flex; without flex-shrink:0, many recommend
   tiles (e.g. 255_en bottom rail) crush far below allstyles widths. */
.flow_slider .tileframe_sl,
.flow_slider_l_small .tileframe_sl,
.flow_slider_r_small .tileframe_sl,
#flow_mobile .tileframe_sl{
  flex-shrink:0 !important;
}
.tileframe_sl{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  border-radius:var(--si-radius) !important;
  box-shadow:0 4px 14px rgba(0,0,0,.07) !important;
  width:220px !important;
  min-width:220px !important;
  height:280px !important;
  flex:0 0 220px !important;
  float:left;
  box-sizing:border-box;
}
/* Related / category small cards — restore allstyles .gr_sl footprint */
.tileframe_sl.gr_sl,
.gr_sl.tileframe_sl{
  width:157px !important;
  min-width:157px !important;
  height:200px !important;
  flex:0 0 157px !important;
}
.tileframe_sl .tilebackgr_sl img,
.tileframe_sl .tile_canvas img{
  width:100% !important;
  max-width:100%;
  height:auto !important;
  object-fit:cover;
}
.tileframe_sl.gr_sl .tilebackgr_sl img,
.tileframe_sl.gr_sl .tile_canvas img{
  width:155px !important;
  height:93px !important;
  min-height:0;
  aspect-ratio:auto;
}
.tileframe_sl:hover{
  border-color:rgba(255,125,1,.4) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.12) !important;
}
.titleclick_sl,.grclick_sl{
  background:transparent !important;
  color:var(--si-text) !important;
}
.tileframe_sl h4,.tileframe_sl .h14,.tileframe_sl .h15,
.gr_sl h4{
  color:var(--si-text) !important;
  font-family:var(--si-display) !important;
  font-weight:700 !important;
  letter-spacing:-.015em !important;
  overflow-wrap:break-word;
  word-break:normal;
}
/* Length-based card titles (PHP: strlen>28 → .h14; >51 → 0.85em).
   Syne is wider than legacy sunfont — keep short titles at 15px, shrink long ones more than the old 14px. */
.tileframe_sl .h15,
.gr_sl .h15{
  font-size:15px !important;
  line-height:1.12 !important;
}
.tileframe_sl .h14,
.gr_sl .h14{
  font-size:12.5px !important;
  line-height:1.12 !important;
}
.tileframe_sl h5,.tileframe_sl .h10,.tileframe_sl .h11{
  color:var(--si-muted) !important;
  font-family:var(--si-body) !important;
}
.gr_date,.gr_datecont,.gr_dateadj{color:var(--si-muted) !important}
.topborderrad{border-radius:10px 10px 0 0 !important}

.btn-topshow,.themeview,.btn-selview{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  color:var(--si-muted) !important;
  border-radius:999px !important;
  font-family:var(--si-display) !important;
  font-weight:700 !important;
}
.btn-selview,.btn-topshow:hover{
  color:var(--si-solar) !important;
  border-color:rgba(255,125,1,.45) !important;
  background:rgba(255,125,1,.08) !important;
}
.appbutton{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  border-radius:12px !important;
}
.widescrnexp{color:var(--si-muted) !important}
#entersearch{
  background:var(--si-paper-2) !important;
  border:1px solid var(--si-line) !important;
  color:var(--si-text) !important;
}
#searchbox{background:transparent !important}
#searchinput{
  background:#fff !important;
  border:2px solid rgba(255,125,1,.35) !important;
  color:var(--si-text) !important;
}

/* ——— Articles: light default ——— */
.blackbgr{
  background:linear-gradient(180deg,#1a1f2b 0%, #252b38 100%) !important;
  overflow:hidden;
  padding-bottom:24px !important;
  padding-top:8px;
}
.artcl_title{
  font-family:var(--si-display) !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
  font-size:clamp(1.85rem,3.8vw,2.85rem) !important;
  line-height:1.08 !important;
  /* color left to inline style / swdmode — white on blackbgr */
}
.artcl_subtitle{
  font-family:var(--si-body) !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  font-size:1.15rem !important;
  line-height:1.5 !important;
}
.articledate{font-family:var(--si-display) !important}

/* Space between title block and hero image */
.si-hero-gap{
  margin-top:56px !important;
  margin-bottom:40px !important;
  padding-top:16px !important;
  clear:both;
}
.headercont_article{
  border-radius:18px !important;
  border:1px solid var(--si-line);
  overflow:hidden;
  box-shadow:0 16px 40px rgba(0,0,0,.12);
  margin:0 auto !important;
  max-width:min(1104px,94vw);
  width:100%;
  box-sizing:border-box;
}
/* Wide screens: pin hero left edge to article text (≤1540 keeps centered) */
@media screen and (min-width:1541px){
  .headercont_article{
    margin-left:calc(10vw + 55px) !important;
    margin-right:auto !important;
  }
}
.user-frame{
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--si-line);
  margin-top:8px;
}

/* Body: readable dark text on light; larger on wide screens.
   Avoid !important on color so existing swdmode() inline styles still win. */
.article,#articleid{
  font-family:var(--si-body);
  color:#1a1c22;
  font-weight:400;
  letter-spacing:0;
  line-height:1.8;
}
@media screen and (min-width:1100px){
  .article,#articleid{
    font-size:1.35rem;
    line-height:1.82;
    max-width:46em;
  }
}
@media screen and (min-width:1400px){
  .article,#articleid{
    font-size:1.42rem;
    line-height:1.85;
  }
}
.article h2,.article h3,#articleid h2,#articleid h3{
  font-family:var(--si-display);
  color:#12141a;
  letter-spacing:-.025em;
  font-weight:700;
}
.article b,#articleid b{color:#0e1016}
/* Article .shadow_img: fluid viewport shrink.
   allstyles uses stepped max-widths + height:98% (distorts / undersizes).
   Keep HTML width attrs for intentional small figures; only cap to container.
   Do not set width:100% — would stretch floated inlet thumbs. Shadow look stays in allstyles. */
.shadow_img{
  max-width:100% !important;
  height:auto !important;
  box-sizing:border-box;
}
/* Block citations (in-flow) keep solar accent bar */
.citation{
  border-left:3px solid var(--si-solar) !important;
  background:linear-gradient(90deg,rgba(255,125,1,.1),transparent) !important;
  color:#3a1800;
  font-family:var(--si-body);
  font-style:italic;
  border-radius:0 12px 12px 0 !important;
}
/* Pull quotes in .quotingl / .quotingr: white, no side borders, nudge up */
.quotingl,.quotingr{
  background:#fff !important;
  border-left:none !important;
  border-right:none !important;
  border-top-color:var(--si-solar) !important;
  margin-top:1.1rem !important;
}
.quotingl .quotetxt,
.quotingr .quotetxt,
div.quotetxt{
  background:#fff !important;
  border:none !important;
  border-left:none !important;
  border-right:none !important;
  color:#1a1c22;
  font-family:var(--si-body);
  font-style:italic;
  margin-top:.55rem !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.authortxt{
  background:#f0eeea !important;
  border:1px solid var(--si-line);
  color:var(--si-text);
}
.authordescr{color:var(--si-muted)}
/* Dark mode (#dmode / swdmode → #articleid.whiteicon): ink-friendly surfaces.
   Solar light !important whites otherwise beat swdmode() inline backgrounds. */
html:has(#dmode:checked) .quotingl,
html:has(#dmode:checked) .quotingr,
#articleid.whiteicon .quotingl,
#articleid.whiteicon .quotingr{
  background:#3a3f47 !important;
  border-top-color:var(--si-solar) !important;
}
html:has(#dmode:checked) .quotingl .quotetxt,
html:has(#dmode:checked) .quotingr .quotetxt,
html:has(#dmode:checked) #articleid .quotetxt,
html:has(#dmode:checked) div.quotetxt,
#articleid.whiteicon .quotetxt,
#articleid.whiteicon .quotingl .quotetxt,
#articleid.whiteicon .quotingr .quotetxt{
  background:transparent !important;
  color:#e7e1e1 !important;
}
html:has(#dmode:checked) .quotingl .animtxt,
html:has(#dmode:checked) .quotingr .animtxt,
#articleid.whiteicon .quotingl .animtxt,
#articleid.whiteicon .quotingr .animtxt{
  -webkit-text-fill-color:#e7e1e1 !important;
  color:#e7e1e1 !important;
}
html:has(#dmode:checked) .authortxt{
  background:#2f333a !important;
  border-color:rgba(255,255,255,.14) !important;
  color:#e7e7e7 !important;
}
html:has(#dmode:checked) .authortxt .authordescr,
html:has(#dmode:checked) .authordescr{
  color:#e7e7e7 !important;
}
#dmtxt{color:var(--si-muted);font-family:var(--si-display)}
.artcltags a{
  color:var(--si-solar) !important;
  border:1px solid rgba(255,125,1,.35);
  border-radius:999px;
  padding:4px 10px;
  font-family:var(--si-display) !important;
  font-size:.78rem;
}
.articlerecommend .tileframe_sl{background:var(--si-paper-2) !important}

/* Homepage Wirecard callout under series_title — solar orange, not red */
#wdi_series_frame{
  background:rgba(255,125,1,.1) !important;
  border-left:4px solid var(--si-solar) !important;
}
#wdi_frame_btn{
  background:var(--si-solar) !important;
  color:#1a0d00 !important;
}
#wdi_frame_btn:hover{background:var(--si-solar-2) !important;color:#1a0d00 !important}
#wdi_frame_txt{color:var(--si-text)}

/* Wirecard platform hero — same head_ins rhythm + Solar Ink orange as category.php */
.si-wdi-head .slogan_2,
.si-wdi-head .slogan_2_bg{
  /* Slight bump vs category clamp(2.1rem,4.6vw,3.5rem) — short “Wirecard” title */
  font-size:clamp(2.35rem,5.1vw,3.85rem) !important;
  max-width:18ch;
  text-transform:none !important;
  /* Match category: title black first; solar moves to topics line */
  color:var(--si-text) !important;
  text-shadow:0px 1px 2px #717171 !important;
}
.si-wdi-head .slogan_2 em,
.si-wdi-head .slogan_2 .si-solar{
  color:var(--si-text) !important;
  text-shadow:0px 1px 2px #717171 !important;
}
/* Topic line under Wirecard title — same display face, solar orange + shadow; two lines via locale <br> */
.si-wdi-head .si-wdi-topics,
.si-wdi-head .si-wdi-topics span{
  margin:4px 0 12px !important;
  margin-left:0 !important;
  color:var(--si-solar) !important;
  text-shadow:0px 1px 2px #717171 !important;
  font-family:var(--si-display) !important;
  font-size:clamp(1.35rem,3.05vw,1.9rem) !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  line-height:1.08 !important;
  text-transform:none !important;
  max-width:36ch;
}
/* Deck paragraph — same .slogan_3 Solar Ink rhythm as category.php */
.si-wdi-head .slogan_3,
.si-wdi-head .slogan_3 span{
  max-width:42ch;
}
/* Without featured card, don't pull search into the hero */
.si-wdi-head ~ #mobile_cont{
  margin-top:28px !important;
}
/* With #hometopnews beside hero — same -140px flow as category.php */
.si-wdi-head ~ #hometopnews ~ #mobile_cont{
  margin-top:-140px !important;
}
.si-wdi-head ~ #hometopnews .topheadartcl{
  /* Same --si-solar (#ff7d01) as category hero accents */
  color:var(--si-solar) !important;
  border-color:color-mix(in srgb, var(--si-solar) 40%, transparent);
}
/* Align search left edge with .si-wdi-head slogans (head_ins pad ≈ clamp 6vw) */
.si-wdi-head ~ #mobile_cont #formsea{
  margin-left:0;
  margin-bottom:28px;
}
.si-wdi-head ~ #mobile_cont #searchtxtlarge{
  /* #mobile_cont already has margin-left:30px; land on same x as slogans */
  margin-left:calc(clamp(16px,6vw,8%) - 30px) !important;
}
/* Hide legacy photo banner if any baked markup still emits it */
.deeprecont{display:none !important;height:0 !important;margin:0 !important;border:0 !important}

/* Home “List all” — slightly less left pad than allstyles 30px; tint white archive.png */
.btn-topshow.catendlnk,
a.catendlnk{
  padding-left:22px !important;
}
.btn-topshow.catendlnk img,
.catendlnk img[src*="archive.png"]{
  filter:brightness(0) saturate(100%) invert(48%) sepia(98%) saturate(1650%) hue-rotate(5deg) brightness(103%) contrast(101%);
}
html:has(#dmode:checked) .btn-topshow.catendlnk img,
html:has(#dmode:checked) .catendlnk img[src*="archive.png"],
#articleid.whiteicon ~ * .catendlnk img[src*="archive.png"],
#page.si-dark .catendlnk img[src*="archive.png"]{
  filter:none;
}

/* ——— Article-top audio: title+subtitle sit inside the #audio-player box ——— */
/* DOM keeps expl/title before the player; box pulls up (safer than allstyles -3.9rem). */
.articleextra > .audioexpl,
.articleextra > .audiotitle{
  position:relative !important;
  z-index:2;
  font-family:var(--si-display) !important;
  line-height:1.25 !important;
  margin-left:14px !important;
  margin-right:14px !important;
  max-width:347px;
  pointer-events:none;
}
.articleextra > .audioexpl{
  margin-top:12px !important;
  margin-bottom:0 !important;
  font-size:10px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}
.articleextra > .audiotitle{
  margin-top:2px !important;
  margin-bottom:0 !important;
  font-size:13px !important;
  font-weight:700 !important;
  color:#333 !important;
}
.articleextra > #audio-player.audio-player,
.articleextra > .audio-player{
  font-family:var(--si-display) !important;
  font-size:13px !important;
  line-height:1.2 !important;
  max-width:375px !important;
  width:auto !important;
  min-width:280px !important;
  /* height tuned so play→bottom ≈ Listen→top (~17px) */
  height:112px !important;
  position:relative !important;
  z-index:1;
  /* pull box up around title stack with headroom above labels */
  margin:-48px 0 1.5rem !important;
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:flex-start !important;
  gap:8px;
  box-sizing:border-box;
  /* top pad clears title stack + gap before controls; tight bottom */
  padding:60px 12px 0 !important;
  overflow:visible !important;
  text-align:left !important;
}
.articleextra > #audio-player #play-btn{
  float:none !important;
  margin:0 !important;
  margin-top:0 !important;
  padding:0 !important;
  padding-right:0 !important;
  width:33px !important;
  height:35px !important;
  flex:0 0 auto !important;
  position:relative !important;
  top:auto !important;
  line-height:0 !important;
}
.articleextra > #audio-player #play-btn img{
  width:33px !important;
  height:35px !important;
  display:block;
}
.articleextra > #audio-player #seekObjContainer{
  float:none !important;
  flex:1 1 auto !important;
  width:auto !important;
  margin:0 !important;
  /* grey bar mid ≈ play-triangle mid (nudged 3px up from 13px) */
  margin-top:10px !important;
  margin-left:0 !important;
  padding:0 0 11px !important;
  position:relative !important;
  top:auto !important;
}
.articleextra > #audio-player progress,
.articleextra > #audio-player #audioSeek{
  width:100% !important;
  max-width:none !important;
  display:block !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.articleextra > #audio-player .start-time,
.articleextra > #audio-player .end-time{
  position:absolute !important;
  top:auto !important;
  bottom:0 !important;
  float:none !important;
  color:#6b7280 !important;
  font-size:9px !important;
  font-family:Roboto,sans-serif !important;
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
.articleextra > #audio-player .start-time{
  left:0 !important;
  right:auto !important;
  width:max-content !important;
  text-align:left !important;
}
.articleextra > #audio-player .end-time{
  right:0 !important;
  left:auto !important;
  width:max-content !important;
  text-align:right !important;
}
.articleextra > #audio-player .player-controls{
  flex:0 0 auto !important;
  float:none !important;
  display:flex !important;
  align-items:flex-start !important;
  margin:0 !important;
  /* orange volume + speaker track grey bar */
  margin-top:10px !important;
  padding-left:4px !important;
  align-self:flex-start !important;
}
.articleextra > #audio-player .avolcontrol{
  float:none !important;
  margin:0 !important;
  margin-top:0 !important;
  margin-left:0 !important;
  line-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:auto !important;
  gap:2px;
}
.articleextra > #audio-player .avolcontrol br{display:none}
.articleextra > #audio-player .speaker_volume{
  position:static !important;
  top:0 !important;
  margin:0 !important;
  display:block !important;
  order:1;
}
.articleextra > #audio-player .speakerimg{
  position:static !important;
  top:0 !important;
  /* sit with start/end times under the bars */
  margin:0 !important;
  margin-right:0 !important;
  order:2;
  opacity:.55;
}

/* ——— Podcast episode audio (.audio-container wrapper only) ——— */
.audio-container{
  position:relative !important;
  font-family:var(--si-display) !important;
  font-size:15px !important;
  line-height:1.35 !important;
  max-width:800px;
  padding-top:8px;
  overflow:visible;
  /* head.php podcast CSS uses margin-top:-135px — overlaps Contents after redesign */
  margin-top:28px !important;
}
.audio-container ~ #lS,
#lS:has(+ .audio-container),
.team + #lS{
  margin-bottom:8px !important;
}
.audio-container .audioexpl,
.audio-container .audiotitle{
  /* kill article inline top:60/70px relative offsets */
  position:static !important;
  top:auto !important;
  font-family:var(--si-display) !important;
  line-height:1.25 !important;
  letter-spacing:-.01em;
  max-width:calc(100% - 90px);
  z-index:1;
}
.audio-container .audiotitle{
  font-size:1.05rem !important;
  font-weight:700 !important;
  margin:4px 0 12px !important;
}
.audio-container .audioexpl{
  font-size:.9rem !important;
  font-weight:600 !important;
  color:var(--si-muted) !important;
  margin:8px 0 0 !important;
}
.audio-container .headph img{
  display:block;
  width:65px !important;
  height:65px !important;
}
.audio-container #audioCanvas{
  display:block !important;
  line-height:0 !important;
  font-size:0 !important;
  position:relative;
  z-index:0;
  clear:both;
  width:100%;
}
/* Desktop/wide: absolute inside wave grid area — ≥12px inset, no overflow past canvas */
@media screen and (min-width:551px){
  .audio-container{
    display:grid !important;
    grid-template-columns:1fr;
  }
  .audio-container .audioexpl{grid-row:1;grid-column:1}
  .audio-container .audiotitle{grid-row:2;grid-column:1}
  .audio-container #audioCanvas{grid-row:3;grid-column:1}
  /* absolute grid item → containing block is the canvas cell */
  .audio-container .headph{
    grid-row:3;
    grid-column:1;
    position:absolute !important;
    /* ≥12px inset from canvas border box; PNG has ~19% top transparency */
    top:14px !important;
    right:14px !important;
    left:auto !important;
    bottom:auto !important;
    margin:0 !important;
    width:65px !important;
    height:65px !important;
    max-width:65px !important;
    max-height:65px !important;
    z-index:5;
    line-height:0 !important;
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:none;
    overflow:hidden;
    box-sizing:border-box !important;
  }
  .audio-container #audio-player{grid-row:4;grid-column:1}
}
/* Narrow: wave collapses to blank pad — park title/subtitle + headphones in that band */
@media screen and (max-width:550px){
  .audio-container{
    margin-top:20px !important;
  }
  .audio-container .headph{
    position:absolute !important;
    display:block !important;
    top:10px !important;
    right:10px !important;
    left:auto !important;
    width:48px !important;
    height:48px !important;
    z-index:5;
    line-height:0 !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:none;
  }
  .audio-container .headph img{
    width:48px !important;
    height:48px !important;
  }
  .audio-container #audioCanvas{
    /* keep head.php blank upper band; titles sit inside it */
    position:relative !important;
  }
  .audio-container .audioexpl,
  .audio-container .audiotitle{
    position:absolute !important;
    left:12px !important;
    right:70px !important;
    max-width:none !important;
    z-index:4;
    margin:0 !important;
    top:auto !important;
  }
  .audio-container .audioexpl{
    top:14px !important;
  }
  .audio-container .audiotitle{
    top:34px !important;
    font-size:.95rem !important;
  }
}
.audio-container #audio-player,
.audio-container #audio-player.audio-player{
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  max-width:100% !important;
  width:100% !important;
  line-height:1 !important;
  font-family:var(--si-display) !important;
  font-size:13px !important;
  box-sizing:border-box;
  overflow:hidden;
  padding:0 10px !important;
  margin-top:-1px !important;
  text-align:left !important;
}
.audio-container #audio-player #play-btn,
.audio-container #play-btn{
  flex:0 0 52px !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
  padding-right:0 !important;
  width:52px !important;
  height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:0 !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
}
.audio-container #play-btn img{
  display:block;
  width:48px !important;
  height:48px !important;
  max-width:48px;
}
.audio-container #seekObjContainer{
  flex:1 1 auto !important;
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  margin-top:0 !important;
  margin-left:0 !important;
  position:relative !important;
  line-height:1 !important;
  padding:0 0 16px !important;
  top:auto !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.audio-container #audio-player .podc_st,
.audio-container #audio-player .start-time,
.audio-container .podc_st,
.audio-container .start-time{
  position:absolute !important;
  float:none !important;
  top:auto !important;
  bottom:0 !important;
  left:2px !important;
  right:auto !important;
  margin:0 !important;
  line-height:1 !important;
  font-family:Roboto,sans-serif !important;
  font-size:11px !important;
}
.audio-container #audio-player .podc_et,
.audio-container #audio-player .end-time,
.audio-container .podc_et,
.audio-container .end-time{
  position:absolute !important;
  float:none !important;
  top:auto !important;
  bottom:0 !important;
  right:2px !important;
  left:auto !important;
  margin:0 !important;
  line-height:1 !important;
  font-family:Roboto,sans-serif !important;
  font-size:11px !important;
}
.audio-container #audio-player .player-controls,
.audio-container .player-controls{
  flex:0 0 auto !important;
  float:none !important;
  margin:0 !important;
  margin-top:0 !important;
  padding-left:4px !important;
  display:flex !important;
  align-items:flex-start !important;
  line-height:0 !important;
  top:auto !important;
  align-self:center !important;
}
.audio-container #audio-player .avolcontrol,
.audio-container .avolcontrol{
  float:none !important;
  margin:0 !important;
  margin-top:0 !important;
  margin-left:0 !important;
  line-height:0 !important;
  text-align:center !important;
  width:48px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:2px;
}
.audio-container .avolcontrol br{display:none}
.audio-container #audio-player .speaker_volume,
.audio-container .speaker_volume{
  position:static !important;
  top:0 !important;
  margin:0 !important;
  display:block !important;
  width:45px !important;
  order:1;
}
.audio-container #audio-player .speakerimg,
.audio-container .speakerimg{
  position:static !important;
  top:0 !important;
  display:block !important;
  margin:0 !important;
  margin-right:0 !important;
  order:2;
  opacity:.7;
}
.audio-container #audioSeek,
.audio-container progress{
  margin:0 !important;
}
.podtitle{
  font-family:var(--si-display) !important;
  line-height:1.25 !important;
  letter-spacing:-.02em;
}
.podsubtitle,.team,.trscript,.podc_linktxt{
  font-family:var(--si-body);
  line-height:1.55 !important;
}
.mini-subtitle{margin-top:2px !important;line-height:1.3 !important}

/* Footer */
#allfooter{
  background:#1a1f2b !important;
  color:#c5cad6 !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  font-family:var(--si-display) !important;
}
#allfooter a{color:#f4f1ea !important}
#allfooter a:hover{color:var(--si-solar) !important}
#allfooter small{color:#a8b0c0 !important}

.confirmoverlay .inside{
  background:#1a2030 !important;
  border:1px solid rgba(255,255,255,.1);
  color:#f4f1ea !important;
}
.btn-confirm-cfm{
  background:var(--si-solar) !important;
  color:#1a0d00 !important;
  border:none !important;
  border-radius:12px !important;
  font-weight:700 !important;
}

.slogan_1 .slogan_1_bg{display:inline-flex;align-items:center}

/* Article slideshow (.flow_slider / .flow_frame) — Solar accent only.
   .flow_text_det keeps legacy Roboto + allstyles size/padding/line-height:
   Literata grows the text box ~+16px / +1 line at ≤750px; Syne reflows
   desktop wraps. Do not touch font-size, line-height, or padding here. */
.aflow_title{
  color:var(--si-solar) !important;
  border-color:var(--si-solar) !important;
  font-weight:600 !important;
}
.flow_txt{
  border-left-color:var(--si-solar) !important;
}

@media screen and (max-width:780px){
  .slogan_2,.slogan_2_bg{max-width:none;font-size:clamp(1.8rem,8.5vw,2.5rem) !important}
  .head_ins{margin-top:84px !important}
  .blackbgr + div{margin-top:20px !important}
}

/* ——— Threads (.tw_*) — Solar Ink per-segment beats (overrides container/head.php inline) ———
   Live assemble: dynamic → head → header → article.php → footer → bodyend.
   No continuous spine — each .tw_onecont gets a flow_txt-style 3px solar left border.
   Keep numbered vertical beats; do not port article-255 slideshow structure. */
.tw_horiz_cont{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:4.3rem;
  margin:12px 0 32px 0 !important;
  padding:0 !important;
  width:100% !important;
  max-width:46em;
  height:auto !important;
  border:none !important;
  border-left:none !important;
  background:none !important;
  box-shadow:none !important;
  outline:none !important;
}
/* Hard-kill any leftover spine pseudo / rail on the wrapper */
.tw_horiz_cont::before,
.tw_horiz_cont::after{
  content:none !important;
  display:none !important;
  border:none !important;
  background:none !important;
  width:0 !important;
  height:0 !important;
}
.tw_onecont{
  position:relative;
  height:auto !important;
  width:100% !important;
  max-width:none;
  margin:0 !important;
  padding:.95rem 1rem 1.15rem 1.05rem !important;
  /* Match .flow_txt accent: 3px solar bar ONLY on each beat — gaps stay empty */
  border-left:3px solid var(--si-solar) !important;
  border-bottom:none !important;
  border-top:none !important;
  border-right:none !important;
  border-top-right-radius:12px !important;
  border-bottom-right-radius:12px !important;
  background:transparent !important; /* no left wash that reads as a continuous rail */
}
.tw_onecont:last-child{
  border-bottom:none !important;
}
.tw_one{
  display:flex !important;
  align-items:center !important;
  font-family:var(--si-display) !important;
  font-weight:600 !important;
  font-size:.72rem !important;
  padding:0 !important;
  margin:0 0 .55rem !important;
  min-height:0;
}
/* Number pill — larger solar circle; white numeral centered inside */
.tw_num_cont{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  z-index:1;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  padding:0 !important;
  border:none !important;
  border-radius:999px !important;
  background:var(--si-solar) !important;
  box-shadow:0 4px 12px rgba(255,125,1,.2);
}
.tw_num{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  margin-left:0 !important;
  margin-top:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-family:var(--si-display) !important;
  font-size:.94rem !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  line-height:1 !important;
  text-align:center !important;
}
/* Anchor spans from bodyend numbering must not nudge the glyph */
.tw_num > span{
  position:absolute !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
  pointer-events:none;
}
.tw_num a::after{
  background:none !important;
  opacity:1;
  margin:0 !important;
  padding:0 !important;
}
.tw_text{
  font-family:var(--si-body) !important;
  font-size:1em !important;
  font-weight:400 !important;
  line-height:1.82 !important;
  letter-spacing:.005em !important;
  padding:0 !important;
  padding-bottom:0 !important;
  color:inherit;
  text-wrap:pretty;
}
.tw_text > br + br{
  content:"";
  display:block;
  margin-top:.35em;
}
/* Embeds — Solar media chrome; % shrink first (via wrapper — article HTML uses
   style="width:99%!important;max-width:600px!important" which beats stylesheet
   width/max-width), then max-height + object-fit caps.
   Do not target .tw_share img (share glyphs). */
.tw_text > a:has(> img),
.tw_onecont > a:has(> img){
  display:block !important;
  width:70%;
  max-width:min(100%,34rem);
}
.tw_text > a > img,
.tw_text > img,
.tw_onecont > a > img,
.imgtwt{
  display:block !important;
  width:100% !important; /* fill the 70% wrapper; inline 99% still resolves against it */
  height:auto !important;
  max-width:100% !important;
  max-height:min(48vh,380px) !important;
  object-fit:contain !important;
  object-position:left center !important;
  border-radius:16px !important;
  border:1px solid var(--si-line) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.08) !important;
}
.tw_text > a:hover > img,
.tw_onecont > a:hover > img{
  box-shadow:0 14px 32px rgba(255,125,1,.14) !important;
}
.imgtwt{
  float:left;
  padding:0 !important;
  margin:0 12px 10px 0 !important;
}
.txttwt{
  margin-top:.4rem !important;
  margin-bottom:1.5rem !important;
  padding-left:0 !important;
  float:none !important;
  font-family:var(--si-display) !important;
  font-size:1rem !important;
  font-weight:600 !important;
  line-height:1.45 !important;
  letter-spacing:-.015em !important;
  color:var(--si-text);
}
/* Per-segment share — thin solar hairline, quiet icons (keep markup/JS) */
.tw_share{
  display:flex !important;
  align-items:center !important;
  gap:1.1rem !important;
  height:auto !important;
  width:100% !important;
  margin-top:1.05rem !important;
  padding:.55rem 0 .1rem !important;
  padding-left:0 !important;
  border:none !important;
  border-top:1px solid color-mix(in srgb, var(--si-solar) 22%, var(--si-line)) !important;
  border-radius:0 !important;
  background:transparent !important;
  opacity:1 !important;
}
.tw_share img{
  position:static !important;
  top:auto !important;
  margin:0 !important;
  margin-right:0 !important;
  opacity:.58;
  filter:grayscale(1) contrast(1.05);
  transition:opacity .15s ease, filter .15s ease, transform .15s ease;
}
.tw_share a{
  border-bottom:none !important;
  line-height:0;
}
.tw_share a::after{
  background:none !important;
  margin:0 !important;
  padding:0 !important;
}
.tw_share a:hover img,
.tw_share a:focus-visible img{
  opacity:1;
  filter:none;
  transform:translateY(-1px);
}
.tw_share > img:first-child{
  opacity:.85;
  filter:brightness(0) saturate(100%) invert(48%) sepia(98%) saturate(1650%) hue-rotate(5deg) brightness(103%) contrast(101%);
}
@media only screen and (max-width:600px){
  /* Pull whole spine left (outer inset); keep a few px between text and border */
  .tw_horiz_cont{
    margin-left:-22px !important;
    width:calc(100% + 22px) !important;
    gap:3.5rem;
  }
  .tw_onecont{
    width:100% !important;
    /* 12px keeps text off the solar border; outer inset handled by .tw_horiz_cont */
    padding:.85rem .7rem 1rem 12px !important;
  }
  .tw_num_cont{
    left:auto !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
  }
  .tw_num{
    font-size:.94rem !important;
    color:#fff !important;
    margin:0 !important;
  }
  .tw_text{
    font-size:.98em !important;
    line-height:1.75 !important;
  }
  .tw_text > a:has(> img),
  .tw_onecont > a:has(> img){
    width:82%;
  }
  .tw_text > a > img,
  .tw_text > img,
  .tw_onecont > a > img,
  .imgtwt{
    max-width:100% !important;
    max-height:min(42vh,300px) !important;
  }
  .tw_share{gap:.85rem !important}
  .tw_share img{margin-right:0 !important}
}
@media only screen and (max-width:470px){
  .tw_horiz_cont{
    margin-left:-28px !important;
    width:calc(100% + 28px) !important;
  }
  .tw_onecont{
    padding:.8rem .6rem .95rem 12px !important;
  }
  .tw_num{margin-top:0 !important}
  .tw_share img{margin-right:0 !important}
}
/* Dark mode — beat swdmode() inline border/opacity tweaks */
html:has(#dmode:checked) .tw_horiz_cont,
#articleid.whiteicon .tw_horiz_cont{
  border:none !important;
  border-left:none !important;
  background:none !important;
}
html:has(#dmode:checked) .tw_onecont,
#articleid.whiteicon .tw_onecont{
  border-left-color:var(--si-solar) !important;
  border-bottom:none !important;
  background:transparent !important;
}
html:has(#dmode:checked) .tw_num_cont,
#articleid.whiteicon .tw_num_cont{
  border:none !important;
  box-shadow:0 6px 14px rgba(0,0,0,.35);
}
html:has(#dmode:checked) .tw_share,
#articleid.whiteicon .tw_share{
  border-top-color:color-mix(in srgb, var(--si-solar) 35%, rgba(255,255,255,.14)) !important;
  opacity:1 !important;
}
html:has(#dmode:checked) .tw_text > a > img,
html:has(#dmode:checked) .tw_text > img,
html:has(#dmode:checked) .tw_onecont > a > img,
html:has(#dmode:checked) .imgtwt,
#articleid.whiteicon .tw_text > a > img,
#articleid.whiteicon .tw_text > img,
#articleid.whiteicon .tw_onecont > a > img,
#articleid.whiteicon .imgtwt{
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.35) !important;
}
html:has(#dmode:checked) .txttwt,
#articleid.whiteicon .txttwt{
  color:#e7e7e7;
}

/* Timeline (140/141): wider left/right cards on large screens, with air from the
   center topic circle (50px). A plain % bump (47%+) hugs/overlaps the circle, so
   grow the column and size each card as half minus a fixed center gutter. */
@media screen and (min-width:1100px){
  #articleid:has(.timeline-container){
    max-width:min(68em,94vw);
  }
  .timeline-container{
    width:100%;
    max-width:1240px;
  }
  .timeline-content{
    /* 25px circle radius + ~4px ring + ~23px air (arrow tip still clears) */
    width:calc(50% - 52px) !important;
  }
}

/* Paywall teaser panel (Phase 1)
   Fade zone ≈ 3 body line-heights (em tracks .article font-size / line box). */
.si-paywall-excerpt{
  position:relative;
  -webkit-mask-image:linear-gradient(
    to bottom,
    #000 0%,
    #000 calc(100% - 5.5em),
    rgba(0,0,0,.55) calc(100% - 2.6em),
    transparent 100%
  );
  mask-image:linear-gradient(
    to bottom,
    #000 0%,
    #000 calc(100% - 5.5em),
    rgba(0,0,0,.55) calc(100% - 2.6em),
    transparent 100%
  );
}
.si-paywall{
  position:relative;
  margin:-.35rem 0 2.5rem;
  clear:both;
  z-index:2;
}
.si-paywall-fade{
  /* ≥2 line-heights of visible fade; 5.5em ≈ ~3 lines at article line-height */
  height:5.5em;
  margin-top:-5.5em;
  position:relative;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(
    to bottom,
    rgba(247,245,241,0) 0%,
    rgba(247,245,241,.28) 18%,
    rgba(247,245,241,.62) 48%,
    rgba(247,245,241,.9) 78%,
    var(--si-paper) 100%
  );
}
.si-paywall-panel{
  position:relative;
  z-index:3;
  border-top:1px solid var(--si-line);
  border-bottom:1px solid var(--si-line);
  padding:1.6rem 0 1.4rem;
  background:
    linear-gradient(180deg, rgba(255,125,1,.06), transparent 42%),
    var(--si-paper-2);
}
.si-paywall-kicker{
  margin:0 0 .35rem;
  font-family:var(--si-display);
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--si-solar);
  font-weight:700;
}
.si-paywall-title{
  margin:0 0 .55rem;
  font-family:var(--si-display);
  font-size:1.55rem;
  line-height:1.2;
  letter-spacing:-.02em;
  color:var(--si-ink);
  font-weight:700;
}
.si-paywall-copy{
  margin:0 0 1.1rem;
  max-width:36em;
  font-family:var(--si-body);
  font-size:1.05rem;
  line-height:1.55;
  color:var(--si-muted);
}
.si-paywall-copy strong{color:var(--si-text);font-weight:700}
.si-paywall-actions{margin:0 0 .85rem}
.si-paywall-cta{
  display:inline-block;
  font-family:var(--si-display);
  font-weight:700;
  font-size:1rem;
  letter-spacing:.01em;
  color:#fff !important;
  background:var(--si-solar);
  border:1px solid #e56e00;
  border-radius:12px;
  padding:.72rem 1.25rem;
  text-decoration:none !important;
}
.si-paywall-cta:hover{
  background:#e56e00;
  color:#fff !important;
}
.si-paywall-note{
  margin:0;
  font-family:var(--si-display);
  font-size:.82rem;
  line-height:1.45;
  color:var(--si-muted);
}
.si-paywall-note code{
  font-size:.78rem;
  color:var(--si-text);
}
.si-paywall-fail{
  margin:0 0 1rem;
  padding:.7rem .85rem;
  border:1px solid rgba(196,92,38,.35);
  border-left:3px solid var(--si-solar);
  background:rgba(255,125,1,.1);
  font-family:var(--si-body);
  font-size:.98rem;
  line-height:1.45;
  color:var(--si-ink);
}
html:has(#dmode:checked) .si-paywall-fade{
  background:linear-gradient(
    to bottom,
    rgba(11,14,20,0) 0%,
    rgba(11,14,20,.28) 18%,
    rgba(11,14,20,.62) 48%,
    rgba(11,14,20,.9) 78%,
    #0b0e14 100%
  );
}
html:has(#dmode:checked) .si-paywall-panel{
  background:
    linear-gradient(180deg, rgba(255,125,1,.1), transparent 42%),
    #12151c;
  border-color:rgba(255,255,255,.1);
}
html:has(#dmode:checked) .si-paywall-title{color:#f3f1ec}
html:has(#dmode:checked) .si-paywall-copy{color:#a8b0c0}
html:has(#dmode:checked) .si-paywall-copy strong{color:#f3f1ec}
html:has(#dmode:checked) .si-paywall-note{color:#8b93a3}
html:has(#dmode:checked) .si-paywall-note code{color:#e7e7e7}
html:has(#dmode:checked) .si-paywall-fail{
  border-color:rgba(255,125,1,.35);
  background:rgba(255,125,1,.12);
  color:#f3f1ec;
}

/* Comment send + PGP confidential share links — solar orange, not #dd2d00 red */
#acomsnd,
#lcomsnd,
.lcomsnd{
  background:var(--si-solar) !important;
  color:#fff !important;
}
#acomsnd:hover,
#lcomsnd:hover,
.lcomsnd:hover{
  background:var(--si-solar-2) !important;
}
.shareconf a,
.shareconf>a{
  color:var(--si-solar) !important;
}
.shareconf a:hover,
.shareconf>a:hover{
  color:#e56e00 !important;
}
