/* ── Subtle Cards: 細い縁取り + 柔らかい角 + 極薄シャドウ ───────────────── */

:root{
  /* トーンをここで一括調整 */
  --sb-radius: 12px;                     /* 角丸（上品め） */
  --sb-bd: 1px solid rgba(15, 23, 42, .08); /* ほのかな縁取り */
  --sb-bg: #fff;                         /* カード背景 */
  --sb-shadow: 0 1px 2px rgba(15, 23, 42, .04); /* 極薄シャドウ */
  --sb-shadow-hover: 0 6px 16px rgba(15, 23, 42, .08);

  --sb-title:#0f172a;
  --sb-muted:#667085;
  --sb-accent:#2563eb;
  --sb-link:#0b66c3;
  --sb-link-hover:#084f98;

  /* ランキング番号の小さなバッジ色 */
  --sb-badge-bg: rgba(37, 99, 235, .10);
  --sb-badge-fg: #1e3a8a;

  /* タグのチップ（縁取りを主役に） */
  --sb-chip-bg: #fff;
  --sb-chip-bd: 1px solid rgba(37, 99, 235, .18);
  --sb-chip-bg-hover: #f5f8ff;
}

.widget-area{
  display:flex; flex-direction:column; gap:16px;
}

/* カード本体：控えめで統一 */
.widget-area .widget{
  margin:0; padding:14px 16px;
  background: var(--sb-bg);
  border: var(--sb-bd);
  border-radius: var(--sb-radius);
  box-shadow: var(--sb-shadow);
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.widget-area .widget:hover{
  box-shadow: var(--sb-shadow-hover);
  transform: translateY(-2px);
  border-color: rgba(15, 23, 42, .12);
}

/* 見出し：繊細な下線とアクセントバー */
.widget-area .widget .widget-title{
  display:flex; align-items:center; gap:.5rem;
  margin:0 0 10px; padding-bottom:8px;
  color:var(--sb-title); font-weight:800;
  font-size: clamp(16px,1.2vw,18px);
  border-bottom: 1px solid rgba(15, 23, 42, .08);
  position:relative;
}
.widget-area .widget .widget-title::after{
  content:""; position:absolute; left:0; bottom:-1px;
  width:48px; height:2px; background:var(--sb-accent);
  border-radius:2px;
}
.stnx-emoji{ display:inline-flex; align-items:center; line-height:1; transform: translateY(1px); }
.stnx-emoji img.emoji{ width:1em !important; height:1em !important; max-width:none !important; }

/* ランキング：細い区切り線＋小ぶりバッジ */
.top-ranking-widget{
  list-style:none; padding:0; margin:0; display:grid; gap:6px; counter-reset:rank;
}
.top-ranking-widget li{
  display:grid; grid-template-columns: 1.6em 1fr; gap:.5rem; align-items:start;
  padding:8px 0;
  border-bottom: 1px dashed rgba(15, 23, 42, .08);
}
.top-ranking-widget li:last-child{ border-bottom:0; }
.top-ranking-widget li::before{
  counter-increment: rank; content: counter(rank);
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6em; height:1.6em;
  border-radius:8px;
  background: var(--sb-badge-bg);
  color: var(--sb-badge-fg);
  font-weight:700; font-size:.9rem;
}
.top-ranking-widget a{
  color:var(--sb-title); text-decoration:none; line-height:1.45;
}
.top-ranking-widget a:hover{ color:var(--sb-link); text-decoration:underline; }
/* 2行で上品に切る */
.top-ranking-widget li a{
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
  overflow:hidden; white-space:normal;
}

/* 検索ボックス：枠線主役で上品に */
.wp-block-search__inside-wrapper{
  display:flex; gap:8px; align-items:center;
  background:#fff;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: var(--sb-radius);
  padding:6px 8px;
}
.wp-block-search__label{ display:block; margin:0 0 6px; color:var(--sb-muted); font-size:.92rem; }
.wp-block-search__input{
  flex:1 1 auto; min-width:0; border:0; outline:0; background:transparent; font-size:16px; padding:6px 4px;
}
.wp-block-search__button{
  display:inline-flex; align-items:center; justify-content:center;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius:10px; padding:6px 10px;
  background:#0f172a; color:#fff; cursor:pointer;
}
.wp-block-search__button:hover{ filter:brightness(1.05); }

/* タグクラウド：線を活かしたチップ */
.widget_tag_cloud .wp-block-tag-cloud{
  display:flex; flex-wrap:wrap; gap:8px; margin:0;
}
.widget_tag_cloud .tag-cloud-link{
  display:inline-flex; align-items:center;
  padding:6px 10px;
  background: var(--sb-chip-bg);
  border: var(--sb-chip-bd);
  border-radius: 999px;
  color:#1e3a8a; text-decoration:none; font-size:13px; line-height:1.2;
  transition: background .15s ease, border-color .15s ease;
}
.widget_tag_cloud .tag-cloud-link:hover{
  background: var(--sb-chip-bg-hover);
  border-color: rgba(37, 99, 235, .28);
  text-decoration:none;
}

/* PRカード：縁取りを活かしつつ控えめな浮き */
.container-pr{ display:grid; gap:10px; }
.card-pr-sidebar{
  border: var(--sb-bd);
  border-radius: var(--sb-radius);
  overflow:hidden; background:#fff;
  box-shadow: var(--sb-shadow);
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.card-pr-sidebar:hover{
  box-shadow: var(--sb-shadow-hover);
  transform: translateY(-2px);
  border-color: rgba(15, 23, 42, .12);
}
.card-pr-sidebar img{ display:block; width:100% !important; height:auto !important; }

/* X(Twitter) 埋め込み：常に親幅内 */
.twitter-container,
.wp-block-embed-twitter,
.twitter-timeline,
.twitter-timeline-rendered{ width:100% !important; max-width:100% !important; }
.twitter-timeline, iframe[id^="twitter-widget-"]{ display:block !important; min-height:360px; }

/* YouTube：カード感を統一 */
.yt-heading{ margin:0 0 8px; }
.yt-heading__link{ color:inherit; text-decoration:none; }
.yt-heading__link:hover{ text-decoration:underline; text-underline-offset:2px; }
.yt-sub{ font-size:13px; color:var(--sb-accent); font-weight:600; }

.yt-scope{ display:grid; gap:12px; }
.yt-scope .yt-box{
  position:relative; width:100%; height:0; padding-bottom:56.25%;
  overflow:hidden; border-radius: var(--sb-radius);
  background:#000;
  border: var(--sb-bd);
  box-shadow: var(--sb-shadow);
}
.yt-scope .yt-box > iframe{
  position:absolute; inset:0; width:100% !important; height:100% !important; border:0 !important; display:block;
}

/* ピン留め（≥992px で上部固定） */
.widget.pin-top{ order:-1; }
@media (min-width: 992px){
  .widget.pin-top{ position: sticky; top: 16px; z-index:2; }
}

/* 小画面の密度最適化 */
@media (max-width: 767.98px){
  .widget-area{ gap:14px; }
  .widget-area .widget{ padding:12px 14px; border-radius:10px; }
  .widget-area .widget .widget-title{ font-size: clamp(16px,4.2vw,18px); }
}

/* フォーカス可視化 */
.widget-area a:focus-visible,
.wp-block-search__input:focus-visible,
.wp-block-search__button:focus-visible{
  outline:2px solid var(--sb-accent);
  outline-offset:2px; border-radius:6px;
}

/* ダークモードの繊細カード */
@media (prefers-color-scheme: dark){
  :root{
    --sb-bg:#0b1220;
    --sb-bd: 1px solid rgba(148, 163, 184, .18);
    --sb-shadow: 0 1px 2px rgba(0,0,0,.35);
    --sb-shadow-hover: 0 8px 20px rgba(0,0,0,.45);
    --sb-title:#eef2ff; --sb-muted:#93a4c7; --sb-link:#82aaff; --sb-link-hover:#b2c8ff; --sb-accent:#82aaff;
    --sb-badge-bg: rgba(130, 170, 255, .18);
    --sb-badge-fg: #cbd5ff;
    --sb-chip-bg:#0b1220; --sb-chip-bd:1px solid rgba(130,170,255,.28); --sb-chip-bg-hover:#0f1a33;
  }
  .top-ranking-widget li{ border-bottom:1px dashed rgba(148,163,184,.18); }
}

/* ===== 強制上書き（親テーマに勝つための“決定打”） ===== */

/* ラッパー（余白・角・縁取り・影）：ID + 直接子で強化 */
#secondary.widget-area > .widget{
  background:#fff !important;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:12px !important;
  box-shadow:0 1px 2px rgba(15,23,42,.06) !important;
  padding:14px 16px !important;
  margin:0 0 16px !important;
}

/* 見出しの下線とアクセント */
#secondary.widget-area > .widget > .widget-title{
  color:#0f172a !important;
  font-weight:800 !important;
  font-size: clamp(16px,1.2vw,18px) !important;
  margin:0 0 10px !important;
  padding:0 0 8px !important;
  border-bottom:1px solid rgba(15,23,42,.10) !important;
  position:relative !important;
}
#secondary.widget-area > .widget > .widget-title::after{
  content:"" !important;
  position:absolute !important; left:0; bottom:-1px;
  width:48px; height:2px; background:#2563eb; border-radius:2px;
}

