.cartography{padding-top:0;padding-bottom:65px}.cartography-intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px;margin:0 0 30px;padding-top:34px;border-top:1px solid var(--line)}.cartography-intro h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(40px,4.5vw,62px);font-weight:400;line-height:1.05;letter-spacing:.5px;text-transform:uppercase;margin:20px 0 0}.cartography-intro h2 em{font-style:normal;color:var(--gold)}.cartography-intro p{font-size:13px;margin-bottom:12px}.cartography-intro .cartography-help{font-size:11px;color:#a8b7ac;margin-bottom:0}.cartography .micro{font:9px Consolas,monospace;letter-spacing:1.2px;color:var(--muted)}.cartography .eyebrow:before{display:none}.cartography .eyebrow{display:block}.cartography .console h2,.cartography .console h3{line-height:1.25}.cartography .console p{margin-top:0}
.cartography .console{border:1px solid #495344;box-shadow:0 24px 65px #0003;position:relative;background:#141e1a}.cartography .console:before,.cartography .console:after{content:'';position:absolute;top:-1px;width:32px;height:2px;background:var(--gold)}.cartography .console:before{left:-1px}.cartography .console:after{right:-1px}.cartography .console-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:19px 25px;background:#1a2420}.cartography .console-name{display:flex;gap:15px;align-items:center}.cartography .crosshair{font-size:32px;color:var(--gold);font-weight:300}.cartography .micro{font:9px Consolas,monospace;letter-spacing:1.2px;color:var(--muted)}.cartography .console-top h2{font-size:17px;font-weight:500;margin:5px 0 0}.cartography .demo{display:flex;align-items:center;gap:7px;font:9px Consolas,monospace;letter-spacing:1px;color:#c2cbbb;border:1px solid #46513e;padding:7px 9px}.cartography .demo i{width:5px;height:5px;background:var(--gold)}.cartography .console-body{display:grid;grid-template-columns:minmax(0,1fr) 282px}.cartography .chart{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--line);background:#111b17}.cartography .chart-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 22px 4px;position:relative;z-index:2}.cartography .layer-switch{display:flex;border:1px solid #3b4940;background:#101a16}.cartography .layer-switch button{border:0;background:none;color:#a0afa5;font-size:11px;padding:9px 13px}.cartography .layer-switch button[aria-pressed=true]{background:#343c2c;color:#efd090;box-shadow:inset 0 -1px var(--gold)}.cartography .chart-instruction{font:8px Consolas,monospace;color:#94a294;letter-spacing:1px}.cartography .map-scene{position:relative;isolation:isolate;flex:1;display:flex;align-items:center;min-height:370px}.cartography .terrain{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#142018c9,#111b17db),url('./necropolis-restored-1111.png') center 70%/cover;opacity:.55;mask-image:radial-gradient(ellipse,#000 25%,transparent 75%)}.cartography #map{width:100%;height:auto;display:block;min-width:0;position:relative}.cartography .contours{fill:none;stroke:#789481;stroke-width:.8;opacity:.16}.cartography .hex{cursor:pointer;outline:none}.cartography .hex .tile{fill:#24372bd4;stroke:#537460;stroke-width:.9;transition:fill .15s,stroke .15s}.cartography .hex.tomb .tile{fill:#172a26e0;stroke:#46776b}.cartography .hex.unknown .tile{fill:#14231bd4;stroke:#3d5042;stroke-dasharray:3 3}.cartography .hex .symbol{fill:none;stroke:#9bb7a0;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.cartography .hex .sector-id{font:8px Consolas,monospace;fill:#849b89;pointer-events:none}.cartography .hex .question{font:18px Consolas,monospace;fill:#617667;pointer-events:none}.cartography .hex[aria-pressed=true] .tile{fill:#5d5630;stroke:var(--gold);stroke-width:2}.cartography .hex[aria-pressed=true] .symbol{stroke:#f3d48f}.cartography .hex[aria-pressed=true] .sector-id{fill:#e9ca83}.cartography .hex:hover .tile,.cartography .hex:focus-visible .tile{stroke:#e5b864;stroke-width:2;fill:#3c4e34}.cartography .hex .selected-ring{fill:none;stroke:#e5b864;stroke-width:1;opacity:.45;pointer-events:none}.cartography .route-line{fill:none;stroke:#d6b773;stroke-dasharray:4 5;stroke-width:1.3;opacity:.6;pointer-events:none}.cartography .route-end{fill:#e5b864;stroke:#16251b;stroke-width:3;pointer-events:none}.cartography .compass{stroke:#96ae91;stroke-width:.7;fill:none;opacity:.5}.cartography .compass text{stroke:none;fill:#b1c3a1;font:9px Consolas,monospace}.cartography .map-stamp{position:absolute;left:24px;bottom:23px;pointer-events:none}.cartography .map-stamp span{display:block;font-family:Impact,'Arial Narrow',sans-serif;font-size:28px;letter-spacing:2px;color:#76877077}.cartography .map-stamp small{font:7px Consolas,monospace;letter-spacing:1px;color:#889e8c}.cartography .map-scale{position:absolute;right:22px;bottom:23px;font:7px Consolas,monospace;color:#8a9a89;letter-spacing:1px;pointer-events:none}.cartography .map-scale>span{display:block;width:80px;height:6px;margin:0 0 6px auto;border:1px solid #758572;border-top:0;background:linear-gradient(90deg,#75857255 50%,transparent 50%)}.cartography .chart-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-top:1px solid #303b3780}.cartography .legend{display:flex;gap:16px;font-size:9px;color:#a0b1a5;flex-wrap:wrap}.cartography .legend>span{display:flex;align-items:center;gap:6px}.cartography .legend i{width:6px;height:6px;display:inline-block}.cartography .gold-dot{background:var(--gold)}.cartography .mint-dot{background:var(--mint)}.cartography .unknown-dot{border:1px solid #829084}.cartography .chart-bottom>.micro{font-size:7px}.cartography .sector-panel{display:flex;flex-direction:column;background:var(--panel);min-width:0}.cartography .sector-art{position:relative;min-height:132px;padding:17px 20px;overflow:hidden;background:linear-gradient(0deg,#182120 0%,#18212022 100%),url('./necropolis-restored-1111.png') 70% 45%/cover}.cartography .sector-art .micro{position:relative;z-index:1;color:#d0d8c9}.cartography .art-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,#b4d2ab05 0 1px,transparent 1px 4px);opacity:.7}.cartography .sector-art-icon{position:absolute;right:22px;top:30px;color:#cfdbbc;font-size:65px;line-height:1;font-weight:200;opacity:.6}.cartography .sector-art-caption{position:absolute;bottom:14px;left:20px;font:7px Consolas,monospace;color:#9bad99;letter-spacing:1.5px}.cartography .sector-content{padding:10px 22px 0}.cartography .sector-content .eyebrow{font-size:8px;letter-spacing:1.3px;color:var(--mint)}.cartography .sector-content h3{font-size:24px;font-weight:500;letter-spacing:-.5px;margin:10px 0 10px}.cartography .sector-content>p{font-size:12px;line-height:1.65;min-height:59px;margin-bottom:17px}.cartography .sector-content dl{margin:0 0 19px;font-size:10px}.cartography .sector-content dl>div{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid var(--line)}.cartography dt{color:var(--muted)}.cartography dd{margin:0;color:#cbd5cb}.cartography .field-note{border-left:2px solid #857546;padding-left:12px;margin-bottom:18px}.cartography .field-note>span{font:8px Consolas,monospace;color:#c6b889;letter-spacing:1px}.cartography .field-note p{font-size:11px;line-height:1.6;margin:6px 0 0}.cartography .sector-link{margin-top:auto;display:flex;justify-content:space-between;gap:10px;padding:17px 22px;border-top:1px solid var(--line);font-size:11px;color:var(--gold)}.cartography .sector-link:hover{background:#252f24}.cartography .console-footer{display:flex;justify-content:space-between;gap:20px;padding:12px 24px;border-top:1px solid var(--line);background:#19221d;font:8px Consolas,monospace;color:#9fac9e;letter-spacing:.6px}.cartography .console-footer b{font-weight:400;color:var(--gold);margin-right:7px}
@media(max-width:1100px){.cartography .console-body{grid-template-columns:minmax(0,1fr) 250px}.cartography .chart-instruction{display:none}.cartography .chart-toolbar{padding:14px 15px 0}.cartography .chart-bottom>.micro{display:none}.cartography .sector-content{padding-left:18px;padding-right:18px}.cartography .sector-content h3{font-size:22px}.cartography-intro{gap:30px}}
@media(max-width:760px){.cartography-intro{grid-template-columns:1fr;gap:18px}.cartography-intro h2{font-size:clamp(37px,8vw,55px)}.cartography .console-body{grid-template-columns:1fr}.cartography .chart{border-right:0}.cartography .map-scene{min-height:0;padding-bottom:30px;margin-top:7px}.cartography .map-scene svg{max-height:440px}.cartography .console-top{padding:15px 14px;gap:10px}.cartography .console-top h2{font-size:15px}.cartography .console-top .micro{font-size:7px;letter-spacing:.6px}.cartography .console-name{gap:8px}.cartography .crosshair{font-size:26px}.cartography .demo{font-size:0;border:0;padding:0}.cartography .sector-panel{border-top:1px solid var(--line);display:grid;grid-template-columns:90px minmax(0,1fr)}.cartography .sector-art{padding:14px 10px;height:100%;background-position:63% center}.cartography .sector-art .micro{font-size:7px;line-height:1.7;letter-spacing:.5px;display:block}.cartography .sector-art-icon{font-size:40px;left:20px;right:auto;top:70px}.cartography .sector-art-caption{display:none}.cartography .sector-content{padding:16px 16px 0}.cartography .sector-content h3{font-size:22px;margin:8px 0}.cartography .sector-content>p{font-size:12px;min-height:0;margin-bottom:12px}.cartography .sector-content dl{margin-bottom:12px}.cartography .sector-content dl>div{padding:7px 0}.cartography .field-note{display:none}.cartography .sector-link{grid-column:1 / -1;font-size:11px;padding:13px 16px}.cartography .console-footer>span:last-child{display:none}}
@media(max-width:600px){.cartography{padding-bottom:40px}.cartography-intro{padding-top:27px;margin-bottom:24px}.cartography-intro p{font-size:12px}.cartography .chart-toolbar{padding:14px 12px 0}.cartography .layer-switch button{font-size:10px;padding:9px 13px}.cartography .chart-instruction{display:block;font-size:6px;max-width:70px;text-align:right;line-height:1.5}.cartography .map-stamp{left:15px;bottom:10px}.cartography .map-stamp span{font-size:21px}.cartography .map-stamp small{font-size:6px}.cartography .map-scale{right:14px;bottom:12px;font-size:5px}.cartography .map-scale>span{width:50px;height:4px}.cartography .chart-bottom{padding:12px 14px}.cartography .legend{font-size:8px;gap:13px}.cartography .console-footer{font-size:6px;padding:11px 14px;letter-spacing:.4px}}
@media(prefers-reduced-motion:reduce){.cartography .hex .tile{transition:none}}
