/*
Theme Name: Deai Jissenki
Theme URI: https://deaikeiblog.net/
Author: Deai Jissenki
Description: 「非モテ中年の出会い系攻略」移設用オリジナルテーマ
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: deai-jissenki
*/

:root{
  --ink:#223047;
  --muted:#667085;
  --blue:#2675d8;
  --blue-soft:#edf6ff;
  --pink:#f15b8a;
  --pink-soft:#fff0f5;
  --gold:#f5b642;
  --green:#1f9d72;
  --line:#e6eaf0;
  --paper:#fff;
  --bg:#f6f7fb;
  --danger:#c83e4d;
  --shadow:0 10px 30px rgba(32,52,89,.09);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.9}
a{color:var(--blue)}
.site-header{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.72) 38%,rgba(255,255,255,.04) 72%),url("assets/hero-gag-bw-v1.webp") center 50%/cover no-repeat;color:#111;text-shadow:0 1px 0 #fff,0 0 10px #fff}
.header-inner{max-width:1040px;margin:auto;padding:42px 20px 50px}
.brand{font-size:clamp(24px,4vw,40px);font-weight:900;letter-spacing:.02em;margin:0}
.tagline{margin:4px 0 0;opacity:.9;font-size:14px}
.age-gate{background:#111;color:#fff;text-align:center;padding:9px 16px;font-size:13px;font-weight:700}
.age-gate strong{color:#fff;text-decoration:underline}
.main{max-width:1040px;margin:28px auto;padding:0 18px}
.article{background:#fff;border-radius:24px;box-shadow:var(--shadow);overflow:hidden}
.hero{padding:34px 34px 26px;background:linear-gradient(180deg,#f7fbff,#fff)}
.kicker{display:inline-flex;align-items:center;gap:8px;background:#173a72;color:#fff;padding:7px 13px;border-radius:999px;font-weight:800;font-size:14px}
.hero h1{font-size:clamp(27px,5vw,48px);line-height:1.35;margin:14px 0 12px;letter-spacing:-.02em}
.hero .lead{font-size:17px;color:#475467;max-width:780px}
.notice{margin:24px 0 0;padding:18px 20px;border:1px solid #ffd68a;background:#fff9e8;border-radius:16px}
.notice strong{color:#8b5700}
.toc{margin:0 34px 30px;padding:18px 22px;background:#f8fafc;border:1px solid var(--line);border-radius:16px}
.toc a{text-decoration:none;font-weight:700}
.content{padding:0 34px 40px}
section{scroll-margin-top:18px}
section h2{font-size:clamp(23px,4vw,32px);line-height:1.4;margin:46px 0 16px;padding-left:14px;border-left:6px solid var(--blue)}
section h3{font-size:21px;margin:30px 0 12px}
p{margin:12px 0}
.chat{display:flex;gap:14px;align-items:flex-start;margin:22px 0}
.chat.right{flex-direction:row-reverse}
.avatar-wrap{width:92px;flex:0 0 92px;text-align:center}
.avatar{width:82px;height:82px;border-radius:50%;object-fit:cover;background:#fff;border:3px solid #fff;box-shadow:0 5px 18px rgba(38,52,86,.14)}
.avatar-name{display:block;margin-top:4px;font-weight:800;font-size:13px}
.bubble{position:relative;max-width:730px;padding:18px 20px;border-radius:20px;background:var(--pink-soft);border:2px solid #f8bdd0}
.chat.right .bubble{background:var(--blue-soft);border-color:#b8d8fb}
.bubble:before{content:"";position:absolute;left:-12px;top:28px;border-width:10px 12px 10px 0;border-style:solid;border-color:transparent #f8bdd0 transparent transparent}
.bubble:after{content:"";position:absolute;left:-9px;top:30px;border-width:8px 10px 8px 0;border-style:solid;border-color:transparent var(--pink-soft) transparent transparent}
.chat.right .bubble:before{left:auto;right:-12px;border-width:10px 0 10px 12px;border-color:transparent transparent transparent #b8d8fb}
.chat.right .bubble:after{left:auto;right:-9px;border-width:8px 0 8px 10px;border-color:transparent transparent transparent var(--blue-soft)}
.kyoko{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center;margin:28px 0;padding:18px;background:linear-gradient(135deg,#fff3f7,#fff);border:1px solid #f8c6d7;border-radius:20px}
.kyoko img{width:130px;height:130px;border-radius:22px;object-fit:cover;object-position:center 25%;box-shadow:0 8px 22px rgba(133,58,90,.15)}
.kyoko h3{margin:0 0 6px;color:#b83362}
.key-box,.warning,.history,.checklist{border-radius:18px;padding:20px 22px;margin:24px 0}
.key-box{background:#eefaf5;border:1px solid #b9ead5}
.warning{background:#fff4f4;border:1px solid #f2bfc4}
.warning strong{color:var(--danger)}
.history{background:#f8f7ff;border:1px solid #d8d3ff}
.history .label{display:inline-block;background:#6558cc;color:#fff;font-size:12px;font-weight:800;padding:4px 9px;border-radius:999px;margin-bottom:8px}
blockquote{margin:14px 0;padding:16px 18px;background:#fff;border-left:4px solid #8c82db;border-radius:0 12px 12px 0;white-space:pre-line}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}
.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 5px 16px rgba(36,58,92,.05)}
.step .num{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:var(--blue);color:#fff;font-weight:900}
.step h3{margin:9px 0 6px;font-size:18px}
.compare{overflow-x:auto;margin:22px 0}
table{border-collapse:collapse;width:100%;min-width:720px;background:#fff;border-radius:14px;overflow:hidden}
th,td{border:1px solid var(--line);padding:12px 13px;text-align:left;vertical-align:top}
th{background:#eff5fc;font-size:14px}
.badge{display:inline-block;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800;background:#eaf7f2;color:#137154}
.site-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}
.site-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}
.site-card h3{margin:0 0 5px;font-size:19px}
.site-card p{font-size:14px;color:#5f6b7a}
.aff-btn{display:inline-block;text-decoration:none;background:var(--blue);color:#fff!important;font-weight:900;padding:10px 15px;border-radius:12px}
.aff-btn:hover{filter:brightness(.95)}
.aff-btn.disabled{background:#98a2b3;pointer-events:none}
.disclosure{margin:32px 0 8px;color:#667085;font-size:13px;padding:16px;border-top:1px solid var(--line)}
.footer{max-width:1040px;margin:28px auto 50px;padding:0 18px;color:#667085;font-size:13px;text-align:center}
.small{font-size:13px;color:#667085}
hr{border:0;border-top:1px solid var(--line);margin:34px 0}
@media(max-width:720px){
  .site-header{background-position:61% 50%}
  .hero,.content{padding-left:18px;padding-right:18px}
  .toc{margin-left:18px;margin-right:18px}
  .chat,.chat.right{gap:8px}
  .avatar-wrap{width:62px;flex-basis:62px}
  .avatar{width:58px;height:58px}
  .bubble{padding:14px 15px;font-size:15px}
  .steps{grid-template-columns:1fr}
  .site-grid{grid-template-columns:1fr}
  .kyoko{grid-template-columns:88px 1fr;padding:14px}
  .kyoko img{width:88px;height:88px;border-radius:18px}
}

/* Screenshot-derived text stories: no source images are published */
.story-special .hero{background:linear-gradient(135deg,#17283f,#293d59);color:#fff}.story-special .hero h1,.story-special .hero .lead{color:#fff}.story-special .hero .kicker{background:#fff;color:#17283f}
.story-privacy{margin:0 0 34px;padding:18px 20px;border:2px solid #b83362;border-radius:14px;background:#fff5f8}.story-privacy strong{display:block;color:#a02955;font-size:1.03rem}.story-privacy p{margin:8px 0 0;color:#4d5969;font-size:.9rem;line-height:1.72}
.story-case{margin:0 auto 48px!important;padding:0 0 38px;border-bottom:3px dashed #cbd7df}.story-case:last-of-type{border-bottom:0}.story-number{display:inline-block;margin-top:8px;padding:5px 12px;border-radius:999px;background:#17283f;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.04em}.story-case h2{margin-top:12px}
.story-transcript{display:grid;gap:10px;margin:18px 0;padding:17px;border:1px solid #cbddea;border-radius:16px;background:#f7fafc}.story-transcript p{position:relative;width:min(86%,660px);margin:0;padding:12px 15px;border-radius:15px;line-height:1.67}.story-transcript p span{display:block;margin-bottom:3px;font-size:.7rem;font-weight:900;letter-spacing:.04em}.story-transcript .from-her{justify-self:start;background:#fff0f5;border:1px solid #efb6ca}.story-transcript .from-her span{color:#a02955}.story-transcript .from-me{justify-self:end;background:#eaf7f0;border:1px solid #add9c5}.story-transcript .from-me span{color:#12664d}.story-transcript .silence{justify-self:center;background:#eef1f4;border:1px dashed #98a4b3;text-align:center;color:#536174}.story-transcript .silence span{color:#536174}
.story-result{display:grid;grid-template-columns:max-content 1fr;gap:10px;align-items:center;margin:15px 0 20px;padding:12px 15px;border-radius:11px;background:#eef4f8}.story-result strong{padding:3px 9px;border-radius:999px;background:#526578;color:#fff;font-size:.75rem}.story-result span{font-weight:900;color:#273a50}.story-result.met{background:#e9f8f1}.story-result.met strong{background:#137154}.story-result.declined{background:#fff4e3}.story-result.declined strong{background:#a76d0c}.story-result.missed{background:#f2f0f8}.story-result.missed strong{background:#66558b}
.story-takeaway{margin:19px 0 0;padding:14px 16px;border-left:5px solid #2d79b8;border-radius:0 10px 10px 0;background:#eef8ff;line-height:1.75}.story-takeaway strong{color:#205f91}.story-summary{margin-bottom:34px!important;padding:22px;border:2px solid #17283f;border-radius:18px;background:#fbfcfd}.story-summary h2{margin-top:0}.story-lessons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:18px 0 24px}.story-lessons article{padding:15px;border:1px solid #cbddea;border-radius:13px;background:#fff}.story-lessons span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#17283f;color:#fff;font-size:.75rem;font-weight:900}.story-lessons strong{display:block;margin:9px 0 4px;color:#20324b}.story-lessons p{margin:0;color:#596579;font-size:.82rem;line-height:1.62}.special-episode.stories{border-color:#17283f;background:linear-gradient(135deg,#edf3f7,#fff)}.special-episode.stories span{color:#17283f}
.transcript-source{margin:12px 0 8px;padding:9px 12px;border-radius:9px;background:#17283f;color:#fff;font-size:.82rem;font-weight:900}.story-transcript.verbatim{counter-reset:message}.story-transcript.verbatim>p{counter-increment:message}.story-transcript.verbatim>p>span:after{content:"　発言" counter(message);color:#718092;font-weight:800}.story-transcript.verbatim>.from-her>span:after{color:#a85b77}.story-transcript.verbatim>.from-me>span:after{color:#39785d}.long-transcript{gap:8px}.long-transcript p{padding-top:10px;padding-bottom:10px}
@media(max-width:720px){.story-privacy{padding:15px}.story-case{margin-bottom:38px!important;padding-bottom:30px}.story-transcript{padding:12px}.story-transcript p{width:92%;padding:11px 12px}.story-result{grid-template-columns:1fr;gap:6px}.story-result strong{justify-self:start}.story-summary{padding:16px}.story-lessons{grid-template-columns:1fr}}

/* Episode 1 rebuild: fast, sharp, hopeful */
.episode1-opening{margin-top:0;padding:22px;border:2px solid #c9d9e8;border-radius:20px;background:linear-gradient(135deg,#f5f9fc,#fff 72%)}
.episode1-opening>.scene-label{margin:0;color:#7c1f36;font-size:.78rem;font-weight:900;letter-spacing:.08em}.episode1-opening>h2{margin:3px 0 15px;padding:0;border:0;font-size:1.35rem}
.episode1-opening-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}.episode1-opening-head img{width:72px;height:72px;border:4px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 6px 16px rgba(38,59,84,.14)}.episode1-opening-head span{display:block;color:#b83362;font-size:.78rem;font-weight:900}.episode1-opening-head h2{margin:2px 0 0;padding:0;border:0;font-size:1.35rem;line-height:1.4}.episode1-opening>p{margin:10px 0;line-height:1.8}
.cast-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}.cast-strip>div{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid rgba(45,121,184,.18);border-radius:13px;background:rgba(255,255,255,.82)}.cast-strip>div.cast-kyoko{border-color:#c69aa5;background:#fff7f8}.cast-strip img{flex:0 0 52px;width:52px;height:52px;border-radius:50%;object-fit:cover}.cast-strip p{margin:0;line-height:1.35}.cast-strip strong,.cast-strip span{display:block}.cast-strip strong{font-size:.88rem;color:#253a54}.cast-strip span{margin-top:3px;color:#667085;font-size:.7rem}.cast-strip .cast-kyoko strong{color:#7c1f36}
.chat.kyoko-chat .bubble{background:#fff4f6;border-color:#b76a7d}.chat.kyoko-chat .bubble:before{border-color:transparent #b76a7d transparent transparent}.chat.kyoko-chat .bubble:after{border-color:transparent #fff4f6 transparent transparent}.chat.kyoko-chat .avatar{border-color:#f6d9df;background:#2b2025}.chat.kyoko-chat .avatar-name{color:#7c1f36}
/* ブンタは薄い緑。京子のピンク、カモシダの青と一目で区別する */
.chat:has(.avatar[alt="ブンタ"]) .bubble{background:#eef9f1;border-color:#a9d8b7}
.chat:has(.avatar[alt="ブンタ"]) .bubble:before{border-color:transparent #a9d8b7 transparent transparent}
.chat:has(.avatar[alt="ブンタ"]) .bubble:after{border-color:transparent #eef9f1 transparent transparent}
.chat:has(.avatar[alt="ブンタ"]) .avatar{border-color:#d7efdd}
.chat:has(.avatar[alt="ブンタ"]) .avatar-name{color:#236b42}

/* 各話共通：説明カードではなく、場面で見せる白黒漫画 */
.diagram.manga-scene{overflow:hidden;padding:0;border:3px solid #111;border-radius:4px;background:#fff;box-shadow:7px 7px 0 #111}
.diagram.manga-scene .diagram-illustration{display:block;width:100%;height:auto;border:0;border-bottom:3px solid #111;border-radius:0;background:#fff;object-fit:contain;filter:none}
.diagram.manga-scene>figcaption{margin:0;padding:13px 16px 5px;background:#fff;color:#111;font-size:1.05rem;font-weight:900;line-height:1.5}
.diagram.manga-scene>p{margin:0;padding:0 16px 15px;background:#fff;color:#465467;font-size:.9rem;line-height:1.75}
@media(max-width:680px){.diagram.manga-scene{box-shadow:5px 5px 0 #111}.diagram.manga-scene>figcaption{padding:11px 13px 4px;font-size:.98rem}.diagram.manga-scene>p{padding:0 13px 13px;font-size:.82rem}}
.kyoko-jab,.kyoko-hope{display:flex;align-items:center;gap:13px;margin:19px 0;padding:14px 16px;border-radius:16px}.kyoko-jab{border:1px solid #efb6ca;background:#fff0f6}.kyoko-hope{border:1px solid #a8d5ed;background:#eef8ff}.kyoko-jab img,.kyoko-hope img{flex:0 0 58px;width:58px;height:58px;border:3px solid #fff;border-radius:50%;object-fit:cover}.kyoko-jab p,.kyoko-hope p{margin:0;line-height:1.72}.kyoko-jab strong{color:#b83362}.kyoko-hope strong{display:block;margin-bottom:3px;color:#245f8f}
.structure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:20px 0}.structure-grid article{position:relative;padding:17px;border:0;border-radius:15px;background:#eef5fb}.structure-grid article:nth-child(2){background:#fff0f6}.structure-grid article:nth-child(3){background:#fff4e5}.structure-grid span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#173a72;color:#fff;font-size:.75rem;font-weight:900}.structure-grid h3{margin:10px 0 6px;font-size:1rem;line-height:1.45}.structure-grid p{margin:0;color:#526578;font-size:.84rem;line-height:1.65}.scope-note{padding:12px 14px;border-radius:10px;background:#f1f4f7;color:#667085;font-size:.78rem;line-height:1.65}
.episode1-choice{max-width:680px;margin:20px auto}.episode1-choice figcaption{margin-top:10px;color:#526578;font-weight:800;text-align:center}
.difference-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}.difference-grid article{padding:17px;border:2px solid #c8d8e5;border-radius:17px;background:#f4f7f9}.difference-grid article.alternative{border-color:#e99bb8;background:#fff0f6}.difference-grid small{color:#667085;font-weight:900}.difference-grid .alternative small{color:#b83362}.difference-grid h3{margin:4px 0 12px;color:#253a54}.difference-grid p{position:relative;margin:6px 0;padding:8px 10px 8px 29px;border-radius:9px;background:#fff;font-size:.86rem;line-height:1.5}.difference-grid p:before{content:"×";position:absolute;left:10px;color:#82909d;font-weight:900}.difference-grid .alternative p:before{content:"✓";color:#17815f}
.evidence-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:center;margin:20px 0}.evidence-flow>div{padding:16px 10px;border-radius:15px;background:#eef5fb;text-align:center}.evidence-flow>div.met{background:#e7f8f0}.evidence-flow strong{display:block;color:#173a72;font-size:2rem;line-height:1.15}.evidence-flow .met strong{color:#137154}.evidence-flow span{display:block;margin-top:6px;color:#526578;font-size:.76rem;font-weight:900;line-height:1.45}.evidence-flow>b{color:#b83362;font-size:1.2rem;text-align:center}
.evidence-notes{display:grid;gap:8px;margin:16px 0;padding:0;list-style:none}.evidence-notes li{padding:11px 13px;border-left:4px solid #77aecd;border-radius:0 10px 10px 0;background:#f5f9fc;color:#46596b;font-size:.84rem;line-height:1.7}.evidence-notes strong{color:#173a72}.reality-box{margin:19px 0;padding:18px;border:2px solid #d7a34a;border-radius:16px;background:#fff8e8}.reality-box p{margin:0;line-height:1.78}.reality-box p+p{margin-top:8px}.reality-box strong{color:#7a4c00;font-size:1.05rem}
.nutrient-loop{margin-top:26px}.nutrient-loop figcaption{font-size:clamp(1.05rem,3vw,1.35rem);line-height:1.55}.nutrient-loop-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:18px 0 12px;padding:0;list-style:none;counter-reset:none}.nutrient-loop-steps li{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding:11px 10px;border:2px solid #111;background:#fff;line-height:1.4}.nutrient-loop-steps li:not(:last-child):after{content:"→";position:absolute;right:-20px;color:#111;font-size:1.25rem;font-weight:900}.nutrient-loop-steps span{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;background:#111;color:#fff;border-radius:50%;font-weight:900}.nutrient-loop-steps strong{font-size:.82rem}.nutrient-loop>p{margin:13px 0 0;padding:11px 13px;border-left:6px solid #111;background:#f2f2f2;font-weight:900;line-height:1.65}
.kyoko-final{display:grid;grid-template-columns:105px 1fr;gap:18px;margin:0 0 4px;padding:21px;border:2px solid #e99bb8;border-radius:20px;background:linear-gradient(135deg,#fff0f6,#fff 62%)}.kyoko-final img{width:105px;height:105px;border:5px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 6px 17px rgba(38,59,84,.13)}.kyoko-final small{color:#b83362;font-weight:900}.kyoko-final h2{margin:4px 0 11px;padding:0;border:0;font-size:1.35rem;line-height:1.45}.kyoko-final p{margin:8px 0;line-height:1.8}.kyoko-jab.ending{margin-bottom:8px}
@media(max-width:680px){.episode1-opening{padding:16px}.episode1-opening-head{align-items:flex-start}.episode1-opening-head img{width:60px;height:60px}.episode1-opening-head h2{font-size:1.14rem}.cast-strip{grid-template-columns:1fr}.cast-strip>div{padding:7px 9px}.structure-grid{grid-template-columns:1fr}.structure-grid article{display:grid;grid-template-columns:38px 1fr;gap:2px 10px;padding:13px}.structure-grid span{grid-row:1/3}.structure-grid h3{margin:0}.structure-grid p{margin-top:3px}.nutrient-loop-steps{grid-template-columns:1fr 1fr;gap:9px}.nutrient-loop-steps li:not(:last-child):after{display:none}.nutrient-loop-steps strong{font-size:.78rem}.difference-grid{grid-template-columns:1fr}.evidence-flow{grid-template-columns:1fr;gap:5px}.evidence-flow>b{transform:rotate(90deg);line-height:1}.evidence-flow>div{padding:12px}.evidence-flow strong{font-size:1.7rem}.kyoko-final{grid-template-columns:70px 1fr;gap:12px;padding:16px}.kyoko-final img{width:70px;height:70px}.kyoko-final h2{font-size:1.12rem}.kyoko-final p{grid-column:1/-1}.kyoko-jab,.kyoko-hope{align-items:flex-start;padding:12px}.kyoko-jab img,.kyoko-hope img{flex-basis:48px;width:48px;height:48px}}

/* Chapter illustrations and diagrams */
.diagram{margin:30px 0;padding:22px;background:#fff;border:2px solid #111;border-radius:8px;box-shadow:7px 7px 0 #111}
.diagram figcaption{font-weight:900;font-size:1.08rem;margin-bottom:16px;color:#111}
.diagram-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.diagram-card{background:white;border:1px solid #e7dfe0;border-radius:12px;padding:16px;min-width:0}
.diagram-card strong{display:block;color:#633b49}
.diagram-card p{margin:8px 0 0;line-height:1.75}
.diagram-card.good{border-left:5px solid #4c9b76}
.diagram-card.bad{border-left:5px solid #bd6571}
.diagram-note{font-size:.85rem;color:#71676b;line-height:1.7;margin:14px 0 0}
.diagram-flow{display:grid;gap:8px;max-width:540px;margin:auto}
.flow-arrow{text-align:center;color:#a96c80;font-weight:bold}
.character-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:center}
.character-strip>div{display:flex;flex-direction:column;align-items:center;gap:5px}
.character-strip img{width:90px;height:90px;object-fit:cover;object-position:top;border-radius:50%;background:white;border:2px solid #e9d8df}
.character-strip span{font-size:.78rem;color:#71676b}
@media(max-width:520px){.diagram{padding:16px}.diagram-two{grid-template-columns:1fr}.character-strip img{width:65px;height:65px}.character-strip span{font-size:.7rem}}

.core-thesis{margin:24px 0 32px;padding:26px;background:#fff2f5;border:2px solid #e8b6c5;border-radius:18px}
.core-thesis h2{margin:10px 0 16px;font-size:1.45rem;line-height:1.5;color:#743d51}
.core-thesis p{line-height:1.9}
.core-label{display:inline-block;background:#9d506b;color:white;border-radius:99px;padding:5px 12px;font-size:.78rem;font-weight:700}
@media(max-width:520px){.core-thesis{padding:18px}.core-thesis h2{font-size:1.2rem}}

.source-text{line-height:1.95;white-space:normal;margin:20px 0}
.original-restoration section{margin-bottom:40px}
.original-restoration .warning{margin:20px 0}

.step-grid,.feature-grid,.risk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:20px 0}
.step,.feature-grid>div,.risk-grid>div{border:1px solid #dce4eb;border-radius:12px;padding:16px;background:#fff}
.step span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#346b92;color:#fff;font-weight:700;margin-bottom:8px}
.step strong,.feature-grid strong,.risk-grid strong{display:block}
.step p,.feature-grid p,.risk-grid p{margin:8px 0 0;font-size:.94rem;line-height:1.7}
#steps .step-grid{gap:14px}
#steps .step{position:relative;overflow:hidden;display:grid;grid-template-columns:36px 1fr;gap:3px 10px;align-items:center;padding:13px;border:0;box-shadow:0 8px 20px rgba(36,58,92,.09)}
#steps .step:nth-child(1){background:linear-gradient(145deg,#e7f5ff,#f7fcff)}
#steps .step:nth-child(2){background:linear-gradient(145deg,#fff0f6,#fff9fc)}
#steps .step:nth-child(3){background:linear-gradient(145deg,#e9faf3,#f8fffb)}
#steps .step-illustration{grid-column:1/-1;display:block;width:100%;aspect-ratio:1.35/1;object-fit:contain;object-position:center;border-radius:11px;margin:0 0 8px}
#steps .step span{grid-column:1;grid-row:2/4;width:34px;height:34px;margin:0;background:#b83362;box-shadow:0 3px 9px rgba(184,51,98,.2)}
#steps .step strong{grid-column:2;color:#263b54;font-size:1rem}
#steps .step p{grid-column:2;margin:0;color:#596579;font-size:.78rem;line-height:1.45}
.message-example{white-space:normal;line-height:1.9;background:#f5f8fb;border-left:4px solid #7194ad;padding:18px;margin:16px 0;border-radius:0 10px 10px 0}
.diagram .flow-arrow{text-align:center;font-size:24px;padding:8px}
.diagram-card.bad{margin-top:12px}
.article section{scroll-margin-top:24px}
.visual-diagram{padding:18px;overflow:hidden}
.diagram-illustration{display:block;width:100%;height:auto;border-radius:2px;object-fit:cover;filter:grayscale(1) contrast(1.08)}
.keyword-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;text-align:center}
.keyword-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.keyword-row span{padding:10px 8px;border-radius:12px;background:#f3f5f8;color:#596579;font-size:.8rem;line-height:1.45}
.keyword-row span.good{background:#eaf8f2;color:#267458}
.keyword-row span.stop{background:#fff0f1;color:#9d3e4b}
.keyword-row strong{display:block;font-size:1rem;color:inherit}
.wallet-visual{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;text-align:center;padding:10px 0 4px}
.wallet-visual>div:not(.versus){display:flex;min-height:150px;flex-direction:column;justify-content:center;gap:3px;background:#fff;border:1px solid #e7dfe0;border-radius:16px}
.wallet-visual>div.good{background:#eef9f4;border-color:#b9e5d2}
.visual-icon{font-size:54px;line-height:1}
.wallet-visual strong{font-size:1.12rem}
.wallet-visual small{color:#6d7786;font-weight:700}
.versus{font-size:.8rem;font-weight:900;color:#9c7c87}
.web-app-thesis{text-align:center}
.web-app-thesis h2{border:0;padding:0;margin:12px auto 18px}
.met-sites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.met-sites article{padding:14px;border:1px solid #cbddea;border-radius:13px;background:#fff;box-shadow:0 4px 12px rgba(36,58,92,.05)}
.met-sites article.featured{border:2px solid #2d79b8;background:#f4faff}
.met-sites small{display:block;color:#b83362;font-size:.72rem;font-weight:900}.met-sites h3{margin:4px 0 2px;font-size:1rem}.met-sites p{margin:0 0 8px;color:#667085;font-size:.78rem}.met-sites a{color:#245f8f;font-size:.8rem;font-weight:900}.experience-note{padding:11px 14px;border-left:4px solid #8ba5ba;background:#f6f8fa;color:#596579;font-size:.84rem}
.cost-thinking{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 10px}.cost-thinking article{padding:16px;border:1px solid #cbddea;border-radius:14px;background:#fff}.cost-thinking article:last-child{border:2px solid #2d79b8;background:#eef8ff}.cost-thinking small{color:#596579;font-size:.76rem;font-weight:900}.cost-thinking h3{margin:4px 0 7px;color:#173a72;font-size:1.08rem}.cost-thinking p{margin:0;font-size:.87rem;line-height:1.65}.cost-caution{margin:10px 0 22px;padding:12px 14px;border-left:4px solid #e59a25;background:#fff7e8;font-size:.84rem;line-height:1.65}
.version-difference{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.version-difference article{padding:17px;border:1px solid #cbddea;border-radius:15px;background:#fff}.version-difference article:first-child{border:2px solid #2d79b8;background:#eef8ff}.version-difference span{display:inline-block;padding:3px 9px;border-radius:999px;background:#173a72;color:#fff;font-size:.72rem;font-weight:900}.version-difference h3{margin:8px 0 9px;font-size:1.05rem}.version-difference ul{margin:0;padding-left:1.25rem}.version-difference li{margin:5px 0;font-size:.86rem;line-height:1.55}
.point-truth{padding:15px 17px;border-left:5px solid #e59a25;border-radius:0 12px 12px 0;background:#fff7e8;font-size:.9rem;line-height:1.75}.web-entry-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}.web-entry-links>a,.web-entry-links>.pending{display:flex;flex-direction:column;justify-content:center;min-height:76px;padding:11px;border:2px solid #2d79b8;border-radius:13px;background:#fff;text-align:center;text-decoration:none}.web-entry-links strong{color:#173a72;font-size:.88rem}.web-entry-links span span,.web-entry-links a span{color:#b83362;font-size:.72rem;font-weight:900}.web-entry-links>.pending{border-color:#cdd5dc;background:#f2f4f6}.web-entry-links>.pending span{color:#667085}
.final-difference-diagram{overflow:hidden;margin:30px 0 24px;border:3px solid #111;border-radius:16px;background:#fff;box-shadow:6px 7px 0 #111}.final-difference-diagram figcaption{display:grid;gap:3px;padding:14px 16px;background:#111;color:#fff}.final-difference-diagram figcaption span{font-size:.73rem;font-weight:900}.final-difference-diagram figcaption strong{font-size:1.08rem;line-height:1.5}.final-difference-diagram>img{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;filter:grayscale(1)}.final-difference-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid #111}.final-difference-points article{padding:14px;border-right:2px solid #111}.final-difference-points article:last-child{border-right:0}.final-difference-points span{display:inline-block;padding:2px 8px;background:#111;color:#fff;font-size:.72rem;font-weight:900}.final-difference-points p{margin:8px 0 0;font-size:.8rem;line-height:1.55}.final-difference-answer{margin:0;padding:14px 16px;border-top:3px solid #111;background:#fff4f8;font-size:.9rem;line-height:1.7;text-align:center}
@media(max-width:520px){.keyword-row.three{grid-template-columns:1fr}.wallet-visual{gap:8px}.visual-icon{font-size:42px}.wallet-visual>div:not(.versus){min-height:120px}}
@media(max-width:620px){.met-sites{grid-template-columns:1fr 1fr}.cost-thinking{grid-template-columns:1fr}.version-difference{grid-template-columns:1fr}.web-entry-links{grid-template-columns:1fr}.final-difference-diagram{box-shadow:4px 5px 0 #111}.final-difference-diagram>img{aspect-ratio:4/3;object-fit:cover}.final-difference-points{grid-template-columns:1fr}.final-difference-points article{border-right:0;border-bottom:2px solid #111}.final-difference-points article:last-child{border-bottom:0}}

.kyoko-point{margin:24px 0;padding:20px;border:1px solid #d9e5ee;border-radius:16px;background:#f5f9fc}
.kyoko-point-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.kyoko-point-head img{width:76px;height:76px;object-fit:cover;border-radius:50%;flex-shrink:0}
.kyoko-point-head strong{color:#356b91;font-size:.9rem}
.kyoko-point-head h3{margin:4px 0 0;font-size:1.15rem}
.kyoko-point p{line-height:1.85;margin:10px 0}
.kyoko-point .point-small{font-size:.82rem;color:#667789}
.kyoko-woman-view{display:grid;grid-template-columns:max-content 1fr;gap:12px;margin:16px 0 0!important;padding:14px 16px;border-left:4px solid #e94f83;border-radius:0 12px 12px 0;background:#fff7fa}
.kyoko-woman-view strong{color:#b83362;font-size:.85rem;white-space:nowrap}.kyoko-woman-view span{color:#3f4e60}
@media(max-width:540px){.kyoko-woman-view{grid-template-columns:1fr;gap:5px;padding:13px}.kyoko-woman-view strong{white-space:normal}}
@media(max-width:480px){.kyoko-point{padding:15px}.kyoko-point-head img{width:60px;height:60px}.kyoko-point-head h3{font-size:1rem}}

.kyoko-opening{margin:0 0 28px;padding:24px;border:1px solid #d9e5ee;border-radius:16px;background:#f5f9fc}
.kyoko-opening-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.kyoko-opening-head img{width:92px;height:92px;object-fit:cover;border-radius:50%;flex-shrink:0}
.kyoko-opening-head span{font-size:.85rem;color:#356b91;font-weight:700}
.kyoko-opening-head h2{margin:4px 0 0;font-size:1.45rem}
.kyoko-opening p{line-height:1.9;margin:12px 0}
.web-first-guide{margin:0 0 30px;padding:24px;border:2px solid #2d79b8;border-radius:20px;background:linear-gradient(145deg,#eef8ff 0%,#fff 58%,#fff4f8 100%);box-shadow:0 10px 26px rgba(32,91,139,.12)}
.web-first-pr{margin:0 0 12px;color:#667789;font-size:.75rem;text-align:right}
.web-first-heading{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.web-first-heading>span{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#2d79b8;color:#fff;font-size:.82rem;font-weight:900;letter-spacing:.05em;box-shadow:0 6px 16px rgba(45,121,184,.24)}
.web-first-heading small{display:block;color:#b83362;font-weight:800}
.web-first-heading h2{margin:2px 0 0;padding:0;border:0;font-size:clamp(1.45rem,4vw,2rem);line-height:1.25}
.web-first-lead{margin:0 0 18px;font-weight:700}
.web-first-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.web-first-benefits article{display:flex;gap:12px;padding:16px;background:#fff;border:1px solid #c7dfef;border-radius:14px}
.web-first-benefits b{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#f15b8a;color:#fff;font-size:1.05rem}
.web-first-benefits strong{display:block;color:#173f62;font-size:1rem;line-height:1.55}
.web-first-benefits p{margin:5px 0 0;color:#526578;font-size:.88rem;line-height:1.7}
.web-first-flow{display:flex;align-items:stretch;gap:22px;margin:18px 0;padding:0;list-style:none;counter-reset:web-step}
.web-first-flow li{position:relative;display:grid;place-items:center;flex:1;min-height:52px;padding:9px 12px;border-radius:10px;background:#e6f3fc;color:#234e70;font-size:.86rem;font-weight:800;text-align:center}
.web-first-flow li+li::before{content:"›";position:absolute;left:-16px;top:50%;transform:translateY(-52%);color:#2d79b8;font-size:1.8rem}
.web-first-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.web-first-button,.web-register-link{display:inline-block;padding:13px 20px;border-radius:999px;background:#e94f83;color:#fff!important;font-weight:900;text-decoration:none!important;box-shadow:0 6px 14px rgba(233,79,131,.22)}
.web-first-button:hover,.web-register-link:hover{background:#cf3e70;transform:translateY(-1px)}
.web-first-detail{font-size:.88rem;font-weight:800;color:#356b91}
.web-first-note{margin:15px 0 0;color:#667789;font-size:.76rem;line-height:1.65}
.site-guide-disclosure{padding:12px 14px;border-left:4px solid #2d79b8;background:#eef8ff;color:#405a70;font-size:.86rem}
.site-card .web-register-link{margin-top:6px;padding:10px 14px;border-radius:10px;font-size:.82rem;line-height:1.5}
@media(max-width:620px){.web-first-guide{padding:17px}.web-first-benefits{grid-template-columns:1fr}.web-first-flow{display:grid;gap:8px}.web-first-flow li+li::before{content:"↓";left:50%;top:-13px;transform:translateX(-50%);font-size:1rem}.web-first-actions{align-items:stretch;flex-direction:column;text-align:center}.web-first-button{width:100%}}
.kyoko-visual{margin:34px 0;padding:18px 20px;border:1px solid #efb6ca;border-radius:18px;background:linear-gradient(135deg,#fff5f9,#fff 62%);box-shadow:0 6px 18px rgba(122,49,80,.07)}
.kyoko-visual-head{display:flex;align-items:center;gap:12px;margin-bottom:15px}
.kyoko-visual-head img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 4px 12px rgba(39,61,91,.12)}
.kyoko-visual-head small{display:block;color:#b83362;font-size:.78rem;font-weight:900}
.kyoko-visual-head h3{margin:2px 0 0;color:#253a54;font-size:1.15rem;line-height:1.4}
.kyoko-visual-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:stretch}
.kyoko-visual-step{display:flex;flex-direction:column;justify-content:center;min-height:88px;padding:13px;background:#fff;border:1px solid #ead6de;border-radius:12px;text-align:center}
.kyoko-visual-step span{display:inline-block;margin:0 auto 6px;padding:3px 10px;border-radius:999px;background:#eaf5fc;color:#356b91;font-size:.76rem;font-weight:900}
.kyoko-visual-step strong{font-size:.91rem;line-height:1.55;color:#273a50}
.kyoko-visual-arrow{align-self:center;color:#e94f83;font-size:1.35rem;font-weight:900}
@media(max-width:620px){.kyoko-visual{margin:28px 0;padding:15px}.kyoko-visual-head img{width:52px;height:52px}.kyoko-visual-steps{grid-template-columns:1fr;gap:6px}.kyoko-visual-step{min-height:0;padding:11px 12px}.kyoko-visual-arrow{line-height:1;transform:rotate(90deg);justify-self:center}.kyoko-visual-step span{margin-bottom:4px}}
.character-intro{display:grid;gap:12px;margin:22px 0}
.character-intro article{display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center;padding:16px;background:#fff;border:1px solid #d9e5ee;border-radius:14px}
.character-intro img{width:92px;height:92px;object-fit:cover;object-position:top;border-radius:50%;border:3px solid #fff;box-shadow:0 5px 16px rgba(38,52,86,.13)}
.character-intro span{color:#356b91;font-size:13px;font-weight:800}
.character-intro h3{margin:2px 0 4px;font-size:1.15rem}
.character-intro p{margin:0;font-size:.94rem;line-height:1.75}
.kyoko-narration{margin-top:22px;padding:18px 20px;background:#fff;border-left:5px solid #f15b8a;border-radius:0 14px 14px 0}
.kyoko-narration p:first-child{color:#b83362;font-weight:800}
@media(max-width:480px){.kyoko-opening{padding:16px}.kyoko-opening-head img{width:70px;height:70px}.kyoko-opening-head h2{font-size:1.2rem}.character-intro article{grid-template-columns:68px 1fr;gap:11px;padding:13px}.character-intro img{width:68px;height:68px}.character-intro p{grid-column:1/-1}.kyoko-narration{padding:15px 16px}}

/* Site guide and 15-episode navigation */
.supplemental{padding-top:0}
.site-guide{margin-top:10px;padding-top:2px;border-top:1px solid var(--line)}
.site-card{box-shadow:0 5px 16px rgba(36,58,92,.05)}
.site-status{display:inline-block;margin-top:8px;color:#356b91;font-size:13px;font-weight:800}
.site-card-actions{display:grid;gap:8px;align-items:start}
.site-card-actions .site-status{width:max-content;max-width:100%;padding:8px 11px;border-radius:9px;background:#eef6ff;text-decoration:none}
.web-register-link.disabled{display:inline-block;background:#98a2b3;color:#fff!important;box-shadow:none;cursor:not-allowed}
.service-verdict{padding:16px 18px;border-left:5px solid var(--pink);border-radius:0 12px 12px 0;background:#fff4f8;font-weight:800}
.site-review-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.site-review-meta article{padding:18px;border:1px solid #cddfed;border-radius:16px;background:linear-gradient(145deg,#f0f8ff,#fff)}
.site-review-meta small,.site-review-meta span{display:block;color:#667789;font-size:.78rem;line-height:1.55}
.site-review-meta strong{display:block;margin:6px 0;color:#173a72;font-size:clamp(1.08rem,2.7vw,1.38rem);line-height:1.45}
.evidence-note{padding:13px 15px;border-left:4px solid #7fa9ca;background:#f6f9fc;color:#56677a;font-size:.86rem}
.rate-table{min-width:540px}
.rate-table th{width:55%;font-size:1rem}
.rate-table td{font-weight:800;color:#173a72}
.review-checks{display:grid;gap:9px;padding:0;list-style:none}
.review-checks li{position:relative;padding:13px 15px 13px 44px;border:1px solid #d9e5ee;border-radius:12px;background:#fff}
.review-checks li::before{content:"✓";position:absolute;left:15px;color:#1f8b67;font-weight:900}
.web-version-callout{margin:24px 0;padding:20px;border:2px solid #2d79b8;border-radius:16px;background:linear-gradient(135deg,#edf8ff,#fff4f8)}
.web-version-callout>strong{display:block;color:#173a72;font-size:1.2rem}
.review-action{margin-top:34px;padding:24px;text-align:center;border:1px solid #efb6ca;border-radius:18px;background:#fff5f9}
.review-action h2{border:0;padding:0;margin-top:0}
.review-action>div{display:flex;flex-direction:column;align-items:center;gap:6px;margin:18px 0}
.review-action>div>span:last-child{font-size:.76rem;color:#667789}
.review-cta{display:inline-block;padding:14px 22px;border-radius:999px;background:#e94f83;color:#fff!important;font-weight:900;text-decoration:none;box-shadow:0 6px 14px rgba(233,79,131,.22)}
.review-cta.disabled{background:#98a2b3;box-shadow:none;cursor:not-allowed}
@media(max-width:650px){.site-review-meta{grid-template-columns:1fr}.site-review-meta article{padding:15px}.review-action{padding:18px 14px}.review-cta{width:100%}}
.episode-menu{margin:42px 0 8px;padding:24px;background:#f8fafc;border:1px solid var(--line);border-radius:18px}
.episode-menu h2{margin:0 0 16px;padding-left:14px;border-left:6px solid var(--blue);font-size:clamp(23px,4vw,30px);line-height:1.4}
.episode-menu ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding:0;list-style:none}
.episode-menu li{display:grid;grid-template-columns:64px 1fr auto;gap:9px;align-items:center;padding:11px 12px;background:#fff;border:1px solid var(--line);border-radius:11px;color:#7a8492}
.episode-menu li.current{border-color:#9cc5f1;background:#edf6ff;color:var(--ink)}
.episode-menu li span{font-size:13px;font-weight:900;color:#356b91}
.episode-menu li strong{font-size:14px;line-height:1.5}
.episode-menu li em{font-size:12px;font-style:normal;font-weight:800;color:#fff;background:var(--pink);padding:2px 7px;border-radius:999px}
.special-episode{display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center;margin:0 0 12px;padding:12px 14px;border:1px dashed #9cc5f1;border-radius:12px;background:#edf6ff}
.special-episode.extra{margin:12px 0 0;border-color:#e6b6c7;background:#fff2f6}
.special-episode span{font-size:13px;font-weight:900;color:#356b91}
.special-episode.extra span{color:#a34368}
.special-episode strong{font-size:14px}
.special-episode em{font-size:12px;font-style:normal;font-weight:800;color:#667085}
@media(max-width:720px){.episode-menu{padding:16px}.episode-menu ol{grid-template-columns:1fr}.episode-menu li{grid-template-columns:58px 1fr auto}}

/* All-episode navigation */
.episode-menu li{display:block;padding:0;color:var(--ink)}
.episode-menu li>a{display:grid;grid-template-columns:58px 1fr;gap:9px;align-items:center;padding:12px;color:inherit;text-decoration:none;border-radius:11px;min-height:64px}
.episode-menu li>a:hover,.episode-menu li>a:focus-visible{background:#fff0f7;outline:2px solid #ef9ac4}
.episode-pager{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:30px 0}
.episode-pager a{padding:12px 18px;background:#edf8ff;border:1px solid #a9d6ec;border-radius:12px;font-weight:700;text-decoration:none;color:#335976}
.message-example{margin:20px 0;padding:20px;background:#fff7fb;border-left:4px solid var(--pink);line-height:1.9}
.episode2-opening{margin-bottom:28px;padding:4px 0 10px;border-bottom:3px solid #111}
.episode2-draft{margin:18px 0 24px;padding:20px;border:2px solid #111;border-radius:14px;background:#fff;box-shadow:5px 5px 0 #111;line-height:1.85}
.episode2-draft span{display:inline-block;margin-bottom:8px;padding:4px 10px;background:#111;color:#fff;font-size:.78rem;font-weight:900}
.episode2-draft p{margin:7px 0}.episode2-draft.bad{background:#f3f3f3}.episode2-draft.good{border-color:#287b5b;background:#f1fff8;box-shadow:5px 5px 0 #287b5b}.episode2-draft.good span{background:#287b5b}
.episode2-formula,.episode2-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 28px}
.episode2-formula article,.episode2-actions article{padding:16px;border:1px solid #cbddea;border-radius:14px;background:#f7fbff}.episode2-formula article:nth-child(even),.episode2-actions article:nth-child(even){background:#fff5f8}
.episode2-formula span,.episode2-actions span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#173a72;color:#fff;font-size:.76rem;font-weight:900}.episode2-formula h3,.episode2-actions h3{margin:9px 0 5px;font-size:1rem}.episode2-formula p,.episode2-actions p{margin:0;color:#526578;font-size:.88rem;line-height:1.65}
.episode2-diagram{overflow:hidden;padding:0}.episode2-diagram figcaption{margin:0;padding:15px 18px;background:#111;color:#fff}.episode2-diagram .diagram-illustration{border-radius:0}.episode2-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:center;padding:16px}.episode2-route>div{display:flex;flex-direction:column;min-height:76px;justify-content:center;padding:10px;border:1px solid #111;text-align:center}.episode2-route strong{font-size:.85rem}.episode2-route span{margin-top:4px;color:#526578;font-size:.74rem}.episode2-route b{font-size:.7rem}.episode2-route .muted{border-style:dashed;background:#f2f2f2;color:#596579}
@media(max-width:620px){.episode2-formula,.episode2-actions{grid-template-columns:1fr}.episode2-formula article,.episode2-actions article{display:grid;grid-template-columns:40px 1fr;gap:1px 10px;padding:13px}.episode2-formula span,.episode2-actions span{grid-row:1/3}.episode2-formula h3,.episode2-actions h3{margin:0}.episode2-formula p,.episode2-actions p{margin-top:3px}.episode2-route{grid-template-columns:1fr;gap:6px}.episode2-route>div{min-height:0}.episode2-route b{text-align:center}.episode2-diagram{box-shadow:4px 5px 0 #111}}
.numbered-points{margin:16px 0 0;padding-left:1.6em}
.numbered-points li{margin:0 0 16px;padding-left:.25em}
.numbered-points li:last-child{margin-bottom:0}
.numbered-points li p{margin:.35em 0 0}

.special-episode{text-decoration:none;color:var(--ink);grid-template-columns:minmax(80px,auto) 1fr auto}
.special-episode:hover,.special-episode:focus-visible{outline:2px solid #ef9ac4}
.special-episode[aria-current="page"]{border-style:solid;box-shadow:0 0 0 1px #a9d6ec}
.ad-disclosure{margin:0;padding:12px 28px;color:#465665;background:#f2faff;font-size:.9rem;border-bottom:1px solid var(--line)}
.review-note{margin:20px 28px;padding:16px 20px;background:#fff4f8;border:1px solid #e6b6c7;border-radius:12px;line-height:1.8}
.review-note p{margin:6px 0 0}
.source-link{font-size:.9rem;overflow-wrap:anywhere}

/* Episode 5: category caution and site-role diagram */
.category-warning{margin:22px 0;padding:16px 18px;border:3px solid #111;background:#fff4cf;box-shadow:5px 5px 0 #111;color:#243247}.category-warning strong{display:block;margin-bottom:6px;color:#9b271e;font-size:1.05rem}.category-warning p{margin:0;line-height:1.75}.category-warning small{display:block;margin-top:8px;color:#5d6670;font-size:.78rem;line-height:1.6}
.episode5-site-diagram{overflow:hidden;margin:26px 0;padding:0;border:3px solid #111;border-radius:14px;background:#fff;box-shadow:6px 7px 0 #111}.episode5-site-diagram figcaption{display:flex;align-items:center;gap:12px;margin:0;padding:12px 16px;background:#111;color:#fff}.episode5-site-diagram figcaption img{width:58px;height:58px;border:2px solid #fff;border-radius:50%;object-fit:cover}.episode5-site-diagram figcaption span,.episode5-site-diagram figcaption strong,.episode5-site-diagram figcaption small{display:block}.episode5-site-diagram figcaption small{font-size:.7rem}.episode5-site-diagram figcaption strong{font-size:1.05rem;line-height:1.45}.episode5-site-start{display:grid;gap:3px;margin:16px;padding:15px;border:2px solid #2d79b8;background:#edf7ff;text-align:center}.episode5-site-start b{color:#173a72;font-size:1.08rem}.episode5-site-start span{color:#536779;font-size:.82rem;line-height:1.6}.episode5-site-arrow{text-align:center;color:#e94f83;font-size:1.6rem;font-weight:900;line-height:1}.episode5-site-check{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 16px}.episode5-site-check strong{grid-column:1/-1;text-align:center}.episode5-site-check span{display:grid;place-items:center;min-height:50px;padding:8px;border:1px solid #111;background:#fff7fa;font-size:.82rem;font-weight:900;text-align:center}.episode5-site-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px 16px 16px}.episode5-site-roles article{padding:12px;border:2px solid #111;min-width:0}.episode5-site-roles article.main{background:#e8f6ff}.episode5-site-roles article.sub{background:#fff0f6}.episode5-site-roles article.pause{background:#f1f2f3}.episode5-site-roles b{display:inline-block;margin-bottom:8px;padding:3px 8px;background:#111;color:#fff;font-size:.72rem}.episode5-site-roles strong{display:block;font-size:.9rem;line-height:1.45}.episode5-site-roles p{margin:7px 0 0;color:#4f5d6b;font-size:.76rem;line-height:1.55}.episode5-site-answer{margin:0;padding:13px 16px;border-top:3px solid #111;background:#fff4cf;font-size:.86rem;line-height:1.7;text-align:center}
@media(max-width:620px){.episode5-site-diagram{box-shadow:4px 5px 0 #111}.episode5-site-check{gap:5px}.episode5-site-check span{padding:6px 3px;font-size:.7rem}.episode5-site-roles{grid-template-columns:1fr;gap:7px}.episode5-site-roles article{display:grid;grid-template-columns:74px 1fr;gap:2px 9px;padding:10px}.episode5-site-roles b{grid-row:1/3;align-self:start;margin:0;text-align:center}.episode5-site-roles p{margin:2px 0 0}.category-warning{padding:14px;box-shadow:4px 4px 0 #111}}

/* Episode 6: ready-to-read post examples */
.sample-post{position:relative;margin:18px 0;padding:18px 18px 16px;border:3px solid #111;border-radius:10px;background:#fff;box-shadow:5px 5px 0 #111}.sample-post>span{display:inline-block;margin-bottom:8px;padding:3px 10px;border-radius:999px;background:#111;color:#fff;font-size:.72rem;font-weight:900}.sample-post h3{margin:0 0 8px;font-size:1.08rem;line-height:1.5}.sample-post p{margin:0;font-size:.95rem;line-height:1.8}.sample-post.adult{background:#fff0f5;border-color:#9d244d}.sample-post.adult>span{background:#9d244d}.sample-post.pure{background:#eaf7ff;border-color:#246a9e}.sample-post.pure>span{background:#246a9e}
@media(max-width:620px){.sample-post{padding:15px 14px;box-shadow:4px 4px 0 #111}.sample-post h3{font-size:1rem}.sample-post p{font-size:.91rem}}

/* Episode 7: deliberately businesslike mail examples */
.business-mail{display:grid;gap:10px;margin:22px 0;padding:18px;border:3px solid #111;border-radius:10px;background:#f1f3f5;box-shadow:5px 5px 0 #111}.business-mail p{display:grid;grid-template-columns:82px 1fr;gap:9px;margin:0;align-items:start}.business-mail b{padding:7px 8px;background:#111;color:#fff;font-size:.75rem;text-align:center}.business-mail span{padding:10px 12px;border:1px solid #aeb7c0;background:#fff;font-size:.91rem;line-height:1.7}.business-mail .from-kamo span{background:#e8f5ff}.business-mail.compact{margin-top:18px}.example-note{margin:-10px 0 22px;color:#66717d;font-size:.78rem;line-height:1.6}.business-rule{margin:20px 0;padding:16px 18px;border:3px solid #111;background:#fff4cf;box-shadow:5px 5px 0 #111}.business-rule strong{display:block;margin-bottom:8px}.business-rule p{margin:4px 0;font-weight:800}.business-rule p:before{content:"・"}
@media(max-width:620px){.business-mail{padding:12px;box-shadow:4px 4px 0 #111}.business-mail p{grid-template-columns:64px 1fr;gap:6px}.business-mail b{padding:7px 4px;font-size:.68rem}.business-mail span{padding:9px;font-size:.85rem}.business-rule{padding:14px;box-shadow:4px 4px 0 #111}}
.bubble p:first-child{margin-top:0}.bubble p:last-child{margin-bottom:0}

/* Episode 3 */
.episode3-diagram{overflow:hidden;padding:0;border-color:#111;box-shadow:5px 5px 0 #111}.episode3-diagram .diagram-illustration{border-radius:0}.episode3-diagram figcaption{margin:0;padding:13px 16px;background:#111;color:#fff;line-height:1.6}
@media(max-width:620px){.episode3-diagram{box-shadow:4px 4px 0 #111}}
@media(max-width:480px){.ad-disclosure{padding:12px 18px}.review-note{margin:16px}.special-episode{grid-template-columns:1fr auto}.special-episode span{grid-column:1/-1}}

/* Activity record introduction */
.record-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.record-stat{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:center;box-shadow:0 5px 16px rgba(36,58,92,.05)}
.record-stat strong{display:block;font-size:clamp(28px,5vw,42px);line-height:1.2;color:#173a72}
.record-stat span{display:block;margin-top:7px;font-size:14px;font-weight:800;color:#596579}
.record-stat.met strong{color:#137154}.record-stat.mine strong{color:#a56613}.record-stat.other strong{color:#a34368}
.result-equation{display:grid;grid-template-columns:1.1fr auto 1fr auto 1fr;gap:10px;align-items:stretch;margin:22px 0 14px;padding:16px;border:1px solid #cbddea;border-radius:16px;background:#f5f9fc}
.result-equation-total,.result-equation-part{display:flex;flex-direction:column;justify-content:center;min-height:92px;padding:12px;border-radius:12px;background:#fff;text-align:center}
.result-equation-total{border:2px solid #2d79b8}.result-equation-part.main{border:2px solid #137154}.result-equation-part.correction{border:2px solid #d79a34}
.result-equation strong{font-size:1.75rem;line-height:1.2;color:#173a72}.result-equation span:not(.result-equation-arrow):not(.result-equation-plus){margin-top:5px;color:#596579;font-size:.82rem;font-weight:800}
.result-equation-arrow,.result-equation-plus{align-self:center;color:#52708b;font-size:1.35rem;font-weight:900}
.record-gallery{margin:26px 0;padding:20px;border:1px solid var(--line);border-radius:18px;background:#f2f5f9}
.record-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.record-thumb{display:block;width:100%;height:300px;object-fit:cover;object-position:top;border-radius:8px;background:#fff;border:3px solid var(--thumb-color,#4b98d1);overflow:hidden;box-shadow:0 4px 10px rgba(34,48,71,.08);cursor:zoom-in}.record-thumb:focus{outline:3px solid #173a72;outline-offset:2px}
.record-thumb.happy{--thumb-color:#39a5e5}.record-thumb.wakuwaku{--thumb-color:#ef5b9a}.record-thumb.pcmax{--thumb-color:#4d8f91}
.record-item{margin:0;min-width:0;padding:7px;border:1px solid #d7e0e8;border-radius:11px;background:#fff;box-shadow:0 4px 10px rgba(34,48,71,.08)}
.record-item .record-thumb{height:250px;box-shadow:none}
.record-item figcaption{display:grid;gap:3px;margin-top:8px;padding:0 3px 3px;line-height:1.35}
.record-item figcaption strong{font-size:.86rem;color:#243b55}.record-item figcaption span{font-size:.72rem;color:#667085}
.record-entry{font-size:.69rem;line-height:1.45;color:#356b91;font-weight:800}
.record-item figcaption em{display:inline-block;justify-self:start;padding:3px 7px;border-radius:999px;background:#edf2f6;color:#46596b;font-size:.69rem;font-style:normal;font-weight:900}
.record-item.met figcaption em{background:#e4f5ee;color:#137154}.record-item.mine figcaption em{background:#fff1d9;color:#8d5b10}.record-item.other figcaption em{background:#fdebf1;color:#9f3e61}.record-item.correction figcaption em{background:#eef1f4;color:#54606c}
.record-legend{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 12px;font-size:13px;font-weight:800;color:#596579}
.record-legend span:before{content:"";display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:2px;background:var(--legend-color)}
.record-legend .happy{--legend-color:#39a5e5}.record-legend .wakuwaku{--legend-color:#ef5b9a}.record-legend .pcmax{--legend-color:#4d8f91}
.record-gallery figcaption{margin-top:14px;font-size:13px;line-height:1.7;color:#667085}
.record-filters{display:grid;gap:12px;margin:16px 0;padding:16px;border:1px solid #cbddea;border-radius:14px;background:#fff}
.record-filter-group{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:start}.record-filter-group>strong{padding-top:7px;color:#173a72;font-size:.875rem}.record-filter-group>div{display:flex;flex-wrap:wrap;gap:7px}
.record-filter-group button{min-height:38px;padding:7px 12px;border:1px solid #b9cad8;border-radius:999px;background:#f5f8fa;color:#46596b;font:inherit;font-size:.875rem;font-weight:800;cursor:pointer}.record-filter-group button[aria-pressed="true"]{border-color:#2d79b8;background:#2d79b8;color:#fff}.record-filter-group button:focus-visible{outline:3px solid #ef9ac4;outline-offset:2px}
.record-filter-count{margin:0!important;text-align:right;color:#596579;font-size:.8rem;font-weight:900}
.record-item[hidden]{display:none}
.privacy-lock{padding:18px 20px;border-radius:16px;background:#f5f9fc;border:1px solid #cbddea}
.privacy-lock strong{color:#173a72}
.special-episode.intro{margin-bottom:10px;border-style:solid;border-color:#f0bf72;background:#fff8e8}
.special-episode.intro span{color:#9a5c00}
.intro-web-guide{margin:34px 0;padding:22px;border:1px solid #9fcce5;border-radius:18px;background:linear-gradient(135deg,#eef8ff,#fff 62%)}
.intro-web-guide .kyoko-opening-head{margin-bottom:12px}.intro-web-guide .kyoko-opening-head h2{margin:2px 0 0;font-size:1.28rem}
.intro-main-sites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.intro-main-sites article{display:flex;flex-direction:column;padding:16px;border:1px solid #cbddea;border-radius:14px;background:#fff}.intro-main-sites h3{margin:0 0 6px;color:#173a72}.intro-main-sites p{flex:1;margin:0 0 12px;color:#596579;font-size:.86rem}
.intro-main-sites .web-register-link{text-align:center;font-size:.8rem}.web-pending{display:block;padding:12px;border-radius:999px;background:#edf1f4;color:#5c6975;font-size:.82rem;font-weight:900;text-align:center}
@media(max-width:720px){.record-summary{grid-template-columns:1fr}.result-equation{grid-template-columns:1fr;gap:6px}.result-equation-arrow{transform:rotate(90deg)}.result-equation-plus{line-height:1;text-align:center}.result-equation-total,.result-equation-part{min-height:74px}.record-gallery{padding:12px}.record-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.record-item .record-thumb{height:210px}.intro-main-sites{grid-template-columns:1fr}.intro-web-guide{padding:17px}}

.entry-analysis th,.entry-analysis td{text-align:center}.entry-analysis th:first-child,.entry-analysis td:first-child{text-align:left;min-width:190px}
.entry-bars{display:grid;gap:10px;margin:16px 0 10px;padding:16px;border:1px solid #cbddea;border-radius:14px;background:#f7fafc}
.entry-bars div{display:grid;grid-template-columns:minmax(155px,1fr) 2fr;gap:12px;align-items:center}
.entry-bars span{font-size:.82rem;font-weight:800;color:#46596b}
.entry-bars b{position:relative;display:flex;align-items:center;min-height:34px;padding:6px 10px;border-radius:8px;background:linear-gradient(90deg,#d9ecfa var(--entry-width),#edf1f4 var(--entry-width));color:#173a72;font-size:.85rem}

.early-proof{margin:0 0 30px;padding:22px;border:2px solid #137154;border-radius:18px;background:linear-gradient(135deg,#eef9f4,#fff 65%)}
.early-proof>small{color:#137154;font-weight:900}.early-proof h2{margin:5px 0 16px;padding:0;border:0;font-size:clamp(1.25rem,4vw,1.7rem)}
.early-proof>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.early-proof>div span{padding:13px 8px;border-radius:12px;background:#fff;border:1px solid #b9e5d2;text-align:center;font-size:.78rem;font-weight:800;color:#526578}.early-proof>div strong{display:block;color:#137154;font-size:1.65rem;line-height:1.15}
.early-proof-definitions{display:grid;gap:8px;margin:15px 0 5px;padding:0;list-style:none}.early-proof-definitions li{padding:10px 12px;border-left:4px solid #77bea2;border-radius:0 9px 9px 0;background:#fff;color:#46596b;font-size:.82rem;line-height:1.65}.early-proof-definitions strong{display:inline;color:#137154;font-size:inherit}.early-proof-definitions strong:after{content:"："}
.early-proof p{margin:13px 0 7px;color:#596579;font-size:.82rem;line-height:1.65}.early-proof a{font-size:.86rem;font-weight:900;color:#356b91}
.episode-record-case{margin:30px 0;padding:20px;border:1px solid #efb6ca;border-radius:18px;background:linear-gradient(135deg,#fff8fb,#fff 65%);box-shadow:0 6px 18px rgba(122,49,80,.07)}
.record-case-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.record-case-head span{display:inline-block;padding:4px 10px;border-radius:999px;background:#b83362;color:#fff;font-size:.73rem;font-weight:900}.record-case-head a{color:#356b91;font-size:.8rem;font-weight:900}
.episode-record-case h3{margin:12px 0 13px;color:#253a54;font-size:1.18rem}.episode-record-case>p:not(.kyoko-woman-view){margin:14px 0 0;line-height:1.8}
.record-case-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:8px;align-items:stretch}.record-case-flow b{display:grid;place-items:center;min-height:58px;padding:10px;border:1px solid #d9e5ee;border-radius:11px;background:#fff;color:#273a50;font-size:.82rem;line-height:1.45;text-align:center}.record-case-flow span{align-self:center;color:#e94f83;font-weight:900}
.moe-record-flow{gap:7px}.record-case-flow .moe-record-step{display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;min-height:0;padding:7px;border:0;box-shadow:0 7px 18px rgba(36,58,92,.08)}.moe-record-step.blue{background:#e8f6ff}.moe-record-step.pink{background:#fff0f6}.moe-record-step.mint{background:#e9faf3}.moe-record-step img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:9px}.moe-record-step em{display:grid;place-items:center;min-height:42px;padding:6px 2px;color:#263b54;font-size:.78rem;font-style:normal;font-weight:900;line-height:1.35}
.record-case-focus{display:grid;grid-template-columns:max-content 1fr;gap:12px;padding:13px 15px;border-left:4px solid #2d79b8;border-radius:0 11px 11px 0;background:#eef8ff}.record-case-focus strong{color:#245f8f;font-size:.875rem;white-space:nowrap}.record-case-focus span{color:#3f4e60}
.kyoko-episode-lead{font-weight:600}
@media(max-width:620px){.record-filter-group{grid-template-columns:1fr;gap:5px}.entry-bars div{grid-template-columns:1fr}.entry-bars{padding:13px}.early-proof{padding:16px}.early-proof>div{grid-template-columns:1fr}.record-case-flow{grid-template-columns:1fr;gap:5px}.record-case-flow b{min-height:0}.record-case-flow span{justify-self:center;transform:rotate(90deg)}.record-case-flow.moe-record-flow{grid-template-columns:1fr auto 1fr auto 1fr;gap:4px}.record-case-flow.moe-record-flow>span{transform:none}.record-case-flow .moe-record-step{padding:5px}.moe-record-step em{min-height:38px;padding:5px 1px;font-size:.66rem}.episode-record-case{padding:16px}.record-case-focus{grid-template-columns:1fr;gap:5px}.record-case-focus strong{white-space:normal}}
@media(max-width:560px){#steps .step-grid{grid-template-columns:1fr 1fr;gap:10px}#steps .step:last-child{grid-column:1/-1;grid-template-columns:100px 1fr}#steps .step:last-child .step-illustration{grid-column:1;width:100px;aspect-ratio:1;grid-row:1/3;margin:0}#steps .step:last-child span{display:none}#steps .step:last-child strong{grid-column:2;grid-row:1}#steps .step:last-child p{grid-column:2;grid-row:2}#steps .step{padding:9px;grid-template-columns:30px 1fr;gap:2px 7px}#steps .step span{width:28px;height:28px;font-size:.8rem}#steps .step strong{font-size:.88rem}#steps .step p{font-size:.7rem}}

body.modal-open{overflow:hidden}.record-modal[hidden]{display:none}.record-modal{position:fixed;inset:0;z-index:1000;background:rgba(8,17,31,.92);padding:64px 12px 20px;overflow:auto}.record-modal-close{position:fixed;z-index:1001;top:12px;right:16px;padding:10px 16px;border:0;border-radius:999px;background:#fff;color:#173a72;font-size:16px;font-weight:800;cursor:pointer}.record-modal-scroll{max-width:820px;margin:0 auto;background:#fff;border-radius:10px;overflow:hidden}.record-modal img{display:block;width:100%;height:auto}

/* Public-launch cleanup: proof, character consistency and compact article endings */
.evidence-link,.site-comparison-entry{margin:14px 0 22px;text-align:center}
.evidence-link a{display:inline-flex;align-items:center;min-height:46px;padding:10px 17px;border:2px solid #137154;border-radius:999px;background:#fff;color:#11664d;font-weight:900;text-decoration:none}
.evidence-link a:after{content:"→";margin-left:9px}.evidence-link a:hover{background:#eef9f4}
.queen-opening{border:2px solid #b83362;background:linear-gradient(135deg,#fff0f6,#fff 68%);box-shadow:5px 5px 0 #111}
.queen-opening .kyoko-opening-head span{color:#b83362;font-weight:900}.queen-opening .kyoko-opening-head h2{color:#202b3d}
.next-preview{margin-bottom:8px}.next-preview-link{display:inline-flex;align-items:center;min-height:44px;margin-top:7px;padding:9px 15px;border-radius:999px;background:#b83362;color:#fff;font-size:.88rem;font-weight:900;text-decoration:none}.next-preview-link:after{content:"→";margin-left:8px}
.compact-site-guide{max-width:820px;margin:28px auto 0!important;padding:18px 20px!important;border:1px solid #cbddea!important;border-radius:16px;background:#f5f9fc!important}
.compact-site-guide h2{margin:0 0 6px!important;padding:0!important;border:0!important;font-size:1.2rem!important}.compact-site-guide p{margin:7px 0!important;line-height:1.65}.compact-site-guide .site-comparison-link{margin-top:4px}
@media(max-width:620px){.queen-opening{padding:17px;box-shadow:4px 4px 0 #111}.queen-opening .kyoko-opening-head{align-items:flex-start}.queen-opening .kyoko-opening-head img{width:72px;height:72px}.queen-opening .kyoko-opening-head h2{font-size:1.15rem}.next-preview{grid-template-columns:76px 1fr;padding:15px}.next-preview img{width:76px;height:76px}.next-preview-link{font-size:.8rem}.compact-site-guide{padding:15px!important}.evidence-link a{width:100%;justify-content:center}}

/* Search and trust foundation */
.seo-breadcrumb{display:flex;align-items:center;gap:8px;padding:13px 28px;border-bottom:1px solid var(--line);background:#f7fafc;color:#667085;font-size:.875rem}.seo-breadcrumb a{color:#356b91;font-weight:800}.seo-breadcrumb span[aria-current="page"]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.related-reading{margin:32px 0 10px;padding:19px 21px;border:1px solid #cbddea;border-radius:16px;background:#f5f9fc}.related-reading h2{margin:0 0 12px;padding:0;border:0;font-size:1.14rem}.related-reading ul{display:grid;gap:8px;margin:0;padding-left:1.25rem}.related-reading a{color:#245f8f;font-weight:800}
.footer{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.trust-links{display:flex;gap:12px 18px;flex-wrap:wrap}.trust-links a{color:inherit;font-size:.875rem}
.policy-content{padding-bottom:40px}.policy-content section{margin:0 0 34px}.policy-content h2{margin-bottom:14px}.policy-content p{line-height:1.9}.policy-date{color:#667085;font-size:.875rem}
@media(max-width:600px){.seo-breadcrumb{padding:11px 18px}.footer{align-items:flex-start;flex-direction:column}.trust-links{flex-direction:column;gap:8px}.related-reading{padding:16px}}

/* Six-site comparison */
.site-comparison-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:2px solid #2d79b8;border-radius:999px;background:#fff;color:#245f8f;font-weight:900;text-decoration:none}.site-comparison-link:after{content:"→";margin-left:8px}.site-comparison-link:hover{background:#eef8ff}
.sites-comparison .hero{background:linear-gradient(135deg,rgba(0,0,0,.94),rgba(0,0,0,.42)),url("assets/hero-gag-bw-v1.webp") center/cover;color:#fff}.sites-comparison .hero h1,.sites-comparison .hero .lead{color:#fff}.sites-comparison .hero .kicker{background:#fff;color:#111}
.comparison-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.comparison-highlights article{padding:17px;border:1px solid #a9d9c5;border-radius:14px;background:linear-gradient(145deg,#effaf5,#fff)}.comparison-highlights small{display:block;color:#526578;font-weight:800}.comparison-highlights strong{display:block;margin:5px 0;color:#137154;font-size:1.18rem}.comparison-highlights span{display:block;color:#596579;font-size:.82rem;line-height:1.55}
.comparison-table-wrap{overflow-x:auto;margin:16px 0;border:1px solid #cbddea;border-radius:14px;background:#fff}.sites-table{width:100%;min-width:950px;border-collapse:collapse;font-size:.84rem}.sites-table th,.sites-table td{padding:12px 10px;border-right:1px solid #dbe5ec;border-bottom:1px solid #dbe5ec;vertical-align:middle;text-align:left}.sites-table thead th{background:#173a72;color:#fff;font-size:.78rem}.sites-table tbody th{min-width:132px;background:#f4f8fb}.sites-table a{color:#245f8f;font-weight:900}.sites-table tr:last-child th,.sites-table tr:last-child td{border-bottom:0}.sites-table th:last-child,.sites-table td:last-child{border-right:0}
.post-status.free{background:#e9f8f1;color:#116c50;font-weight:900}.post-status.paid{background:#fff4e3;color:#80540d;font-weight:900}.post-status.unknown{background:#eef1f4;color:#596579;font-weight:800}
.comparison-mobile{display:none}.comparison-caution{padding:14px 16px;border-left:5px solid #e59a25;border-radius:0 10px 10px 0;background:#fff7e8;line-height:1.75}.comparison-steps{display:grid;gap:12px;counter-reset:step;list-style:none;padding:0}.comparison-steps li{display:grid;grid-template-columns:36px 1fr;gap:3px 12px;padding:15px 16px;border:1px solid #cbddea;border-radius:13px;background:#f7fafc;counter-increment:step}.comparison-steps li:before{content:counter(step);grid-row:1/3;display:grid;place-items:center;align-self:start;width:32px;height:32px;border-radius:50%;background:#2d79b8;color:#fff;font-weight:900}.comparison-steps strong{color:#173a72}.comparison-steps span{color:#596579;font-size:.88rem;line-height:1.65}.official-source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;padding-left:1.25rem}.official-source-list a{color:#245f8f;font-weight:800}
@media(max-width:760px){.comparison-highlights{grid-template-columns:1fr}.comparison-table-wrap{display:none}.comparison-mobile{display:grid;gap:14px;margin:16px 0}.comparison-card{overflow:hidden;border:1px solid #cbddea;border-radius:15px;background:#fff;box-shadow:0 5px 14px rgba(34,48,71,.07)}.comparison-card h3{margin:0;padding:14px 16px;background:#173a72;font-size:1.06rem}.comparison-card h3 a{color:#fff}.comparison-card dl{margin:0}.comparison-card dl>div{display:grid;grid-template-columns:42% 1fr;gap:10px;padding:10px 14px;border-bottom:1px solid #e2e9ef}.comparison-card dt{color:#596579;font-size:.8rem;font-weight:800}.comparison-card dd{margin:0;color:#243b55;font-size:.84rem;font-weight:800}.comparison-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}.comparison-card-actions a,.compare-register{display:grid;place-items:center;min-height:43px;padding:8px;border:1px solid #2d79b8;border-radius:999px;color:#245f8f;font-size:.76rem;font-weight:900;text-align:center}.compare-register{border-color:#b83362!important;background:#b83362;color:#fff!important}.compare-register.disabled{border-color:#cdd5dc!important;background:#edf1f4;color:#5c6975!important}.official-source-list{grid-template-columns:1fr}.sites-comparison .hero{background-position:center}}
@media(max-width:420px){.comparison-card-actions{grid-template-columns:1fr}}

/* Reading rhythm */
body{font-size:17px;line-height:1.8}
.content>section:not(.site-guide){max-width:820px;margin-left:auto;margin-right:auto}
section h2{margin-top:40px;font-size:clamp(22px,3.5vw,29px)}
section h3{font-size:20px}
.chat{margin:18px 0}
.bubble{line-height:1.78}
.reading-guide{border-left:5px solid #2d79b8;background:#f7fafc}
.reading-guide>strong{display:block;margin-bottom:8px;color:#173a72;font-size:1.05rem}
.toc-toggle,.section-toggle{min-height:44px;padding:9px 15px;border:1px solid #8eb9d7;border-radius:999px;background:#fff;color:#245f8f;font:inherit;font-size:.88rem;font-weight:900;cursor:pointer}
.toc-toggle{display:none;margin:10px 0 0}
.kyoko-point.compact{padding:15px 17px;background:#fafcff;border-color:#dce6ed}
.kyoko-point.compact .kyoko-point-head{gap:10px;margin-bottom:7px}
.kyoko-point.compact .kyoko-point-head img{width:48px;height:48px}
.kyoko-point.compact .kyoko-point-head strong{font-size:.8rem}
.kyoko-point.compact .kyoko-point-head h3{margin-top:1px;font-size:1rem}
.kyoko-point.compact p{margin:6px 0;font-size:.94rem;line-height:1.72}
.section-toggle{display:none}
.web-first-guide.compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center;margin:22px 0;padding:14px 17px;border-width:1px;background:#f5faff}
.web-first-guide.compact .web-first-pr{grid-column:1/-1;margin:0;font-size:.72rem}
.web-first-compact-copy{display:flex;gap:11px;align-items:center}.web-first-compact-copy>span{display:grid;place-items:center;flex:0 0 45px;width:45px;height:45px;border-radius:50%;background:#2d79b8;color:#fff;font-size:.72rem;font-weight:900}.web-first-compact-copy p{margin:0}.web-first-compact-copy strong{display:block;color:#173a72;font-size:1rem}.web-first-compact-copy small{display:block;margin-top:2px;color:#526578;font-size:.83rem;line-height:1.55}
.web-first-guide.compact .web-first-actions{margin:0;flex-wrap:nowrap}.web-first-guide.compact .web-first-button{padding:9px 13px;font-size:.78rem;white-space:nowrap}.web-first-guide.compact .web-first-detail{font-size:.78rem;white-space:nowrap}

/* Compact official-site links at the end of each episode */
.episode-site-links{margin:30px 0 24px;padding:16px 18px;border:2px solid #20324b;border-radius:16px;background:#fff;box-shadow:4px 4px 0 rgba(32,50,75,.12)}
.episode-site-links-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.episode-site-links-head strong{font-size:1.08rem;color:#17283f}.episode-site-links-head span{font-size:.78rem;font-weight:800;color:#65758a}
.episode-site-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}
.episode-site-button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:10px 12px;border:2px solid #2e75ad;border-radius:11px;background:#eef7ff;color:#153652;text-decoration:none;font-weight:900;line-height:1.3}
.episode-site-button small{font-size:.72rem;color:#2c6389;white-space:nowrap}.episode-site-button:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(25,67,103,.14)}
.episode-site-button[data-site="wakuwaku"]{border-color:#dc2f82;background:#fff0f7;color:#75224b}.episode-site-button[data-site="wakuwaku"] small{color:#a62b66}
.episode-site-button[data-site="jmail"]{border-color:#168970;background:#effbf7;color:#15594d}.episode-site-button[data-site="jmail"] small{color:#16715f}
.episode-site-button[data-site="hana"]{border-color:#9a5a32;background:#fff7ed;color:#693d23}.episode-site-button[data-site="hana"] small{color:#89502f}
.episode-site-button[data-site="ikukuru"]{border-color:#7653b5;background:#f7f2ff;color:#4b3478}.episode-site-button[data-site="ikukuru"] small{color:#6849a0}
.episode-site-links-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px}.episode-site-links-footer a{font-weight:900;color:#1d5f91}.episode-site-links-footer small{color:#6d7887;font-size:.72rem;text-align:right}
@media(max-width:720px){
  body{font-size:16px;line-height:1.76}
  .main{margin-top:18px;padding:0 10px}
  .article{border-radius:17px}
  .header-inner{padding:30px 18px 34px}
  .hero{padding-top:25px;padding-bottom:20px}
  .hero h1{font-size:clamp(25px,7.2vw,34px);line-height:1.38}
  .hero .lead{font-size:1rem;line-height:1.72}
  .content{padding-bottom:30px}
  section h2{margin-top:34px;margin-bottom:14px;font-size:1.42rem}
  section h3{font-size:1.14rem}
  .chat,.chat.right{gap:7px;margin:15px 0}
  .avatar-wrap{width:50px;flex-basis:50px}
  .avatar{width:46px;height:46px}
  .avatar-name{font-size:.72rem}
  .bubble{padding:12px 13px;font-size:1rem;line-height:1.72;border-radius:16px}
  .bubble:before{top:20px}.bubble:after{top:22px}
  .reading-guide{margin-bottom:22px;padding:15px 17px}
  .reading-guide ul{margin-top:8px;padding-left:1.2rem}
  .reading-guide li{margin:5px 0;line-height:1.55}
  .reading-guide[data-collapsed="true"] li:nth-child(n+4){display:none}
  .toc-toggle,.section-toggle{display:inline-flex;align-items:center;justify-content:center}
  .site-guide>.section-toggle,.episode-menu>.section-toggle{width:100%;margin:0 0 12px}
  .site-guide[data-collapsed="true"] .site-grid{display:none}
  .episode-menu[data-collapsed="true"] ol,.episode-menu[data-collapsed="true"] .special-episode{display:none}
  .episode-menu{margin-top:30px;padding:15px}
  .episode-menu h2{font-size:1.4rem}
  .site-guide{margin-top:0}
  .site-guide-disclosure{font-size:.86rem}
  .small,.disclosure,.web-first-note,.record-gallery figcaption{font-size:.875rem}
  .web-first-guide.compact{grid-template-columns:1fr;padding:13px 14px}
  .web-first-guide.compact .web-first-actions{display:grid;grid-template-columns:1fr auto;gap:9px}
  .web-first-guide.compact .web-first-button{width:auto;white-space:normal}
  .episode-site-links{margin:24px 0 20px;padding:14px 13px}
  .episode-site-links-head{align-items:flex-start;flex-direction:column;gap:2px}
  .episode-site-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .episode-site-button{display:block;min-height:58px;padding:9px 10px;font-size:.88rem}.episode-site-button small{display:block;margin-top:4px;white-space:normal}
  .episode-site-links-footer{align-items:flex-start;flex-direction:column;gap:5px}.episode-site-links-footer small{text-align:left}
}
/*
Theme Name: 非モテ中年の出会い系攻略
Theme URI: https://deaikeiblog.net/
Author: AI有限会社
Description: 「モテないなら、土俵を変えろ。」Sites版を忠実に移設する専用テーマです。
Version: 1.0.0
Text Domain: deai-jissenki
*/