/* ランキング行：2行で上品に切る + 番号バッジ */
#secondary .top-ranking-widget{ list-style:none; padding:0; margin:0; display:grid; gap:6px; counter-reset:rank; }
#secondary .top-ranking-widget li{
  display:grid; grid-template-columns:1.6em 1fr; gap:.5rem;
  padding:8px 0; border-bottom:1px dashed rgba(15,23,42,.10);
}
#secondary .top-ranking-widget li:last-child{ border-bottom:0; }
#secondary .top-ranking-widget li::before{
  counter-increment:rank; content:counter(rank);
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6em; height:1.6em; border-radius:8px;
  background:rgba(37,99,235,.10); color:#1e3a8a; font-weight:700; font-size:.9rem;
}
#secondary .top-ranking-widget a{ color:#0f172a; text-decoration:none; line-height:1.45; }
#secondary .top-ranking-widget a:hover{ color:#0b66c3; text-decoration:underline; }
#secondary .top-ranking-widget li a{
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; white-space:normal;
}

/* 検索ボックス（ブロック版） */
#secondary .wp-block-search__inside-wrapper{
  display:flex; gap:8px; align-items:center;
  background:#fff; border:1px solid rgba(15,23,42,.12); border-radius:12px; padding:6px 8px;
}
#secondary .wp-block-search__input{ flex:1 1 auto; min-width:0; border:0; outline:0; background:transparent; font-size:16px; padding:6px 4px; }
#secondary .wp-block-search__button{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(15,23,42,.12); border-radius:10px; padding:6px 10px;
  background:#0f172a; color:#fff; cursor:pointer;
}

