/* Approved design: page surface inside the shared Windows shell. */
.journal-stage { --world-focus: #805426; }
.book-author { font: 700 8px Tahoma, sans-serif; color: #73603f; text-transform: uppercase; letter-spacing: .17em; }
.book-tabs a { text-decoration: none; min-height: 44px; line-height: 1.4; }
.book-page, .book-left { min-width: 0; }
.chapter { display: flex; flex-direction: column; flex: 1; }
.chapter > p { margin: 0 0 1.1em; }
.journal-actions { margin-top: 8px; }
.journal-link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; font: 13px Georgia, serif; color: #705029; }
.journal-link::after { content: '\2192'; }
.chapter:not([hidden]) ~ .chapter:not([hidden]) { margin-top: 24px; border-top: 1px solid #bda9806b; }
.journal-stage { padding:34px 36px 38px;background-color:#d3caba;background-image:radial-gradient(ellipse at 50% 10%,#f7f0dcaa,transparent 75%),repeating-linear-gradient(95deg,#77654308 0 1px,transparent 1px 5px);min-height:566px;display:flex;align-items:center }
.book { width:100%;display:grid;grid-template-columns:minmax(0,32%) minmax(0,68%);position:relative;border:9px solid #604b39;border-radius:5px;background:#ede3c9;box-shadow:0 2px 0 #2e281f,0 8px 0 -3px #9e8765,0 12px 0 -6px #654e35,0 22px 32px #45382040;min-height:448px }
.book:before,.book:after { content:"";position:absolute;z-index:2;width:27px;height:27px;border:2px solid #b6a16b;pointer-events:none }
.book:before { left:-7px;top:-7px;border-right:0;border-bottom:0;border-radius:2px 0 0 0 }
.book:after { right:-7px;bottom:-7px;border-left:0;border-top:0;border-radius:0 0 2px 0 }
.book-left { padding:35px 27px 25px;position:relative;background:linear-gradient(90deg,#e4d8b9,#f2e9d3 14%,#eee3c6 83%,#c8b992);border-right:1px solid #74634650;display:flex;flex-direction:column }
.book-left:after { content:"";position:absolute;top:0;bottom:0;right:7px;border-right:1px solid #fff6 }
.book-heading { font:italic 34px Georgia,'Times New Roman',serif;color:#443b2c;letter-spacing:-.05em;margin:9px 0 23px }
.book-mark { width:40px;height:40px;color:#8b7242;margin-bottom:10px }
.book-tabs { display:flex;flex-direction:column;gap:5px;margin:0 -10px }
.book-tabs a { display:flex;align-items:center;gap:15px;background:none;border:1px solid transparent;border-radius:2px;padding:11px 10px;text-align:left;font:15px Georgia,serif;color:#5b5140 }
.book-tabs .chapter-number { font:10px 'Courier New',monospace;color:#938266 }
.book-tabs a[aria-current="true"] { color:#332a1b;background:linear-gradient(90deg,#9e794020,transparent);border-color:#9c82452e;font-weight:700 }
.book-tabs a[aria-current="true"] .chapter-number { color:#715421 }
.book-tabs a:hover { background-color:#9278450c }
.book-signature { margin-top:auto;padding-top:32px;color:#857557;font:italic 12px Georgia,serif }
.book-page { padding:39px 47px 24px;position:relative;display:flex;flex-direction:column;background:linear-gradient(90deg,#b7a27870,#eee2c6 4%,#faf4e2 15%,#f3ebd7 88%,#e0d3b5);color:#403a2d }
.page-running { display:flex;align-items:center;gap:12px;font:9px Tahoma,sans-serif;text-transform:uppercase;letter-spacing:.19em;color:#8d7e5e }
.page-running:after { content:"";flex:1;height:1px;background:#bda9806b }
.chapter h2 { font:32px Georgia,serif;letter-spacing:-.04em;margin:23px 0 19px }
.chapter p { font:15px/1.8 Georgia,serif;max-width:58ch }
.page-footer { margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:17px;color:#a08c66;font:10px Georgia,serif }
.page-footer:before { content:"✧";font-size:17px }
.chapter { animation:world-pane-in .2s ease-out }
[data-theme=dark] .journal-stage { background-color:#45473e;background-image:radial-gradient(ellipse at 50% 0,#75706055,transparent 70%) }
[data-theme=dark] .book { filter:brightness(.86) }
@media(min-width:1350px) {
.journal-stage { padding-top:43px;padding-bottom:47px }
}
@media(max-width:860px) {
.journal-stage { padding:25px 20px }
.book-left { padding:31px 20px 22px }
.book-page { padding:32px 30px 22px }
.book-tabs a { font-size:13px;gap:10px }
}
@media(max-width:620px) {
.journal-stage { padding:21px 13px 27px;min-height:0 }
.book { grid-template-columns:1fr;border-width:6px;min-height:0 }
.book-left { padding:17px 18px 13px;border-right:0;border-bottom:1px solid #baaa85;background:linear-gradient(90deg,#e6dbbd,#f2e8cf) }
.book-left:after,.book-mark,.book-author,.book-signature { display:none }
.book-tabs { margin:0;display:grid;grid-template-columns:1fr 1fr;gap:3px }
.book-tabs a { padding:9px 6px;font-size:12px }
.book-tabs .chapter-number { font-size:9px }
.book-page { padding:23px 23px 19px;background:linear-gradient(90deg,#e8dabe,#faf4e2 13%,#f3ebd7 88%,#e0d3b5);min-height:376px }
.chapter h2 { font-size:28px;margin-top:21px }
.chapter p { font-size:14px;line-height:1.8 }
.page-running { font-size:8px }
.book-heading { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
/* Spend mobile space on the page, rather than several layers of margins. */
@media screen {
  .book { grid-template-columns: minmax(0, 30%) minmax(0, 70%); }
  .book-author { font-size: 10px; letter-spacing: .12em; }
  .book-page { padding: 32px 40px 24px; }
  .chapter h2 { margin: 20px 0 16px; line-height: 1.2; }
  .chapter p { font-size: 16px; line-height: 1.75; }
  .page-running { font-size: 10px; letter-spacing: .14em; }
  .book-tabs .chapter-number { flex: 0 0 3ch; }
}
@media screen and (max-width: 860px) {
  .book-left { padding: 28px 20px 22px; }
  .book-page { padding: 28px 24px 22px; }
}
@media screen and (max-width: 620px) {
  .journal-stage { padding: 18px 10px 24px; }
  .book { grid-template-columns: minmax(0, 1fr); }
  .book-left { padding: 14px 12px; }
  .book-tabs a { font-size: 13px; gap: 8px; padding: 10px 6px; }
  .book-page { padding: 22px 18px 20px; }
  .chapter p { font-size: 15px; }
}
@media (forced-colors: active) {
  .book, .book-page, .book-left { background: Canvas; color: CanvasText; box-shadow: none; border-color: CanvasText; }
  .book::before, .book::after, .book-left::after { display: none; }
  .journal-link { color: LinkText; }
}
@media print {
  .book, .book-left, .book-page, .chapter { display: block; background: white; border: 0; padding: 0; box-shadow: none; min-height: 0; }
  .book::before, .book::after, .book-left::after, .book-mark, .book-signature, .page-running, .page-footer, .journal-actions { display: none; }
  .book-heading { position: static; width: auto; height: auto; clip-path: none; margin: 0 0 20px; }
  .chapter { padding: 12px 0; break-inside: avoid; }
  .chapter > p { max-width: none; font-size: 11pt; line-height: 1.5; }
}
