/* v55: comic reading-room system. Story art stays uncropped and separate from copy. */
:root {
  --visual-paper: #faf5e9; --visual-surface: #f1e9d9; --visual-ink: #192b3a;
  --visual-coral: #a64636; --visual-gold: #d6a348; --visual-sage: #8b9e8c;
  --visual-line: #d8cdb7; --visual-caption: #645b50;
  --paper-50: var(--visual-paper); --paper-100: var(--visual-surface); --paper-200: var(--visual-line);
  --ink-950: var(--visual-ink); --signal-coral: var(--visual-coral);
}
body[data-visual-edition="comic55"] {background:var(--visual-paper)}
.comic-art {display:block;width:100%;height:auto;object-fit:contain;object-position:center;max-width:100%;border-radius:3px}
.comic-image-caption,.comic-scene-credit {font-family:var(--journal-sans);font-size:12px;line-height:1.65;color:var(--visual-caption);letter-spacing:.04em}
.home-hero-simple {background:var(--visual-paper);color:var(--visual-ink);padding:48px 0 54px;min-height:0;overflow:visible}
.home-hero-simple::before,.home-hero-simple::after {display:none}
.home-hero-simple .hero-grid {grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:clamp(32px,5vw,76px);align-items:center}
.home-hero-simple h1 {color:var(--visual-ink);font-family:var(--journal-serif);font-size:clamp(32px,3.45vw,52px);line-height:1.55;letter-spacing:-.025em}
.home-hero-simple h1 em {color:var(--visual-coral)}
.home-hero-simple :is(.hero-lead,.home-hero-note) {color:var(--ink-700)}
.home-hero-simple .hero-slogan {color:var(--visual-caption)}
.home-hero-simple .eyebrow {color:var(--visual-coral)}
.home-hero-simple .button-secondary {color:var(--visual-ink);border-color:var(--visual-line);background:transparent}
.comic-hero-visual {display:block;min-height:0;position:relative;width:100%;padding:0;background:none;border:0;border-radius:0;transform:none}
.comic-hero-visual::before,.comic-hero-visual::after {display:none}
.comic-hero-visual a {display:block}
.comic-hero-visual .comic-art {border-radius:4px}
.comic-hero-visual .comic-image-caption {display:block;margin-top:10px;text-align:right}
.page-intro {background:var(--visual-surface);padding:34px 0;border-bottom:1px solid var(--visual-line)}
.page-intro::after {display:none}
.page-intro-grid {display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:60px;align-items:center}
.comic-intro-copy {max-width:780px;min-width:0}
.page-intro h1 {font-family:var(--journal-serif);font-size:clamp(32px,3.6vw,50px);line-height:1.42;max-width:none;letter-spacing:-.02em}
.page-intro .lead {max-width:44em;font-size:16px;line-height:1.8;margin-top:16px}
.page-intro .lead strong {display:none}
.comic-intro-art {margin:0;max-width:230px;position:relative}
.comic-intro-art::after {content:"";display:block;width:28px;height:5px;background:var(--visual-gold);margin-top:9px}
.comic-intro-art .comic-art {max-height:195px;width:100%;object-fit:contain}
.comic-scene-figure {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:center;background:var(--visual-surface);padding:24px;border:1px solid var(--visual-line);margin:28px 0 38px;min-height:0;overflow:hidden}
.comic-scene-figure>.comic-art {width:100%;height:auto;max-height:310px;object-fit:contain}
.comic-scene-figure figcaption {position:static;max-width:none;padding:0;border:0;background:none;color:var(--visual-ink);font-size:16px;line-height:1.8;text-align:left}
.comic-scene-figure figcaption p {margin:10px 0 16px;font-size:inherit}
.comic-scene-figure figcaption a {font-size:13px;color:var(--visual-coral);text-decoration:underline;text-underline-offset:4px}
.article-illustration.comic-scene-figure {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.card-grid:has(>.has-comic-art) {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.content-card.has-comic-art {display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:24px;row-gap:10px;min-height:0;padding:22px;background:var(--visual-paper);border:1px solid var(--visual-line);box-shadow:none;align-content:start}
.has-comic-art>.comic-card-image {grid-column:1;grid-row:1 / span 4;align-self:start;display:block;overflow:hidden}
.has-comic-art>.comic-card-image img {aspect-ratio:1/1;height:auto;object-fit:contain;background:var(--visual-surface)}
.has-comic-art>:not(.comic-card-image) {grid-column:2;min-width:0}
.has-comic-art .card-meta {font-size:11px;gap:8px;align-items:flex-start;flex-wrap:wrap}
.has-comic-art .card-stage-links {margin:0;gap:5px}
.has-comic-art .card-stage-links a {font-size:10px}
.has-comic-art .content-card-link h3,.has-comic-art>h3 {font-family:var(--journal-serif);font-size:clamp(18px,1.6vw,23px);line-height:1.55;letter-spacing:0;margin-top:0}
.has-comic-art p {font-size:13px;line-height:1.8;margin-top:10px}
.has-comic-art .card-link {font-size:12px;margin-top:15px;padding-top:0}
.has-comic-art :is(.guide-card-action,.guide-card-assistant) {grid-column:1/-1}
.has-comic-art .guide-card-action {margin-top:8px;padding-top:12px}
.has-comic-art .save-button {min-width:44px;min-height:44px}
.has-comic-entry {display:grid!important;grid-template-columns:124px minmax(0,1fr);gap:22px!important;align-items:center!important;position:relative;min-height:0!important;padding:22px!important;overflow:hidden}
.has-comic-entry .comic-entry-art {display:block;color:inherit;min-width:0;align-self:start;padding:0;border:0;background:none}
.has-comic-entry .comic-entry-art img {width:100%;aspect-ratio:1;object-fit:contain;height:auto}
.comic-entry-copy {min-width:0}
.comic-entry-copy>span {display:block;color:var(--visual-coral);font-size:11px;letter-spacing:.06em;margin-bottom:8px}
.comic-entry-copy :is(h3,strong,b) {font-family:var(--journal-sans)}
.comic-entry-copy h3 {font-size:21px;line-height:1.55;margin:0 0 9px;letter-spacing:0}
.comic-entry-copy p {font-size:13px;line-height:1.8;margin:7px 0 12px}
.comic-entry-copy>small {display:block;font-size:12px;line-height:1.7;margin-top:6px}
.comic-entry-copy>b {font-size:12px;line-height:1.7;display:block;margin-top:16px}
.has-comic-entry .comic-entry-copy>b {position:static;inset:auto;transform:none}
.tools-hub-item.has-comic-entry {grid-template-columns:140px minmax(0,1fr);background:var(--visual-paper);border-color:var(--visual-line);box-shadow:none}
.tools-hub-item::before,.tools-hub-item::after {display:none}
.tools-hub-item .comic-entry-copy>span {font-size:11px;color:var(--visual-coral)}
.tools-hub-item .comic-entry-copy>h3 {font-family:var(--journal-serif);font-size:23px;line-height:1.5}
.tools-hub-item .comic-entry-copy>b {color:var(--visual-coral);font-size:12px}
.tools-hub-intro {display:none}
.tools-hub {padding-top:28px}
.tools-hub::before,.tools-hub::after {display:none}
.tool-router-disclosure {border-top:1px solid var(--visual-line);border-bottom:1px solid var(--visual-line);background:var(--visual-surface);margin:0 0 40px}
.tool-router-disclosure>summary {cursor:pointer;padding:20px 24px;font-size:17px;line-height:1.7;font-family:var(--journal-sans);color:var(--visual-ink)}
.tool-router-disclosure>summary>span {float:right;font-size:13px;color:var(--visual-caption);margin-left:16px}
.tool-router-disclosure .tool-router {margin:0;padding:24px;border:0;border-top:1px solid var(--visual-line)}
.tool-router header h2 {font-family:var(--journal-serif);font-size:clamp(24px,2.5vw,34px);line-height:1.55}
.tools-hub-group>header h2 {font-family:var(--journal-serif);font-size:30px;line-height:1.5}
.tools-hub-group>div {grid-template-columns:repeat(2,minmax(0,1fr))}
.home-resource-links>a.has-comic-entry {grid-template-columns:78px minmax(0,1fr);gap:14px!important;padding:18px!important}
.home-resource-links .comic-entry-copy>b {font-size:15px;margin:0;line-height:1.5}
.home-resource-links .comic-entry-copy>span {font-size:10px;margin-bottom:3px}
.home-resource-links .comic-entry-copy>small {font-size:11px}
.home-start-card.has-comic-entry {grid-template-columns:110px minmax(0,1fr)}
.home-start-card .comic-entry-copy>span {display:none}
.path-card.has-comic-entry p {color:var(--ink-700)}
.path-card .path-arrow {display:none}
.stage-card.has-comic-entry {grid-template-columns:90px minmax(0,1fr)}
.stage-card .stage-number {font-size:11px}
.stage-card h3 {font-size:21px}
.stage-card .stage-link {font-size:12px;color:var(--visual-coral)}
.audience-issue-card.has-comic-entry {grid-template-columns:85px minmax(0,1fr)}
.audience-issue-card .comic-entry-copy>span {display:none}
.comic-library {--comic-paper:var(--visual-paper)}
.comic-library-heading {grid-template-columns:156px minmax(0,1fr) 240px;gap:28px}
.comic-bookplate {margin:0;min-width:0}
.comic-bookplate img {width:100%;height:auto}
.comic-topics a {border-radius:4px}
.comic-topics a[aria-current=true] {background:var(--visual-ink);border-color:var(--visual-ink);color:var(--visual-paper)}
.comic-empty-art {width:136px;margin:0 0 20px}
.saved-note+.comic-scene-figure {max-width:740px;grid-template-columns:180px minmax(0,1fr)}
.saved-item>.card-grid {grid-template-columns:1fr}
.saved-recent-item.has-comic-entry {grid-template-columns:64px minmax(0,1fr)}
.saved-recent-item .comic-entry-copy>strong {font-size:15px;line-height:1.6}
.assistant-action-icon,.assistant-result-status-icon {object-fit:contain;background:var(--visual-surface);border-radius:3px}
.assistant-choice-icon {overflow:hidden}
.assistant-result::before {display:none}
.assistant-library-item.has-comic-entry {grid-template-columns:60px minmax(0,1fr);padding:12px!important;gap:12px!important}
.assistant-library-item .comic-entry-copy strong {font-size:14px;margin:0;color:var(--paper-50)}
.assistant-library-item .comic-entry-copy>span {color:#ebbaa0}
.comic-notebook-detail {border-color:var(--visual-line)}
.content-action-bridge::before {display:none}
.comic-notebook-detail::after {content:"";display:block;width:32px;height:7px;position:absolute;top:0;left:24px;background:var(--visual-gold);transform:rotate(-8deg);pointer-events:none}
.tools-friendly-principles {position:relative}
.site-footer {border-top:4px solid var(--visual-sage)}
.comic-situation-points {grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.comic-situation-points .guide-situation-point {padding:16px;min-width:0;background:var(--visual-paper)}
.comic-situation-points .guide-situation-point-heading img {display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin:0 0 16px}
.comic-situation-points .guide-situation-point-heading h3 {font-family:var(--journal-serif);font-size:23px;margin:8px 0}
.comic-situation-points .guide-situation-point-heading strong {font-size:12px}
.comic-situation-points .guide-situation-point>p {min-height:0;font-size:13px}
.comic-situation-points .guide-situation-point>div {font-size:12px;line-height:1.7}
.button-primary {background:var(--visual-ink);border-color:var(--visual-ink);color:var(--visual-paper)}
.button-primary:hover {background:#304d5c;border-color:#304d5c}
a:focus-visible,button:focus-visible {outline:3px solid var(--visual-coral);outline-offset:4px}
@media (max-width:1100px) {
  .comic-situation-points {grid-template-columns:repeat(2,minmax(0,1fr))}
  .content-card.has-comic-art {grid-template-columns:110px minmax(0,1fr);gap:12px;padding:18px}
  .has-comic-entry,.tools-hub-item.has-comic-entry {grid-template-columns:100px minmax(0,1fr);gap:16px!important}
  .home-resource-links {grid-template-columns:repeat(2,minmax(0,1fr))}
  .comic-library-heading {grid-template-columns:110px minmax(0,1fr)}
  .comic-starters {grid-column:1/-1}
}
@media (max-width:700px) {
  .tools-hub-group>div {grid-template-columns:1fr}
  .tools-hub-group>header h2 {font-size:25px}
  .tool-router-disclosure>summary {padding:16px;font-size:16px}
  .tool-router-disclosure>summary>span {float:none;display:block;margin:5px 0 0;font-size:12px}
  .comic-situation-points {grid-template-columns:1fr}
  .comic-situation-points .guide-situation-point-heading {display:grid;grid-template-columns:90px minmax(0,1fr);gap:5px 16px}
  .comic-situation-points .guide-situation-point-heading img {grid-row:1/span 3;margin:0}
  .comic-situation-points .guide-situation-point-heading :not(img) {grid-column:2}
  .home-hero-simple {padding:28px 0 34px}
  .home-hero-simple .hero-grid {display:flex;flex-direction:column;gap:28px;align-items:stretch}
  .home-hero-simple h1 {font-size:33px}
  .home-hero-simple .hero-lead {font-size:15px}
  .comic-hero-visual {display:block;min-height:0;max-width:520px}
  .page-intro {padding:26px 0}
  .page-intro-grid {display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:18px;align-items:start}
  .page-intro h1 {font-size:30px;line-height:1.45}
  .page-intro .eyebrow {font-size:10px;letter-spacing:.06em}
  .page-intro .lead {font-size:14px;line-height:1.75;margin-top:13px}
  .comic-intro-art {max-width:90px;margin-top:8px}
  .comic-scene-figure,.article-illustration.comic-scene-figure {grid-template-columns:110px minmax(0,1fr);padding:16px;gap:17px;margin:24px 0}
  .comic-scene-figure figcaption {font-size:13px;line-height:1.7}
  .comic-scene-figure figcaption p {margin:6px 0 8px}
  .comic-scene-credit {font-size:10px}
  .comic-scene-figure figcaption a {font-size:12px}
  .card-grid:has(>.has-comic-art) {grid-template-columns:1fr;gap:16px}
  .content-card.has-comic-art {grid-template-columns:92px minmax(0,1fr);padding:16px;column-gap:16px;row-gap:8px}
  .has-comic-art .content-card-link h3 {font-size:19px;line-height:1.55}
  .has-comic-art p {font-size:13px}
  .has-comic-art .card-stage-links {grid-column:1/-1;grid-row:3}
  .has-comic-art>.comic-card-image {grid-row:1 / span 2}
  .has-comic-art>.content-card-link {grid-row:2}
  .has-comic-entry,.tools-hub-item.has-comic-entry,.home-start-card.has-comic-entry {grid-template-columns:94px minmax(0,1fr);gap:16px!important;padding:18px!important}
  .comic-entry-copy h3,.tools-hub-item .comic-entry-copy>h3 {font-size:20px;line-height:1.5}
  .home-resource-links {grid-template-columns:1fr}
  .home-resource-links>a.has-comic-entry {grid-template-columns:78px minmax(0,1fr)}
  .home-resource-links a .comic-entry-copy>span {display:none}
  .home-resource-links .comic-entry-copy>b {font-size:17px}
  .home-resource-links .comic-entry-copy>small {font-size:12px}
  .comic-library-heading {grid-template-columns:72px minmax(0,1fr);gap:16px;padding-bottom:18px}
  .comic-library-heading h1 {font-size:27px;line-height:1.45;margin:8px 0 12px}
  .comic-library-heading p {font-size:13px}
  .comic-bookplate {align-self:center}
  .comic-starters {grid-column:1/-1;margin-top:0}
  .saved-note+.comic-scene-figure {grid-template-columns:90px minmax(0,1fr)}
  .comic-support-links>a.has-comic-entry {grid-template-columns:78px minmax(0,1fr)}
  .comic-notebook-detail::after {display:none}
}
@media (max-width:360px) {
  .page-intro-grid {grid-template-columns:minmax(0,1fr) 64px;gap:12px}
  .page-intro h1 {font-size:27px}
  .comic-scene-figure,.article-illustration.comic-scene-figure {grid-template-columns:82px minmax(0,1fr)}
  .content-card.has-comic-art {grid-template-columns:74px minmax(0,1fr);gap:12px;padding:13px}
}
@media print {
  .comic-intro-art,.comic-card-image,.comic-entry-art,.comic-hero-visual,.comic-scene-figure {display:none!important}
  .content-card.has-comic-art,.has-comic-entry {display:block!important}
}