/* タグクラウド */
#secondary .widget_tag_cloud .wp-block-tag-cloud{ display:flex; flex-wrap:wrap; gap:8px; margin:0; }
#secondary .widget_tag_cloud .tag-cloud-link{
  display:inline-flex; align-items:center; padding:6px 10px;
  background:#fff; border:1px solid rgba(37,99,235,.18); border-radius:999px;
  color:#1e3a8a; text-decoration:none; font-size:13px; line-height:1.2;
}
#secondary .widget_tag_cloud .tag-cloud-link:hover{
  background:#f5f8ff; border-color:rgba(37,99,235,.28);
}

/* PRカード群 */
#secondary .container-pr{ display:grid; gap:10px; }
#secondary .card-pr-sidebar{
  overflow:hidden; background:#fff;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:12px !important;
  box-shadow:0 1px 2px rgba(15,23,42,.06) !important;
}
#secondary .card-pr-sidebar img{ display:block; width:100% !important; height:auto !important; }

/* X(Twitter)埋め込みの横幅破綻防止 */
#secondary .twitter-container,
#secondary .wp-block-embed-twitter,
#secondary .twitter-timeline,
#secondary .twitter-timeline-rendered{ width:100% !important; max-width:100% !important; }
#secondary iframe[id^="twitter-widget-"]{ display:block !important; min-height:360px; }

