/* Only the Quest & Monster guide; the shared theme and other pages are untouched. */
.sr-world-guide { color: #493b29; }
.sr-world-guide [hidden] { display: none !important; }
.sr-guide-heading { display: flex; align-items: center; gap: 28px; padding: 0 0 22px; }
.sr-guide-heading > div { flex: 1; min-width: 0; }
.sr-guide-heading > img { width: 156px; height: 145px; object-fit: contain; }
.sr-guide-eyebrow { margin-bottom: 7px; color: #7c653d; text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: bold; }
.sr-guide-heading h1 { font: bold 30px/1.2 Georgia, 'Times New Roman', serif; color: #584323; margin: 0 0 10px; }
.sr-guide-heading p:not(.sr-guide-eyebrow) { max-width: 530px; margin-bottom: 16px; }
.sr-guide-navigation { display: flex; flex-wrap: wrap; gap: 8px; }
.sr-guide-navigation a { padding: 7px 12px; background: #e2ca92; border: 1px solid #b39a64; border-radius: 3px; text-decoration: none; font-weight: bold; }
.sr-guide-navigation a:hover { background: #d6bc80; }
.sr-guide-navigation a span { padding-left: 8px; font-size: 11px; font-weight: normal; }
.sr-guide-section-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; padding: 9px 12px; border: 1px solid #ad9160; background: linear-gradient(#7d6b45, #55472f); color: #f8e4aa; }
.sr-guide-section-heading h2 { font: bold 20px/1.25 Georgia, 'Times New Roman', serif; margin: 0; color: #f8e4aa; }
.sr-guide-section-heading > span { font-size: 11px; }
body.sr-nostalgia .sr-guide-section-heading > a { color: #f8e4aa !important; font-size: 12px; }
.sr-guide-intro { margin: 12px 0; }
.sr-monster-filters { display: grid; grid-template-columns: 2fr 1.5fr 1.15fr 1.15fr auto; gap: 9px; align-items: end; padding: 12px; border: 1px solid #bca16a; background: #e5ce9a; }
.sr-monster-filters > div { min-width: 0; }
.sr-monster-filters label { display: block; font-size: 11px; font-weight: bold; margin-bottom: 5px; }
.sr-monster-filters input, .sr-monster-filters select { width: 100%; min-width: 0; height: 34px; border: 1px solid #aa8e57; border-radius: 2px; background: #fbefcc; color: #493820; padding: 5px 7px; font-size: 12px; }
.sr-guide-reset { height: 34px; padding: 5px 10px; color: #fff0bc; border: 1px solid #74613c; border-radius: 2px; background: linear-gradient(#938052, #625230); }
.sr-guide-reset:hover { background: #675634; }
.sr-monster-results { display: flex; justify-content: space-between; gap: 10px; margin: 12px 0 8px; color: #745e38; font-size: 11px; }
.sr-monster-results p { margin: 0; }
.sr-monster-region { margin-bottom: 10px; border: 1px solid #b59a63; background: #f1dfb1; border-radius: 3px; }
.sr-monster-region > summary { cursor: pointer; padding: 10px 12px; color: #f4e4b8; background: #7c6c4b; font: bold 16px Georgia, 'Times New Roman', serif; }
.sr-monster-region > summary::marker { color: #dbc287; font-size: 12px; }
.sr-region-count { float: right; min-width: 26px; margin-left: 8px; padding: 1px 6px; border: 1px solid #bba36b; border-radius: 3px; text-align: center; font: 11px/1.5 Arial, sans-serif; }
.sr-region-description { padding: 10px 12px 0; margin: 0 0 9px; font-size: 12px; color: #79623b; }
.sr-monster-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 7px; padding: 0 10px 10px; }
.sr-monster-card { min-width: 0; border: 1px solid #c1a975; border-radius: 2px; background: #f7e8c3; }
.sr-monster-card > summary { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 9px; cursor: pointer; padding: 9px 10px; list-style: none; }
.sr-monster-card > summary::-webkit-details-marker { display: none; }
.sr-monster-card > summary::after { content: '+'; color: #8d7440; grid-column: 3; grid-row: 2; font-weight: bold; line-height: 1; text-align: right; }
.sr-monster-card[open] > summary::after { content: '−'; }
.sr-monster-illustrated > summary { grid-template-columns: 56px 36px minmax(0, 1fr) auto; }
.sr-monster-illustrated > summary::after { grid-column: 4; }
.sr-monster-portrait { grid-row: 1 / 3; width: 56px; height: 56px; border: 1px solid #c5ad75; object-fit: contain; background: white; }
.sr-monster-card > summary:hover { background: #ecd59c; }
.sr-monster-level { grid-row: 1 / 3; text-align: center; border: 1px solid #b7a06b; background: #e9d19c; color: #7d602b; font-size: 10px; padding: 4px; }
.sr-monster-level strong { display: block; font: bold 20px/1.1 Georgia, serif; }
.sr-monster-name { grid-row: 1 / 3; min-width: 0; font-weight: bold; font-size: 12px; }
.sr-monster-hp { font-size: 12px; color: #67532f; font-variant-numeric: tabular-nums; }
.sr-monster-hp small { font-size: 9px; }
.sr-monster-unique { border-color: #ab782f; background: #efdaa4; }
.sr-unique-mark { display: block; width: fit-content; margin-top: 3px; padding: 0 4px; border: 1px solid #ae843f; color: #6e4615; font-size: 9px; line-height: 1.5; text-transform: uppercase; letter-spacing: .06em; }
.sr-monster-detail { padding: 10px 12px; border-top: 1px solid #c1a975; font-size: 11px; }
.sr-monster-detail::after { content: ''; display: block; clear: both; }
.sr-monster-detail-portrait { float: right; width: 100px; height: 100px; margin: 0 0 9px 10px; object-fit: contain; border: 1px solid #c5ad75; background: white; }
.sr-monster-detail dl { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 10px; margin: 0 0 9px; }
.sr-monster-detail dt { color: #887047; font-size: 10px; font-weight: normal; }
.sr-monster-detail dd { font-weight: bold; margin: 0; }
.sr-monster-detail p { margin: 0 0 6px; }
.sr-monster-code code { color: #715022; overflow-wrap: anywhere; font-size: 10px; }
.sr-monster-note { color: #7c6844; }
.sr-monster-description { clear: both; padding-top: 8px; margin: 9px 0; border-top: 1px dotted #c1a975; }
.sr-monster-description h3 { font: bold 14px Georgia, serif; color: #65502d; margin: 0 0 5px; }
.sr-monster-description small { display: block; color: #7c6844; font-size: 10px; }
.sr-monster-empty { padding: 18px; border: 1px dashed #aa8e57; text-align: center; }
.sr-guide-source { padding: 12px; margin: 16px 0 28px; border-left: 3px solid #a68b52; background: #e6d09e; font-size: 11px; color: #725b35; }
.sr-guide-source p { margin: 4px 0 0; }
.sr-world-guide #questAccordion .accordion-button { font-size: 16px; }
.sr-world-guide .quest-card:last-child { border-bottom: 0 !important; }
.sr-world-guide section { scroll-margin-top: 15px; }
@media (max-width: 700px) {
    .sr-guide-heading { gap: 10px; }
    .sr-guide-heading > img { width: 85px; height: 110px; }
    .sr-guide-heading h1 { font-size: 24px; }
    .sr-guide-heading p:not(.sr-guide-eyebrow) { font-size: 12px; }
    .sr-guide-heading .sr-guide-eyebrow { font-size: 9px; }
    .sr-monster-filters { grid-template-columns: 1fr 1fr; }
    .sr-monster-search { grid-column: 1 / -1; }
    .sr-guide-reset { align-self: end; }
    .sr-monster-grid { grid-template-columns: 1fr; }
    .sr-monster-illustrated > summary { grid-template-columns: 48px 32px minmax(0, 1fr) auto; gap: 6px; }
    .sr-monster-portrait { width: 48px; height: 48px; }
    .sr-monster-detail-portrait { width: 80px; height: 80px; }
    .sr-guide-section-heading > span { width: 100%; }
}
@media (max-width: 430px) {
    .sr-guide-heading > img { display: none; }
    .sr-guide-navigation a { padding: 7px 9px; }
}
