/* 蓝白清爽：只调整现有交付日程的外观，保留原有数据与操作。 */
body.v1-blue :is(#orders, #fieldHome) .calendar-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px 18px;
  margin-bottom: 16px;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-head > div:first-child {
  min-width: min(100%, 260px);
}
body.v1-blue :is(#orders, #fieldHome) .calendar-head > div:first-child > b {
  display: block;
  color: #173252;
  font-size: 22px;
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.25;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-head .muted {
  margin-top: 6px;
  color: #71829a;
  font-size: 12px;
  line-height: 1.55;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-month-nav {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
  flex-wrap: nowrap;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-month-arrow {
  width: 44px;
  min-width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #dce8f6;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
  color: #2764cc;
  font-size: 25px;
  font-weight: 600;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-month-arrow:hover,
body.v1-blue :is(#orders, #fieldHome) .calendar-month-arrow:focus-visible {
  background: #eaf2ff;
  border-color: #a9c9f6;
}
body.v1-blue :is(#orders, #fieldHome) .calendar-month-nav input[type="month"] {
  width: 144px !important;
  min-width: 0 !important;
  height: 44px;
  padding: 7px 8px !important;
  border: 1px solid #dce8f6;
  border-radius: 12px;
  background: #f7faff;
  color: #173252;
  font-size: 15px;
  font-weight: 800;
  text-align: center;
}

body.v1-blue :is(#scheduleRows, #fieldScheduleCalendar) {
  min-width: 0;
  width: 100%;
  overflow: visible;
}
body.v1-blue .calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 3px;
  width: 100%;
  border: 0;
  border-radius: 0;
  overflow: visible;
  background: transparent;
}
body.v1-blue .calendar-week {
  min-width: 0;
  padding: 7px 0 9px;
  border: 0;
  background: transparent;
  color: #7a8da8;
  font-size: 11px;
  font-weight: 700;
}
body.v1-blue .calendar-day,
body.v1-blue .calendar-day:nth-child(7n) {
  min-width: 0;
  min-height: 84px;
  height: auto;
  padding: 5px 3px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: #fff;
  box-shadow: none;
  color: #223b5d;
  overflow: visible;
}
body.v1-blue .calendar-day.out {
  background: #f8faff;
  color: #b0bed0;
}
body.v1-blue .calendar-day.today {
  background: #f2f7ff;
}
body.v1-blue .calendar-day.selected {
  border-color: #3477e7;
  background: #e9f2ff;
  box-shadow: 0 0 0 1px #3477e7;
}
body.v1-blue .calendar-day.has-items:hover {
  background: #f1f7ff;
}
body.v1-blue .calendar-date {
  min-width: 0;
  min-height: 19px;
  align-items: flex-start;
  color: inherit;
  font-size: 12px;
  font-weight: 750;
}
body.v1-blue .calendar-date b {
  width: 19px;
  height: 19px;
  border-radius: 6px;
}
body.v1-blue .calendar-day.today .calendar-date b {
  background: #2867d1;
  color: #fff;
}
body.v1-blue .calendar-date .muted {
  color: #7991b1;
  font-size: 9px;
  white-space: nowrap;
}
body.v1-blue .cal-weather {
  margin: 2px 0;
  color: #6683aa;
  font-size: 9px;
  line-height: 1.2;
}
body.v1-blue #appBox .cal-item {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  width: 100%;
  height: auto;
  min-height: 17px;
  margin-top: 2px;
  padding: 3px 3px;
  border: 0;
  border-radius: 4px;
  background: #e6f0ff;
  box-shadow: none;
  color: #225eb8;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.15;
  text-align: left;
  white-space: normal;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-overflow: clip;
}
body.v1-blue #appBox .cal-item.progress { background: #dff3fb; color: #176e90; }
body.v1-blue #appBox .cal-item.done { background: #e1f5eb; color: #26774f; }
body.v1-blue #appBox .cal-item.overdue { background: #fff0ec; color: #b64f45; }
body.v1-blue #appBox .cal-item:focus-visible { outline: 2px solid #2867d1; outline-offset: 1px; }
body.v1-blue .calendar-legend {
  gap: 8px 13px;
  margin-top: 15px;
  color: #72839b;
  font-size: 11px;
}
body.v1-blue .calendar-legend i { width: 8px; height: 8px; }
body.v1-blue .calendar-legend span:nth-child(1) i { background: #76aafa !important; }
body.v1-blue .calendar-legend span:nth-child(2) i { background: #67bddd !important; }
body.v1-blue .calendar-legend span:nth-child(3) i { background: #63b68b !important; }
body.v1-blue .calendar-legend span:nth-child(4) i { background: #db8478 !important; }

body.v1-blue :is(#orders, #fieldHome) .weather-alert {
  border: 1px solid #f2d6d1;
  background: #fff2f0;
  color: #a53e36;
}
body.v1-blue :is(#orders, #fieldHome) .weather-source {
  margin-top: 12px;
  color: #8998aa;
  font-size: 10px;
  line-height: 1.4;
}
body.v1-blue :is(#orders, #fieldHome) .day-mode {
  display: flex;
  flex-direction: column;
  margin-top: 15px;
  padding: 16px;
  border: 1px solid #dce8f6;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 4px 16px rgba(28, 75, 137, .04);
}
body.v1-blue :is(#orders, #fieldHome) .day-mode-head b {
  color: #173252;
  font-size: 17px;
  font-weight: 850;
}
body.v1-blue :is(#orders, #fieldHome) .day-mode-head .muted {
  margin-top: 4px;
  color: #788ca7;
  line-height: 1.4;
}
body.v1-blue :is(#orders, #fieldHome) .day-weather { margin-top: 12px; }
body.v1-blue :is(#orders, #fieldHome) .day-mode-head { order: 0; }
body.v1-blue :is(#orders, #fieldHome) .day-weather { order: 1; }
body.v1-blue :is(#orders, #fieldHome) .day-schedule-list { order: 2; }
body.v1-blue :is(#orders, #fieldHome) .day-route-guide { order: 3; }
body.v1-blue :is(#orders, #fieldHome) [id^="routeLegs_"] { order: 4; }
body.v1-blue :is(#orders, #fieldHome) .weather-chip {
  border: 1px solid #dceafd;
  border-radius: 10px;
  background: #edf5ff;
  color: #2863ad;
  font-size: 12px;
}
body.v1-blue :is(#orders, #fieldHome) .weather-chip.severe {
  border-color: #f2d6d1;
  background: #fff1ef;
  color: #b5423a;
}
body.v1-blue :is(#orders, #fieldHome) .day-route-guide {
  gap: 12px;
  border: 1px solid #dceafd;
  border-radius: 12px;
  background: #f3f8ff;
}
body.v1-blue :is(#orders, #fieldHome) .day-route-guide b {
  color: #245387;
  font-size: 13px;
}
body.v1-blue :is(#orders, #fieldHome) .day-route-guide small {
  color: #7187a2;
  line-height: 1.45;
}
body.v1-blue :is(#orders, #fieldHome) .day-route-guide button,
body.v1-blue :is(#orders, #fieldHome) .route-leg button {
  min-height: 40px;
  border-radius: 10px;
  background: #2867d1;
  box-shadow: none;
}
body.v1-blue :is(#orders, #fieldHome) .route-leg {
  border-color: #dce8f6;
  background: #fff;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-list {
  gap: 0;
  margin-top: 14px;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-list > div {
  padding: 2px 0 13px;
  border-bottom: 1px solid #e5edf7;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-list > div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item {
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  gap: 10px;
  min-height: 54px;
  padding: 10px 0 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #173252;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item .state-dot {
  width: 25px;
  height: 25px;
  border-color: #8cb8f4;
  color: #fff;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item.done .state-dot {
  border-color: #58ae82;
  background: #58ae82;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item.overdue .state-dot {
  border-color: #d67469;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item strong {
  color: #173252;
  font-size: 14px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item small {
  color: #7587a0;
  font-size: 11px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
body.v1-blue :is(#orders, #fieldHome) .day-schedule-item .chevron {
  color: #547bb1;
}
body.v1-blue :is(#orders, #fieldHome) .schedule-card-shell {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}
body.v1-blue :is(#orders, #fieldHome) .schedule-card-shell .day-schedule-item {
  padding-right: 0;
}
body.v1-blue :is(#orders, #fieldHome) .amap-open {
  position: static;
  transform: none;
  min-height: 36px;
  margin: 3px 0 0 38px;
  padding: 7px 11px;
  border-color: #c8defb;
  border-radius: 9px;
  background: #edf5ff;
  box-shadow: none;
  color: #2863ad;
  font-size: 11px;
}
body.v1-blue :is(#orders, #fieldHome) .amap-open:hover {
  background: #e0eeff;
}
body.v1-blue :is(#orders, #fieldHome) .field-note {
  margin: 10px 0 0 38px;
  border-color: #dce8f6;
  background: #f7faff;
}
body.v1-blue :is(#orders, #fieldHome) .field-note label { color: #275c9e; }
body.v1-blue :is(#orders, #fieldHome) .field-note-actions { flex-wrap: wrap; }
body.v1-blue :is(#orders, #fieldHome) .field-note-status {
  flex: 1 1 118px;
  color: #7587a0;
}
body.v1-blue :is(#orders, #fieldHome) .field-note button {
  flex: 0 0 auto;
  min-height: 40px;
  background: #e5f0ff;
  color: #2863ad;
  white-space: nowrap;
}

body.v1-blue #scheduleDayOverlay .day-sheet {
  border: 1px solid #dce8f6;
  background: #fff;
}
body.v1-blue #scheduleDayOverlay .day-schedule-item {
  border-color: #dce8f6;
  background: #fff;
}

@media (max-width: 760px) {
  body.v1-blue :is(#orders, #fieldHome) .calendar-head {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }
  body.v1-blue :is(#orders, #fieldHome) .calendar-month-nav {
    width: 100%;
    justify-content: flex-start;
  }
  body.v1-blue :is(#orders, #fieldHome) .calendar-month-nav input[type="month"] {
    flex: 0 1 150px;
    min-width: 0 !important;
  }
  body.v1-blue .calendar-day,
  body.v1-blue .calendar-day:nth-child(7n) {
    min-height: 78px;
    padding: 4px 2px;
  }
  body.v1-blue .calendar-date .muted { display: none; }
  body.v1-blue #appBox .cal-item {
    margin-top: 2px;
    padding: 3px 2px;
    font-size: 8.5px;
    line-height: 1.2;
  }
  body.v1-blue .cal-weather { font-size: 8px; }
  body.v1-blue :is(#orders, #fieldHome) .day-route-guide {
    flex-direction: column;
    align-items: stretch;
  }
  body.v1-blue :is(#orders, #fieldHome) .day-route-guide button {
    width: 100%;
  }
  body.v1-blue :is(#orders, #fieldHome) .field-note {
    width: calc(100% - 38px);
  }
}

@media (max-width: 350px) {
  body.v1-blue .calendar-grid { gap: 2px; }
  body.v1-blue .calendar-day,
  body.v1-blue .calendar-day:nth-child(7n) { padding-left: 1px; padding-right: 1px; }
  body.v1-blue #appBox .cal-item { font-size: 8px; padding-left: 1px; padding-right: 1px; }
}

body.v1-blue .cal-item.day-note{background:#edf2fc;color:#355a93;border:1px solid #dbe5f7}
body.v1-blue .cal-item.day-note.rest{background:#eff3f8;color:#5d718b}
body.v1-blue .cal-item.day-note.tentative{background:#f0edff;color:#6555a5}
body.v1-blue .day-note-add{min-height:40px;white-space:nowrap;font-size:12px}
body.v1-blue .day-note-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:9px;padding:11px 12px;border:1px solid #e1e9f4;border-radius:13px;background:#f8fbff}
body.v1-blue .day-note-row>div{min-width:0}
body.v1-blue .day-note-row b{margin-left:6px;color:#1b385b;font-size:13px}
body.v1-blue .day-note-row small{display:block;margin-top:5px;color:#75859b;font-size:11px;line-height:1.45}
body.v1-blue .day-note-row button{padding:7px 9px;min-width:55px;font-size:11px}
body.v1-blue .day-note-kind{padding:3px 6px;border-radius:6px;background:#edf2fc;color:#355a93;font-size:10px;font-weight:800}
body.v1-blue .day-note-kind.rest{background:#eef2f7;color:#62758f}
body.v1-blue .day-note-kind.tentative{background:#f0edff;color:#6555a5}
body.v1-blue #scheduleDayNoteOverlay .edit-sheet{background:#f3f7fd}
body.v1-blue #scheduleDayNoteOverlay .edit-actions{grid-template-columns:1fr 2fr}
@media(max-width:400px){body.v1-blue .day-mode-head{flex-wrap:wrap}body.v1-blue .day-note-add{width:100%}}
