.lore-main{max-width:1120px;margin:auto;padding:36px 24px;color:#e6ddc8}.lore-main h1{font:500 clamp(2.2rem,5vw,4rem) Georgia,serif;line-height:1.08;color:#e7d5a9}.lore-main>p{max-width:72ch;line-height:1.7}
.lore-controls{display:flex;flex-wrap:wrap;gap:14px;padding:20px 0;border-block:1px solid #62634e}.lore-controls label{display:grid;gap:8px;flex:1 1 170px;min-width:0;color:#d8c797}.lore-controls label:first-child{flex-basis:280px}.lore-controls :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:10px;background:#172b29;border:1px solid #858c72;border-radius:2px;color:#efe5ce;font:inherit}
#lore-directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));gap:12px;margin:20px 0}.lore-card{text-align:left;min-width:0;min-height:108px;padding:16px;border:1px solid #626b57;border-left:3px solid #b49d68;background:#1a2b28;color:#e6ddc8;cursor:pointer;font:inherit}.lore-card strong{display:block;font:500 1.5rem Georgia,serif;color:#e6d5ad;margin-bottom:8px}.lore-card span{display:block;line-height:1.5}.lore-card:hover{background:#253c33}
#lore-pages{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:24px 0}#lore-profile{max-width:76ch;padding:24px 0}#lore-profile h2{font:500 2.4rem Georgia,serif;color:#ead9ad}#lore-profile section{padding:18px 0;border-top:1px solid #56634f}#lore-profile p{line-height:1.75;white-space:pre-line}#lore-profile h3{font:500 1.5rem Georgia,serif;color:#d8c393}.lore-main button:not(.lore-card){min-height:44px;padding:10px 16px;background:#24382d;border:1px solid #b19a65;color:#eee1c2;font:inherit;cursor:pointer}.lore-main button:disabled{opacity:.55;cursor:default}.lore-main :is(button,input,select,a):focus-visible{outline:3px solid #d3b56a;outline-offset:3px}.lore-note{border-top:1px solid #64705c;padding-top:20px;color:#b6bea9}footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:24px}
@media(max-width:500px){.lore-main{padding:24px 16px}.lore-controls{gap:10px}.lore-controls label{flex-basis:100%}#lore-profile{padding-top:12px}}

/* Keep underlying fields from competing with navigation while reading. */
.site-header{background:#101a1b}#lore-profile-title,#lore-profile section{scroll-margin-top:140px}
