/* Ruhiger Lesebereich mit derselben Navigation und Designwahl wie Ghostwriter. */
:root {
  --paper:var(--sw-bg); --ink:var(--sw-text); --muted:var(--sw-muted);
  --line:var(--sw-line); --white:var(--sw-panel); --lime:var(--sw-raised);
  --orange:#9c4f36; --shadow:var(--sw-shadow);
}
:root[data-theme="dark"] { --orange:#f0a686; }
body { background:var(--paper); color:var(--ink); }
.wrap { width:min(1240px,calc(100% - 64px)); }
.site-header.sw-header { height:auto; min-height:84px; padding-block:12px; }
.site-header .sw-header-inner { justify-content:flex-start; }
.library-intro { display:block; padding:clamp(28px,5vw,64px) 0 24px; }
.library-intro h1 { max-width:17ch; font-size:clamp(36px,5vw,62px); letter-spacing:-.035em; line-height:1.04; }
.library-intro .eyebrow { color:var(--sw-accent); font-size:12px; margin-bottom:9px; }
.library-intro .intro-copy { margin-top:10px; font-size:16px; line-height:1.5; }
.shelf-toolbar { border-top:0; padding-top:8px; }
.shelf-toolbar h2 { font-size:23px; }
.shelf-toolbar h2 span { font-size:14px; }
.shelf-categories { display:flex; gap:8px; flex-wrap:wrap; margin:0 0 18px; }
.shelf-categories button,.filter {
  min-height:44px; border:1px solid var(--line); border-radius:12px;
  background:var(--white); color:var(--ink); padding:8px 15px; font-size:14px; font-weight:650;
}
.shelf-categories button[aria-pressed="true"],.filter[aria-pressed="true"] {
  background:var(--sw-accent); color:var(--sw-on-accent); border-color:var(--sw-accent);
}
.shelf-toolbar .search input { font-size:14px; }
.filter-row { margin:12px 0 18px; align-items:center; }
.genre-filter { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:14px; margin-left:auto; }
.genre-filter select { min-height:44px; border:1px solid var(--line); border-radius:10px; padding:6px 8px; background:var(--white); color:var(--ink); font:inherit; }
.book-grid { gap:clamp(14px,3vw,32px); }
.book-card { background:var(--white); border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.cover-stage,.book-card:nth-child(2n) .cover-stage { border-radius:0; min-height:0; aspect-ratio:1.54; padding:20px; background:var(--sw-cover); }
.book-card:nth-child(2n) .cover-stage { background:color-mix(in srgb,var(--sw-cover) 86%,var(--orange)); }
.cover-open { width:min(60%,218px); }
.cover-art { box-shadow:4px 5px 0 var(--line),9px 11px 22px #0003; }
.age-badge { left:14px; top:14px; font-size:13px; border-color:var(--line); }
.book-meta { padding:18px; }
.book-meta .eyebrow { font-size:12px; letter-spacing:.1px; margin:0 0 4px; }
.book-meta h3 { font-size:clamp(22px,3.5vw,34px); line-height:1.12; margin-bottom:5px; }
.book-subtitle,.book-description { font-size:14px; min-height:0; }
.book-actions { margin-top:14px; flex-wrap:wrap; gap:6px 12px; }
.primary-button,.next-button {
  background:var(--sw-accent); color:var(--sw-on-accent); border-color:var(--sw-accent);
  font-size:15px; border-radius:10px;
}
.primary-button:hover,.next-button:hover:not(:disabled) { background:var(--sw-accent); filter:brightness(.92); }
.reading-note { background:var(--sw-raised); padding:20px; margin:32px 0 18px; }
.reading-note p,.site-footer { font-size:13px; }
.reader-view { background:var(--sw-raised); }
.reader-header,.reader-footer { border-color:var(--line); }
.reader-header .reader-tools { gap:4px; }
.reader-tools .icon-button { gap:4px; min-height:44px; min-width:44px; padding:5px 8px; font-size:19px; }
.reader-tools .tool-label { font-size:10px; line-height:1.1; }
.reader-help,.page-progress>p { color:var(--muted); font-size:12px; }
.icon-button:hover,.icon-button[aria-pressed="true"],.turn-button:hover:not(:disabled) { background:var(--sw-raised); }
.next-button:hover:not(:disabled) { background:var(--sw-accent); }
.book-page,.contents-item,.bookmark-notice,dialog { border-color:var(--line); }
.story-text p,.guide-text p,.end-text p,.read-word,.letter-strip { color:var(--ink); }
.read-together,.transcript { border-color:var(--line); }
.page-number,.illustration-page .page-number { color:var(--muted); background:var(--white); }
.reader-view .turn-button { font-size:15px; min-height:48px; }
.turn-button:not(.next-button) { border-color:var(--line); }
.progress-track { background:var(--line); }
.progress-track span { background:var(--sw-accent); }
.contents-item,.zoom-dialog,.zoom-close,.artwork-button .zoom-hint { background:var(--white); color:var(--ink); }
.contents-item[aria-current="page"],.bookmark-notice,.page-tip,.image-fallback,.cover-page,.cover-text-fallback,.zoom-scroll {
  background:var(--sw-raised); color:var(--ink);
}
.setting-row input { accent-color:var(--sw-accent); }
.settings-dialog [data-appearance-control] { margin:0 0 12px; padding:8px 0; border-bottom:1px solid var(--line); }
[data-theme="dark"] .page-container:not(.spread)>.book-page { box-shadow:4px 0 0 var(--line),7px 1px 0 var(--sw-raised); }
[data-theme="dark"] .comic-panel { border-color:var(--line); }
[data-theme="dark"] .contents-item>span:first-child,[data-theme="dark"] .end-mark { color:var(--muted); }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible { outline-color:var(--sw-focus); }
@media(max-width:720px) {
  .wrap { width:calc(100% - 32px); }
  .site-header.sw-header { min-height:0; padding-block:9px 0; }
  .sw-header .sw-nav:has(a[hidden]) { display:none; }
  .library-intro { padding:25px 0 18px; }
  .shelf-toolbar { align-items:flex-start; gap:7px; }
  .genre-filter { margin-left:0; }
  .book-meta { padding:13px; }
  .cover-stage,.book-card:nth-child(2n) .cover-stage { aspect-ratio:1.24; }
  .reader-header .reader-tools .icon-button { min-width:44px; padding-inline:4px; }
  .reader-tools .tool-label { font-size:9px; }
  .reader-view .turn-button { min-width:0; }
}
@media(max-width:520px) {
  .book-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .book-description { display:none; }
  .cover-stage,.book-card:nth-child(2n) .cover-stage { aspect-ratio:1; padding:26px 8px 12px; }
  .cover-open { width:64%; }
  .age-badge { left:7px; top:7px; padding:3px 7px; min-height:0; font-size:11px; }
  .book-meta h3 { font-size:20px; }
  .book-meta .eyebrow,.book-subtitle { font-size:12px; }
  .book-actions .primary-button { width:100%; font-size:13px; padding:8px; gap:4px; }
  .filter-row { gap:6px; }
  .filter { padding-inline:10px; font-size:13px; }
}
@media(max-width:350px) {
  .book-grid { grid-template-columns:1fr; }
  .cover-stage,.book-card:nth-child(2n) .cover-stage { aspect-ratio:1.35; }
  .cover-open { width:48%; }
}
.shelf-toolbar { margin-bottom:4px; }
.shelf-filters { margin:0 0 14px; }
.shelf-filters summary { display:list-item; width:fit-content; min-height:44px; padding:12px 0; color:var(--sw-accent); cursor:pointer; font-size:14px; font-weight:650; }
.shelf-filters .search { max-width:380px; min-width:0; }
.shelf-filters .filter { transition:none; }