/* YouTube埋め込み（カード調） */
#secondary .yt-scope{ display:grid; gap:12px; }
#secondary .yt-scope .yt-box{
  position:relative; width:100%; height:0; padding-bottom:56.25%;
  overflow:hidden; background:#000;
  border:1px solid rgba(15,23,42,.12); border-radius:12px; box-shadow:0 1px 2px rgba(15,23,42,.06);
}
#secondary .yt-scope .yt-box > iframe{ position:absolute; inset:0; width:100% !important; height:100% !important; border:0 !important; }

/* ピン留め */
#secondary .widget.pin-top{ order:-1; }
@media (min-width: 992px){
  #secondary .widget.pin-top{ position:sticky; top:16px; z-index:2; }
}

/* 小画面の密度最適化 */
@media (max-width: 767.98px){
  #secondary.widget-area > .widget{ padding:12px 14px !important; border-radius:10px !important; }
}


/* ============= サイドバー微整形・仕上げセット ============= */

/* 0) 下地：カードの縁取りを繊細に（既存より少し上品なトーン） */
#secondary.widget-area > .widget{
  background:#fff !important;
  border:1px solid rgba(15,23,42,.12) !important;   /* 細い縁 */
  border-radius:12px !important;
  box-shadow:0 1px 2px rgba(15,23,42,.06) !important; /* 極薄い影 */
  padding:14px 16px !important;
  margin:0 0 16px !important;
}

/* 1) 汎用ウィジェット見出し（h2.widget-title / h4 も揃える） */
#secondary .widget > .widget-title,
#secondary .widget h4{
  color:#0f172a !important;
  font-weight:800 !important;
  font-size: clamp(16px,1.2vw,18px) !important;
  margin:0 0 12px !important;
  padding:0 0 10px !important;
  border-bottom:1px solid rgba(15,23,42,.10) !important;
  position:relative !important;
}
#secondary .widget > .widget-title::after,
#secondary .widget h4::after{
  content:"";
  position:absolute; left:0; bottom:-1px;
  width:56px; height:2px; background:#2563eb; border-radius:2px;
  /* 細いアクセントライン */
}

/* h4「関連サイトコラム」を少し“特別扱い”に（さりげない帯） */
#secondary .widget h4{
  letter-spacing:.01em;
}
#secondary .widget h4::before{
  content:"";
  position:absolute; inset:auto auto -1px 0;
  width:100%; height:36px;
  background:linear-gradient(180deg, rgba(37,99,235,.06), rgba(37,99,235,0));
  border-bottom-left-radius:10px;
  border-bottom-right-radius:10px;
  pointer-events:none;
}

/* 2) .mg-wid-title / .wtitle（h6）を“見える見出し”に */
#secondary .mg-wid-title,
#secondary .wtitle{
  margin:0 0 10px !important;
}
#secondary .mg-wid-title .wtitle,
#secondary .wtitle{
  display:flex; align-items:center; gap:.5rem;
  color:#0f172a !important;
  font-weight:800 !important;
  font-size: clamp(15px,1.1vw,17px) !important;
  line-height:1.25;
}
#secondary .mg-wid-title .wtitle::before,
#secondary .wtitle::before{
  content:""; flex:0 0 20px; height:20px; border-radius:6px;
  background:
    conic-gradient(from 0deg at 50% 50%, #1d9bf0, #0ea5e9, #6366f1, #1d9bf0);
  /* 小さなグラデ角丸ピルをアイコン代わりに */
  opacity:.9;
}

