/* Coordinates are the primary workspace; maps provide compact spatial context. */
.clm-body{--clm-accent:#176c63;--clm-accent-2:#10564e;--clm-accent-soft:#eaf5f1;--clm-ink-3:#69717a}
.clm-body[data-tool="decimal-to-dms"]{--clm-accent:#975226;--clm-accent-2:#7c3e19;--clm-accent-soft:#fbf0e5}
.clm-body[data-tool="utm-converter"],.clm-body[data-tool="web-mercator"]{--clm-accent:#315c9c;--clm-accent-2:#244778;--clm-accent-soft:#edf3fc}
.clm-body[data-tool="mgrs-converter"]{--clm-accent:#586b35;--clm-accent-2:#435326;--clm-accent-soft:#f0f4e9}
.clm-body[data-tool="plus-code"],.clm-body[data-tool="geohash"]{--clm-accent:#75519d;--clm-accent-2:#593a7e;--clm-accent-soft:#f3eef9}
.clm-body[data-tool="china-gcj02"]{--clm-accent:#ad493e;--clm-accent-2:#87382f;--clm-accent-soft:#fbefec}
.clm-body[data-tool="distance"]{--clm-accent:#3666a1;--clm-accent-2:#264b7a;--clm-accent-soft:#edf3fb}
.cx-hero,.clm-app,.clm-seo,.cc-more{max-width:1280px;margin-left:auto;margin-right:auto}
.cx-hero{padding:30px 32px 24px}
.cx-breadcrumb{font-size:12px;color:var(--clm-ink-2);margin-bottom:25px;display:flex;gap:9px;flex-wrap:wrap}
.cx-breadcrumb a{color:inherit;text-decoration:none}.cx-breadcrumb a:hover{text-decoration:underline}
.cx-eyebrow{font:700 11px var(--clm-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--clm-accent)}
.cx-hero h1{font-size:clamp(28px,3.1vw,43px);line-height:1.12;letter-spacing:-.035em;margin:10px 0 12px;max-width:1000px}
.cx-hero p{font-size:16px;line-height:1.65;color:var(--clm-ink-2);max-width:800px;margin:0}
.cx-hero-foot{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px;color:var(--clm-ink-2)}
.cx-hero-foot a{color:var(--clm-accent-2);font-weight:650;text-underline-offset:4px}
.clm-app{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:24px;padding:0 32px 30px;height:auto!important;min-height:0;border:0;overflow:visible;align-items:start}
.clm-side{width:auto;min-width:0;display:block;border:1px solid var(--clm-line);border-radius:14px;overflow:hidden;box-shadow:0 3px 16px #1b1e2304}
.clm-side-head{padding:20px 24px;background:var(--clm-accent-soft);border-bottom:1px solid var(--clm-line)}
.cx-work-title{font-size:15px;font-weight:750;color:var(--clm-accent-2)}
.clm-sub{font-size:12px;color:var(--clm-ink-2);margin-top:5px}
.clm-side-body{overflow:visible}.clm-sec{padding:22px 24px}.clm-sec:last-child{border-bottom:0}
.clm-sec-t{font-size:11.5px;gap:12px;flex-wrap:wrap}.clm-sec-t small{font-size:11px}
.cc-in{font-size:18px;min-height:88px;line-height:1.6;padding:15px 35px 15px 16px;background:#fff;letter-spacing:-.02em}
.clm-btn{min-height:36px}.cc-ex{gap:7px;line-height:1.7}.cc-ex button{font-size:11px;padding:4px 8px;max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}
.cc-det{font-size:12px}.cc-prec{max-width:320px}.cc-prec::before{content:'Precision';font-size:11px;color:var(--clm-ink-2)}
.cc-row{padding:13px 46px 13px 16px}.cc-row.focus{padding:20px 46px 20px 20px;border:0;box-shadow:inset 4px 0 0 var(--clm-accent)}
.cc-row.focus .cc-k{color:var(--clm-accent-2);font-size:11px}.cc-row.focus .cc-v{font-size:clamp(21px,2vw,29px);letter-spacing:-.04em;line-height:1.4;margin:8px 0}
.cc-v{font-size:14px}.cc-s{font-size:12px}.cc-cp{width:32px;height:32px}.cc-res{border-radius:8px}
.cx-other{border-top:1px solid var(--clm-line)}.cx-other>summary{padding:12px 16px;font-weight:600;color:var(--clm-ink-2);cursor:pointer;background:var(--clm-sunk);font-size:12px}
.cx-context{min-width:0;display:flex;flex-direction:column;gap:18px}
.cx-map-card{border:1px solid var(--clm-line);border-radius:12px;overflow:hidden;background:#fff}
.cx-map-head{padding:13px 16px;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px}.cx-map-head span{font-size:10px;color:var(--clm-ink-2)}
.clm-stage{height:280px;min-height:0;flex:none;overflow:hidden;isolation:isolate}
.cc-search{left:9px;top:9px;width:auto;right:48px;max-width:none}.cc-search .cc-sbox{padding:0 9px}.cc-hint{max-width:calc(100% - 24px);white-space:normal;text-align:center;font-size:10px;padding:7px 10px;bottom:32px}
.cc-cursor{font-size:10px;left:8px;padding:5px 7px;pointer-events:none;max-width:calc(100% - 90px)}.cx-map-card .clm-sec{padding:12px;border:0}.cx-map-card .clm-sec-t{display:none}.cx-map-card .clm-seg button{font-size:11px}
.cx-lesson{border:1px solid var(--clm-line);border-radius:12px;background:white;overflow:hidden}
.cx-lesson-head{padding:21px 21px 0}.cx-lesson-head>span{font:700 10px var(--clm-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--clm-accent)}
.cx-lesson h2{margin:8px 0 4px;font-size:20px;line-height:1.3;letter-spacing:-.025em}
.cx-diagram{margin:18px 16px;padding:20px 14px;background:var(--clm-accent-soft);color:var(--clm-accent-2);border-radius:8px;font-family:var(--clm-mono);overflow:hidden}
.cx-diagram svg{display:block;width:100%;height:auto;max-height:180px}
.cx-lesson-copy{padding:0 21px 21px;font-size:13px;line-height:1.7;color:var(--clm-ink-2)}.cx-lesson-copy p{margin:0 0 13px}.cx-tip{border-top:1px solid var(--clm-line);padding-top:13px}.cx-tip b{color:var(--clm-ink);display:block;margin-bottom:2px}
.cx-equation{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:14px}.cx-diagram small{font:11px/1.5 var(--clm-font);display:block;opacity:.85;margin-top:5px}
.cx-equation strong{flex-basis:100%;text-align:center;font-size:25px;border-top:1px solid #176c6325;padding-top:18px;margin-top:10px}
.cx-split>strong{font-size:32px;display:block;text-align:center}.cx-split>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:20px}.cx-split span{border-top:2px solid currentColor;padding-top:12px;text-align:center;font-size:24px}.cx-split p,.cx-caption{text-align:center;font:11px/1.6 var(--clm-font);margin:15px 0 0}
.cx-zones{display:flex;height:112px;border:1px solid currentColor;margin-bottom:18px;transform:skewY(-5deg)}.cx-zones>span{flex:1;border-right:1px dashed currentColor;padding:10px;text-align:center;position:relative;opacity:.5}.cx-zones>span:last-child{border:0}.cx-zones .active{opacity:1;background:#315c9c20}.cx-zones b{display:block;font-size:28px;margin-top:10px}
.cx-parts{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}.cx-parts b{font-size:13px}.cx-parts small{font-size:10px}
.cx-gridref{display:flex;align-items:center;justify-content:space-around;margin-bottom:20px}.cx-gridref>span{font-size:24px}.cx-gridref em{display:block;font-style:normal;font-size:34px;font-weight:700}.cx-square{width:128px;height:112px;background:repeating-linear-gradient(0deg,transparent 0 21px,#586b3540 21px 22px),repeating-linear-gradient(90deg,transparent 0 25px,#586b3540 25px 26px);border:1px solid currentColor;position:relative}.cx-square b{position:absolute;left:65%;top:25%;font-size:24px}.cx-square small{position:absolute;bottom:4px;left:5px;background:var(--clm-accent-soft)}
.cx-flow{text-align:center}.cx-flow>span{display:block;padding:12px;background:#ffffffb0;border:1px solid #176c6325;border-radius:7px}.cx-flow>b{display:block;font-size:26px;padding:5px}.cx-place{font:600 18px var(--clm-font)}.cx-number{font-size:19px;font-weight:700}
.cx-address{text-align:center}.cx-address>span{font-size:14px}.cx-street{display:flex;align-items:center;justify-content:space-around;margin:20px 0;border-bottom:6px double #176c6340;height:75px;font-size:32px}.cx-street i{font-style:normal}.cx-street b{align-self:flex-start;font-size:24px}.cx-address strong{font:600 14px var(--clm-font)}
.cx-accuracy>div{width:128px;height:128px;border:1px dashed currentColor;border-radius:50%;display:grid;place-items:center;margin:auto;background:#176c6310}.cx-accuracy span{display:grid;place-items:center;width:70px;height:70px;border:1px solid #176c6330;border-radius:50%;font-size:26px}.cx-accuracy p{text-align:center;font-size:13px}
.cx-code{text-align:center}.cx-code>span{font-size:23px;letter-spacing:-1px}.cx-code em{font-style:normal;font-weight:700}.cx-code b{margin:0 2px;color:#aa6435}.cx-cell{width:160px;height:100px;border:1px solid currentColor;margin:20px auto;background:repeating-linear-gradient(90deg,transparent 0 31px,#75519d25 31px 32px)}.cx-cell>div{border:1px solid currentColor;width:65%;height:70%;margin:12px 12px;background:#75519d15}.cx-cell>div>div{border:1px solid currentColor;width:40%;height:60%;margin:15px 35px;background:#75519d25}
.cx-prefix>div{border:1px solid #75519d50;padding:8px;background:#75519d08}.cx-prefix div div{margin:4px 0 0 40px;padding:8px;border:1px solid #75519d60;background:#75519d0a}.cx-prefix b{font-size:12px}
.cx-datums{display:flex;justify-content:space-between;min-height:145px;align-items:start;gap:10px;background:repeating-linear-gradient(0deg,transparent 0 27px,#ad493e18 27px 28px)}.cx-datums>span{font-size:25px;min-width:0}.cx-datums>span:nth-child(2){margin-top:26px}.cx-datums>span:nth-child(3){margin-top:48px}.cx-datums b{display:block;font-size:13px}.cx-datums small{font-size:10px}
.cx-sheet{font-size:10px}.cx-sheet>div{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #176c6330}.cx-sheet span,.cx-sheet b{padding:12px 4px;overflow-wrap:anywhere}.cx-sheet b{background:#176c6310}.cx-error{color:#a03232}
.cx-coordinate>span{display:block;font-size:31px;letter-spacing:-1px;margin-bottom:18px}.cx-format-tags{display:flex;gap:6px;flex-wrap:wrap}.cx-format-tags b{font-size:11px;padding:6px 9px;border:1px solid #176c6340;border-radius:4px}
.cc-kit{display:none}.cc-bta{min-height:220px;font-size:15px}.cc-tbl{max-height:480px}.cc-tbl td{padding:10px}.cc-pt .cc-in{font-size:17px;min-height:60px}.cc-dist b{font-size:48px;color:var(--clm-accent-2)}
.clm-seo-bar{max-width:1216px;margin:auto;justify-content:flex-start;border-top:1px solid var(--clm-line);padding:22px 0 0}.clm-seo{padding:0 32px 30px;font-size:15px;column-width:auto}.clm-seo>p,.clm-seo>ul,.clm-seo>ol{max-width:880px}.clm-seo h2{margin-top:32px}.clm-seo .clm-note{color:var(--clm-accent-2);border-color:var(--clm-line)}.cc-more{padding:28px 32px 0;border-top:1px solid var(--clm-line)}
.clm-app:fullscreen{height:100vh!important;overflow:auto;background:var(--clm-bg);padding-top:24px;align-content:start}
@media(min-width:1500px){.clm-stage{height:300px}}
@media(max-width:1000px){.clm-app{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;padding-left:22px;padding-right:22px}.clm-sec{padding:20px}.cx-hero{padding-left:22px;padding-right:22px}.cx-code>span{font-size:19px}.cx-parts{gap:8px}.cc-row.focus .cc-v{font-size:23px}}
@media(max-width:820px){.clm-app{display:flex;flex-direction:column;padding:0 16px 24px;gap:20px}.clm-side,.cx-context{width:100%;order:initial}.cx-context{display:grid;grid-template-columns:1fr 1fr;align-items:start}.clm-stage{height:250px;min-height:0;order:initial}.clm-side{border:1px solid var(--clm-line)}.cx-hero{padding:24px 18px}.cx-breadcrumb{margin-bottom:20px}.cx-hero-foot{align-items:flex-start}.clm-seo-bar{margin:0 18px}.clm-seo,.cc-more{padding-left:18px;padding-right:18px}.cc-more-g{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cx-context{display:flex}.cx-map-card,.cx-lesson{width:100%}.cx-hero h1{font-size:30px}.cx-hero p{font-size:14px}.cx-hero-foot{font-size:11px}.clm-side-head,.clm-sec{padding:18px}.cc-in{font-size:16px}.cc-row.focus{padding:18px 42px 18px 16px}.cc-row.focus .cc-v{font-size:23px}.cc-acts{gap:5px}.cc-acts .clm-btn{padding:0 6px;font-size:11px}.cc-more-g{grid-template-columns:1fr}.cc-table{font-size:11px;table-layout:fixed;width:100%}.cc-table th,.cc-table td{padding:8px 6px;overflow-wrap:anywhere}.cc-table td:nth-child(2){font-size:11px}.clm-seo h2{font-size:21px}.cx-lesson .cx-diagram{max-width:400px;margin-left:auto;margin-right:auto;width:calc(100% - 32px)}}
