/* Fixed-size HTML labels keep counts readable instead of shrinking with an SVG. */
.pref-map{margin:28px 0;background:#f5f8f8;border:1px solid #d9e2e2;border-radius:16px;padding:20px;min-width:0}
.pref-map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.pref-map-toolbar h3{margin:0 0 4px;font-size:23px;letter-spacing:0}
.pref-map-toolbar p{margin:0;font-size:16px}
.pref-map-filter{flex:0 0 200px;font-size:15px}
.pref-map-filter[hidden]{display:none}
.pref-map-filter select{font-size:17px;background:#fff;min-height:48px}
.pref-map-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pref-map-region{min-width:0;--region-color:#48787b}
.pref-map-region[hidden]{display:none!important}
.pref-map-region[data-region-group="kanto"]{--region-color:#527dac}
.pref-map-region[data-region-group="chubu"]{--region-color:#578057}
.pref-map-region[data-region-group="kinki"]{--region-color:#8b6495}
.pref-map-region[data-region-group="chugoku"]{--region-color:#92714b}
.pref-map-region[data-region-group="shikoku"]{--region-color:#ac6850}
.pref-map-region[data-region-group="kyushu"]{--region-color:#a8576b}
.pref-map-region h4{font-size:19px;line-height:1.5;margin:0 0 10px;border-left:4px solid var(--region-color);padding-left:10px}
.pref-map-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pref-map-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:86px;min-width:0;padding:10px 4px;background:#fff;border:1px solid #cad4d7;border-top:4px solid var(--region-color);border-radius:8px;text-decoration:none;line-height:1.25;box-shadow:0 2px 3px #23353d08}
.pref-map-name{font-size:18px;font-weight:750;white-space:nowrap;color:#241d19}
.pref-map-number{font-size:25px;letter-spacing:-.03em;font-weight:800;font-variant-numeric:tabular-nums;color:#b80f20;white-space:nowrap}
.pref-map-number small{font-size:13px;letter-spacing:0;margin-left:2px}
.pref-map-pending{font-size:14px;color:#655d54;font-weight:600}
.pref-map-tile:hover,.pref-map-tile:focus-visible{background:#fff0f1;border-color:#df1727;box-shadow:0 0 0 2px #df1727;outline:none}
.pref-map-tile[aria-current="page"]{background:#fff0f1;border-color:#b80f20;box-shadow:inset 0 0 0 1px #b80f20}
.pref-map-overview{display:none}
.pref-map-note{margin:18px 0 0;font-size:14px;color:#655d54}
.pref-map:not([data-region="all"]) .pref-map-groups{grid-template-columns:minmax(0,1fr)}
.pref-map:not([data-region="all"]) .pref-map-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
/* Give the map the full page width; no more narrow map plus duplicate count lists. */
.restaurant-index .prefecture-browser{display:block;margin:25px 0}
.restaurant-index .municipality-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:480px;overflow:auto}
.restaurant-index .municipality-counts a{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:17px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;text-decoration:none;background:#fff}
.restaurant-index .municipality-counts b{color:var(--red);white-space:nowrap}
.restaurant-index .nearby-search{padding:20px;margin:20px 0;background:var(--soft);border-radius:8px}
@media(min-width:1200px){
  .pref-map[data-region="all"] .pref-map-groups{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(10,76px);gap:7px}
  .pref-map[data-region="all"] .pref-map-region,.pref-map[data-region="all"] .pref-map-tiles{display:contents}
  .pref-map[data-region="all"] .pref-map-region h4{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
  .pref-map[data-region="all"] .pref-map-tile{grid-column:var(--map-col);grid-row:var(--map-row);min-height:0;padding:7px 2px;gap:5px}
  .pref-map[data-region="all"] .pref-map-name{font-size:17px}
  .pref-map[data-region="all"] .pref-map-number{font-size:22px}
  .pref-map[data-region="all"] .pref-map-number small{font-size:12px;margin-left:1px}
  .pref-map[data-region="all"] .pref-map-pending{font-size:12px}
  .pref-map[data-region="all"] .pref-map-overview{display:flex;grid-column:3 / 8;grid-row:1 / 5;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:16px;color:#52686a}
  .pref-map-overview svg{display:block;width:auto;height:240px;max-width:100%}
  .pref-map-overview svg path{fill:#dce7e7;stroke:#f5f8f8;stroke-width:6}
  .pref-map-overview svg path.is-highlighted{fill:#b80f20}
  [data-pref-code="1"]{--map-col:12;--map-row:1}
  [data-pref-code="2"]{--map-col:12;--map-row:2}
  [data-pref-code="3"]{--map-col:12;--map-row:3}
  [data-pref-code="4"]{--map-col:12;--map-row:4}
  [data-pref-code="5"]{--map-col:11;--map-row:3}
  [data-pref-code="6"]{--map-col:11;--map-row:4}
  [data-pref-code="7"]{--map-col:12;--map-row:5}
  [data-pref-code="8"]{--map-col:12;--map-row:6}
  [data-pref-code="9"]{--map-col:11;--map-row:5}
  [data-pref-code="10"]{--map-col:10;--map-row:5}
  [data-pref-code="11"]{--map-col:10;--map-row:6}
  [data-pref-code="12"]{--map-col:11;--map-row:7}
  [data-pref-code="13"]{--map-col:10;--map-row:7}
  [data-pref-code="14"]{--map-col:10;--map-row:8}
  [data-pref-code="15"]{--map-col:10;--map-row:4}
  [data-pref-code="16"]{--map-col:9;--map-row:4}
  [data-pref-code="17"]{--map-col:8;--map-row:4}
  [data-pref-code="18"]{--map-col:8;--map-row:5}
  [data-pref-code="19"]{--map-col:9;--map-row:6}
  [data-pref-code="20"]{--map-col:9;--map-row:5}
  [data-pref-code="21"]{--map-col:8;--map-row:6}
  [data-pref-code="22"]{--map-col:9;--map-row:7}
  [data-pref-code="23"]{--map-col:8;--map-row:7}
  [data-pref-code="24"]{--map-col:8;--map-row:8}
  [data-pref-code="25"]{--map-col:7;--map-row:6}
  [data-pref-code="26"]{--map-col:6;--map-row:5}
  [data-pref-code="27"]{--map-col:6;--map-row:6}
  [data-pref-code="28"]{--map-col:5;--map-row:5}
  [data-pref-code="29"]{--map-col:7;--map-row:7}
  [data-pref-code="30"]{--map-col:6;--map-row:7}
  [data-pref-code="31"]{--map-col:4;--map-row:5}
  [data-pref-code="32"]{--map-col:3;--map-row:5}
  [data-pref-code="33"]{--map-col:4;--map-row:6}
  [data-pref-code="34"]{--map-col:3;--map-row:6}
  [data-pref-code="35"]{--map-col:2;--map-row:6}
  [data-pref-code="36"]{--map-col:5;--map-row:8}
  [data-pref-code="37"]{--map-col:4;--map-row:8}
  [data-pref-code="38"]{--map-col:3;--map-row:8}
  [data-pref-code="39"]{--map-col:4;--map-row:9}
  [data-pref-code="40"]{--map-col:2;--map-row:7}
  [data-pref-code="41"]{--map-col:1;--map-row:7}
  [data-pref-code="42"]{--map-col:1;--map-row:8}
  [data-pref-code="43"]{--map-col:1;--map-row:9}
  [data-pref-code="44"]{--map-col:2;--map-row:8}
  [data-pref-code="45"]{--map-col:2;--map-row:9}
  [data-pref-code="46"]{--map-col:1;--map-row:10}
  [data-pref-code="47"]{--map-col:1;--map-row:4}
}
@media(max-width:700px){
  .pref-map{padding:16px 12px;margin:20px 0;border-radius:12px}
  .pref-map-toolbar{display:block;margin-bottom:22px}
  .pref-map-toolbar h3{font-size:22px}
  .pref-map-toolbar p{font-size:16px}
  .pref-map-filter{margin-top:16px}
  .pref-map-groups{grid-template-columns:minmax(0,1fr);gap:26px}
  .pref-map:not([data-region="all"]) .pref-map-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pref-map-name{font-size:19px}
  .pref-map-number{font-size:26px}
  .pref-map-number small{font-size:14px}
  .restaurant-index .municipality-counts{grid-template-columns:minmax(0,1fr);max-height:none}
}
