.ledger-layout{max-width:1180px}.ledger-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:10px 0 22px}.ledger-stat,.ledger-controls{border:1px solid var(--border);background:linear-gradient(145deg,rgba(45,28,17,.97),rgba(25,15,9,.97));border-radius:16px;padding:18px;box-shadow:var(--shadow)}.ledger-stat small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.66rem}.ledger-stat strong{display:block;color:var(--gold);font-size:1.7rem;margin-top:5px}.ledger-controls{display:grid;gap:14px}.ledger-controls input{padding:13px 14px;border-radius:11px;border:1px solid rgba(255,255,255,.12);background:#160e09;color:var(--text)}.ledger-tabs{display:flex;gap:8px;flex-wrap:wrap}.ledger-tabs button{border:1px solid var(--border);background:rgba(16,10,6,.55);color:var(--muted);padding:9px 12px;border-radius:10px;cursor:pointer}.ledger-tabs button.active,.ledger-tabs button:hover{color:#261407;background:linear-gradient(145deg,#f4cf7a,#b9782b)}.ledger-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.ledger-entry{cursor:pointer}.ledger-entry .guild-card{height:100%}.traveler-dialog{width:min(680px,92vw);border:1px solid var(--border);border-radius:20px;background:linear-gradient(145deg,#362216,#17100b);color:var(--text);padding:26px;box-shadow:0 24px 80px #000}.traveler-dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-close{position:absolute;right:14px;top:10px;border:0;background:none;color:var(--muted);font-size:2rem;cursor:pointer}.traveler-profile h2{color:var(--gold);margin-bottom:4px}.traveler-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.traveler-meta div,.visit-entry{border:1px solid rgba(255,255,255,.09);background:rgba(16,10,6,.45);padding:12px;border-radius:10px}.traveler-meta small{display:block;color:var(--muted);text-transform:uppercase;font-size:.65rem;letter-spacing:.1em}.traveler-meta strong{display:block;margin-top:4px}.visit-list{display:grid;gap:8px}.visit-entry{display:flex;justify-content:space-between;gap:12px}.ledger-empty{grid-column:1/-1;color:var(--muted);padding:30px;text-align:center}@media(max-width:900px){.ledger-stats,.ledger-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.ledger-stats,.ledger-grid,.traveler-meta{grid-template-columns:1fr}}

/* v1.0 Living Tavern hosts */
.living-hero{display:flex;justify-content:space-between;gap:32px;align-items:end}.host-card{max-width:390px;display:flex;gap:16px;padding:18px 20px;border:1px solid rgba(214,156,54,.38);border-radius:16px;background:linear-gradient(135deg,rgba(63,36,22,.92),rgba(24,14,10,.92));box-shadow:0 16px 40px rgba(0,0,0,.28)}.host-sigil{font-size:34px}.host-card span,.area-host small{display:block;color:#d7a64b;text-transform:uppercase;letter-spacing:.14em;font-size:10px}.host-card strong,.area-host strong{display:block;color:#f3dfbd;font-family:Georgia,serif;font-size:19px;margin:3px 0}.host-card p,.area-host em{color:#c9b59e;font-style:italic;margin:6px 0 0;line-height:1.45}.area-host{position:fixed;right:24px;bottom:24px;z-index:20;display:flex;gap:12px;max-width:360px;padding:14px 16px;border:1px solid rgba(214,156,54,.32);border-radius:14px;background:rgba(25,14,10,.94);box-shadow:0 14px 40px rgba(0,0,0,.4)}.area-host>span{font-size:28px}.area-host em{display:block;font-size:12px}@media(max-width:850px){.living-hero{display:block}.host-card{margin-top:24px}.area-host{position:static;margin:12px}}

/* Chapter II — Edwyn's Library */
.library-hero{padding-bottom:6px}.library-shelves{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:18px 0 22px}.shelf-book{min-height:112px;border:1px solid rgba(214,156,54,.3);border-radius:12px;background:linear-gradient(160deg,rgba(54,31,19,.96),rgba(20,12,8,.98));color:var(--text);padding:14px;text-align:left;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.24);transition:transform .18s ease,border-color .18s ease}.shelf-book:hover,.shelf-book.active{transform:translateY(-4px);border-color:#d9a84d}.shelf-book span{display:block;font-size:24px}.shelf-book strong{display:block;margin-top:8px;color:#f0d8ad;font-family:Georgia,serif}.shelf-book small{display:block;margin-top:5px;color:var(--muted);line-height:1.3}.library-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.ask-edwyn{display:grid;gap:7px}.ask-edwyn>span{font-size:.68rem;color:#d7a64b;text-transform:uppercase;letter-spacing:.14em}.ledger-main-column .ledger-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.edwyn-desk{align-self:start;position:sticky;top:74px;border:1px solid rgba(214,156,54,.32);border-radius:16px;padding:20px;background:linear-gradient(145deg,rgba(50,29,18,.97),rgba(20,12,8,.98));box-shadow:var(--shadow)}.edwyn-desk h2,.edwyn-desk h3{font-family:Georgia,serif;color:#f0ddbb}.desk-entries{display:grid;gap:10px}.desk-entry{display:flex;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(14,9,6,.42)}.desk-entry>span{font-size:20px}.desk-entry strong{display:block;color:#e8d4b4;font-size:.9rem}.desk-entry p,.desk-entry time{margin:3px 0 0;color:var(--muted);font-size:.75rem}.desk-rule{height:1px;background:rgba(214,156,54,.2);margin:18px 0}.desk-census{display:grid;gap:8px}.desk-census div{display:flex;justify-content:space-between;gap:12px}.desk-census dt{color:var(--muted)}.desk-census dd{margin:0;color:var(--gold);font-weight:700}.desk-note{margin:18px 0 0;color:#baa78e;font-style:italic;line-height:1.5}.record-invitation{margin-top:13px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);color:#d7a64b;font-size:.78rem}.collection-preview{grid-column:1/-1;min-height:260px;display:grid;place-content:center;text-align:center;border:1px dashed rgba(214,156,54,.32);border-radius:16px;color:var(--muted);padding:30px}.collection-preview>span{font-size:48px}.collection-preview h2{color:#ead3ae;font-family:Georgia,serif}.traveler-dialog{width:min(820px,94vw);max-height:90vh;overflow:auto}.traveler-profile blockquote{margin:16px 0 20px;padding:14px 18px;border-left:3px solid #c38a35;background:rgba(13,8,5,.34);color:#cbb9a3;font-family:Georgia,serif;font-style:italic;line-height:1.55}.traveler-profile blockquote cite{display:inline;color:#9f876e}.ribbon-rack{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.traveler-ribbon{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(214,156,54,.3);border-radius:4px 4px 10px 10px;background:linear-gradient(#7a4327,#432214);color:#f0d6a8;font-size:.75rem;box-shadow:0 5px 12px rgba(0,0,0,.25)}.traveler-ribbon b{font-size:1rem}.known-for{margin:20px 0}.known-for>div{display:flex;gap:8px;flex-wrap:wrap}.known-for span{padding:8px 11px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(16,10,6,.45);color:#dbc5a5}.traveler-chronicle h3{margin-bottom:14px}.story-timeline{position:relative;display:grid;gap:12px;margin-left:7px}.story-timeline:before{content:"";position:absolute;left:20px;top:10px;bottom:10px;width:1px;background:rgba(214,156,54,.26)}.story-entry{position:relative;display:grid;grid-template-columns:42px 1fr;gap:12px}.story-icon{z-index:1;width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(214,156,54,.36);border-radius:50%;background:#21130c}.story-entry>div:last-child{padding:10px 13px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(16,10,6,.4)}.story-entry time{display:block;color:#b69671;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.story-entry h4{margin:4px 0;color:#eddbba}.story-entry p{margin:0;color:#bba995;line-height:1.45}.folio-signature{margin-top:22px;padding-top:14px;border-top:1px solid rgba(214,156,54,.22);color:#a9947b;font-style:italic}.folio-signature strong{color:#d7b475}@media(max-width:1000px){.library-shelves{grid-template-columns:repeat(3,1fr)}.library-workspace{grid-template-columns:1fr}.edwyn-desk{position:static}.ledger-main-column .ledger-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.library-shelves,.ledger-main-column .ledger-grid{grid-template-columns:1fr}.shelf-book{min-height:0}.traveler-dialog{padding:20px}.story-entry{grid-template-columns:38px 1fr}}

/* Library Hotfix v2 — Traveler Record card presentation */
.ledger-entry{min-width:0}
.ledger-entry .guild-card{
  position:relative;overflow:hidden;min-height:245px;padding:20px;border:1px solid rgba(214,156,54,.38);
  border-radius:16px;background:
    radial-gradient(circle at 88% 10%,rgba(218,165,69,.11),transparent 30%),
    linear-gradient(145deg,rgba(58,34,20,.98),rgba(22,13,8,.99));
  box-shadow:0 16px 36px rgba(0,0,0,.3);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease
}
.ledger-entry:hover .guild-card,.ledger-entry:focus .guild-card{
  transform:translateY(-3px);border-color:#d9a84d;box-shadow:0 20px 44px rgba(0,0,0,.38)
}
.guild-card-raven{
  position:absolute;right:16px;top:12px;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(214,156,54,.45);
  border-radius:50%;color:#f2cf77;background:rgba(19,11,7,.72);font:700 1.15rem Georgia,serif
}
.guild-card-heading{padding-right:58px;margin-bottom:16px}
.guild-card-heading span{display:block;color:#e0a847;font-size:.68rem;font-weight:800;letter-spacing:.18em}
.guild-card-heading small{display:block;margin-top:3px;color:#a98f72;font-size:.62rem;letter-spacing:.12em}
.guild-card-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.guild-card-body div{min-width:0}
.guild-card-body small{display:block;color:#aa9278;font-size:.61rem;text-transform:uppercase;letter-spacing:.11em}
.guild-card-body strong{display:block;margin-top:3px;color:#f0dfc2;font-size:.88rem;overflow-wrap:anywhere}
.guild-card .record-invitation{margin-top:17px;color:#e1aa47;font-weight:700}
@media(max-width:650px){.guild-card-body{grid-template-columns:1fr}}
