.ysc-reader,.ysc-archive { --ysc-accent:#d94d8a; --ysc-secondary:#5b357b; color:#2f2540; font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; }
.ysc-reader *,.ysc-archive * { box-sizing:border-box; }
.ysc-reader { width:min(100%,760px); margin:0 auto; padding:24px 12px 64px; }
.ysc-reader-header { margin:0 auto 26px; text-align:center; }
.ysc-series,.ysc-episode-number { margin:0; color:var(--ysc-accent); font-size:.82rem; font-weight:900; letter-spacing:.12em; }
.ysc-reader-header .ysc-subtitle { margin:8px 0 0; color:var(--ysc-secondary); font-size:clamp(1.35rem,6vw,2.25rem); font-weight:900; line-height:1.35; }
.ysc-characters { margin:14px 0 0; color:#756d7c; font-size:.82rem; }
.ysc-characters span { display:inline-block; margin-right:5px; padding:3px 7px; color:#fff; background:var(--ysc-secondary); border-radius:999px; font-size:.68rem; font-weight:800; }
.ysc-intro { margin:0 auto 24px; padding:18px 20px; background:#fff8fc; border-left:4px solid var(--ysc-accent); border-radius:0 14px 14px 0; }
.ysc-intro > :first-child { margin-top:0; }.ysc-intro > :last-child { margin-bottom:0; }
.ysc-pages { display:grid; gap:12px; }
.ysc-page { margin:0; overflow:hidden; background:#f7f7f7; border-radius:12px; box-shadow:0 10px 28px rgba(47,37,64,.10); }
.ysc-page img { display:block; width:100%; height:auto; margin:0; }
.ysc-empty { padding:22px; background:#f7f4f9; border-radius:14px; text-align:center; }
.ysc-episode-nav { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:34px; }
.ysc-episode-nav div:last-child { text-align:right; }
.ysc-episode-nav a { display:block; height:100%; padding:14px 16px; color:var(--ysc-secondary); background:#fff; border:1px solid #e6dfea; border-radius:12px; text-decoration:none; font-weight:800; }
.ysc-episode-nav span { display:block; margin-bottom:4px; color:#8a818f; font-size:.72rem; font-weight:700; }
.ysc-archive { width:min(100%,1120px); margin:0 auto; padding:24px 0 72px; }
.ysc-archive .ysc-archive-header { position:relative; overflow:hidden; margin:0 0 30px; padding:34px 38px; background:radial-gradient(circle at 92% 16%,rgba(117,201,245,.30),transparent 27%),radial-gradient(circle at 8% 100%,rgba(245,143,186,.25),transparent 30%),linear-gradient(135deg,#fff 0%,#fff8fc 56%,#f2faff 100%); border:1px solid #ecdfea; border-radius:24px; box-shadow:0 14px 34px rgba(71,43,91,.07); }
.ysc-archive .ysc-archive-kicker { display:block; margin:0 0 8px; color:var(--ysc-accent); font-size:.76rem; font-weight:900; letter-spacing:.16em; }
.post_content .ysc-archive .ysc-archive-header h2,.ysc-archive .ysc-archive-header h2 { margin:0 !important; padding:0 !important; color:var(--ysc-secondary) !important; background:none !important; border:0 !important; font-size:clamp(1.75rem,5vw,2.8rem) !important; font-weight:900; line-height:1.25; letter-spacing:-.035em; }
.post_content .ysc-archive .ysc-archive-header h2::before,.post_content .ysc-archive .ysc-archive-header h2::after { content:none !important; display:none !important; }
.post_content .ysc-archive .ysc-archive-header p,.ysc-archive .ysc-archive-header p { margin:12px 0 0 !important; padding:0 !important; color:#756d7c; background:none !important; border:0 !important; font-size:1rem; line-height:1.8; }
.ysc-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:22px; }
.ysc-card { overflow:hidden; background:#fff; border:1px solid #e9e2ec; border-radius:18px; box-shadow:0 12px 30px rgba(47,37,64,.08); }
.ysc-card-cover { display:block; aspect-ratio:9 / 16; overflow:hidden; background:linear-gradient(145deg,#eef9ff,#fff4f9); }
.ysc-card-cover img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.ysc-card-cover:hover img { transform:scale(1.025); }
.ysc-cover-placeholder { width:100%; height:100%; display:grid; place-items:center; color:var(--ysc-accent); font-size:4rem; }
.ysc-card-body { padding:18px; }
.post_content .ysc-card-body .ysc-card-series,.ysc-card-series { margin:0 0 5px; color:#877d8d; font-size:.68rem; font-weight:800; }
.post_content .ysc-card-body .ysc-card-number,.ysc-card-number { margin:0 0 6px; color:var(--ysc-accent); font-size:.75rem; font-weight:900; letter-spacing:.09em; }
.post_content .ysc-card h3,.ysc-card h3 { margin:0 !important; padding:0 !important; color:var(--ysc-secondary) !important; background:none !important; border:0 !important; font-size:1.08rem !important; line-height:1.5; }
.post_content .ysc-card h3::before,.post_content .ysc-card h3::after { content:none !important; display:none !important; }
.ysc-card h3 a { color:var(--ysc-secondary); text-decoration:none; }
.ysc-card-body > p:last-child { margin:9px 0 0; color:#756d7c; font-size:.86rem; }
.ysc-card-read { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:15px; padding-top:12px; color:var(--ysc-secondary); border-top:1px solid #eee8f0; text-decoration:none !important; font-size:.78rem; font-weight:900; }
.ysc-card-read span { color:var(--ysc-accent); font-size:1rem; transition:transform .18s ease; }
.ysc-card-read:hover span { transform:translateX(3px); }
.ysc-profile-yumeguri { --ysc-accent:#c14e43; --ysc-secondary:#49372e; }
@media (max-width:820px) { .ysc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } }
@media (max-width:520px) {
  .ysc-reader { padding-inline:0; }
  .ysc-reader-header,.ysc-intro,.ysc-episode-nav { margin-left:14px; margin-right:14px; }
  .ysc-pages { gap:8px; }
  .ysc-page { border-radius:0; box-shadow:none; }
  .ysc-archive { padding-top:10px; }
  .ysc-archive .ysc-archive-header { margin-bottom:20px; padding:25px 21px; border-radius:18px; }
  .ysc-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .ysc-card { border-radius:13px; }.ysc-card-body { padding:12px; }.post_content .ysc-card h3,.ysc-card h3 { font-size:.94rem !important; }
  .ysc-card-read { font-size:.72rem; }
}
@media (prefers-reduced-motion:reduce) { .ysc-card-cover img { transition:none; } }
