/*
Theme Name: Shun Entertainment Guide
Theme URI: https://www.syunotorenndo.top/
Author: 合同会社メテウス
Description: 漫画レビュー・回遊・広告表記・年齢確認に対応した軽量メディアテーマ。
Version: 1.5.1
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: shun-comic-guide
*/

:root {
  --scg-bg: #fff8fb;
  --scg-bg-soft: #ffedf4;
  --scg-card: #fffefe;
  --scg-line: rgba(160, 65, 100, .16);
  --scg-text: #4b2637;
  --scg-muted: #80616d;
  --scg-gold: #ef5f92;
  --scg-red: #e8457d;
  --scg-cyan: #b53f73;
  --scg-sky: #7dcfe7;
  --scg-lemon: #ffd85b;
  --scg-mint: #a8ddc6;
  --scg-radius: 22px;
  --scg-shadow: 0 22px 70px rgba(163, 64, 102, .14);
  --scg-width: 1120px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--scg-text);
  background:
    radial-gradient(circle at 10% 0%, rgba(255, 138, 180, .22), transparent 28rem),
    radial-gradient(circle at 90% 14%, rgba(125, 207, 231, .15), transparent 32rem),
    radial-gradient(circle at 52% 42%, rgba(255, 216, 91, .08), transparent 24rem),
    var(--scg-bg);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea, select { font: inherit; }

