:root{--blue:#286aa6;--green:#2c735f;--blue-soft:#edf5fc;--green-soft:#edf7f2;--ink:#263746;--muted:#526571;--line:#dbe5e8;--font:20px;color-scheme:light}
:root[data-font="22"]{--font:22px}
:root[data-font="24"]{--font:24px}
:root[data-font="28"]{--font:28px}
:root[data-font="32"]{--font:32px}
*{box-sizing:border-box;min-width:0}
[hidden]{display:none!important}
body{margin:0;background:#fff;color:var(--ink);font:var(--font)/1.6 system-ui,-apple-system,"Noto Sans TC",sans-serif;overflow-wrap:anywhere}
a{color:var(--blue);text-underline-offset:.18em}
:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
p{margin:.25em 0 .65em}
h1,h2{line-height:1.25;margin:0 0 .45em}
h1{font-size:1.95em;color:var(--blue);font-weight:780;letter-spacing:-.035em}
h2{font-size:1.18em}
small{display:block;color:var(--muted);font-size:.76em}
button,input,select{font:inherit;color:inherit}
button,input,select,.fixed-stop-link{border:1px solid #bacdd7;border-radius:10px;padding:9px 12px;background:white;min-height:44px}
.fixed-stop-link{display:inline-block;max-width:100%;text-decoration:none}
button{cursor:pointer}
button:hover{background:var(--blue-soft)}
button[aria-pressed=true],.search button{background:var(--blue);color:#fff;border-color:var(--blue)}
.shell{width:min(100% - 48px,1120px);margin-inline:auto}
.ribbon{height:7px;background:linear-gradient(90deg,var(--blue) 50%,var(--green) 50%)}
.toolbar,.mast,.clock,.footer-date{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.toolbar{padding-block:12px;border-bottom:1px solid var(--line)}
.font-tools,.actions,nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:max(14px,.72em)}
.font-tools button{min-width:44px}
.font-tools strong{margin-right:4px}
nav{gap:16px}
.mast{padding-block:20px}
.identity{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.identity>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;flex:none;background:linear-gradient(135deg,var(--blue),var(--green));color:white;font-size:27px}
.identity b{font-size:1.1em}
.main{display:grid;gap:22px;padding-bottom:30px}
.main>p{margin:0}
.clock{background:var(--blue-soft);border-radius:14px;border-inline-start:4px solid var(--blue);padding:12px 16px;font-size:.85em}
.clock time,.clock span,.footer-date time,.footer-date span{display:block}
[data-clock]{color:var(--blue);font-variant-numeric:tabular-nums}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.weather b{color:var(--green)}
.weather{display:block;text-decoration:none;background:var(--green-soft);border:1px solid #d5e8df;border-radius:18px;padding:22px;color:var(--ink)}
.weather-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}
.weather [data-weather-detail]{margin-top:8px}
.weather-top b{font-size:1.18em}
.weather-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .5em}
.weather-summary [data-weather-temperature]{white-space:nowrap}
.weather-link{font-size:.78em;white-space:nowrap}
.notice{padding:12px 16px;border-radius:12px;background:#fff6e8;color:#6d4b19;font-size:.84em}
.notice p{margin:3px 0}
.search{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.search label{display:grid;gap:4px;font-size:.8em}
.search label:first-child{flex:1 1 260px}
.search input{width:100%}
.home-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}
.home-search input{min-width:0;font-size:.8em}
.search button{font-size:.8em;flex:none;min-width:75px}
.panel,.quick>a,.recycling-card{padding:16px 19px;border:1px solid var(--line);border-radius:18px}
.panel p:last-child{margin-bottom:0}
.quick>a,.recycling-card{display:flex;align-items:center;gap:13px;text-decoration:none;background:var(--blue-soft)}
.recycling-card,.quick>a[href="/bulky"]{background:var(--green-soft);color:var(--green)}
.quick>a>span,.recycling-card>span{font-size:1.4em;flex:none}
.quick>a:hover{text-decoration:underline}
.category{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.category a{border:1px solid var(--line);border-bottom:3px solid #b8d3e9;border-radius:10px;padding:10px;text-decoration:none;font-size:.85em}
.category a:nth-child(even){border-bottom-color:#bbd9cd}
.call{display:inline-block;padding:6px 0;min-height:44px;font-weight:700;white-space:nowrap}
.count{font-weight:700;color:var(--blue)}
table{border-collapse:collapse;width:100%;font-size:.87em}
th,td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:var(--blue-soft)}
td:last-child{font-variant-numeric:tabular-nums}
li+li{margin-top:.45em}
footer{background:linear-gradient(100deg,var(--blue-soft),white,var(--green-soft));border-top:1px solid var(--line)}
.footer{padding-block:20px;font-size:.85em}
.footer-date{align-items:start}
.sun{margin:16px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid var(--line);padding-top:16px}
.sun b{display:block;color:var(--green)}
dialog{border:1px solid var(--line);border-radius:16px;width:min(440px,calc(100% - 32px));padding:24px;color:var(--ink)}
dialog::backdrop{background:#152b4280}
dialog button{float:right;min-width:44px}
.skip{position:absolute;left:12px;top:-200px;background:white;padding:8px}
.skip:focus{top:12px}
@media(max-width:640px){
 .shell{width:calc(100% - 28px)}
 .grid{grid-template-columns:minmax(0,1fr)}
 .main{gap:17px}
 .sun{grid-template-columns:minmax(0,1fr)}
 .sun>div{display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap}
 .panel,.quick>a,.recycling-card,.weather{padding:14px}
 .weather-top{grid-template-columns:minmax(0,1fr);gap:4px}
 .weather-top b{font-size:1.08em}
 .weather-link{justify-self:end}
 .search:has([data-village-select]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .search:has([data-village-select]) label:first-child,.search:has([data-village-select]) button{grid-column:1/-1}
 .search:has([data-village-select]) select{width:100%;min-width:0}
 th,td{padding:6px}
}

.village-map-frame{border:1px solid var(--line);border-radius:14px}
.village-map{position:relative}
.village-map img{display:block;width:100%;height:auto}
.village-pin{position:absolute;width:min(44px,4%);height:min(44px,7.8%);transform:translate(-50%,-50%);border-radius:10px}
.village-pin:hover,.village-pin:focus-visible,.village-pin[aria-current=true]{outline:3px solid var(--blue);outline-offset:0;background:#fff2}
#contact-results{scroll-margin-top:16px}
[data-village-select]{min-width:9em}
.village-pin-白雲村{left:71.34703%;top:20.73579%}
.village-pin-玉石村{left:64.95434%;top:17.50279%}
.village-pin-德陽村{left:68.09361%;top:29.87737%}
.village-pin-大忠村{left:55.07991%;top:17.83724%}
.village-pin-大義村{left:63.29909%;top:32.66444%}
.village-pin-六結村{left:67.63699%;top:40.91416%}
.village-pin-二龍村{left:73.40183%;top:40.35674%}
.village-pin-時潮村{left:81.33562%;top:37.12375%}
.village-pin-玉田村{left:74.82877%;top:51.61650%}
.village-pin-三民村{left:63.47032%;top:40.80268%}
.village-pin-林美村{left:52.68265%;top:36.34337%}
.village-pin-白鵝村{left:60.38813%;top:48.60647%}
.village-pin-玉光村{left:67.80822%;top:54.96098%}
.village-pin-光武村{left:67.69406%;top:66.88963%}
.village-pin-吳沙村{left:60.67352%;top:59.42029%}
.village-pin-龍潭村{left:53.36758%;top:57.97101%}
.village-pin-匏崙村{left:40.18265%;top:39.79933%}
.village-pin-二結村{left:37.10046%;top:57.19064%}

.fixed-stop-link,[data-find-nearby],[data-find-route]{background:var(--blue);color:white;border-color:var(--blue);font-weight:700}
.garbage-location-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;text-align:center}
@media(max-width:640px){
 .garbage-location-actions{grid-template-columns:minmax(0,1fr)}
}
.fixed-stop-link:hover,[data-find-nearby]:hover,[data-find-route]:hover{background:#215789}
[data-nearby-results]{margin-top:1em}
[data-find-nearby]{margin-top:8px}
[data-nearby-notice]{position:fixed;right:12px;bottom:12px;z-index:2;box-shadow:0 3px 12px #26374630}

.transport-bus,.transport-rail{
  margin-block:20px 0;padding-block-start:14px;border-block-start:1px solid var(--line)
}
.transport-bus > h3,.transport-rail > h3{margin:0 0 8px;font-size:1.2em}
.transport-operators{list-style:none;padding:0;margin:0 0 16px}
.transport-operators li{display:flex;flex-wrap:wrap;align-items:center;gap:0 16px;border-bottom:1px solid var(--line);margin:0}
.transport-operators strong a{display:inline-flex;align-items:center;min-height:44px}
.transport-bus .transport-operators{margin-bottom:12px}
.transport-bus .transport-operators li{column-gap:8px}
.transport-operators .call{white-space:nowrap}
.transport-station h4{margin:0 0 .35em}
.transport-station p{margin:.35em 0}
.transport-rail .transport-operators{margin-bottom:0}
.transport-rail .transport-operators li:last-child{border-bottom:0}
.transport-address{flex-basis:100%;margin:0 0 8px}
.map-address-end{white-space:nowrap;overflow-wrap:normal}
.map-pin{display:inline-block;min-width:28px;min-height:28px;text-align:center;text-decoration:none}

#taxi{margin-bottom:1em}
#taxi h3{font-size:1.35em;margin:.35em 0}
.taxi-calls{display:grid;gap:12px;margin:.5em 0}
.taxi-calls a{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;
  padding:14px 16px;min-height:100px;border:1px solid #ab751e;border-radius:18px;
  background:#ffdf72;color:#38250d;text-decoration:none
}
.taxi-calls a:nth-child(2){
  grid-template-columns:auto minmax(0,1fr);background:#fff0ae;border-radius:9px 23px 23px 9px
}
.taxi-calls a:nth-child(2) .taxi-art{grid-column:1;grid-row:1;transform:scaleX(-1) rotate(-6deg)}
.taxi-calls a:nth-child(2) .taxi-copy{grid-column:2;grid-row:1;text-align:right}
.taxi-calls a:nth-child(3){align-items:end;background:#ffd35a;border-radius:23px 9px 23px 9px}
.taxi-calls a:nth-child(3) .taxi-art{transform:rotate(-8deg);margin-bottom:5px}
.taxi-calls a:nth-child(3) .taxi-copy span{
  display:table;margin-top:5px;padding:2px 8px;border-radius:6px;background:#47300f;color:#fff8dd
}
.taxi-copy strong,.taxi-copy span{display:block}
.taxi-copy strong{font-size:1.3em;line-height:1.3}
.taxi-copy span{font-variant-numeric:tabular-nums}
.taxi-calls a:focus-visible{outline:3px solid #38250d;outline-offset:3px}
.taxi-art{
  position:relative;width:clamp(84px,26vw,112px);height:30px;margin:30px 2px 10px;
  border:2px solid #4b3111;border-radius:18px 23px 8px 8px;background:#ffb800
}
.taxi-art::before{
  content:"";position:absolute;bottom:100%;left:17%;width:57%;height:22px;
  border:2px solid #4b3111;border-bottom:0;border-radius:18px 22px 0 0;
  background:linear-gradient(90deg,#fff6d3 46%,#4b3111 46% 54%,#fff6d3 54%)
}
.taxi-art::after{
  content:"";position:absolute;bottom:calc(100% + 20px);left:37%;width:21px;height:8px;
  border:2px solid #4b3111;border-radius:4px 4px 0 0;background:#fff6d3
}
.taxi-art i::before,.taxi-art i::after{
  content:"";position:absolute;bottom:-9px;left:12%;width:17px;height:17px;
  border:4px solid #4b3111;border-radius:50%;background:#fff6d3
}
.taxi-art i::after{left:auto;right:12%}
/* Compact hatchback: short nose and taller, rounded cabin. */
.taxi-calls a:nth-child(2) .taxi-art{
  width:clamp(82px,24vw,102px);height:33px;border-radius:13px 24px 12px 9px;background:#ffc72e
}
.taxi-calls a:nth-child(2) .taxi-art::before{
  left:11%;width:69%;height:25px;border-radius:14px 27px 0 0
}
.taxi-calls a:nth-child(2) .taxi-art::after{bottom:calc(100% + 23px)}
/* Van: square cabin, three windows and a lower front corner. */
.taxi-calls a:nth-child(3) .taxi-art{
  height:32px;border-radius:5px 18px 8px 7px;background:#ffad13
}
.taxi-calls a:nth-child(3) .taxi-art::before{
  left:4%;width:79%;height:24px;border-radius:7px 15px 0 0;
  background:linear-gradient(90deg,#fff6d3 29%,#4b3111 29% 34%,#fff6d3 34% 63%,#4b3111 63% 68%,#fff6d3 68%)
}
.taxi-calls a:nth-child(3) .taxi-art::after{bottom:calc(100% + 22px);left:24%}
.taxi-calls .taxi-fleet{background:#ffe79b;border-radius:20px 20px 9px 20px}
.taxi-fleet .taxi-copy strong{font-size:1em}
.taxi-fleet .taxi-copy span{font-size:2em;font-weight:800;line-height:1.1}
.taxi-fleet .taxi-art{height:27px;border-radius:13px 26px 8px 8px;transform:rotate(-4deg)}
.taxi-fleet .taxi-art::before{left:10%;width:65%;border-radius:15px 26px 0 0}

.recycling-today{background:var(--blue-soft)}
.recycling-items{font-size:1.2em;font-weight:700;padding-inline-start:1.35em}
.recycling-week summary{cursor:pointer;font-weight:700;padding-block:8px}
.recycling-chart{display:block;width:100%;max-width:660px;height:auto;margin:16px auto 0}

.recycling-preview{margin-top:4px}
.recycling-preview summary{cursor:pointer;font-weight:700;padding-block:8px}
.recycling-preview a{color:inherit}
.recycling-preview .recycling-items{margin:4px 0 8px;font-size:1.05em;line-height:1.45}
.recycling-preview .recycling-items li+li{margin-top:.15em}
.recycling-preview .recycling-rest{display:block;color:#a51f27;font-size:1.25em}

.recycling-week .recycling-rest{color:#a51f27}
.recycling-week-day{padding:8px 12px;border-inline-start:4px solid transparent}
.recycling-week-day[aria-current="date"]{background:#fff0bf;border-inline-start-color:#a96905;border-radius:8px}
.recycling-today-label{display:inline-block;padding:0 .45em;background:#6c4306;color:white;border-radius:6px}

.editor-form { display:grid; gap:1rem; max-width:48rem; }
.editor-form label { display:grid; gap:.35rem; }
.editor-form input, .editor-form textarea { width:100%; min-width:0; padding:.55rem; font:inherit; }
.editor-form + ul, [data-created-link], .results li { overflow-wrap:anywhere; }

.district-list,.district-mobile-help{display:none}
@media(max-width:640px){
 .village-map-frame{aspect-ratio:2.25;overflow:hidden;margin-inline:-8px}
 .village-map{width:111.111%;left:-5.5556%}
 .district-mobile-help{display:revert}
 .district-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:12px}
 .district-card{padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--district-color)}
 .district-card-1{--district-color:#e6f3fd}
 .district-card-2{--district-color:#e8f6ec}
 .district-card-3{--district-color:#fff3d7}
 .district-card-4{--district-color:#f0eafb}
 .district-card h3{font-size:1em;margin:0 0 4px}
 .district-card ul{list-style:none;padding:0;margin:0}
 .district-card li+li{margin:0}
 .district-card a{display:flex;align-items:center;min-height:44px;font-weight:700}
 .district-card a[aria-current=true]{color:var(--ink);background:#fff;border-radius:6px}
}

.mobile-tools{display:none}
.clock{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px}
.clock time{grid-column:1}
.clock>span{grid-column:1}
.clock>b{grid-column:2;grid-row:1/3;align-self:center}
.clock .date-prefix,.clock .clock-prefix,.clock [data-date],.clock [data-clock],.footer-date [data-date],.footer-date [data-clock]{display:inline}
@media(max-width:640px){
 .toolbar{display:none}
 .mast{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding-block:10px}
 .mast nav{grid-column:1/-1;gap:4px 14px}
 .mast nav a{display:flex;align-items:center;min-height:44px}
 .identity{gap:6px}
 .identity>span{width:34px;height:34px;border-radius:10px;font-size:20px}
 .identity b{font-size:.85em}
 .identity small{display:none}
 .mobile-tools{display:flex;align-items:center;gap:5px;font-size:max(14px,.7em)}
 .mobile-tools details{position:relative}
 .mobile-tools summary{display:grid;place-items:center;list-style:none;min-height:44px;min-width:44px;padding:4px 6px;border:1px solid #bacdd7;border-radius:10px;cursor:pointer}
 .mobile-tools summary::-webkit-details-marker{display:none}
 .mobile-tools>button{min-width:44px;padding:4px 6px}
 .mobile-tools .font-tools{position:absolute;z-index:2;inset-inline-end:0;top:calc(100% + 4px);width:max-content;display:grid;grid-template-columns:repeat(5,44px);gap:4px;background:#fff;padding:6px;border:1px solid var(--line);border-radius:10px;transform:translateX(min(18px,4vw))}
 .mobile-tools .font-tools button{padding:4px}
 .clock{display:flex;justify-content:flex-start;gap:0 12px;padding:7px 10px;line-height:1.45}
 .clock time{flex-basis:100%}
 .clock .date-prefix,.clock .clock-prefix{display:none}
 .clock>b{white-space:nowrap}
}

@media(max-width:640px){
 .transport-operators li{column-gap:8px}
}

.medical-group{border-top:1px solid var(--line)}
.medical-group summary{cursor:pointer;padding:10px 0;font-weight:700}
.medical-list{list-style:none;padding:0;margin:0 0 12px}
.medical-list li{padding:8px 0}
.medical-list li + li{border-top:1px solid var(--line)}

.recycling-unavailable{color:#a51f27;text-decoration:underline}

.blog-mast{justify-content:flex-start;column-gap:1em}
.mast-page-title{margin:0;font-size:1.08em}
@media(max-width:640px){
 .blog-mast .mobile-tools{grid-column:2;grid-row:1}
 .blog-mast .mast-page-title{grid-column:1/-1;font-size:1em}
}

.bus-routes{display:grid;gap:.65rem}
#coach-contacts-title{margin-block-start:.65rem}
.bus-route{border:1px solid #c7dbe6;border-radius:12px;background:#fff}
.bus-route summary{
  display:flex;align-items:center;justify-content:space-between;gap:.4em .8em;flex-wrap:wrap;
  padding:.65em .85em;min-height:48px;border-radius:11px;color:var(--blue);
  background:var(--blue-soft);cursor:pointer
}
.bus-route summary span{font-weight:700}
.bus-route summary span::after{content:" ＋"}
.bus-route[open] summary span::after{content:" −"}
.bus-route-content{padding:.8em .85em .3em}
.bus-route-content ul{margin-block:.35em;padding-inline-start:1.4em}
.bus-route-links{display:flex;flex-wrap:wrap;gap:.4em 1em}
.bus-route-links a{padding-block:.25em}
.bus-direction h2{font-size:1em;margin:.35em 0}
.bus-direction ol{margin:.35em 0 .9em;padding-inline-start:1.9em}

.senior-entry {
 display: inline-flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 0 .4em;
 max-width: 100%;
 min-height: 44px;
 margin-block: .5rem;
 padding: .25em .7em;
 border: 1px solid var(--line);
 border-radius: 10px;
 background: var(--blue-soft);
 font-weight: 700;
 text-decoration: none;
}
.senior-entry > span { white-space: nowrap; }
.senior-entry:hover { text-decoration: underline; }
.senior-guide { display: grid; gap: .75rem; font-size: 1.15em; }
.senior-guide .panel h2 { margin-block: 0 .35em; }
.senior-guide .panel p { margin-block: .35em; }

.transport-menu { max-width: 46rem; }
.transport-menu a {
  display: flex;
  align-items: center;
  min-height: 48px;
  font-size: 1em;
}
.transport-menu a:hover { text-decoration: underline; }
@media (max-width: 350px) {
  .transport-menu { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  :root:is([data-font="24"],[data-font="28"],[data-font="32"]) .transport-menu {
    grid-template-columns: 1fr;
  }
}

.rail-guide { display: grid; gap: .8rem; }
.rail-guide summary {
  padding: .6rem .4rem;
  color: var(--blue, #24669e);
  font-weight: 700;
  cursor: pointer;
}
.rail-focus {
  display: grid;
  justify-items: center;
  gap: .25rem;
  padding: .8rem;
  border-radius: .75rem;
  background: #eaf5f0;
  text-align: center;
}
.rail-focus h2, .rail-timetable { margin: 0; }
.rail-timetable a { display: inline-block; }
.rail-stop-order { padding-inline-start: 0; }
.rail-stop-order > li {
  list-style-position: inside;
  padding: .45rem .65rem;
  border: 1px solid var(--line);
  border-radius: .65rem;
  background: #fff;
}
.rail-stop-order > li:nth-child(odd) { background: var(--blue-soft); }
.rail-stop-order small { display: block; }
.rail-stop-links { display: inline-flex; vertical-align: middle; }
.rail-stop-links .map-pin, .rail-live {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}

.rail-phone { display: inline-block; }
.rail-branch {
  margin-block-start: .35rem;
  padding: .35rem .55rem;
  border: 1px solid var(--line);
  border-radius: .5rem;
  background: var(--blue-soft);
}
.rail-stop-order > li + li { margin-block-start: .5rem; }

.rail-locator { margin-block: 0 1rem; }
button.rail-locate { background: var(--blue); color: white; font-weight: 700; max-width: 100%; }
[data-rail-result]:not(:empty) { margin-block-start: .6rem; overflow-wrap: anywhere; }
[data-rail-result] a { display: inline-block; }

.tpass { overflow-wrap: anywhere; }
.tpass .panel { margin-block: 1rem; }
.tpass-grid { display: grid; gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tpass-two .panel { min-width: 0; }
.tpass-two .panel:first-child { background: var(--blue-soft); }
.tpass-two .panel:last-child { background: #eef7f3; }
.tpass-note { background: #fff5dd; padding: .8rem; border-radius: .65rem; }
.tpass-checklist label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: .65rem;
  padding: .7rem .45rem;
  border-bottom: 1px solid #d7e4eb;
  cursor: pointer;
}
.tpass-checklist label:focus-within { outline: 2px solid var(--blue); outline-offset: -2px; }
.tpass-checklist input { width: 1.1em; height: 1.1em; min-height: 0; margin: .3em 0 0; accent-color: var(--blue); }
@media (max-width: 700px) {
  .tpass-grid { grid-template-columns: minmax(0, 1fr); }
}

.tpass-mobile-copy { display: none; }
@media (max-width: 700px) {
  .tpass-mobile-copy { display: inline-block; margin-bottom: .5rem; }
}

.traffic-count { color: #626970; margin: .7rem 0 .25rem; overflow-wrap: anywhere; }

#garbage-results{scroll-margin-top:16px}
.garbage-nearest,.garbage-nearest td{background:var(--blue-soft);font-weight:700}
p.garbage-nearest{padding:.6em .8em;border-radius:8px}

.about-jiaoxi{max-inline-size:38em;overflow-wrap:anywhere}
.about-jiaoxi h1{font-size:1.65em;line-height:1.3;margin-bottom:.5em}
.about-jiaoxi li + li{margin-top:.45em}
.about-jiaoxi-copy{display:none}
@media(max-width:640px){
 .about-jiaoxi-copy{display:inline-block}
}

.tourism > .panel, .tourism > section { margin-block: 1rem; }
.tourism-spots { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.tourism-spots .panel:nth-child(odd) { background: var(--blue-soft); }
.tourism-spots .panel:nth-child(even) { background: #eef7f3; }
.tourism h3 { margin-block: 0 .35em; }
.tourism .map-pin { min-width: 44px; min-height: 44px; line-height: 44px; }
@media (max-width: 640px) {
  .tourism-spots { grid-template-columns: minmax(0,1fr); }
}
.mast nav .tourism-tag {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: .15em .7em;
  border-radius: .55em;
  background: var(--blue);
  color: white;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.mast nav .tourism-tag:hover { text-decoration: underline; }
.fun-clock{color:var(--muted);font-size:.8em;margin-block:0 .7rem}
.fun-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-block:1rem}
.fun-cards a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55em;padding:.65em;border:1px solid var(--line);border-radius:.7em;background:var(--blue-soft);text-decoration:none}
.fun-cards a:nth-child(even){background:#eaf5ee}
.fun-cards strong,.fun-cards small{display:block;overflow-wrap:anywhere}
.fun-cards strong,.fun-icon{font-size:1.15em}
.fun-cards small{color:var(--ink);font-size:.75em}
.fun-cards a:hover strong,.fun-cards a:focus-visible strong{text-decoration:underline}
@media(max-width:670px){.fun-cards{grid-template-columns:minmax(0,1fr)}}
