#tourismRoamingModal{position:fixed;inset:0;z-index:2200000!important;overflow-y:auto;pointer-events:auto}
.roaming-shell{max-width:760px;min-height:100dvh;margin:auto;padding:18px;background:#f8fafc;color:#172033;font-family:system-ui,sans-serif}
.roaming-shell header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px}
.roaming-shell h2{margin:0;font-size:24px}
.roaming-card,#roamingNow,#roamingCandidates{background:#fff;border-radius:15px;padding:16px;margin:12px 0}
.roaming-card>label{display:flex;align-items:center;justify-content:space-between;margin:12px 0;font-weight:700}
.roaming-card select{font-size:16px;min-width:145px;padding:8px;border:1px solid #cbd5e1;border-radius:9px;background:#fff}
.roaming-card fieldset{border:1px solid #e2e8f0;border-radius:12px;padding:12px;margin:16px 0}
.roaming-card legend{font-weight:700}
.roaming-card fieldset label{display:inline-flex;align-items:center;gap:4px;margin:6px 10px 6px 0}
.roaming-actions{display:grid;grid-template-columns:1fr 1.4fr .8fr;gap:7px}
.roaming-actions button,#roamingCandidates button,#roamingNow button{border:1px solid #cbd5e1;border-radius:10px;padding:11px 6px;background:#fff;color:#334155;font-weight:700}
#roamingStart{background:#4338ca;color:white;border-color:#4338ca}
.roaming-actions button:disabled{opacity:.45}
#roamingStatus{min-height:24px;font-size:14px;color:#166534}
#roamingNow:empty,#roamingCandidates:empty{display:none}
#roamingCandidates>div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e2e8f0;padding:9px 0}
#roamingCandidates small{display:block;color:#64748b;font-size:12px}
#roamingCandidates button{white-space:nowrap;padding:7px 10px}
.roaming-card>label:has(input[type=range]){display:block}
.roaming-card input[type=range]{display:block;width:100%;margin-top:12px;accent-color:#4338ca}
#roamingPlayer{display:block;width:100%;margin:8px 0 12px}
#roamingPlayer.hidden{display:none}
#roamingNow p{white-space:pre-wrap;line-height:1.7}
.roaming-trip-dialog{position:fixed;inset:0;z-index:2300000;overflow-y:auto;background:#f8fafc}
.roaming-trip-panel{max-width:760px;margin:auto;padding:14px;color:#334155}
.roaming-trip-panel header{display:flex;align-items:center;gap:16px;padding:12px 0}
.roaming-trip-panel header button,.roaming-trip-row,.roaming-trip-events button{border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:9px 13px;color:#334155}
.roaming-trip-row{display:block;width:100%;margin:7px 0;text-align:left}
.roaming-trip-map{height:44vh;min-height:250px;border-radius:12px;overflow:hidden}
.roaming-trip-map-legend{margin:7px 0 2px;color:#475569;font-size:13px}
.roaming-trip-events article{display:grid;gap:6px;border-bottom:1px solid #e2e8f0;padding:13px 0}
.roaming-trip-events article p{white-space:pre-wrap;line-height:1.6}
.roaming-trip-events select{display:block;width:100%;max-width:100%;margin:8px 0;padding:9px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155}
.roaming-trip-events label{display:flex;align-items:center;gap:8px;margin:8px 0;color:#334155}
.roaming-trip-events article small{color:#64748b}