/* 3) タグクラウド：背景パネル + 白カプセル */
#secondary .widget_tag_cloud{
  background: linear-gradient(180deg,#f8fafc 0%, #f1f5f9 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
  padding:12px;
}
#secondary .widget_tag_cloud .wp-block-tag-cloud{
  display:flex; flex-wrap:wrap; gap:8px; margin:0;
}
#secondary .widget_tag_cloud .tag-cloud-link{
  display:inline-flex; align-items:center; gap:.4em;
  padding:6px 10px;
  background:#fff;                       /* 白いカプセル */
  border:1px solid rgba(37,99,235,.18);
  border-radius:999px;
  color:#1e3a8a; text-decoration:none;
  box-shadow:0 1px 1px rgba(2,6,23,.04);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
#secondary .widget_tag_cloud .tag-cloud-link:hover{
  transform: translateY(-1px);
  border-color: rgba(37,99,235,.32);
  box-shadow:0 4px 10px rgba(2,6,23,.06);
}

/* 4) ランキング行：2行で切って見やすく + 番号ピル */
#secondary .top-ranking-widget{ list-style:none; padding:0; margin:0; display:grid; gap:6px; counter-reset:rank; }
#secondary .top-ranking-widget li{
  display:grid; grid-template-columns:1.6em 1fr; gap:.5rem;
  padding:8px 0; border-bottom:1px dashed rgba(15,23,42,.10);
}
#secondary .top-ranking-widget li:last-child{ border-bottom:0; }
#secondary .top-ranking-widget li::before{
  counter-increment:rank; content:counter(rank);
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6em; height:1.6em; border-radius:999px;
  background:rgba(37,99,235,.10); color:#1e3a8a; font-weight:700; font-size:.9rem;
}
#secondary .top-ranking-widget a{
  color:#0f172a; text-decoration:none; line-height:1.45;
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden;
}
#secondary .top-ranking-widget a:hover{ color:#0b66c3; text-decoration:underline; }

/* 5) PRカード：画像だけでも“カード”に見えるよう縁取り統一 */
#secondary .container-pr{ display:grid; gap:10px; }
#secondary .card-pr-sidebar{
  overflow:hidden; background:#fff;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:12px !important;
  box-shadow:0 1px 2px rgba(15,23,42,.06) !important;
}
#secondary .card-pr-sidebar img{ display:block; width:100% !important; height:auto !important; }

/* 6) X（旧Twitter）タイムライン：幅の破綻防止＋フォールバック */
#secondary .twitter-container,
#secondary .wp-block-embed-twitter,
#secondary .twitter-timeline,
#secondary .twitter-timeline-rendered{ width:100% !important; max-width:100% !important; }

#secondary iframe[id^="twitter-widget-"]{
  display:block !important;
  min-height:360px;            /* 中身が描画されれば高さが付く */
  width:100% !important;
  border:0 !important;
}

/* “なにも表示されない/visibility:hiddenで0x0”の時はカード化したリンクだけ見せる */
#secondary .x-fallback{
  display:none;                 /* 通常は非表示 */
  margin-top:8px;
}
#secondary .x-fallback a{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:10px 12px; border-radius:10px;
  background:#0f1419; color:#fff; text-decoration:none;
  border:1px solid rgba(2,6,23,.25);
}
#secondary .x-fallback a::before{
  content:""; width:16px; height:16px; border-radius:4px;
  background:#1d9bf0; box-shadow:0 0 0 3px rgba(29,155,240,.2) inset;
}

