.cnm{--cnm-ink:#173745;--cnm-muted:#4c6264;--cnm-paper:#fbf7ec;--cnm-line:#bdc8bd;--cnm-accent:#9b4934;color:var(--cnm-ink);min-width:0}
.cnm *{box-sizing:border-box}
.cnm [hidden]{display:none!important}
.cnm :is(select,button){font:inherit}.cnm :is(a,button,select,summary,[tabindex]):focus-visible{outline:3px solid #ad6335;outline-offset:3px}
.cnm-modes,.cnm-filter,.cnm-tools{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.cnm-modes{margin:1.3rem 0 .9rem}
.cnm-modes button,.cnm-outline,.cnm-group button{cursor:pointer;border-radius:2px;border:1px solid var(--cnm-line);background:var(--cnm-paper);color:var(--cnm-ink);padding:.56rem .76rem;font:650 .79rem/1.3 system-ui,sans-serif}
.cnm-modes small{font-size:.65rem;margin-right:.3rem;font-variant-numeric:tabular-nums;opacity:.8}
.cnm-modes button[aria-pressed=true]{background:#254d57;border-color:#254d57;color:#fff8e9}
.cnm-filter{gap:.75rem;align-items:flex-end;margin:0 0 .85rem}
.cnm-filter label,.cnm-choose{display:block;max-width:100%;color:var(--cnm-muted);font:650 .72rem/1.4 system-ui,sans-serif}
.cnm-filter select,.cnm-choose select{display:block;max-width:100%;min-width:0;width:100%;border:1px solid #a6b6ab;color:var(--cnm-ink);background:#fffdf7;padding:.49rem .6rem;margin-top:.23rem;border-radius:3px;font:500 .82rem/1.45 system-ui,sans-serif}
.cnm-outline{padding:.54rem .7rem;font-size:.75rem}
.cnm-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(230px,1fr);background:var(--cnm-paper);border:1px solid var(--cnm-line);align-items:stretch}
.cnm-cart,.cnm-aside{min-width:0}
.cnm-stage{height:clamp(390px,43vw,520px);position:relative;overflow:hidden;background:#dfe8e5}
.cnm-canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none;user-select:none}
.cnm-canvas:active{cursor:grabbing}.cnm-graticule path{fill:none;stroke:#acbeb9;stroke-width:.65;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.cnm-land path{fill:#e4e7da;stroke:#b5c3b9;stroke-width:.85;vector-effect:non-scaling-stroke}.cnm-land .cnm-national{fill:#f8f3df;stroke:#899f93;stroke-width:1.4}
.cnm-areas path{fill:#dfbb82;fill-opacity:.65;stroke:#8f754f;stroke-width:1;cursor:pointer;vector-effect:non-scaling-stroke}
.cnm-areas .cnm-chosen{fill:#d6a45c;fill-opacity:.95;stroke:#975136;stroke-width:2}
.cnm-pin{cursor:pointer}.cnm-hit{fill:transparent;stroke:none}.cnm-dot{fill:#286269;stroke:#fff9ea;stroke-width:1.7}
.cnm-pin.cnm-chosen .cnm-dot{fill:#a45037}.cnm-ring{fill:none;stroke:#9b4934;stroke-width:2.1}.cnm-num{fill:white;font:700 10px system-ui,sans-serif;pointer-events:none}
.cnm-label{font:650 12px/1.2 system-ui,sans-serif;fill:#254245;stroke:#fff6e3;stroke-width:3.5;paint-order:stroke;stroke-linejoin:round}
.cnm-tools{position:absolute;left:.65rem;top:.65rem;gap:.26rem}.cnm-tools button{border-radius:2px;cursor:pointer;border:1px solid #a4b4a8;background:#fffdf3ed;color:var(--cnm-ink);height:36px;width:36px;line-height:1;font-size:1.12rem}.cnm-tools button:disabled{opacity:.5;cursor:default}
.cnm-credit{position:absolute;bottom:.4rem;right:.45rem;background:#fff9eccc;color:#3f5559;padding:.15rem .28rem;font:600 .62rem/1.4 system-ui,sans-serif;pointer-events:none}
.cnm-legend{padding:.86rem 1rem;border-top:1px solid var(--cnm-line);display:grid;gap:.24rem}.cnm-legend strong{font:700 .82rem/1.4 system-ui,sans-serif}.cnm-legend span{color:var(--cnm-muted);font-size:.76rem;line-height:1.5}
.cnm-aside{padding:1rem 1.1rem;border-left:1px solid var(--cnm-line)}.cnm-choose select{width:100%}
.cnm-sheet{padding-top:.85rem;border-top:1px solid var(--cnm-line);margin-top:.9rem;overflow-wrap:anywhere}
.cnm-sheet h4{font:500 clamp(1.4rem,2.3vw,2rem)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:.3rem 0 .6rem;color:var(--cnm-ink)}
.cnm-sheet .cnm-kicker{font:700 .62rem/1.55 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:var(--cnm-accent);margin:0}
.cnm-sheet .cnm-kind{color:#355d5e;font-size:.79rem;font-weight:700;margin:.4rem 0}
.cnm-sheet p:not([class]){font-size:.86rem;line-height:1.6;margin:.65rem 0}
.cnm-sheet dl{margin:.78rem 0}.cnm-sheet dt{font:700 .67rem/1.4 system-ui,sans-serif;color:var(--cnm-accent);letter-spacing:.06em;text-transform:uppercase}.cnm-sheet dd{font-size:.8rem;line-height:1.5;margin:.15rem 0 .6rem}
.cnm-note{background:#f0ede0;padding:.62rem .72rem;font-size:.73rem;line-height:1.58;color:#3f5556}
.cnm-source-link,.cnm-source{font-size:.73rem;line-height:1.5;margin:.55rem 0 0}.cnm-source{color:#566664}.cnm-source-link{display:inline-block}
.cnm-group{margin-top:.7rem;padding:.6rem;background:#eae9da}.cnm-group b{font-size:.75rem}.cnm-group>div{display:flex;flex-wrap:wrap;gap:.3rem;padding-top:.4rem}.cnm-group button{padding:.36rem .45rem;font-size:.72rem}
.cnm-method{margin:.8rem 0;border:1px solid var(--cnm-line);padding:.7rem .85rem;background:var(--cnm-paper)}
.cnm-method summary{cursor:pointer;font:650 .8rem/1.5 system-ui,sans-serif}.cnm-method p{font-size:.78rem;line-height:1.6;max-width:95ch}
@media(max-width:780px){.cnm-layout{grid-template-columns:1fr}.cnm-aside{border-left:0;border-top:1px solid var(--cnm-line)}.cnm-stage{height:375px}.cnm-filter{gap:.5rem}.cnm-filter label{flex:1 1 12rem}}
@media(max-width:440px){.cnm-stage{height:325px}.cnm-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.cnm-modes button{padding:.5rem .33rem}.cnm-legend,.cnm-aside{padding:.78rem}.cnm-canvas .cnm-label{font-size:11px}}

.cnm .cnm-areas path{fill:#e5eadc;stroke:#a8b9ac;stroke-width:.7;vector-effect:non-scaling-stroke;cursor:default}.cnm .cnm-areas path.cnm-related{fill:#ccdfce}.cnm .cnm-areas path.cnm-chosen{fill:#9abdb0;stroke:#2d655f;stroke-width:1.4}.cnm .cnm-areas path.cnm-muted{fill:#e6e9de}.cnm-coord{font-size:.76rem;line-height:1.5;color:#435f66;font-variant-numeric:tabular-nums;margin:.65rem 0}.cnm-row-sources summary,.cnm-row-sources a,.cnm-sheet p a{font-size:.78rem}.cnm-row-sources summary{cursor:pointer}.cnm select{min-width:0;max-width:100%}.cnm-filters[hidden]{display:none!important}
.cnm .cnm-network{pointer-events:none}.cnm-network path{fill:none;stroke:#a44833;stroke-dasharray:5 4;stroke-width:1.8;vector-effect:non-scaling-stroke}.cnm [data-filters][hidden]{display:none!important}.cnm [data-network]{margin-top:.65rem}.cnm .cnm-areas path.cnm-related{fill:#dce7d6}.cnm .cnm-areas path.cnm-chosen{fill:#c4d8c5;stroke:#426e6a}
