.studio-route-status {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .4rem .8rem;
  margin: .65rem 0 1rem;
  padding: .65rem .8rem;
  border: 1px solid var(--border, #dce5df);
  border-radius: .75rem;
  background: var(--surface, #fff);
}
.studio-route-progress {
  margin: 0;
  font-size: .86rem;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.studio-route-meta {
  margin: 0;
  font-size: .8rem;
  color: var(--muted, #617168);
}
.studio-route-status button {
  margin-left: auto;
  min-height: 2.5rem;
  font-size: .82rem;
}
.studio-route-settings {
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border, #dce5df);
}
.studio-route-settings h3 { margin: 0 0 .5rem; }
.studio-route-settings-list {
  display: grid;
  gap: .4rem;
  margin: .85rem 0;
  padding: 0;
  list-style: none;
}
.studio-route-settings-row {
  display: flex;
  align-items: center;
  gap: .55rem;
  min-width: 0;
  padding: .4rem .55rem;
  border: 1px solid var(--border, #dce5df);
  border-radius: .65rem;
  background: var(--surface, #fff);
}
.studio-route-settings-number {
  flex: 0 0 1.5rem;
  text-align: center;
  font-size: .8rem;
  color: var(--muted, #617168);
  font-variant-numeric: tabular-nums;
}
.studio-route-settings-title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: .88rem;
  overflow-wrap: anywhere;
}
.studio-route-settings-actions {
  display: flex;
  flex: 0 0 auto;
  gap: .3rem;
}
.studio-route-settings .studio-route-order-move {
  min-width: 3rem;
  min-height: 2.5rem;
  padding: .3rem .5rem;
  font-size: .8rem;
}
.studio-route-order-move:disabled { opacity: .4; cursor: default; }
.studio-route-order-reset { min-height: 2.5rem; }
.studio-route-settings-status { min-height: 1.4em; margin-bottom: 0; }
.studio-route-settings-row:focus,
.studio-route-settings button:focus-visible {
  outline: 2px solid var(--accent, #2e7651);
  outline-offset: 3px;
}
@media (max-width: 380px) {
  .studio-route-settings-row { gap: .35rem; padding: .35rem; }
  .studio-route-settings-number { flex-basis: 1.1rem; }
  .studio-route-settings-title { font-size: .82rem; }
  .studio-route-settings .studio-route-order-move { min-width: 2.65rem; padding: .3rem; }
}
@media (prefers-reduced-motion: reduce) {
  .studio-route-status *,
  .studio-route-settings * {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}
.studio-time-plan{max-width:680px;margin:28px auto;padding:36px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:0 14px 45px #153e4308}
.studio-time-plan h1{margin:0 0 12px;font-size:clamp(25px,4vw,34px);line-height:1.35;color:var(--ink)}
.studio-time-plan>.studio-field{display:block;margin:28px 0 18px}
.studio-time-plan>.studio-field select{width:100%;min-height:54px;font-size:18px}
.studio-time-plan>[data-study-start]{width:100%;min-height:54px;margin:24px 0 12px}
.studio-time-plan .studio-time-custom{color:var(--muted);font-size:14px}
.studio-time-custom summary{cursor:pointer;padding:12px 0;min-height:44px}
.studio-time-custom .studio-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.studio-time-custom select{min-height:48px;width:100%}
.studio-route-time{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:700;color:var(--pine)}
@media(max-width:600px){.studio-time-plan{margin:12px auto;padding:24px 18px;border-radius:20px}.studio-route-time{margin-left:0}}