.scg-container { width: min(calc(100% - 32px), var(--scg-width)); margin-inline: auto; }
.scg-main { min-height: 62vh; }
.scg-section { padding: clamp(54px, 8vw, 96px) 0; }
.scg-section--soft { position: relative; background: linear-gradient(180deg, rgba(255, 225, 237, .62), rgba(255, 248, 232, .66)); border-block: 1px solid var(--scg-line); }
.scg-section--soft::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .36; background-image: radial-gradient(rgba(239,95,146,.18) 1px, transparent 1px); background-size: 18px 18px; mask-image: linear-gradient(to bottom, #000, transparent 78%); }
.scg-section--soft > * { position: relative; z-index: 1; }
.scg-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.scg-section-head h2, .scg-page-title { margin: 0; font-size: clamp(1.7rem, 3vw, 2.7rem); line-height: 1.28; letter-spacing: .02em; }
.scg-section-head h2 { display: inline; background: linear-gradient(transparent 72%, rgba(255,216,91,.72) 0); }
.scg-section-head p { margin: 8px 0 0; color: var(--scg-muted); }
.scg-section-head--center { justify-content: center; text-align: center; }
.scg-kicker { margin: 0 0 10px; color: var(--scg-gold); font-size: .78rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.scg-muted { color: var(--scg-muted); }

.scg-site-header { position: sticky; top: 0; z-index: 50; border-top: 4px solid transparent; border-bottom: 1px solid var(--scg-line); background: linear-gradient(#fff8fb,#fff8fb) padding-box, linear-gradient(90deg, var(--scg-gold), var(--scg-lemon), var(--scg-sky), var(--scg-mint)) border-box; backdrop-filter: blur(18px); box-shadow: 0 8px 24px rgba(126,48,78,.06); }
.scg-header-inner { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.scg-brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 900; letter-spacing: .04em; }
.scg-brand-mark { position: relative; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg, #f35f96, #ff9fbe); box-shadow: 0 8px 24px rgba(239,95,146,.28); }
.scg-brand-mark::after { content: "✦"; position: absolute; right: -8px; top: -11px; color: var(--scg-lemon); font-size: 13px; text-shadow: 0 2px 5px rgba(126,48,78,.16); }
.scg-nav ul { display: flex; align-items: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
.scg-nav a { display: block; padding: 10px 12px; color: var(--scg-muted); font-size: .9rem; font-weight: 700; border-radius: 10px; }
.scg-nav a:hover, .scg-nav .current-menu-item a { color: var(--scg-red); background: rgba(239,95,146,.1); }
.scg-menu-toggle { display: none; color: var(--scg-text); background: transparent; border: 1px solid var(--scg-line); border-radius: 10px; padding: 8px 12px; }

.scg-hero { position: relative; padding: clamp(66px, 9vw, 116px) 0 72px; overflow: hidden; }
.scg-hero::before { content: "✦"; position: absolute; left: 4%; top: 18%; color: var(--scg-sky); font-size: clamp(24px,4vw,56px); opacity: .38; transform: rotate(-14deg); }
.scg-hero::after { content: ""; position: absolute; inset: 10% -5% auto auto; width: min(46vw, 620px); aspect-ratio: 1; border: 1px solid rgba(239,95,146,.25); border-radius: 36% 64% 57% 43%; transform: rotate(15deg); background: linear-gradient(145deg, rgba(255,215,230,.34), rgba(255,242,247,.12)); box-shadow: inset 0 0 100px rgba(255,123,170,.16); pointer-events: none; }
.scg-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); gap: clamp(36px, 8vw, 90px); align-items: center; }
.scg-hero-copy-block { position: relative; }
.scg-badge { display: inline-flex; gap: 8px; align-items: center; padding: 7px 11px; border: 1px solid rgba(239,95,146,.3); border-radius: 999px; color: #b53768; background: rgba(255,220,233,.72); font-size: .76rem; font-weight: 800; }
.scg-hero h1 { max-width: 860px; margin: 20px 0; font-size: clamp(2.5rem, 6vw, 5.35rem); line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; word-break: normal; overflow-wrap: break-word; line-break: strict; }
.scg-hero h1 em { color: var(--scg-gold); font-style: normal; }
.scg-hero-copy { max-width: 640px; margin: 0; color: var(--scg-muted); font-size: clamp(1rem, 1.6vw, 1.15rem); }
.scg-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.scg-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 12px 21px; border-radius: 14px; background: linear-gradient(135deg, #ef5f92, #f47ba7); color: #fff; font-weight: 900; box-shadow: 0 12px 35px rgba(239,95,146,.25); transition: transform .18s ease, box-shadow .18s ease; }
.scg-button:hover { transform: translateY(-2px); box-shadow: 0 18px 42px rgba(239,95,146,.34); }
.scg-button--ghost { color: var(--scg-red); background: rgba(255,255,255,.75); border: 1px solid rgba(239,95,146,.25); box-shadow: none; }
.scg-safety-card { padding: 26px; border: 1px solid var(--scg-line); border-radius: 28px; background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,234,242,.84)); box-shadow: var(--scg-shadow); }
.scg-safety-card h2 { margin: 0 0 16px; font-size: 1.25rem; }
.scg-safety-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.scg-safety-list li { display: flex; gap: 10px; color: var(--scg-muted); }
.scg-safety-list strong { color: var(--scg-cyan); }

.scg-hero-visual { position: relative; isolation: isolate; }
.scg-hero-visual::before { content: ""; position: absolute; inset: 8% -7% -5% 9%; z-index: -1; border-radius: 38% 62% 44% 56%; background: linear-gradient(135deg, rgba(255,216,91,.36), rgba(125,207,231,.24), rgba(168,221,198,.3)); transform: rotate(6deg); filter: blur(1px); }
.scg-hero-visual img { width: 100%; border: 7px solid rgba(255,255,255,.9); border-radius: 34px; box-shadow: 0 28px 70px rgba(176,61,104,.2); transform: rotate(1.5deg); }
.scg-float-label { position: absolute; z-index: 3; display: inline-flex; align-items: center; min-height: 42px; padding: 8px 15px; border: 1px solid rgba(239,95,146,.22); border-radius: 999px; background: rgba(255,255,255,.92); box-shadow: 0 10px 28px rgba(151,47,85,.14); color: var(--scg-red); font-size: .78rem; font-weight: 900; }
.scg-float-label--top { right: -8px; top: -18px; transform: rotate(3deg); }
.scg-hero-note { position: absolute; left: -24px; bottom: -22px; z-index: 3; display: grid; max-width: 250px; padding: 14px 17px; border-radius: 18px; background: #fff; border-left: 5px solid var(--scg-lemon); box-shadow: 0 16px 36px rgba(151,47,85,.16); }
.scg-hero-note strong { color: var(--scg-red); font-size: .93rem; }
.scg-hero-note span { color: var(--scg-muted); font-size: .72rem; line-height: 1.5; }

.scg-charm-strip { overflow: hidden; border-block: 1px solid rgba(181,63,115,.14); background: linear-gradient(90deg, #ef5f92, #f77ead 32%, #7dcfe7 68%, #a8ddc6); color: #fff; box-shadow: 0 9px 24px rgba(164,65,102,.11); }
.scg-charm-track { width: min(100%, 1260px); min-height: 54px; margin-inline: auto; padding: 9px 20px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 28px; font-size: .84rem; font-weight: 900; letter-spacing: .03em; text-shadow: 0 1px 2px rgba(87,33,52,.18); }

.scg-feature-section { padding: clamp(46px,7vw,76px) 0; }
.scg-feature-banner { position: relative; min-height: 370px; display: flex; align-items: center; overflow: hidden; border: 8px solid #fff; border-radius: 32px; box-shadow: 0 26px 70px rgba(164,65,102,.18); background: #fff1f6; }
.scg-feature-banner picture, .scg-feature-banner picture img { position: absolute; inset: 0; width: 100%; height: 100%; }
.scg-feature-banner picture img { object-fit: cover; }
.scg-feature-banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,252,252,.98) 0%, rgba(255,249,251,.88) 42%, rgba(255,249,251,.08) 70%); }
.scg-feature-copy { position: relative; z-index: 2; width: min(54%, 590px); margin: 34px; padding: 24px 28px; border: 1px solid rgba(239,95,146,.18); border-radius: 24px; background: rgba(255,255,255,.76); backdrop-filter: blur(8px); box-shadow: 0 15px 35px rgba(111,40,67,.11); }
.scg-feature-label { display: inline-flex; padding: 5px 10px; border-radius: 999px; color: #fff; background: var(--scg-red); font-size: .7rem; font-weight: 900; letter-spacing: .16em; }
.scg-feature-copy h2 { margin: 14px 0 10px; font-size: clamp(1.8rem,3.4vw,3rem); line-height: 1.23; letter-spacing: -.02em; }
.scg-feature-copy p { margin: 0; color: var(--scg-muted); font-size: .9rem; }
.scg-feature-cta { display: inline-flex; align-items: center; gap: 10px; margin-top: 18px; color: var(--scg-red); font-weight: 900; }
.scg-feature-cta b { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--scg-gold); }

.scg-trust-section { padding: 20px 0 clamp(64px,9vw,104px); }
.scg-policy-banner { position: relative; isolation: isolate; overflow: hidden; padding: clamp(30px,4.4vw,52px); border: 8px solid #fff; border-radius: 32px; color: #fff; background: linear-gradient(135deg, #4b2637 0%, #8c3459 52%, #ed5d91 100%); box-shadow: 0 26px 70px rgba(164,65,102,.2); }
.scg-policy-banner::before { content: ""; position: absolute; inset: 0; z-index: -2; opacity: .2; background-image: radial-gradient(rgba(255,255,255,.82) 1.5px, transparent 1.5px); background-size: 19px 19px; mask-image: linear-gradient(115deg, #000, transparent 62%); }
.scg-policy-banner::after { content: "✦"; position: absolute; z-index: -1; right: clamp(16px,4vw,54px); top: clamp(6px,2vw,20px); color: var(--scg-lemon); font-size: clamp(3rem,8vw,7rem); line-height: 1; opacity: .45; transform: rotate(14deg); }
.scg-policy-banner__head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: clamp(24px,3vw,36px); }
.scg-policy-kicker { flex: 0 0 auto; margin: 0; padding: 7px 12px; border: 1px solid rgba(255,255,255,.48); border-radius: 999px; color: #fff; background: rgba(255,255,255,.12); font-size: .72rem; font-weight: 900; letter-spacing: .2em; }
.scg-policy-banner h2 { margin: 0 auto 0 0; font-size: clamp(1.65rem,3.2vw,2.85rem); line-height: 1.25; letter-spacing: .01em; }
.scg-policy-banner h2 em { color: var(--scg-lemon); font-style: normal; }
.scg-policy-items { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.3); border-radius: 22px; background: rgba(255,255,255,.1); backdrop-filter: blur(6px); }
.scg-policy-items article { position: relative; min-height: 178px; padding: 25px 20px 21px; }
.scg-policy-items article + article { border-left: 1px solid rgba(255,255,255,.25); }
.scg-policy-items article > span { display: inline-flex; margin-bottom: 16px; padding: 4px 9px; border-radius: 999px; color: var(--scg-text); background: var(--scg-lemon); font-size: .67rem; font-weight: 900; letter-spacing: .12em; }
.scg-policy-items article:nth-child(2) > span { background: var(--scg-mint); }
.scg-policy-items article:nth-child(3) > span { background: var(--scg-sky); }
.scg-policy-items article:nth-child(4) > span { background: #ffd5e4; }
.scg-policy-items strong { display: block; color: #fff; font-size: 1.06rem; }
.scg-policy-items p { margin: 8px 0 0; color: rgba(255,255,255,.82); font-size: .82rem; line-height: 1.65; }

.scg-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.scg-card { position: relative; display: flex; flex-direction: column; min-height: 100%; overflow: hidden; border: 1px solid var(--scg-line); border-top: 4px solid var(--scg-gold); border-radius: var(--scg-radius); background: var(--scg-card); box-shadow: 0 10px 32px rgba(164,65,102,.1); transition: transform .2s ease, border-color .2s ease; }
.scg-card:hover { transform: translateY(-4px); border-color: rgba(239,95,146,.42); }
.scg-card-media { aspect-ratio: 16 / 10; display: grid; place-items: center; color: rgba(113,48,72,.55); background: linear-gradient(135deg, rgba(255,180,207,.5), rgba(255,224,235,.78)); overflow: hidden; }
.scg-card-media img { width: 100%; height: 100%; object-fit: cover; }
.scg-card-placeholder {
  position: relative;
  isolation: isolate;
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #8b3f60;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,255,255,.92) 0 9%, transparent 10%),
    radial-gradient(circle at 82% 78%, rgba(255,216,91,.48) 0 13%, transparent 14%),
    linear-gradient(145deg, #ffdbe8 0%, #fff4f8 48%, #dff6fb 100%);
  font-weight: 900;
  letter-spacing: .16em;
}
.scg-card-placeholder::before,
.scg-card-placeholder::after { position: absolute; z-index: -1; pointer-events: none; }
.scg-card-placeholder::before {
  content: "";
  width: 70%;
  aspect-ratio: 1;
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 45% 55% 62% 38%;
  background: rgba(255,255,255,.34);
  transform: rotate(18deg);
}
.scg-card-placeholder::after {
  content: "旬";
  right: 7%;
  bottom: -9%;
  color: rgba(181,63,115,.1);
  font-size: clamp(6rem,15vw,11rem);
  line-height: 1;
  letter-spacing: 0;
}
.scg-card-body { padding: 21px; }
.scg-card-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 11px; }
.scg-tag { display: inline-flex; padding: 4px 8px; border-radius: 999px; color: #8b4b62; background: rgba(239,95,146,.1); font-size: .7rem; font-weight: 800; }
.scg-tag--adult { color: #b53062; background: rgba(239,89,111,.14); }
.scg-card h3 { margin: 0 0 8px; font-size: 1.15rem; line-height: 1.45; }
.scg-card p { margin: 0; color: var(--scg-muted); font-size: .92rem; }
.scg-card-footer { margin-top: auto; padding: 0 21px 21px; color: var(--scg-gold); font-size: .84rem; font-weight: 900; }

.scg-chip-list { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.scg-chip-list a { display: inline-flex; padding: 9px 14px; border: 1px solid var(--scg-line); border-radius: 999px; color: var(--scg-muted); background: rgba(255,255,255,.7); font-weight: 800; }
.scg-chip-list a:hover { color: var(--scg-red); border-color: rgba(239,95,146,.42); }

.scg-page-hero { padding: 74px 0 34px; }
.scg-content { width: min(calc(100% - 32px), 800px); margin: 0 auto; padding: 24px 0 90px; }
.scg-content > * { max-width: 100%; }
.scg-content h2 { margin-top: 2.2em; line-height: 1.4; text-wrap: pretty; }
.scg-content h3 { margin-top: 1.8em; }
.scg-content a { color: var(--scg-cyan); text-decoration: underline; text-underline-offset: 3px; }
.scg-content ul, .scg-content ol { padding-left: 1.4em; }
.scg-comic-info h1, .scg-content h2, .scg-content h3, .scg-content p, .scg-content li { word-break: normal; overflow-wrap: break-word; line-break: strict; }
.scg-intro-lead { margin-bottom: 28px; color: var(--scg-muted); font-size: 1.05rem; }
.scg-swipe-shell { position: relative; margin: 24px 0 12px; padding: 20px 20px 12px; overflow: hidden; border: 1px solid var(--scg-line); border-radius: 26px; background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,232,241,.82)); box-shadow: 0 16px 44px rgba(164,65,102,.12); }
.scg-swipe-gallery { display: grid; grid-auto-flow: column; grid-auto-columns: min(78%, 560px); gap: 16px; margin: 0; padding: 3px 2px 14px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-padding-inline: 2px; scroll-snap-type: inline mandatory; scrollbar-color: var(--scg-gold) rgba(239,95,146,.1); scrollbar-width: thin; }
.scg-swipe-gallery figure { display: grid; place-items: center; margin: 0; overflow: hidden; border: 5px solid #fff; border-radius: 20px; background: #fff; box-shadow: 0 10px 28px rgba(120,42,72,.12); scroll-snap-align: start; }
.scg-swipe-gallery img { width: 100%; height: min(72vh, 720px); object-fit: contain; background: #fff; }
.scg-swipe-hint { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 11px 0 0; color: var(--scg-red); font-size: .82rem; font-weight: 900; letter-spacing: .04em; }
.scg-swipe-hint::before { content: "←"; }
.scg-swipe-hint::after { content: "→"; }
.scg-after-swipe { margin-top: clamp(42px,7vw,68px) !important; }
.scg-notice { margin: 22px 0; padding: 17px 19px; border-left: 4px solid var(--scg-gold); border-radius: 0 14px 14px 0; background: rgba(255,222,234,.72); color: #704153; }
.scg-empty { grid-column: 1 / -1; padding: 36px; border: 1px dashed rgba(181,63,115,.28); border-radius: var(--scg-radius); text-align: center; color: var(--scg-muted); background: rgba(255,255,255,.62); }

.scg-comic-hero { padding: 64px 0 34px; }
.scg-comic-title-bar { padding: clamp(20px,3.5vw,34px) 0 0; }
.scg-comic-title-panel { padding: clamp(17px,2.8vw,25px) clamp(19px,3vw,30px); overflow: hidden; border: 1px solid rgba(239,95,146,.22); border-left: 7px solid var(--scg-gold); border-radius: 22px; background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,226,237,.9)); box-shadow: 0 14px 38px rgba(164,65,102,.11); }
.scg-comic-title-panel .scg-kicker { margin-bottom: 5px; }
.scg-comic-title-panel h1 { margin: 0; font-size: clamp(1.75rem,4vw,3.4rem); line-height: 1.22; word-break: normal; overflow-wrap: break-word; line-break: strict; }
.postid-82 .scg-comic-title-panel h1 { font-size: clamp(.82rem,4vw,1.95rem); line-height: 1.22; letter-spacing: -.03em; white-space: nowrap; word-break: keep-all; overflow-wrap: normal; }
.postid-82 .scg-comic-title-bar { padding-top: 8px; }
.postid-82 .scg-comic-title-panel { padding-block: 8px; }
.postid-82 .scg-comic-title-panel .scg-kicker,
.postid-82 .scg-comic-feature-slider > .scg-feature-label { display: none; }
.postid-82 .scg-comic-hero--slider { min-height: 0; padding: 8px 0 28px; align-items: start; }
.scg-comic-layout { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: clamp(30px, 6vw, 70px); align-items: start; }
.scg-comic-hero--slider { min-height: calc(100svh - 74px); padding: clamp(26px,4.5vw,52px) 0 38px; display: grid; align-items: center; }
.scg-comic-layout--slider { grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: clamp(28px,5vw,62px); align-items: center; }
.scg-comic-feature-slider { min-width: 0; }
.scg-comic-feature-slider > .scg-feature-label { margin-bottom: 10px; }
.scg-comic-feature-slider .scg-swipe-shell { margin: 0; padding: 16px 16px 10px; }
.scg-comic-feature-slider .scg-swipe-gallery { grid-auto-columns: min(88%, 400px); }
.scg-comic-feature-slider .scg-swipe-gallery img { width: 100%; height: auto; max-height: none; }
.scg-comic-feature-slider { position: relative; }
.scg-gallery-offer { position: absolute; z-index: 8; top: 50%; left: 50%; width: min(calc(100% - 32px), 430px); display: flex; align-items: center; flex-direction: column; justify-content: center; gap: 14px; padding: 18px; border: 1px solid rgba(255,255,255,.78); border-radius: 18px; color: #fff; background: linear-gradient(135deg,rgba(176,44,94,.97),rgba(239,95,146,.97)); box-shadow: 0 18px 48px rgba(75,38,55,.32); text-align: center; transform: translate(-50%,-50%); backdrop-filter: blur(12px); }
.scg-gallery-offer[hidden] { display: none; }
.scg-gallery-offer__copy { min-width: 0; display: grid; gap: 2px; }
.scg-gallery-offer__copy .scg-pr-label { width: max-content; margin-inline: auto; color: var(--scg-red); background: #fff; }
.scg-gallery-offer__copy strong { font-size: .92rem; line-height: 1.45; }
.scg-gallery-offer__copy small { color: rgba(255,255,255,.82); font-size: .68rem; }
.scg-gallery-offer__actions { width: 100%; display: grid; justify-items: center; gap: 5px; }
.scg-gallery-offer__actions .scg-button { width: 100%; min-height: 42px; padding: 8px 14px; color: var(--scg-red); background: #fff; font-size: .76rem; white-space: nowrap; }
.scg-gallery-offer__close { border: 0; cursor: pointer; color: rgba(255,255,255,.9); background: transparent; font-size: .66rem; text-decoration: underline; text-underline-offset: 2px; }
.scg-comic-cover { overflow: hidden; border: 1px solid var(--scg-line); border-radius: 24px; background: var(--scg-card); box-shadow: var(--scg-shadow); }
.scg-comic-cover .scg-card-placeholder { min-height: 430px; display: grid; place-items: center; }
  .scg-comic-info h1 { margin: 14px 0 14px; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.2; }
.scg-rating { color: var(--scg-gold); font-weight: 900; letter-spacing: .08em; }
.scg-purchase { margin-top: 28px; padding: 22px; border: 1px solid rgba(239,95,146,.25); border-radius: 18px; background: rgba(255,226,237,.66); }
.scg-purchase small { display: block; margin-top: 9px; color: var(--scg-muted); }

.scg-site-footer { border-top: 1px solid var(--scg-line); background: #fff0f6; }
.scg-footer-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(30px,6vw,72px); padding: 52px 0 28px; }
.scg-footer-navigation { display: grid; gap: 20px; }
.scg-footer-primary-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.scg-footer-primary-links a { display: flex; min-height: 46px; align-items: center; justify-content: center; padding: 9px 12px; border: 1px solid rgba(239,95,146,.22); border-radius: 13px; color: var(--scg-red); background: rgba(255,255,255,.72); font-size: .86rem; font-weight: 900; text-align: center; }
.scg-footer-primary-links a:hover { color: #fff; background: var(--scg-gold); }
.scg-footer-links { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px 18px; }
.scg-footer-links a { color: var(--scg-muted); font-size: .85rem; }
.scg-copyright { padding: 18px 0 28px; border-top: 1px solid var(--scg-line); color: #9a7080; font-size: .78rem; }

.scg-contact-card { margin: 30px 0; overflow: hidden; border: 1px solid var(--scg-line); border-radius: 28px; background: rgba(255,255,255,.88); box-shadow: var(--scg-shadow); }
.scg-contact-card__head { padding: clamp(24px,4vw,38px); color: #fff; background: linear-gradient(135deg, #4b2637, #9d3b64 62%, #ef5f92); }
.scg-contact-card__head .scg-kicker { color: var(--scg-lemon); }
.scg-contact-card__head h2 { margin: 0; font-size: clamp(1.55rem,3.2vw,2.35rem); line-height: 1.35; }
.scg-contact-card__head p:last-child { margin: 12px 0 0; color: rgba(255,255,255,.82); font-size: .9rem; }
.scg-contact-form { padding: clamp(24px,4vw,38px); }
.scg-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.scg-form-grid label { display: grid; align-content: start; gap: 7px; color: var(--scg-text); font-weight: 800; }
.scg-form-grid label > span { font-size: .9rem; }
.scg-form-grid label b { display: inline-flex; margin-left: 4px; padding: 2px 6px; border-radius: 999px; color: #fff; background: var(--scg-red); font-size: .62rem; }
.scg-form-grid input, .scg-form-grid select, .scg-form-grid textarea { width: 100%; padding: 12px 13px; border: 1px solid rgba(128,97,109,.28); border-radius: 12px; color: var(--scg-text); background: #fff; outline: none; }
.scg-form-grid textarea { min-height: 190px; resize: vertical; line-height: 1.7; }
.scg-form-grid input:focus, .scg-form-grid select:focus, .scg-form-grid textarea:focus { border-color: var(--scg-gold); box-shadow: 0 0 0 4px rgba(239,95,146,.12); }
.scg-form-grid__full { grid-column: 1 / -1; }
.scg-form-check { grid-template-columns: auto 1fr !important; align-items: start; font-weight: 500 !important; }
.scg-form-check input { width: 20px; height: 20px; margin-top: 4px; accent-color: var(--scg-red); }
.scg-form-check a { color: var(--scg-red); }
.scg-contact-submit { margin-top: 26px; border: 0; cursor: pointer; }
.scg-form-notice { margin: 24px 0; padding: 17px 19px; border-radius: 14px; }
.scg-form-notice--success { color: #245b45; background: #e5f7ef; border: 1px solid #b9e5d2; }
.scg-form-notice--error { color: #872c4c; background: #ffe7ef; border: 1px solid #f3bfd1; }
.scg-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.scg-age-gate[hidden] { display: none; }
.scg-age-gate { position: fixed; inset: 0; z-index: 99999; display: grid; place-items: center; padding: 18px; background: rgba(79,25,47,.9); backdrop-filter: blur(16px); }
.scg-age-dialog { width: min(100%, 520px); padding: clamp(26px, 6vw, 42px); border: 1px solid rgba(239,95,146,.3); border-radius: 28px; background: linear-gradient(145deg, #fffefe, #ffe8f1); box-shadow: var(--scg-shadow); text-align: center; }
.scg-age-dialog .scg-brand-mark { margin: 0 auto 18px; }
.scg-age-dialog h2 { margin: 0 0 10px; font-size: 1.65rem; }
.scg-age-dialog p { margin: 0; color: var(--scg-muted); }
.scg-age-actions { display: grid; gap: 10px; margin-top: 25px; }
.scg-age-exit { min-height: 46px; color: var(--scg-muted); background: transparent; border: 1px solid var(--scg-line); border-radius: 12px; cursor: pointer; }
body.scg-age-locked { overflow: hidden; }

@media (max-width: 860px) {
  .scg-menu-toggle { display: inline-flex; }
  .scg-nav { position: absolute; inset: 74px 16px auto; display: none; padding: 12px; border: 1px solid var(--scg-line); border-radius: 16px; background: #fff8fb; box-shadow: var(--scg-shadow); }
  .scg-nav.is-open { display: block; }
  .scg-nav ul { display: grid; }
  .scg-hero-grid, .scg-comic-layout, .scg-footer-grid { grid-template-columns: 1fr; }
  .scg-comic-layout--slider { gap: 24px; }
  .scg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scg-hero-visual { width: min(100%,620px); margin: 16px auto 0; }
  .scg-policy-banner__head { align-items: start; flex-direction: column; }
  .scg-policy-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .scg-policy-items article { min-height: 164px; }
  .scg-policy-items article:nth-child(3) { border-left: 0; }
  .scg-policy-items article:nth-child(n+3) { border-top: 1px solid rgba(255,255,255,.25); }
  .scg-footer-links { justify-content: flex-start; }
}

@media (max-width: 580px) {
  .scg-container { width: min(calc(100% - 24px), var(--scg-width)); }
  .scg-grid { grid-template-columns: 1fr; }
  .scg-section-head { align-items: start; flex-direction: column; }
  .scg-hero { padding-top: 62px; }
  .scg-hero-note { left: 10px; bottom: -28px; max-width: 220px; }
  .scg-float-label--top { right: 8px; }
  .scg-charm-track { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .scg-charm-track span { flex: 0 0 auto; }
  .scg-feature-section { padding-block: 52px; }
  .scg-feature-banner { min-height: 650px; align-items: flex-end; border-width: 6px; border-radius: 27px; }
  .scg-feature-banner::after { background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,250,252,.12) 42%, rgba(255,250,252,.98) 72%); }
  .scg-feature-copy { width: auto; margin: 16px; padding: 21px; background: rgba(255,255,255,.88); }
  .scg-feature-copy h2 { font-size: 1.85rem; }
  .scg-policy-banner { padding: 25px 20px 20px; border-width: 6px; border-radius: 27px; }
  .scg-policy-banner__head { gap: 14px; margin-bottom: 20px; }
  .scg-policy-items { grid-template-columns: 1fr; }
  .scg-policy-items article { min-height: 0; padding: 21px 18px; }
  .scg-policy-items article + article { border-left: 0; border-top: 1px solid rgba(255,255,255,.25); }
  .scg-comic-info h1 { font-size: clamp(1.8rem,9vw,2.45rem); line-height: 1.28; }
  .scg-comic-title-bar { padding-top: 16px; }
  .scg-comic-title-panel { padding: 15px 16px; border-left-width: 5px; border-radius: 17px; }
  .scg-comic-title-panel h1 { font-size: clamp(1.65rem,8vw,2.15rem); }
  .scg-comic-hero--slider { min-height: 0; padding: 22px 0 34px; }
  .scg-comic-layout--slider { gap: 22px; }
  .scg-comic-feature-slider { margin-inline: -12px; }
  .scg-comic-feature-slider > .scg-feature-label { margin-left: 12px; }
  .scg-comic-feature-slider .scg-swipe-shell { padding: 8px 6px 7px; border-radius: 20px; }
  .scg-comic-feature-slider .scg-swipe-gallery { grid-auto-columns: calc(100% - 4px); gap: 10px; }
  .scg-comic-feature-slider .scg-swipe-gallery img { width: 100%; height: auto; max-height: none; }
  .scg-gallery-offer { top: 50%; left: 50%; width: calc(100% - 32px); gap: 10px; padding: 14px; transform: translate(-50%,-50%); }
  .scg-gallery-offer__actions { grid-template-columns: 1fr; }
  .scg-content { width: min(calc(100% - 24px), 800px); }
  .scg-content h2 { font-size: clamp(1.35rem,6.4vw,1.75rem); }
  .scg-content p, .scg-content li { letter-spacing: 0; }
  .scg-swipe-shell { margin-inline: 0; padding: 14px 12px 10px; border-radius: 22px; }
  .scg-swipe-gallery { grid-auto-columns: calc(100% - 18px); gap: 12px; padding-bottom: 12px; }
  .scg-swipe-gallery figure { border-width: 4px; border-radius: 16px; }
  .scg-swipe-gallery img { height: min(70vh, 620px); }
  .scg-swipe-hint { font-size: .76rem; }
  .scg-form-grid { grid-template-columns: 1fr; gap: 17px; }
  .scg-form-grid__full { grid-column: auto; }
  .scg-contact-card { border-radius: 22px; }
  .scg-footer-primary-links { grid-template-columns: 1fr; }
  .scg-safety-card { padding: 21px; }
}
.scg-footer-disclosure {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 24px 22px;
  color: rgba(255, 255, 255, .72);
  font-size: .72rem;
  line-height: 1.7;
  text-align: center;
}

.scg-footer-disclosure a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* 1.3.1: purpose-first discovery, comparison and recirculation */
.scg-content--wide { width: min(calc(100% - 32px), var(--scg-width)); }
.scg-page-finder { padding: 0 0 clamp(38px,6vw,64px); }
.scg-discovery-section { padding-top: clamp(44px,6vw,72px); }
.scg-discovery-panel { overflow: hidden; border: 1px solid rgba(239,95,146,.22); border-radius: 30px; background: rgba(255,255,255,.9); box-shadow: var(--scg-shadow); }
.scg-purpose-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; background: rgba(239,95,146,.16); }
.scg-purpose-card { min-height: 142px; display: grid; align-content: center; gap: 3px; padding: 24px 20px; background: linear-gradient(145deg,#fff,#fff0f6); transition: color .18s ease, background .18s ease, transform .18s ease; }
.scg-purpose-card:hover { z-index: 1; color: #fff; background: linear-gradient(145deg,#bd3f70,#ef5f92); transform: translateY(-2px); }
.scg-purpose-card > span { color: var(--scg-gold); font-size: 1.55rem; line-height: 1; }
.scg-purpose-card:hover > span { color: var(--scg-lemon); }
.scg-purpose-card strong { font-size: 1rem; }
.scg-purpose-card small { color: var(--scg-muted); font-size: .74rem; }
.scg-purpose-card:hover small { color: rgba(255,255,255,.82); }
.scg-purpose-card--comic { background: linear-gradient(145deg,#fff,#fff0f6); }
.scg-purpose-card--video { background: linear-gradient(145deg,#fff7fb,#f1eaff); }
.scg-purpose-card--videochat { background: linear-gradient(145deg,#fff5f9,#ffe9ee); }
.scg-purpose-card--ranking { background: linear-gradient(145deg,#fffdf4,#fff4da); }
.scg-finder-form { display: grid; grid-template-columns: 1.45fr minmax(170px,.75fr) minmax(150px,.6fr) auto; gap: 15px; align-items: end; padding: clamp(22px,3.2vw,34px); background: linear-gradient(135deg,rgba(255,235,243,.86),rgba(238,248,252,.78)); }
.scg-finder-field { display: grid; gap: 7px; }
.scg-finder-field > span { color: var(--scg-text); font-size: .78rem; font-weight: 900; }
.scg-finder-field select { width: 100%; min-height: 48px; padding: 9px 12px; border: 1px solid rgba(128,97,109,.25); border-radius: 12px; color: var(--scg-text); background: #fff; }
.scg-segmented { display: grid; grid-template-columns: repeat(4,1fr); gap: 5px; padding: 4px; border: 1px solid rgba(128,97,109,.22); border-radius: 13px; background: rgba(255,255,255,.78); }
.scg-segmented label { position: relative; cursor: pointer; }
.scg-segmented input { position: absolute; opacity: 0; pointer-events: none; }
.scg-segmented b { min-height: 38px; display: grid; place-items: center; border-radius: 9px; color: var(--scg-muted); font-size: .78rem; }
.scg-segmented input:checked + b { color: #fff; background: linear-gradient(135deg,#e8457d,#f47ba7); box-shadow: 0 6px 18px rgba(232,69,125,.22); }
.scg-finder-submit { min-height: 50px; border: 0; cursor: pointer; white-space: nowrap; }
.scg-finder-shortcuts { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 20px; padding: 0 clamp(22px,3.2vw,34px) 22px; background: linear-gradient(135deg,rgba(255,235,243,.86),rgba(238,248,252,.78)); }
.scg-finder-shortcuts a { color: var(--scg-red); font-size: .78rem; font-weight: 900; }

.scg-home-ranking { padding-block: clamp(50px,7vw,82px); }
.scg-ranking-list { display: grid; gap: 20px; }
.scg-ranking-card { position: relative; display: grid; grid-template-columns: 76px minmax(210px,290px) minmax(0,1fr); min-height: 270px; overflow: hidden; border: 1px solid var(--scg-line); border-radius: 24px; background: #fff; box-shadow: 0 14px 40px rgba(164,65,102,.11); }
.scg-rank-number { display: grid; align-content: center; justify-items: center; gap: 2px; color: #fff; background: linear-gradient(180deg,#4b2637,#a63b68); font-size: 1.45rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.scg-rank-number small { color: var(--scg-lemon); font-size: .55rem; letter-spacing: .12em; }
.scg-ranking-card:nth-child(1) .scg-rank-number { background: linear-gradient(180deg,#b98919,#efc14c); }
.scg-ranking-card:nth-child(2) .scg-rank-number { background: linear-gradient(180deg,#66717e,#aeb7c1); }
.scg-ranking-card:nth-child(3) .scg-rank-number { background: linear-gradient(180deg,#9d5b3d,#d5966d); }
.scg-ranking-media { min-height: 100%; overflow: hidden; background: var(--scg-bg-soft); }
.scg-ranking-media img, .scg-ranking-media .scg-card-placeholder { width: 100%; height: 100%; object-fit: cover; }
.scg-ranking-body { display: grid; align-content: center; padding: clamp(22px,3vw,34px); }
.scg-ranking-body h3 { margin: 0 0 8px; font-size: clamp(1.25rem,2vw,1.8rem); line-height: 1.42; }
.scg-ranking-body > p { margin: 0; color: var(--scg-muted); font-size: .88rem; }
.scg-ranking-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 16px; }
.scg-ranking-facts span { min-width: 0; display: grid; gap: 1px; padding: 9px 10px; border-radius: 11px; background: #fff3f7; }
.scg-ranking-facts small { color: var(--scg-muted); font-size: .62rem; }
.scg-ranking-facts b { overflow: hidden; color: var(--scg-text); font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.scg-ranking-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 18px; }
.scg-ranking-actions .scg-button { min-height: 43px; padding: 9px 16px; font-size: .8rem; }
.scg-ranking-list--compact { grid-template-columns: repeat(3,minmax(0,1fr)); }
.scg-ranking-list--compact .scg-ranking-card { display: flex; min-height: 100%; flex-direction: column; }
.scg-ranking-list--compact .scg-rank-number { position: absolute; z-index: 3; top: 11px; left: 11px; width: 55px; height: 55px; border-radius: 16px; box-shadow: 0 8px 20px rgba(61,25,40,.2); }
.scg-ranking-list--compact .scg-ranking-media { min-height: 0; aspect-ratio: 16/10; }
.scg-ranking-list--compact .scg-ranking-body { flex: 1; align-content: start; padding: 20px; }
.scg-ranking-list--compact .scg-ranking-body h3 { font-size: 1.04rem; }
.scg-ranking-list--compact .scg-ranking-body > p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.scg-ranking-list--compact .scg-ranking-facts { grid-template-columns: repeat(3,minmax(0,1fr)); }
.scg-ranking-list--compact .scg-ranking-facts b { font-size: .68rem; }

.scg-card-media { position: relative; }
.scg-card-type { position: absolute; top: 11px; left: 11px; display: inline-flex; align-items: center; min-height: 29px; padding: 5px 9px; border: 1px solid rgba(255,255,255,.72); border-radius: 999px; color: #fff; background: rgba(75,38,55,.82); box-shadow: 0 6px 18px rgba(59,22,38,.16); font-size: .62rem; font-weight: 900; letter-spacing: .08em; backdrop-filter: blur(8px); }
.scg-card-type--video { background: rgba(170,50,102,.9); }
.scg-card-type--videochat { background: rgba(217,58,83,.92); }
.scg-tag--video { color: #6b3aad; background: rgba(133,84,210,.13); }
.scg-tag--videochat { color: #b42547; background: rgba(238,77,112,.13); }
.scg-tag--rating { color: #9a6710; background: rgba(255,216,91,.28); }
.scg-card-facts { display: flex; flex-wrap: wrap; gap: 7px 12px; margin-top: 14px; color: #a05071; font-size: .72rem; font-weight: 800; }

.scg-work-specs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 22px 0; }
.scg-work-specs > span { min-width: 0; display: grid; gap: 3px; padding: 12px; border: 1px solid rgba(239,95,146,.15); border-radius: 13px; background: rgba(255,255,255,.72); }
.scg-work-specs small { color: var(--scg-muted); font-size: .62rem; }
.scg-work-specs strong { font-size: .78rem; line-height: 1.45; }
.scg-pr-label { display: inline-flex; padding: 3px 8px; border-radius: 999px; color: #fff; background: var(--scg-red); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
.scg-purchase--repeat { margin-top: 56px; text-align: center; }
.scg-purchase--repeat h2 { margin: 10px 0 6px; }
.scg-purchase--repeat p { color: var(--scg-muted); }
.scg-related-section { border-top: 1px solid var(--scg-line); background: linear-gradient(180deg,#fff7fa,#fff0f6); }
.scg-mobile-work-nav { display: none; }

@media (max-width: 980px) {
  .scg-purpose-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .scg-finder-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .scg-finder-field--wide { grid-column: 1 / -1; }
  .scg-finder-submit { width: 100%; }
  .scg-ranking-card { grid-template-columns: 64px minmax(190px,250px) minmax(0,1fr); }
  .scg-ranking-list--compact { grid-template-columns: 1fr; }
  .scg-ranking-list--compact .scg-ranking-card { display: grid; grid-template-columns: minmax(180px,260px) minmax(0,1fr); }
  .scg-ranking-list--compact .scg-ranking-media { aspect-ratio: auto; }
}

@media (max-width: 580px) {
  .scg-content--wide { width: min(calc(100% - 24px), var(--scg-width)); }
  .scg-purpose-grid { grid-template-columns: 1fr 1fr; }
  .scg-purpose-card { min-height: 126px; padding: 18px 14px; }
  .scg-purpose-card strong { font-size: .88rem; line-height: 1.45; }
  .scg-purpose-card small { font-size: .66rem; }
  .scg-finder-form { grid-template-columns: 1fr; gap: 13px; padding: 18px 14px; }
  .scg-finder-field--wide { grid-column: auto; }
  .scg-segmented { grid-template-columns: 1fr 1fr; }
  .scg-finder-shortcuts { justify-content: center; padding: 0 14px 18px; }
  .scg-ranking-card, .scg-ranking-list--compact .scg-ranking-card { display: flex; min-height: 0; flex-direction: column; }
  .scg-rank-number, .scg-ranking-list--compact .scg-rank-number { position: absolute; z-index: 3; top: 10px; left: 10px; width: 52px; height: 52px; border-radius: 15px; box-shadow: 0 8px 20px rgba(61,25,40,.2); }
  .scg-ranking-media, .scg-ranking-list--compact .scg-ranking-media { min-height: 0; aspect-ratio: 16/10; }
  .scg-ranking-body { padding: 19px 17px; }
  .scg-ranking-facts { gap: 5px; }
  .scg-ranking-facts span { padding: 8px 7px; }
  .scg-work-specs { grid-template-columns: 1fr 1fr; }
  .scg-work-specs > span:last-child { grid-column: 1 / -1; }
  .scg-related-section { padding-bottom: 105px; }
  .scg-mobile-work-nav { position: fixed; inset: auto 10px 10px; z-index: 60; display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; border: 1px solid rgba(239,95,146,.28); border-radius: 18px; background: rgba(255,255,255,.95); box-shadow: 0 14px 40px rgba(81,28,50,.2); backdrop-filter: blur(14px); }
  .scg-mobile-work-nav a { min-height: 58px; display: grid; place-items: center; align-content: center; gap: 0; color: var(--scg-red); font-size: .9rem; font-weight: 900; }
  .scg-mobile-work-nav a + a { border-left: 1px solid var(--scg-line); }
  .scg-mobile-work-nav span { font-size: .62rem; }
  .scg-mobile-work-nav__cta { color: #fff !important; background: linear-gradient(135deg,#e8457d,#f47ba7); }
  body.single-comic { padding-bottom: 82px; }
}

/* 1.4.1: mobile-safe comic reader baseline */
@media (max-width: 580px) {
  html,
  body.single-comic {
    max-width: 100%;
    overflow-x: clip;
  }

  body.single-comic .scg-comic-title-bar,
  body.single-comic .scg-comic-hero--slider {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  body.single-comic .scg-comic-layout--slider {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    padding-inline: 8px;
    grid-template-columns: minmax(0, 1fr);
  }

  body.single-comic .scg-comic-feature-slider,
  body.single-comic .scg-comic-feature-slider .scg-swipe-shell {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-inline: 0;
  }

  body.single-comic .scg-comic-feature-slider {
    overflow: hidden;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-gallery {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    grid-auto-columns: 100%;
    overflow-x: auto;
    overflow-y: hidden;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-gallery figure {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-gallery img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
  }

  body.single-comic .scg-comic-info {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body.postid-82 {
    padding-bottom: 0;
  }

  body.postid-82 .scg-comic-title-panel {
    box-sizing: border-box;
    width: calc(100% - 16px);
    max-width: calc(100% - 16px);
    margin-inline: auto;
    padding-inline: 8px;
  }

  body.postid-82 .scg-comic-title-panel h1 {
    max-width: 100%;
    overflow: hidden;
    font-size: clamp(.72rem, 3.15vw, .88rem);
    letter-spacing: -.04em;
    text-overflow: clip;
    white-space: nowrap;
  }

  body.postid-82 .scg-mobile-work-nav {
    display: none;
  }
}

/* 1.3.8: keep the featured comic reader inside narrow mobile viewports */
@media (max-width: 580px) {
  .postid-82 .scg-comic-title-panel {
    width: 100%;
    padding-inline: 10px;
  }

  .postid-82 .scg-comic-title-panel h1 {
    font-size: clamp(.76rem, 3.65vw, .96rem);
    letter-spacing: -.04em;
  }

  .postid-82 .scg-comic-layout--slider {
    width: min(calc(100% - 16px), var(--scg-width));
    gap: 20px;
  }

  .postid-82 .scg-comic-feature-slider {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    overflow: hidden;
  }

  .postid-82 .scg-comic-feature-slider .scg-swipe-shell {
    width: 100%;
    padding: 6px 4px 7px;
  }

  .postid-82 .scg-comic-feature-slider .scg-swipe-gallery {
    width: 100%;
    grid-auto-columns: 100%;
    gap: 8px;
    padding-inline: 0;
  }

  .postid-82 .scg-comic-feature-slider .scg-swipe-gallery figure {
    width: 100%;
    min-width: 0;
  }

  .postid-82 .scg-gallery-offer {
    width: calc(100% - 24px);
    max-width: 360px;
    padding: 12px;
    gap: 8px;
    border-radius: 15px;
  }

  .postid-82 .scg-gallery-offer__copy strong { font-size: .82rem; }
  .postid-82 .scg-gallery-offer__copy small { font-size: .62rem; }
  .postid-82 .scg-gallery-offer__actions .scg-button {
    min-height: 40px;
    padding: 8px 10px;
    font-size: .72rem;
  }
}

/* 1.4.3: use the compact post-82 reader layout on every swipe-gallery work */
body.single-comic .scg-comic-title-bar {
  padding-top: 8px;
}

body.single-comic .scg-comic-title-panel {
  padding-block: 8px;
}

body.single-comic .scg-comic-title-panel .scg-kicker,
body.single-comic .scg-comic-feature-slider > .scg-feature-label {
  display: none;
}

body.single-comic .scg-comic-title-panel h1 {
  display: -webkit-box;
  overflow: hidden;
  font-size: clamp(.82rem, 2vw, 1.75rem);
  line-height: 1.22;
  letter-spacing: -.03em;
  white-space: normal;
  word-break: keep-all;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body.single-comic .scg-comic-hero--slider {
  min-height: 0;
  padding: 8px 0 28px;
  align-items: start;
}

@media (max-width: 580px) {
  body.single-comic:has(.scg-comic-feature-slider) {
    padding-bottom: 0;
  }

  body.single-comic .scg-comic-title-panel {
    box-sizing: border-box;
    width: calc(100% - 16px);
    max-width: calc(100% - 16px);
    margin-inline: auto;
    padding: 7px 9px;
  }

  body.single-comic .scg-comic-title-panel h1 {
    max-width: 100%;
    font-size: clamp(.68rem, 3vw, .88rem);
    letter-spacing: -.04em;
  }

  body.single-comic .scg-comic-layout--slider {
    width: min(calc(100% - 16px), var(--scg-width));
    gap: 20px;
  }

  body.single-comic .scg-comic-feature-slider {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    overflow: hidden;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-shell {
    width: 100%;
    padding: 6px 4px 7px;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-gallery {
    width: 100%;
    grid-auto-columns: 100%;
    gap: 8px;
    padding-inline: 0;
  }

  body.single-comic .scg-comic-feature-slider .scg-swipe-gallery figure {
    width: 100%;
    min-width: 0;
  }

  body.single-comic .scg-gallery-offer {
    width: calc(100% - 24px);
    max-width: 360px;
    padding: 12px;
    gap: 8px;
    border-radius: 15px;
  }

  body.single-comic .scg-gallery-offer__copy strong { font-size: .82rem; }
  body.single-comic .scg-gallery-offer__copy small { font-size: .62rem; }
  body.single-comic .scg-gallery-offer__actions .scg-button {
    min-height: 40px;
    padding: 8px 10px;
    font-size: .72rem;
  }

  body.single-comic:has(.scg-comic-feature-slider) .scg-mobile-work-nav {
    display: none;
  }
}
