:root{color:#172e3a;font-synthesis:none;background:#f6f8fa;font-family:Inter,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,.country-copy:focus-visible{outline-offset:4px;outline:3px solid #1769ab}header{justify-content:space-between;align-items:center;gap:16px;max-width:1480px;margin:auto;padding:26px 40px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{color:#0c6578;font-size:42px}h1{letter-spacing:.04em;margin:0;font-size:23px}.brand p{color:#5c6d77;margin:7px 0 0;font-size:14px}.phase{letter-spacing:.12em;color:#647884;white-space:nowrap;border:1px solid #d8e1e6;border-radius:5px;padding:8px 12px;font-size:12px}main{max-width:1480px;margin:auto;padding:12px 40px 0}.intro{margin:4px 0 25px}.intro h2{margin:0 0 9px;font-size:23px;font-weight:600}.intro p{color:#5d707a;margin:0;line-height:1.8}.workspace{background:#fff;border:1px solid #d2dfe5;border-radius:12px;grid-template-columns:minmax(0,1fr) 290px;display:grid;overflow:hidden;box-shadow:0 7px 24px #1a3b4a06}.map-panel{background:#e9f2f6;flex-direction:column;min-width:0;display:flex}.map-top{color:#486676;border-bottom:1px solid #d5e3eb;justify-content:space-between;gap:12px;padding:16px 20px;font-size:14px;display:flex}.dot{background:#0e7081;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.map-container{flex:1;align-items:center;min-height:250px;display:flex;position:relative}svg{touch-action:pan-y;width:100%;height:auto;display:block}.country{fill:#ccdbe0;stroke:#fff;stroke-width:.65px;cursor:grab;touch-action:none}.country:hover{fill:#b3cbd3}.country.origin{fill:#e6cbaa;stroke:#bd8955;stroke-dasharray:3 2;stroke-width:1px}.country-copy{fill:#f5a044;fill-opacity:.78;stroke:#a55515;stroke-width:1.7px;cursor:grab;touch-action:none;stroke-linejoin:round}.dragging,.dragging .country-copy{cursor:grabbing}.graticule{fill:none;stroke:#bed3df;stroke-width:.65px;pointer-events:none}.equator{fill:none;stroke:#699da8;stroke-width:1px;stroke-dasharray:5 5;pointer-events:none}.equator-label{color:#537d86;pointer-events:none;font-size:12px;position:absolute;top:50%;left:12px;transform:translateY(6px)}#loading{background:#e9f2f6;place-items:center;padding:20px;line-height:1.8;display:grid;position:absolute;inset:0}.legend{color:#4d6775;border-top:1px solid #d5e3eb;flex-wrap:wrap;gap:12px 20px;padding:15px 20px;font-size:12px;display:flex}.legend span{align-items:center;gap:7px;display:flex}.legend i{border-radius:2px;width:12px;height:12px;display:inline-block}.legend-original{background:#e6cbaa;border:1px dashed #bd8955}.legend-copy{background:#f5a044;border:1px solid #a55515}aside{border-left:1px solid #d2dfe5;padding:27px 24px}.eyebrow{color:#617985;letter-spacing:.12em;margin:0 0 12px;font-size:12px}aside h2{overflow-wrap:anywhere;margin:0 0 7px;font-size:27px}.secondary{color:#657a85;overflow-wrap:anywhere;margin:0;font-size:14px}.position{border-top:1px solid #e4eaee;border-bottom:1px solid #e4eaee;flex-direction:column;gap:10px;margin-top:20px;padding:26px 0;font-size:14px;display:flex}.position strong{font-variant-numeric:tabular-nums;color:#0c6578;font-size:32px;font-weight:500}.hint{margin-top:24px;font-size:14px;line-height:1.9}.hint strong{color:#8e4c18}.hint p{color:#526974;margin:8px 0}.move-controls{gap:8px;margin-top:24px;display:flex}.move-controls button{color:#244a5c;background:#f4f7f9;border:1px solid #d5e0e6;border-radius:6px;flex:1;min-height:44px}.reset{color:#fff;background:#133f50;border:0;border-radius:6px;width:100%;min-height:46px;margin-top:12px;font-size:14px}.reset:hover{background:#20586d}.reset:disabled{opacity:.4}.keyboard-note{color:#697f89;margin:12px 0 0;font-size:12px}.clip-note{color:#8b470c;background:#fff3de;padding:12px;font-size:14px;line-height:1.7}.scope-note{color:#627680;margin:16px 0 0;font-size:12px;line-height:1.8}footer{color:#647b87;flex-wrap:wrap;justify-content:space-between;gap:14px;max-width:1480px;margin:0 auto;padding:24px 40px 28px;font-size:12px;line-height:1.8;display:flex}a{color:#286779}button:hover{filter:brightness(.96)}[hidden]{display:none!important}@media (width>=1500px){.map-container svg{max-height:680px}}@media (width<=800px){header{padding:20px}.phase{display:none}main{padding:8px 20px 0}.workspace{grid-template-columns:minmax(0,1fr)}aside{border-top:1px solid #d2dfe5;border-left:0;padding:22px}.position{margin-top:16px;padding:16px 0}.hint{margin-top:18px}footer{padding:22px 20px}.intro h2{font-size:21px}.map-top{padding:13px;font-size:12px}.legend{gap:9px 14px;padding:12px;font-size:12px}}@media (width<=400px){header{padding:16px 12px}.brand{gap:8px}.brand-mark{font-size:30px}h1{font-size:19px}.brand p{font-size:12px}main{padding:8px 10px 0}.intro h2{font-size:20px}.intro p{font-size:14px}.map-top{gap:8px;padding:12px 9px}.map-container{min-height:230px}aside{padding:20px}footer{padding:20px 12px}}.comparison-toolbar{background:#fff;border:1px solid #d2dfe5;border-radius:10px;margin:0 0 18px;padding:18px 20px}.view-switch{background:#edf2f5;border-radius:8px;gap:5px;width:fit-content;max-width:100%;padding:5px;display:flex}.view-switch button{color:#3e5967;background:0 0;border:0;border-radius:5px;min-height:44px;padding:11px 20px;font-size:14px;font-weight:600}.view-switch button[aria-pressed=true]{color:#fff;background:#133f50;box-shadow:0 2px 5px #123b501a}.view-switch button:disabled{opacity:.4}.projection-description{color:#526b78;margin:14px 0 0;font-size:14px;line-height:1.8}.overlay-controls{border-top:1px solid #e4eaee;flex-wrap:wrap;gap:18px 36px;margin-top:16px;padding-top:16px;display:flex}.blend-control{flex:280px;max-width:550px;font-size:14px}.blend-control>label{font-weight:600}.blend-labels{justify-content:space-between;gap:8px;margin-top:10px;font-size:12px;display:flex}.blend-control input{accent-color:#0c7780;cursor:ew-resize;width:100%;min-height:32px;margin:5px 0 0}.mercator-key{color:#a14f13}.equal-earth-key{color:#087881}.drag-choice{border:0;min-width:0;margin:0;padding:0;font-size:14px}.drag-choice legend{margin:0 0 5px;font-weight:600}.drag-choice label{cursor:pointer;align-items:center;gap:5px;min-height:44px;margin-right:10px;display:inline-flex}.drag-choice input{accent-color:#0c7780;width:16px;height:16px}.projection-layer:not(.interactive) .country,.country-copy:not(.interactive){pointer-events:none}.sphere-outline{fill:none;stroke:#b0c9d4;stroke-width:.8px;pointer-events:none}.equalEarth .country{fill:#c7dedf}.equalEarth .country:hover{fill:#a6cbcc}.equalEarth .country.origin{fill:#b7dcda;stroke:#248c92}.country-copy.equalEarth{fill:#37b0af;stroke:#08666c}.equal-swatch{background:#37b0af!important;border-color:#08666c!important}.overlay .mercator .country{fill:#e5ad77;stroke:#a57149;stroke-width:.65px}.overlay .equalEarth .country{fill:#77bbc1;stroke:#257c87;stroke-width:.65px}.overlay .mercator .country.origin{fill:#ecb278;stroke:#9a4a15;stroke-width:1.8px}.overlay .equalEarth .country.origin{fill:#94d1d0;stroke:#09676e;stroke-width:1.8px}.overlay .country-copy{stroke-width:2.2px;fill-opacity:1}.overlay .mercator .graticule{stroke:#ba865e}.overlay .equalEarth .graticule{stroke:#408994}.overlay .equalEarth .sphere-outline{stroke:#187b87}.overlay .mercator .sphere-outline{stroke:#b47a48}.area-comparison{border-bottom:1px solid #e4eaee;padding:20px 0;font-size:14px}.area-comparison>span{font-weight:600}.area-comparison p{color:#607580;margin:10px 0;font-size:12px;line-height:1.8}.area-comparison>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.area-comparison strong{color:#a14f13;font-variant-numeric:tabular-nums;font-size:27px;font-weight:500}.scale-explanation{background:#fff;border:1px solid #d9e3e8;border-radius:8px;margin-top:18px;padding:16px 20px;font-size:14px;line-height:1.9}.scale-explanation summary{cursor:pointer;font-weight:600}.scale-explanation p{color:#526b78;margin:12px 0 0}@media (width<=800px){.comparison-toolbar{padding:14px}.view-switch{width:100%}.view-switch button{flex:1;padding:10px 8px}.overlay-controls{gap:14px}.blend-control{max-width:none}.area-comparison{padding:18px 0}}@media (width<=400px){.comparison-toolbar{padding:12px 9px}.view-switch{gap:2px;padding:3px}.view-switch button{white-space:nowrap;flex:1 0 auto;padding:10px 4px;font-size:12px}.projection-description{font-size:13px}.blend-control{flex-basis:100%}.map-top{flex-wrap:wrap}.scale-explanation{padding:14px}.drag-choice label{font-size:13px}}.brand-mark{object-fit:contain;border-radius:12px;flex:0 0 52px;width:52px;height:52px;display:block}@media (width<=400px){.brand-mark{border-radius:9px;flex-basis:38px;width:38px;height:38px}}#map{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden}#map .country,#map .country-copy{cursor:inherit}#map.camera-dragging,#map.dragging{cursor:grabbing}#map.country-mode .country,#map.country-mode .country-copy{cursor:grab}.map-container{overflow:hidden}.map-equator-label{fill:#537d86;pointer-events:none;font-size:14px}.map-interaction{border-bottom:1px solid #d5e3eb;flex-wrap:wrap;gap:8px;padding:12px 16px;display:flex}.map-interaction button{color:#254e5e;background:#fff;border:1px solid #aabfc9;border-radius:6px;min-height:44px;padding:8px 14px;font-size:14px}.map-interaction button[aria-pressed=true]{color:#fff;background:#133f50;border-color:#133f50}.map-interaction p{color:#486676;flex-basis:100%;margin:0;font-size:13px;line-height:1.7}.zoom-controls{background:#fff;border-radius:8px;align-items:center;gap:4px;padding:5px;display:flex;position:absolute;bottom:12px;right:12px;box-shadow:0 2px 10px #163b5025}.zoom-controls button{color:#163f51;background:#fff;border:1px solid #c6d6de;border-radius:5px;min-width:44px;min-height:44px;font-size:20px}.zoom-controls #zoom-reset{padding:0 9px;font-size:12px}.zoom-controls output{color:#486676;min-width:46px;padding:0 5px;font-size:12px}.zoom-controls button:disabled{opacity:.4;cursor:default}@media (width<=400px){.zoom-controls{bottom:6px;right:6px}.map-interaction{padding:10px}.map-interaction button{flex:1;padding:8px}.zoom-controls output{min-width:40px;padding:0 2px}}
