.register-launch,.register-source{color:var(--green);background:white;border:1px solid var(--border);border-radius:7px;padding:8px 12px;cursor:pointer;font:inherit;font-size:12px;font-weight:600}
.register-launch:hover,.register-source:hover{background:#edf5ef}
.register-launch{margin-top:12px}
.sheet-buttons{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.register-note{font-size:12px;line-height:1.45;color:#43594d;margin:7px 0 0}
.register-note.approx{color:#83501a}
#register-dialog{box-sizing:border-box;width:min(1120px,94vw);max-width:94vw;max-height:91dvh;overflow:auto;padding:20px}
#register-dialog .dialog-head{margin-bottom:12px}
.reg-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.reg-controls label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;min-width:0;flex:1}
.reg-controls input,.reg-controls select{min-width:0;width:100%;box-sizing:border-box;padding:8px;border:1px solid var(--border);border-radius:6px;background:white;color:var(--ink);font:inherit}
#register-caption{font-size:13px;margin:14px 0 8px}
#register-content{max-height:60dvh;overflow:auto;overscroll-behavior:contain}
#register-content table{border-collapse:collapse;font:14px/1.25 Arial,sans-serif;background:#fff;color:#111}
#register-content td{border:1px solid #d3dcd6;padding:4px 7px;vertical-align:middle;text-align:center}
#register-content .reg-time{font-variant-numeric:tabular-nums;white-space:nowrap}
#register-content .reg-station{font-size:16px;background:#eef3ef}
#register-content .reg-label{font-size:12px}
@media(max-width:740px){#register-dialog{margin:auto;padding:15px}.reg-controls label{flex-basis:100%}.register-launch{margin-top:7px}}

.list-tabs[hidden]{display:none!important}
#map{background:#edf1e8}
#municipality{margin-bottom:7px}
.metro-place{text-align:center;pointer-events:none!important;color:#505d4f;font:600 11px/1.15 system-ui;white-space:nowrap;text-shadow:1px 1px 2px white,-1px -1px 2px white,0 0 4px white}
.metro-place.major{font-size:13px;color:#294b3f;font-weight:750}
.platform-choice{padding:3px 8px;font:600 11px/1.4 system-ui;color:#205846;background:#f0f5f1;border:1px solid #cbd9cc;border-radius:5px;cursor:pointer}
.nearby-stops{display:grid;gap:5px}.nearby-stops button{text-align:left}
.close-panel-label { display: none; }
@media (min-width:741px) {
  #station-panel .panel-head {
    position: sticky; top: 0; z-index: 6; background: white; padding: 9px 16px 9px 20px;
    border-bottom: 1px solid #d7e2dc;
  }
  #close-panel {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    width: auto; height: 34px; border: 1px solid #b6cfc2; border-radius: 7px;
    background: #edf5ef; padding: 0 11px; color: #193e32;
  }
  .close-panel-label { display: inline; font-size: 13px; font-weight: 650; }
  #close-panel:hover { background: #dfeee3; }
}

#map{background:#f7f6ef}.preview-badge{margin-left:auto;border:1px solid #d6dfd5;background:#f5f7ee;color:#51654c;padding:6px 10px;border-radius:6px;font-size:11px}.bottom-bar{gap:15px}.metro-place{white-space:nowrap}

#map{background:#f5f3e9}