/* タイムラインが 0x0・隠し状態なら埋め込みを畳む（余白消し） */
#secondary .twitter-timeline[style*="width: 0px"][style*="height: 0px"],
#secondary .twitter-timeline-rendered[style*="width: 0px"][style*="height: 0px"]{
  display:none !important;
}


/* YouTube らしい見出しリンク */
#secondary .yt-heading__link{
  display:inline-flex; flex-direction:column;
  gap:2px; text-decoration:none;
  color:#0f172a;          /* ベースは本文色 */
}
#secondary .yt-heading__link::before{
  content:""; width:28px; height:20px; border-radius:6px;
  background:#ff0033;     /* YouTube レッド */
  display:inline-block; margin-bottom:6px;
  box-shadow: 0 0 0 3px rgba(255,0,51,.16) inset;
}
#secondary .yt-heading__link:hover{ text-decoration:underline; }
#secondary .yt-sub{
  font-size:13px; font-weight:700; color:#ea002c; letter-spacing:.01em;
}
/* ===== Xリンクを画像背景のカードにする（余白最小・読みやすい） ===== */

/* 変数：背景画像URL（差し替えやすく） */
:root{
  --x-bg-img: url("https://stellanews.life/wp-content/uploads/2024/03/STELLANEWSLIFE-e1722945594171.webp");
}

/* 余白を詰める（ウィジェット全体） */
#secondary #ai_widget-4,
#secondary #block-98{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 12px !important;
}

/* iframe系は非表示（リンクだけ表示） */
#secondary #ai_widget-4 iframe[id^="twitter-widget-"],
#secondary #block-98 iframe[id^="twitter-widget-"],
#secondary #ai_widget-4 .twitter-timeline-rendered,
#secondary #block-98 .twitter-timeline-rendered{
  display: none !important;
}

/* タイトルは不要なら非表示（必要ならこのブロックを消してください） */
#secondary #ai_widget-4 .mg-wid-title,
#secondary #block-98 .mg-wid-title{
  display: none !important;
}

/* Xリンクのカード化 */
#secondary #ai_widget-4 a.twitter-timeline,
#secondary #block-98 a.twitter-timeline,
#secondary a[href*="x.com/stellanewslife"],
#secondary a[href*="twitter.com/stellanewslife"]{
  display: flex !important;
  align-items: center;
  gap: .6rem;
  /* 背景：サイト画像 + ディザのない薄いダークグラデで文字を読みやすく */
  background:
    linear-gradient( to bottom, rgba(0,0,0,.25), rgba(0,0,0,.45) ),
    var(--x-bg-img) center/cover no-repeat;
  color: #fff !important;

  /* 余白と角丸・縁取り（“過度に丸くない”上品なカード） */
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);

  text-decoration: none !important;
  font-weight: 700;
  line-height: 1.2;
  min-height: 44px; /* タップに十分 */
  isolation: isolate; /* オーバーレイ安定化 */
}

/* ホバー時は少しだけ持ち上げる（落ち着いた動き） */
#secondary #ai_widget-4 a.twitter-timeline:hover,
#secondary #block-98 a.twitter-timeline:hover,
#secondary a[href*="x.com/stellanewslif"] :hover, /* 誤爆防止で下に本命を再指定 */
#secondary a[href*="x.com/stellanewslife"]:hover,
#secondary a[href*="twitter.com/stellanewslife"]:hover{
  box-shadow: 0 4px 12px rgba(0,0,0,.10);
  transform: translateY(-1px);
}

/* “X”アイコンをCSSで簡易表示（読みやすい白枠カプセル） */
#secondary #ai_widget-4 a.twitter-timeline::before,
#secondary #block-98 a.twitter-timeline::before,
#secondary a[href*="x.com/stellanewslife"]::before,
#secondary a[href*="twitter.com/stellanewslife"]::before{
  content: "X";
  display: inline-flex;
  align-items: center; justify-content: center;
  width: 22px; height: 22px;
  font-size: 13px; font-weight: 900;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.12);
  flex: 0 0 22px;
}

