.maps-main{max-width:860px;padding-bottom:40px}
.maps-main .team-intro{max-width:630px}
.maps-notice{margin:24px 0 18px;line-height:1.6;font-size:14px;min-height:24px}
.maps-notice.is-error{color:var(--team-red)}
.maps-card{background:#fff;border:1px solid var(--team-line);border-radius:16px;padding:30px;margin-top:20px}
.maps-card>p{font-size:14px;line-height:1.65}
.maps-card .team-small{font-size:12px;line-height:1.65}
.maps-state-heading{display:flex;gap:18px;align-items:center;justify-content:space-between}
.maps-state-heading h2{font-size:23px}
.maps-badge{font-size:11px;font-weight:bold;border:1px solid var(--team-line);border-radius:20px;padding:6px 12px;white-space:nowrap}
.maps-badge.is-active{color:#1c684a;border-color:#bcdacb;background:#f2f8f4}
.maps-button,.maps-secondary{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;border-radius:25px;padding:12px 22px;font:inherit;font-size:13px;font-weight:bold;text-align:center}
.maps-button{color:#fff;background:var(--team-blue);border:1px solid var(--team-blue)}
.maps-secondary{color:var(--team-blue);background:transparent;border:1px solid var(--team-line)}
.maps-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
#maps-key-form{border-top:1px solid var(--team-line);margin-top:22px;padding-top:23px}
#maps-key-form label{font-size:15px;font-weight:bold}
#maps-key{display:block;width:100%;min-height:50px;border:1px solid #aeb8c4;border-radius:8px;padding:12px;color:var(--team-blue);background:#fff;font:16px monospace;margin-top:14px}
#maps-key:focus-visible{outline:3px solid var(--team-blue);outline-offset:3px}
#maps-save{margin-top:18px}
#maps-refresh{margin-top:24px}
.maps-text-link{display:inline-block;text-decoration:underline;text-underline-offset:3px;margin:8px 0}
.maps-rates{margin:20px 0 0}
.maps-rates div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--team-line);font-size:14px}
.maps-rates dd{margin:0;font-weight:bold;white-space:nowrap}
@media(max-width:560px){.maps-card{padding:23px 20px}.maps-state-heading{align-items:flex-start;flex-direction:column;gap:12px}.maps-actions{flex-direction:column}.maps-actions button{width:100%}.maps-main h1{font-size:37px}.maps-card h2{font-size:22px}}
