:root{--wg:#143D33;--wgold:#c9a24a;--wline:#e3ddcf;--wink:#1d2b27;--wmut:#5d6b66;--wbad:#b4472f;--wok:#2f7d5b}
.wo .wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.wo .kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:22px 0 0}
.wo .kpi div{background:rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;font:13px/1.3 system-ui,sans-serif;color:#d8d2bd}
.wo .kpi b{display:block;font:700 24px Georgia,serif;color:#fff}
.wo h2{font-size:26px;margin:36px 0 6px;color:var(--wg)}
.wo .sub{color:var(--wmut);margin:0 0 14px}
.wo .wofnd{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.wo .f{background:#fff;border:1px solid var(--wline);border-radius:14px;padding:14px 16px;box-shadow:0 2px 0 #eadfbf}
.wo .f .big{font:700 38px/1 Georgia,serif;color:var(--wg)}
.wo .f .big small{font:14px system-ui;color:var(--wmut)}
.wo .f h3{margin:4px 0 4px;font-size:18px}
.wo .f p{margin:0;font-size:15px;color:#3b4a45}
.wo .tag{display:inline-block;font:700 11px system-ui;letter-spacing:.06em;text-transform:uppercase;border-radius:20px;padding:3px 9px}
.wo .below{background:#f6e1da;color:var(--wbad)}
.wo .above{background:#dcefe5;color:var(--wok)}
.wo .typical{background:#ece8da;color:#6b6552}
.wo .rare,.wo .unrated{background:#ece8da;color:#6b6552}
.wo .ctl{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}
.wo .ctl button{font:600 14px system-ui;border:1px solid var(--wg);background:#fff;color:var(--wg);border-radius:20px;padding:8px 14px;cursor:pointer}
.wo .ctl button.on{background:var(--wg);color:#fff}
.wo .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.wo .tile{background:#fff;border:2px solid var(--wline);border-radius:14px;padding:12px;cursor:pointer;text-align:left;font:inherit;color:inherit}
.wo .tile:hover{border-color:var(--wgold)}
.wo .tile.below{border-color:#e7b6a7}
.wo .tile.above{border-color:#a9d6bf}
.wo .tile.sel{outline:3px solid var(--wgold)}
.wo .tile .ic{font-size:30px}
.wo .tile .n{font-weight:700;font-size:14px;line-height:1.2;margin:4px 0 6px;display:block}
.wo .tile .v{font:13px system-ui;color:var(--wmut)}
.wo .tile .v b{font:700 22px Georgia;color:var(--wink)}
.wo .detail{background:#fff;border:1px solid var(--wline);border-radius:16px;padding:16px;margin-top:14px}
.wo .detail h3{margin:0 0 4px;font-size:22px}
.wo .bar{position:relative;height:30px;margin:26px 6px 8px;background:linear-gradient(#efe9d7,#efe9d7) center/100% 8px no-repeat}
.wo .bar .rng{position:absolute;top:5px;height:20px;background:#cfe3d9;border-radius:6px}
.wo .bar .mk{position:absolute;top:-2px;width:4px;height:34px;border-radius:3px}
.wo .bar .lb{position:absolute;top:-22px;transform:translateX(-50%);font:700 11px system-ui;white-space:nowrap}
.wo .legend{font:13px system-ui;color:var(--wmut);margin:0}
.wo .mapbox{display:grid;gap:16px;grid-template-columns:1.4fr 1fr;align-items:start}
.wo svg.map{width:100%;height:auto;background:#fff;border:1px solid var(--wline);border-radius:16px}
.wo .cty{fill:#e9f1ec;stroke:var(--wg);stroke-width:2}
.wo .pl{fill:var(--wg);stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer}
.wo .pl:hover,.wo .pl.hot{fill:var(--wbad)}
.wo .plist{list-style:none;margin:0;padding:0}
.wo .plist li{display:flex;justify-content:space-between;padding:9px 12px;background:#fff;border:1px solid var(--wline);border-radius:10px;margin-bottom:6px;font:15px system-ui;cursor:pointer}
.wo .solo{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.wo .solo div{background:#fff;border:1px solid var(--wline);border-radius:14px;padding:14px}
.wo .solo b{font:700 28px Georgia;color:var(--wg);display:block}
.wo .cta{background:var(--wg);color:var(--cream);border-radius:18px;padding:22px;margin:30px 0}
.wo .cta a{display:inline-block;background:var(--wgold);color:var(--wg);font:700 15px system-ui;text-decoration:none;border-radius:8px;padding:10px 14px;margin:8px 8px 0 0}
.wo details{background:#fff;border:1px solid var(--wline);border-radius:12px;padding:12px 16px;margin:8px 0}
.wo summary{font-weight:700;cursor:pointer}
.wo .src{font:13px system-ui;color:var(--wmut)}
.wo table{border-collapse:collapse;width:100%;font:14px system-ui}
.wo td,.wo th{padding:6px 8px;border-bottom:1px solid var(--wline);text-align:left}
.wo .zwrap{background:#fff;border:1px solid var(--wline);border-radius:18px;padding:12px;box-shadow:0 2px 0 #eadfbf}
.wo svg.z{display:block;width:100%;aspect-ratio:16/10;background:linear-gradient(#f3f8f5,#e8f1ec);border-radius:12px}
.wo .z .st{fill:#dfe7e2;stroke:#fff;stroke-width:.8;vector-effect:non-scaling-stroke}
.wo .z .cn{fill:#cfe3d9;stroke:#fff;stroke-width:.7;vector-effect:non-scaling-stroke}
.wo .z .cn.me{fill:var(--wgold);stroke:var(--wg);stroke-width:2.2}
.wo .z.lv0 .cn{fill:#9ec3b0}
.wo .z.lv0 .cn{stroke:none}
.wo .zsteps{display:flex;gap:8px;flex-wrap:wrap;margin:10px 2px 2px;align-items:center}
.wo .zsteps button{font:700 14px system-ui;border:1px solid var(--wg);background:#fff;color:var(--wg);border-radius:20px;padding:8px 14px;cursor:pointer}
.wo .zsteps button.on{background:var(--wg);color:#fff}
.wo .zcap{font:15px/1.4 Georgia,serif;color:#33443f;margin:8px 4px 2px;min-height:44px}
.wo .wotbl{width:100%;font:14px system-ui}
.wo .wotbl th{font-size:12px;color:var(--wmut);text-transform:uppercase;letter-spacing:.05em}
.wo .wotbl td{vertical-align:top;border-bottom:1px solid var(--wline);padding:9px 8px}
.wo .ok{color:var(--wok);font-weight:700}
.wo .wn{color:#8a6d1f;font-weight:700}
.wo .press{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.wo .press .f p{margin:6px 0 0}
.wo .badge{display:inline-block;font:700 10.5px system-ui;letter-spacing:.05em;text-transform:uppercase;border-radius:20px;padding:2px 8px;margin-left:6px}
.wo .b1{background:#dcefe5;color:var(--wok)}
.wo .b2{background:#ece8da;color:#6b6552}
.wo form.fix{background:#fff;border:1px solid var(--wline);border-radius:14px;padding:16px;display:grid;gap:10px}
.wo form.fix label{font:700 13px system-ui;color:var(--wg)}
.wo form.fix input,.wo form.fix select,.wo form.fix textarea{width:100%;font:16px system-ui;padding:10px;border:1px solid #cfc7b4;border-radius:8px}
.wo form.fix button,.wo .dl{font:700 15px system-ui;background:var(--wgold);color:var(--wg);border:0;border-radius:8px;padding:11px 14px;cursor:pointer;justify-self:start}
.wo .cost{font:14px/1.45 system-ui;background:#f6f1de;border-radius:10px;padding:10px 12px;margin-top:12px}
.wo .cost a{color:var(--wg)}
.wo .tile .cs{font:11px system-ui;color:var(--wok);font-weight:700;display:block;margin-top:4px}
.wo .badgebox{display:flex;gap:16px;align-items:center;margin:0 0 16px}.wo .badgebox figure{margin:0;text-align:center;font:11px system-ui;color:#d8d2bd;max-width:150px}.wo .badgebox img{display:block;width:150px;height:auto;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.35);background:#fff}
.wo .near{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.wo .near a{background:#fff;border:1px solid var(--wline);border-radius:20px;padding:8px 14px;font:600 14px system-ui;color:var(--wg);text-decoration:none}
.wo .cl{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:12px 0;padding:0;list-style:none}.wo .cl a{display:block;background:#fff;border:1px solid var(--wline);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--wink)}.wo .cl a:hover{border-color:var(--wgold)}.wo .cl b{display:block;font-size:17px;color:var(--wg)}.wo .cl span{font:13px system-ui;color:var(--wmut)}
.wo .hubmap path.cn{cursor:pointer}.wo .hubmap path.cn:hover{fill:var(--wgold)}.wo input.q{width:100%;max-width:420px;font:16px system-ui;padding:11px 12px;border:1px solid #cfc7b4;border-radius:10px}
.wo{font:16px/1.55 Georgia,'Noto Serif',serif;color:var(--wink)}.wo .wrap{max-width:1040px;margin:0 auto;padding:0 16px}.wo h2{font-size:26px;margin:36px 0 6px;color:var(--wg)}.wo h3{font-size:19px}
.wohero{background:var(--wg);color:#faf6ea;padding:34px 0 30px}.wohero .eb{color:var(--wgold);font:700 12px/1 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;margin:0}.wohero h1{font-size:34px;line-height:1.15;margin:10px 0 10px;color:#fff}.wohero p.ld{max-width:700px;margin:0;font-size:18px;color:#e9e3cf}
.wohero .kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:22px 0 0}.wohero .kpi div{background:rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;font:13px/1.3 system-ui,sans-serif;color:#d8d2bd}.wohero .kpi b{display:block;font:700 24px Georgia,serif;color:#fff}
@media(max-width:760px){.wohero h1{font-size:28px}.wo .mapbox{grid-template-columns:1fr}}
.wo .tile{white-space:normal;min-width:0;overflow:hidden;text-align:left;display:block;width:100%}.wo .grid>*{min-width:0}.wo .tile .n,.wo .tile .v{display:block;white-space:normal;overflow-wrap:anywhere}
.wo .ctl button,.wo .zsteps button{white-space:normal}.wo .wofnd,.wo .press,.wo .solo{min-width:0}

.wo .usmap{aspect-ratio:16/10}.wo .usmap .st{fill:#dfe7e2}.wo .usmap .cn.on{fill:var(--wgold);stroke:var(--wg);stroke-width:.6;cursor:pointer}.wo .usmap a:hover .cn.on{fill:#b88a2c}
.wo .usmap .dot{fill:var(--wg);stroke:#fff;stroke-width:3}.wo .usmap .ar{filter:drop-shadow(0 0 3px #b88a2c)}.wohero .kpi.k3{grid-template-columns:repeat(3,1fr)}.wohero .kpi.k3 div{padding:10px}.wo .usmap .pulse{fill:none;stroke:var(--wg);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:wopulse 2s ease-out infinite}
.wo .usmap .lab{font:700 30px system-ui,sans-serif;fill:var(--wg);paint-order:stroke;stroke:#fff;stroke-width:8px}
@keyframes wopulse{from{transform:scale(1);opacity:.9}to{transform:scale(4);opacity:0}}@media(prefers-reduced-motion:reduce){.wo .usmap .pulse{animation:none;opacity:.5}}
.wo .mapgo{display:inline-block;background:var(--wg);color:#fff;padding:12px 18px;border-radius:10px;font:700 16px system-ui,sans-serif;text-decoration:none}
.wo .src .mapgo{margin:0 8px 8px 0}
