.track-organize-dialog {
  width:min(560px,calc(100vw - 32px));
  max-height:85vh;
  padding:24px;
  border:1px solid #b5cdca;
  border-radius:16px;
  color:#183f43;
  box-shadow:0 18px 70px #132d3940;
}
.track-organize-dialog::backdrop {
  background:#122d3960;
}
.track-organize-dialog form {
  display:flex;
  flex-direction:column;
  gap:16px;
}
.track-organize-dialog h2 {
  margin:0;
  font-size:21px;
}
.track-organize-dialog label {
  display:flex;
  flex-direction:column;
  gap:8px;
  font-weight:600;
}
.track-organize-dialog input:not([type=checkbox]),.track-organize-dialog select {
  box-sizing:border-box;
  width:100%;
  min-height:42px;
  padding:9px;
  border:1px solid #adc5c2;
  border-radius:8px;
}
.organize-list {
  max-height:40vh;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.organize-row {
  display:flex;
  align-items:center;
  gap:9px;
  border:1px solid #d7e3e1;
  border-radius:var(--ui-card-radius);
  padding:10px;
}
.organize-row span {
  flex:1;
  min-width:0;
  overflow-wrap:anywhere;
}
.organize-row input {
  flex-shrink:0;
}
.organize-row button {
  padding:6px 10px;
}
.organize-actions {
  justify-content:flex-end;
}
.merge-tracks {
  width:100%;
  margin-bottom:12px;
}
.track-organize-dialog p {
  margin:0;
  line-height:1.5;
}
.route-title-edit {
  display:block;
  text-align:left;
  font:inherit;
  font-weight:inherit;
  color:inherit;
  background:transparent;
  border:0;
  padding:0;
  min-height:0;
  overflow-wrap:anywhere;
  white-space:normal;
}
.route-title-edit:hover {
  color:#16796e;
  text-decoration:underline dotted;
}
.route-title-input {
  box-sizing:border-box;
  width:100%;
  font:inherit;
  padding:6px;
  border:1px solid #168579;
  border-radius:6px;
}
.track-format {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin:8px 0 12px;
  font-size:12px;
}
.track-format select {
  max-width:100%;
  font-size:12px;
}
.route-list-sections>.waypoint-card {
  margin:8px 0 0 8px;
}
.task-heading {
  position:sticky;
  top:-16px;
  background:#fffffff5;
  z-index:2;
  display:flex;
  align-items:center;
  gap:8px;
  padding-bottom:8px;
}
.task-heading h2 {
  flex:1;
}
#task-close {
  order:3;
  flex-shrink:0;
  padding:3px 10px;
  font-size:22px;
  line-height:1;
}
#task-collapse {
  flex-shrink:0;
}
#task-panel {
  box-sizing:border-box;
}
#task-body[hidden] {
  display:none;
}
.route-list-sections .compact-actions {
  gap:4px;
}
.route-list-sections .compact-track {
  padding:9px;
}
.organize-row button {
  min-width:32px;
}
.merge-point-choices {
  border:1px solid #d7e3e1;
  border-radius:var(--ui-card-radius);
  padding:10px;
}
.merge-point-choices legend {
  font-weight:600;
  padding:0 4px;
}
.merge-point-choices label {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  font-weight:400;
  margin:8px 0;
}
.merge-point-choices input {
  width:auto;
}
.merge-point-choices p {
  font-size:12px;
}
.track-organize-dialog label.merge-section-choice {
  flex-direction:row;
  align-items:center;
  margin:0;
  min-height:44px;
  font-weight:500;
}
.track-organize-dialog .merge-section-choice input {
  margin:0;
  flex:0 0 auto;
}
.track-import-dialog {
  width:min(460px,calc(100% - 24px));
  padding:22px;
  border:1px solid var(--ui-field-border);
  border-radius:12px;
  color:#193a37;
}
.track-import-dialog h2 {
  margin:0 0 12px;
  font-size:20px;
}
.track-import-dialog p {
  font-size:13px;
  line-height:1.5;
}
.track-import-dialog label {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  margin:18px 0;
}
.track-import-dialog label:has(input:not([type=checkbox])) {
  display:grid;
  gap:6px;
}
.track-import-dialog input[type=checkbox] {
  width:20px;
  height:20px;
  flex-shrink:0;
}
.track-import-dialog .row {
  justify-content:flex-end;
  margin-bottom:0;
}
.track-import-dialog::backdrop {
  background:#183f4366;
}
.profile-grade-control {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:12px;
  font-weight:500;
  margin:6px 0;
}
.profile-grade-control input {
  width:16px;
  height:16px;
  accent-color:#176b65;
}
.profile-grade-note {
  display:block;
  font-size:11px;
  line-height:1.5;
  color:var(--ui-muted);
  margin-top:5px;
}
.profile-grade-note[hidden] {
  display:none;
}
