.guide-main{padding-top:130px}.guide-heading h1{font-size:clamp(30px,4vw,48px);margin:8px 0 20px}.guide-heading{align-items:center;margin-bottom:20px}.guide-heading p{font-size:14px;max-width:450px;line-height:1.7}.map-controls{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:18px}.map-controls label{display:grid;gap:6px;color:#b8c7b9;font-size:12px}.map-controls select{min-width:180px;min-height:44px;border:1px solid #a28f6155;background:#1a2c28;color:#f2e7cb;padding:9px;border-radius:5px}.map-zoom{display:flex;gap:7px;margin-left:auto}.map-controls button{min-height:44px;min-width:44px;padding:9px 14px;border-radius:5px;background:#20372e;border:1px solid #bba26955;color:#f0dfb5}.atlas-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,1fr);gap:20px;align-items:start}.map-frame{position:relative;border:1px solid #a9946155;background:#13251b;border-radius:9px;overflow:hidden;box-shadow:0 12px 40px #0003}#atlas{display:block;width:100%;height:680px;touch-action:none;cursor:grab}#atlas:active{cursor:grabbing}.town-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.town-map-label{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;white-space:nowrap;border:1px solid #e3ce8a66;border-radius:5px;padding:5px 9px;min-height:30px;background:#1a3029ed;box-shadow:0 2px 8px #0005;color:#f9e5ac;font-size:12px;font-weight:600;line-height:1.2;cursor:pointer}.town-map-label:hover,.town-map-label[aria-pressed="true"]{background:#e1c580;color:#292315;border-color:#fbe8af}.town-map-label:focus-visible{outline:3px solid #fff0b5;outline-offset:3px}.map-caption{position:absolute;top:12px;left:14px;bottom:auto;padding:6px 9px;border:1px solid #a7926555;border-radius:4px;background:#14261fde;color:#e0c589;font-size:13px;pointer-events:none}.map-help{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#d9dfcf;font-size:11px;background:#13281edb;border-radius:20px;padding:6px 12px;pointer-events:none}#mapDetails{border:1px solid #a9946140;border-top:3px solid #c5aa6b;border-radius:8px;background:#172a26;padding:0;max-height:680px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;min-width:0}.town-empty{padding:28px}.town-empty h2{margin:12px 0;font:28px Georgia,serif;color:#f0dfb8}.town-empty p{font-size:14px;line-height:1.8;color:#bbcbbd}.town-empty .hint{font-size:12px;color:#97ae9c}.town-profile-head{padding:22px 22px 14px;background:#1c322b;border-bottom:1px solid #ab956044}.town-profile-head h2{font:30px Georgia,serif;color:#f4e4b9;margin:6px 0 10px}.town-profile-head p{font-size:13px;color:#bdcdbd;line-height:1.7;margin:8px 0}.town-counts{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.town-counts span{font-size:10px;color:#e5d2a2;border:1px solid #bba26844;border-radius:20px;padding:5px 8px}.town-content-controls{padding:14px 18px;border-bottom:1px solid #a9915c33;position:sticky;top:0;background:#172a26;z-index:2}.town-content-controls input{width:100%;padding:10px 12px;background:#102018;border:1px solid #a28f6155;border-radius:5px;color:#f1e8d0;min-height:42px;font:inherit;font-size:13px}.town-tabs{display:flex;gap:5px;margin-top:10px;flex-wrap:wrap}.town-tabs button{padding:7px 9px;border:1px solid #a28f6144;border-radius:4px;font-size:11px;color:#c4d1c1;min-height:34px}.town-tabs button[aria-pressed="true"]{background:#c7ad70;color:#211e17;border-color:#e8d29a}.town-section{padding:16px 20px;border-bottom:1px solid #a9915c33}.town-section h3{font:22px Georgia,serif;margin:0 0 12px;color:#e5cf98}.town-row{padding:11px 0;border-bottom:1px solid #a9915c22}.town-row:last-child{border-bottom:0}.town-row h4,.town-row summary{font-size:14px;color:#e8e5d4;margin:0 0 6px;line-height:1.5}.town-row p{font-size:12px;color:#aebfac;line-height:1.7;margin:4px 0;overflow-wrap:anywhere}.town-row a{color:#e4c786;text-decoration:underline;text-underline-offset:3px;font-size:12px}.town-row details summary{cursor:pointer;min-height:32px}.town-row ul{padding-left:18px;margin:8px 0}.town-row li{font-size:12px;line-height:1.8;color:#bfcbb5;margin:8px 0}.town-empty-section{font-size:12px;line-height:1.7;color:#a1b49e}.town-row .town-level{font-size:11px;color:#e2c58a}.guide-version{font-size:11px;color:#8fa68f;margin-top:15px}.map-error{padding:30px;color:#efd9b0}
@media(max-width:1000px){.atlas-layout{grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr)}#atlas{height:620px}#mapDetails{max-height:620px}.town-map-label{font-size:11px;padding:5px}.map-controls select{min-width:155px}}
@media(max-width:760px){.guide-main{padding-top:110px}.guide-heading{display:block}.atlas-layout{grid-template-columns:1fr}#atlas{height:520px}#mapDetails{max-height:none}.town-content-controls{position:static}.map-controls{gap:10px}.map-controls label{flex:1}.map-controls select{min-width:0;width:100%}.map-zoom{width:100%;margin:0}.map-zoom button:last-child{flex:1}.town-map-label{font-size:10px;padding:5px;min-height:28px}.map-help{font-size:10px}.guide-heading h1{margin-bottom:10px}.town-section{padding:16px}.town-profile-head{padding:18px}.town-content-controls{padding:12px 16px}}
.guide-main{padding-top:48px}
.town-tabs button{background:#213b30;color:#d6dfcc}
.town-tabs button[aria-pressed="true"]{background:#c7ad70;color:#211e17}
@media(max-width:760px){.guide-main{padding-top:30px}#atlas{height:450px}}
/* DragonReach field atlas: parchment, ink labels and original terrain symbols. */
.map-frame{border:7px solid #7a6749;outline:1px solid #c2ad78;box-shadow:inset 0 0 0 2px #c6af79,0 12px 30px #0005;background:#d7c799;border-radius:5px}
.town-map-label{font-family:Georgia,'Times New Roman',serif;font-size:14px;font-weight:700;color:#392d20;background:#efdfb8e6;border:1px solid #a48c5d88;border-radius:3px;box-shadow:0 1px 4px #56482a33;text-shadow:0 1px #fff1d3;padding:3px 7px;min-height:28px;letter-spacing:.15px}
.town-map-label:hover,.town-map-label[aria-pressed="true"]{color:#fff0c4;background:#665035;border-color:#413323;text-shadow:0 1px #2d261a}
.map-caption{background:none;border:0;display:grid;justify-items:center;padding:0;color:#59452d;font:700 15px Georgia,serif;top:10px;left:12px}.map-caption svg{width:45px;height:45px;filter:drop-shadow(0 1px 1px #f8efce)}
.map-help{background:#ead8adeb;border:1px solid #9f865c66;color:#51422c;font-family:Georgia,serif;font-size:12px}
.atlas-key{margin:18px 0;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;padding:14px 18px;background:#1a2b24;border:1px solid #a9946150;border-radius:5px;color:#d9c89e;font-size:12px}.atlas-key strong{color:#f0dfb2;font:18px Georgia,serif}.atlas-key span{white-space:nowrap}
@media(max-width:1000px){.town-map-label{font-size:12px}}
@media(max-width:760px){.map-frame{border-width:5px}.town-map-label{font-size:11px;padding:4px 5px}.map-help{font-size:10px;max-width:95%;text-align:center;white-space:normal}.atlas-key{gap:10px 15px;padding:12px;font-size:11px}.map-caption svg{width:36px;height:36px}}
