/* Profile map: page rules after home.css and common.css. */
:root{--c-29472b:#29472b;}
.pm-card{border:1px solid var(--line);border-radius:14px;padding:20px;margin:0 0 20px;background:var(--surface)}
.pm-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px}
.pm-choices button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:44px;padding:12px 16px;text-align:left}
.pm-stage{position:relative;max-width:760px;margin:0 auto}
.pm-stage svg{width:100%;height:auto;display:block}
.pm-stage polygon{transition:opacity .3s}
.pm-stage polygon[data-active="true"]{stroke-opacity:1;stroke:var(--c-29472b);stroke-width:.04}
.pm-streams{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:16px 0}
.pm-streams a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:12px 12px;border:1px solid var(--line);border-radius:10px;color:inherit;text-decoration:none}
.pm-streams a:hover,.pm-streams a:focus-visible{border-color:var(--green)}
.pm-streams strong small{font-size:.7em}
.pm-routes{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0}
.pm-routes a{color:var(--green);min-height:44px;display:inline-flex;align-items:center}
.pm-note button{min-height:44px}
@media (prefers-reduced-motion:reduce){.pm-stage polygon{transition:none}}