/* 文言が長い時に折返ししつつ崩れないように */
#secondary #ai_widget-4 a.twitter-timeline,
#secondary #block-98 a.twitter-timeline{
  word-break: keep-all;
  overflow-wrap: anywhere;
}

/* ダークモードでもコントラスト保持（必要なら） */
@media (prefers-color-scheme: dark){
  #secondary #ai_widget-4 a.twitter-timeline,
  #secondary #block-98 a.twitter-timeline,
  #secondary a[href*="x.com/stellanewslife"],
  #secondary a[href*="twitter.com/stellanewslife"]{
    border-color: rgba(255,255,255,.12);
    box-shadow: 0 1px 2px rgba(0,0,0,.4);
  }
}

/* === Sidebar: 暗背景×白文字／コンパクト化 === */
.single #secondary,
.sidebar-sticky .widget-area{
  color: #e5e7eb;
}

/* ウィジェットカードの密度 */
.widget-area .widget{
  background: #0f172a;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 4px 10px rgba(0,0,0,.35);
  padding: 12px 14px;
  border-radius: 12px;
}
.widget-area .widget .widget-title{
  color:#fff;
  font-size: 15px;
  line-height: 1.3;
  margin: 0 0 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

/* ランキング：詰め気味＆読みやすく */
.top-ranking-widget{ margin:0; padding:0; list-style:none; }
.top-ranking-widget li{
  padding: 7px 0;
  border-bottom: 1px dashed rgba(255,255,255,.12);
}
.top-ranking-widget li:last-child{ border-bottom: 0; }
.top-ranking-widget a{
  color:#dbeafe; text-decoration:none;
  font-size: 14px;
}
.top-ranking-widget a:hover{ text-decoration: underline; text-underline-offset: 2px; }

/* タグクラウドを“白カプセル”で視認性UP（暗背景でも映える） */
.widget_tag_cloud .wp-block-tag-cloud{
  display:flex; flex-wrap:wrap; gap:6px;
}
.widget_tag_cloud .wp-block-tag-cloud a{
  background:#fff; color:#0b1320;
  border:1px solid rgba(17,24,39,.14);
  border-radius:999px;
  padding:6px 10px;
  line-height:1.2; font-size:13px !important;
  text-decoration:none;
}
.widget_tag_cloud .wp-block-tag-cloud a:hover{
  background:#f4f7ff; border-color:rgba(17,24,39,.22);
}

/* 「関連サイトコラム」等の h4 見出しも統一 */
.widget-area h4{
  color:#fff;
  font-size:15px;
  font-weight:800;
  line-height:1.3;
  margin:0 0 8px;
  padding-bottom:6px;
  border-bottom:1px solid rgba(255,255,255,.12);
}

/* X（Twitter）リンクは“余白ゼロ・1行で分かる” */
.twitter-container{ margin:0 !important; padding:0 !important; }
.twitter-timeline-rendered[style*="width: 0px"],
.twitter-timeline-rendered[style*="height: 0px"]{ display:none !important; }
a.twitter-timeline{
  display:block;
  width:100%;
  padding:8px 10px;
  border:1px dashed rgba(255,255,255,.16);
  border-radius:10px;
  color:#9cc1ff !important;
  text-decoration:none;
  font-size:13px;
  line-height:1.2;
}
a.twitter-timeline:hover{
  background:rgba(255,255,255,.04);
}

/* YouTube見出しリンク：ブランド色で視認性UP（でも控えめ） */
.yt-heading__link{
  color:#ff4e45; /* YouTube系 */
  font-weight:800; font-size:15px;
  text-decoration:none;
}
.yt-heading__link:hover{ text-decoration:underline; text-underline-offset:2px; }
.yt-sub{ color:#ffd0cc; font-size:12px; }