/* Fleet Command — private staff operations workspace. */
.idev-shell {
  --idev-deck: #171E28;
  --idev-deck-active: #222D3A;
  --idev-deck-line: #34404F;
  --idev-deck-text: #F3F6F8;
  --idev-deck-muted: #B5C0CC;
  --idev-signal: #FF7B8A;
  max-width: 1560px;
  margin: 0 auto;
  color: var(--ink);
}
.idev-command {
  position: relative;
  margin-bottom: 20px;
  border: 1px solid var(--idev-deck-line);
  border-radius: 16px;
  background: var(--idev-deck);
  box-shadow: 0 12px 32px rgba(16,24,40,.12);
  color: var(--idev-deck-text);
  overflow: hidden;
}
.idev-command-watermark {
  position: absolute;
  top: -34px;
  right: 28px;
  width: 210px;
  height: 210px;
  color: var(--idev-deck-text);
  opacity: .045;
  pointer-events: none;
}
.idev-heading {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 30px 26px;
}
.idev-command-copy { max-width: 780px; }
.idev-heading h1 {
  margin: 9px 0 8px;
  color: var(--idev-deck-text);
  font-size: clamp(30px,3vw,42px);
  line-height: 1.08;
  letter-spacing: -.04em;
}
.idev-heading p {
  max-width: 700px;
  margin: 0;
  color: var(--idev-deck-muted);
  font-size: 14px;
  line-height: 1.65;
}
.idev-internal {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--idev-signal);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.idev-internal svg { width: 14px; height: 14px; }
.idev-add-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  white-space: nowrap;
  box-shadow: 0 6px 18px rgba(208,1,27,.24);
}
.idev-add-button svg { width: 17px; height: 17px; }
.idev-categories {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid var(--idev-deck-line);
}
.idev-categories a {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 98px;
  padding: 18px 30px;
  color: var(--idev-deck-text);
  text-decoration: none;
  transition: background .18s ease,color .18s ease;
}
.idev-categories a:first-child { border-right: 1px solid var(--idev-deck-line); }
.idev-categories a::after {
  position: absolute;
  right: 24px;
  bottom: 0;
  left: 24px;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: var(--red);
  content: "";
  opacity: 0;
  transform: scaleX(.6);
  transition: opacity .18s ease,transform .18s ease;
}
.idev-categories a:hover { background: rgba(243,246,248,.055); }
.idev-categories a.on { background: var(--idev-deck-active); }
.idev-categories a.on::after { opacity: 1; transform: scaleX(1); }
.idev-categories a:focus-visible,.idev-device a:focus-visible,.idev-clear:focus-visible,
.idev-shell button:focus-visible,.idev-shell input:focus-visible,.idev-shell select:focus-visible,
.idev-shell textarea:focus-visible {
  outline: 2px solid var(--red);
  outline-offset: 3px;
}
.idev-categories a:focus-visible { outline-color: var(--idev-signal); outline-offset: -4px; }
.idev-category-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  color: var(--idev-deck-muted);
}
.idev-categories a.on .idev-category-icon { color: var(--idev-signal); }
.idev-category-icon svg { width: 25px; height: 25px; }
.idev-category-copy { min-width: 0; }
.idev-categories b { display: block; font-size: 16px; line-height: 1.35; }
.idev-categories small {
  display: block;
  margin-top: 5px;
  color: var(--idev-deck-muted);
  font-size: 12px;
  line-height: 1.45;
}
.idev-categories strong {
  min-width: 36px;
  color: var(--idev-deck-text);
  font-size: 30px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.04em;
  text-align: right;
}
.idev-add-panel {
  margin-bottom: 20px;
  padding: 22px;
  border-color: color-mix(in srgb,var(--red) 22%,var(--line));
}
.idev-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 16px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--line);
}
.idev-panel-head h2 { margin: 0; font-size: 18px; }
.idev-panel-head p { margin: 5px 0 0; color: var(--muted); font-size: 14px; }
.idev-icon-button {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  margin: -8px -8px 0 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
}
.idev-icon-button:hover { background: var(--bg); color: var(--ink); }
.idev-icon-button svg { width: 19px; height: 19px; }
.idev-schedule {
  margin-bottom: 20px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--card);
  box-shadow: 0 2px 5px rgba(16,24,40,.035);
  overflow: hidden;
}
.idev-schedule-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--line);
}
.idev-schedule-head > div { display: flex; align-items: center; gap: 14px; min-width: 0; }
.idev-schedule-icon { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; border-radius: 10px; background: var(--danger-bg); color: var(--red); }
.idev-schedule-icon svg { width: 21px; height: 21px; }
.idev-schedule-head h2 { margin: 0; font-size: 19px; letter-spacing: -.02em; }
.idev-schedule-head p { margin: 4px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.idev-schedule-count { flex: 0 0 auto; color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; }
.idev-order-builder { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(330px,.75fr); }
.idev-order-inputs { min-width: 0; padding: 24px; background: var(--card); }
.idev-builder-title { display: flex; align-items: flex-start; gap: 11px; margin-bottom: 20px; }
.idev-builder-title > span { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 8px; background: var(--danger-bg); color: var(--red); font: 800 11px ui-monospace,monospace; }
.idev-builder-title > div { min-width: 0; }
.idev-builder-title h3 { margin: 0; font-size: 15px; line-height: 1.35; }
.idev-builder-title p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.idev-builder-title > svg { flex: 0 0 19px; width: 19px; height: 19px; margin-left: auto; color: var(--muted); }
.idev-schedule-formgrid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.idev-hour-input { position: relative; }
.idev-hour-input input { padding-right: 34px; }
.idev-hour-input span { position: absolute; top: 50%; right: 13px; color: var(--muted); font-size: 13px; transform: translateY(-50%); pointer-events: none; }
.idev-schedule-principles { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.idev-schedule-principles span { display: inline-flex; align-items: center; gap: 5px; color: var(--ink-2); font-size: 11px; font-weight: 650; }
.idev-schedule-principles svg { width: 13px; height: 13px; color: var(--red); }
.idev-slot-picker { min-width: 0; padding: 24px; background: #171E28; color: #F3F6F8; }
.idev-slot-picker .idev-builder-title > span { background: rgba(255,123,138,.13); color: #FF7B8A; }
.idev-slot-picker .idev-builder-title p,.idev-slot-picker .idev-builder-title > svg { color: #AAB6C4; }
.idev-schedule-preview { display: grid; gap: 9px; max-height: 420px; overflow-y: auto; scrollbar-width: thin; }
.idev-preview-placeholder { display: grid; place-items: center; min-height: 178px; padding: 20px; border: 1px dashed #435062; border-radius: 12px; color: #B5C0CC; text-align: center; }
.idev-preview-placeholder svg { width: 26px; height: 26px; margin-bottom: 10px; }
.idev-preview-placeholder p { margin: 0; font-size: 12px; line-height: 1.65; }
.idev-preview-placeholder.error { border-color: rgba(255,123,138,.55); color: #FFB4BD; }
.idev-slot-option { display: grid; gap: 8px; width: 100%; padding: 14px; border: 1px solid #3B4655; border-radius: 11px; background: #222D3A; color: #F3F6F8; text-align: left; cursor: pointer; transition: border-color .16s ease,background .16s ease,transform .16s ease; }
.idev-slot-option:hover { border-color: #8290A1; background: #273443; transform: translateY(-1px); }
.idev-slot-option.recommended { border-color: rgba(255,123,138,.65); }
.idev-slot-option.selected { border-color: #FF7B8A; background: #2C303B; box-shadow: 0 0 0 2px rgba(255,123,138,.16); }
.idev-slot-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.idev-slot-head b { font-size: 14px; }
.idev-slot-head > span { color: #FF9AA6; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.idev-slot-option > strong { font-size: 12px; line-height: 1.55; font-variant-numeric: tabular-nums; }
.idev-slot-meta { color: #B5C0CC; font-size: 11px; }
.idev-slot-choice { padding-top: 7px; border-top: 1px solid #3B4655; color: #FF9AA6; font-size: 11px; font-weight: 800; }
.idev-preview-reasons { color: #B5C0CC; font-size: 11px; }
.idev-preview-reasons summary { padding: 7px 0; cursor: pointer; }
.idev-preview-reasons ul { margin: 0; padding: 0 0 4px 18px; line-height: 1.55; }
.idev-builder-actions { display: grid; grid-template-columns: 1fr; gap: 9px; margin-top: 16px; }
.idev-builder-actions .btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 43px; }
.idev-builder-actions .btn:not(.primary) { border-color: #465264; background: transparent; color: #F3F6F8; }
.idev-builder-actions .btn:not(.primary):hover { background: #222D3A; }
.idev-builder-actions svg { width: 16px; height: 16px; }
.idev-weekboard-shell { border-top: 1px solid var(--line); background: var(--card); scroll-margin-top: 18px; }
.idev-weekboard-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 24px; }
.idev-weekboard-toolbar h3 { margin: 0; font-size: 15px; }
.idev-weekboard-toolbar p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }
.idev-weekboard-toolbar nav { display: flex; align-items: center; gap: 6px; }
.idev-week-nav { display: grid; place-items: center; width: 36px; min-height: 36px; padding: 0; }
.idev-week-nav svg { width: 16px; height: 16px; }
.idev-week-today { min-height: 36px; padding: 7px 12px; font-size: 11px; }
.idev-weekboard-scroll { overflow-x: auto; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); scrollbar-width: thin; }
.idev-weekboard { display: grid; grid-template-columns: 180px repeat(7,minmax(140px,1fr)); min-width: 1160px; }
.idev-weekboard-corner,.idev-weekday { min-height: 68px; padding: 13px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--bg); }
.idev-weekboard-corner { position: sticky; left: 0; z-index: 4; display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; font-weight: 750; }
.idev-weekboard-corner svg { width: 16px; height: 16px; }
.idev-weekday { color: var(--ink-2); text-align: center; }
.idev-weekday b { display: block; font-size: 11px; line-height: 1.45; }
.idev-weekday span { display: inline-block; margin-top: 5px; color: var(--red); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.idev-weekday.today { background: var(--danger-bg); color: var(--red); }
.idev-printer-lane { position: sticky; left: 0; z-index: 3; display: flex; flex-direction: column; justify-content: space-between; min-height: 150px; padding: 15px 13px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--card); }
.idev-printer-lane > div b { display: block; font-size: 14px; overflow-wrap: anywhere; }
.idev-lane-status { display: flex; align-items: center; gap: 5px; margin-top: 6px; color: var(--muted); font-size: 10px; }
.idev-lane-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--lane-status); }
.idev-printer-lane > span { margin: 10px 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.idev-printer-lane > strong { color: var(--ink-2); font-size: 12px; font-variant-numeric: tabular-nums; }
.idev-day-cell { position: relative; display: flex; flex-direction: column; gap: 7px; min-height: 150px; padding: 8px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--card); }
.idev-day-cell.today { background: color-mix(in srgb,var(--red) 2.5%,var(--card)); }
.idev-day-open { margin: auto; color: var(--line); font-size: 10px; font-weight: 700; }
.idev-day-load { margin-top: auto; color: var(--muted); font: 700 9px ui-monospace,monospace; text-align: right; }
.idev-board-job { min-width: 0; padding: 9px; border: 1px solid color-mix(in srgb,var(--red) 20%,var(--line)); border-left: 3px solid var(--red); border-radius: 8px; background: var(--card); box-shadow: 0 2px 6px rgba(16,24,40,.04); }
.idev-board-job.active { border-color: #171E28; background: #171E28; color: #F3F6F8; }
.idev-board-job.continued { border-left-style: dashed; }
.idev-board-job-time { display: flex; align-items: center; justify-content: space-between; gap: 6px; color: var(--muted); font-size: 9px; font-variant-numeric: tabular-nums; }
.idev-board-job-time b { color: var(--ink-2); font-size: 9px; }
.idev-board-job.active .idev-board-job-time,.idev-board-job.active .idev-board-job-time b { color: #B5C0CC; }
.idev-board-job h4 { margin: 7px 0; font-size: 11px; line-height: 1.45; overflow-wrap: anywhere; }
.idev-board-job-meta { display: grid; gap: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; overflow-wrap: anywhere; }
.idev-board-job-meta a { color: var(--red); font-weight: 800; text-decoration: none; }
.idev-board-job.active .idev-board-job-meta a { color: #FF9AA6; }
.idev-board-job-actions { display: flex; align-items: center; gap: 5px; margin-top: 8px; padding-top: 7px; border-top: 1px solid var(--line); }
.idev-board-job-actions form { margin: 0; }
.idev-board-job-actions button { display: inline-flex; align-items: center; gap: 4px; min-height: 28px; padding: 4px 6px; border: 0; border-radius: 5px; background: var(--bg); color: var(--ink-2); font-size: 9px; cursor: pointer; }
.idev-board-job-actions button:hover { color: var(--red); }
.idev-board-job-actions svg { width: 12px; height: 12px; }
.idev-board-job-actions .idev-job-cancel { margin-left: auto; color: var(--danger); }
.idev-board-job.active .idev-board-job-actions { border-color: #3B4655; }
.idev-board-job.active .idev-board-job-actions button { background: #273443; color: #F3F6F8; }
.idev-next-queue { padding: 16px 24px 20px; }
.idev-next-queue > h4 { display: flex; align-items: center; gap: 7px; margin: 0 0 12px; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
.idev-next-queue > h4 svg { width: 14px; height: 14px; }
.idev-next-queue > div { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; }
.idev-next-queue article { display: flex; align-items: center; gap: 9px; min-width: 0; padding: 11px; border: 1px solid var(--line); border-radius: 9px; background: var(--bg); }
.idev-queue-dot { flex: 0 0 7px; width: 7px; height: 7px; border-radius: 50%; background: var(--muted); }
.idev-queue-dot.active { background: var(--red); box-shadow: 0 0 0 3px var(--danger-bg); }
.idev-next-queue article > div { min-width: 0; }
.idev-next-queue article b { display: block; font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.idev-next-queue article div span { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.idev-queue-edit { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; margin-left: auto; border: 0; border-radius: 6px; background: transparent; color: var(--muted); cursor: pointer; }
.idev-queue-edit:hover { background: var(--card); color: var(--red); }
.idev-queue-edit svg { width: 14px; height: 14px; }
.idev-schedule-dialog { width: min(640px,calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 0; border: 1px solid var(--line); border-radius: 16px; background: var(--card); color: var(--ink); box-shadow: 0 28px 80px rgba(16,24,40,.28); overflow-y: auto; }
.idev-schedule-dialog::backdrop { background: rgba(15,23,32,.58); backdrop-filter: blur(3px); }
.idev-dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 22px; border-bottom: 1px solid var(--line); }
.idev-dialog-head span { color: var(--muted); font-size: 11px; }
.idev-dialog-head h3 { margin: 4px 0 0; font-size: 17px; }
.idev-job-edit-form { width: 100%; padding: 22px; }
.idev-job-save { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 44px; margin-top: 16px; }
.idev-job-save svg { width: 15px; height: 15px; }
.idev-dialog-cancel { padding: 0 22px 22px; }
.idev-dialog-cancel .btn { display: inline-flex; align-items: center; gap: 6px; width: 100%; min-height: 42px; justify-content: center; }
.idev-job-cancel { border-color: color-mix(in srgb,var(--danger) 35%,var(--line)); color: var(--danger); }
.idev-dialog-cancel .idev-job-cancel:hover { background: var(--danger-bg); }
.idev-history-drawer { border-top: 1px solid var(--line); }
.idev-history-drawer > summary { display: flex; align-items: center; gap: 9px; padding: 15px 24px; cursor: pointer; list-style: none; }
.idev-history-drawer > summary::-webkit-details-marker { display: none; }
.idev-history-drawer > summary > span:first-child { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 750; }
.idev-history-drawer > summary > svg { width: 14px; height: 14px; margin-left: auto; color: var(--muted); transition: transform .16s ease; }
.idev-history-drawer[open] > summary > svg { transform: rotate(180deg); }
.idev-job-history { padding: 0 24px 16px; }
.idev-history-job { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 11px 0; border-top: 1px solid var(--line); }
.idev-history-status { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 8px; border-radius: 999px; background: var(--bg); color: var(--muted); font-size: 10px; font-weight: 800; white-space: nowrap; }
.idev-history-status.completed { background: var(--info-bg); color: var(--info); }
.idev-history-status.cancelled { background: var(--danger-bg); color: var(--danger); }
.idev-history-job > div { min-width: 0; }
.idev-history-job b { display: block; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.idev-history-job div > span { display: block; margin-top: 2px; color: var(--muted); font-size: 11px; }
.idev-history-meta { text-align: right; }
.idev-history-meta time { display: block; color: var(--ink-2); font-size: 11px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.idev-schedule-empty { display: grid; place-items: center; grid-column: 1 / -1; min-height: 160px; padding: 24px; color: var(--muted); text-align: center; }
.idev-schedule-empty svg { width: 28px; height: 28px; }
.idev-schedule-empty p { margin: 10px 0 0; font-size: 13px; }
.idev-schedule-foot { display: flex; align-items: center; gap: 7px; padding: 10px 24px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.idev-schedule-foot svg { flex: 0 0 13px; width: 13px; height: 13px; }
.idev-device-schedule { margin: 0 22px 14px; padding: 15px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.idev-device-schedule h3 { display: flex; align-items: center; gap: 7px; margin: 0 0 10px; font-size: 13px; }
.idev-device-schedule h3 svg { width: 15px; height: 15px; color: var(--red); }
.idev-device-schedule h3 span { margin-left: auto; color: var(--muted); font-size: 12px; }
.idev-device-schedule > p { margin: 0; color: var(--muted); font-size: 12px; }
.idev-device-job { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; padding: 9px 0; }
.idev-device-job + .idev-device-job { border-top: 1px dashed var(--line); }
.idev-device-job > div { min-width: 0; }
.idev-device-job b { display: block; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.idev-device-job > div span { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.idev-device-job time { color: var(--ink-2); font-size: 11px; font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.idev-device-job time span { display: block; line-height: 1.55; }
.idev-device-job.active b { color: var(--red); }
.idev-order-ref { color: var(--red); font-weight: 800; text-decoration: none; }
.idev-order-ref:hover { text-decoration: underline; }
.idev-orders { margin-bottom: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); box-shadow: 0 2px 5px rgba(16,24,40,.035); overflow: hidden; }
.idev-order-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border-top: 1px solid var(--line); background: var(--line); }
.idev-order { min-width: 0; padding: 20px 22px; background: var(--card); scroll-margin-top: 24px; }
.idev-order:target { background: color-mix(in srgb,var(--red) 5%,var(--card)); box-shadow: inset 0 0 0 2px var(--red); }
.idev-order-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.idev-order-number { color: var(--red); font-family: ui-monospace,"Cascadia Mono",Consolas,monospace; font-size: 12px; font-weight: 800; text-decoration: none; overflow-wrap: anywhere; }
.idev-order-number:hover { text-decoration: underline; }
.idev-order h3 { margin: 12px 0 14px; font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; }
.idev-order-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 18px; margin: 0; }
.idev-order-facts > div { min-width: 0; }
.idev-order-facts .wide { grid-column: 1 / -1; }
.idev-order-facts dt { margin-bottom: 4px; color: var(--muted); font-size: 11px; font-weight: 700; }
.idev-order-facts dd { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin: 0; color: var(--ink-2); font-size: 12px; line-height: 1.55; overflow-wrap: anywhere; }
.idev-order-facts dd a { color: var(--red); text-decoration: none; }
.idev-order-facts dd a:hover { text-decoration: underline; }
.idev-order-facts dd svg { width: 12px; height: 12px; color: var(--muted); }
.idev-order-note { margin: 14px 0 0; padding-top: 12px; border-top: 1px dashed var(--line); color: var(--muted); font-size: 12px; line-height: 1.6; white-space: pre-wrap; }
.idev-equipment-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; border-top: 1px solid var(--line); background: var(--line); }
.idev-equipment-item { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 18px 22px; background: var(--card); }
.idev-equipment-icon { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 10px; background: var(--bg); color: var(--ink-2); }
.idev-equipment-icon svg { width: 20px; height: 20px; }
.idev-equipment-item > div { min-width: 0; }
.idev-equipment-item b { display: block; font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }
.idev-equipment-item > div > span { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.idev-powder {
  margin-bottom: 20px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--card);
  box-shadow: 0 2px 5px rgba(16,24,40,.035);
  overflow: hidden;
}
.idev-powder-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; }
.idev-powder-head > div { display: flex; align-items: center; gap: 14px; min-width: 0; }
.idev-powder-head h2 { margin: 0; font-size: 19px; letter-spacing: -.02em; }
.idev-powder-head p { margin: 4px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.idev-powder-link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--red); font-size: 13px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.idev-powder-link:hover { text-decoration: underline; }
.idev-powder-link:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; }
.idev-powder-link svg { width: 15px; height: 15px; }
.idev-powder-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--line); }
.idev-powder-item { min-width: 0; padding: 20px 22px; background: var(--card); }
.idev-powder-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--ink-2); font-size: 12px; font-weight: 800; letter-spacing: .035em; }
.idev-powder-label svg { flex: 0 0 16px; width: 16px; height: 16px; color: var(--muted); }
.idev-powder-item > strong { display: block; margin: 12px 0 8px; font-size: 30px; line-height: 1.1; font-variant-numeric: tabular-nums; letter-spacing: -.035em; }
.idev-powder-item > strong small { color: var(--muted); font-size: 13px; font-weight: 650; letter-spacing: 0; }
.idev-powder-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5px 10px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.idev-powder-meta b { color: var(--ink-2); font-weight: 750; }
.idev-powder-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 16px; padding: 10px 24px; color: var(--muted); font-size: 11px; }
.idev-powder-foot span { display: inline-flex; align-items: center; gap: 6px; }
.idev-powder-foot svg { width: 13px; height: 13px; }
.idev-kpis {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-bottom: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--card);
  overflow: hidden;
}
.idev-kpis > div {
  position: relative;
  min-width: 0;
  padding: 18px 22px;
  border-right: 1px solid var(--line);
}
.idev-kpis > div:last-child { border-right: 0; }
.idev-kpis > div > svg {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 18px;
  height: 18px;
  color: var(--muted);
}
.idev-kpis span { display: block; padding-right: 24px; color: var(--ink-2); font-size: 13px; font-weight: 650; }
.idev-kpis strong {
  display: inline-block;
  margin: 5px 9px 2px 0;
  font-size: 32px;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.035em;
}
.idev-kpis small { color: var(--muted); font-size: 12px; }
.idev-kpis .attention strong,.idev-kpis .attention > svg { color: var(--danger); }
.idev-filters {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--card);
}
.idev-search { position: relative; flex: 1 1 360px; max-width: 560px; }
.idev-search svg {
  position: absolute;
  top: 50%;
  left: 14px;
  width: 17px;
  height: 17px;
  color: var(--muted);
  transform: translateY(-50%);
  pointer-events: none;
}
.idev-search input { width: 100%; min-height: 44px; padding-left: 41px; }
.idev-filters select { min-width: 176px; min-height: 44px; }
.idev-filters .btn { min-height: 44px; }
.idev-clear {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--red);
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
}
.idev-result-count { margin-left: auto; padding-right: 4px; color: var(--muted); font-size: 12px; white-space: nowrap; }
.idev-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; align-items: start; }
.idev-device {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--card);
  box-shadow: 0 2px 5px rgba(16,24,40,.035);
  overflow: hidden;
  transition: border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.idev-device:hover {
  border-color: color-mix(in srgb,var(--device-status) 28%,var(--line));
  box-shadow: var(--shadow);
  transform: translateY(-2px);
}
.idev-device-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 22px 0; }
.idev-model { color: var(--ink-2); font-size: 12px; font-weight: 800; letter-spacing: .06em; }
.idev-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  background: color-mix(in srgb,var(--device-status) 10%,var(--card));
  color: color-mix(in srgb,var(--device-status) 70%,var(--ink));
  font-size: 12px;
  font-weight: 800;
}
.idev-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--device-status); }
.idev-identity { padding: 9px 22px 18px; border-bottom: 1px solid var(--line); }
.idev-identity h2 {
  margin: 0 0 8px;
  font-family: ui-monospace,"Cascadia Mono",Consolas,monospace;
  font-size: 24px;
  line-height: 1.25;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}
.idev-identity span { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12px; }
.idev-identity svg { width: 14px; height: 14px; }
.idev-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0; padding: 8px 22px 14px; }
.idev-facts > div { min-width: 0; padding: 10px 0; }
.idev-facts > div:nth-child(odd):not(.wide) { padding-right: 14px; }
.idev-facts > div.wide { grid-column: 1 / -1; }
.idev-facts dt { margin-bottom: 5px; color: var(--muted); font-size: 12px; font-weight: 700; }
.idev-facts dd { margin: 0; color: var(--ink-2); font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.idev-facts a { color: var(--red); text-decoration: none; }
.idev-facts a:hover { text-decoration: underline; }
.idev-maintenance {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0 22px 14px;
  padding: 12px;
  border-radius: 10px;
  background: var(--info-bg);
  color: var(--info);
}
.idev-maintenance.soon { background: var(--warn-bg); color: var(--warn-c); }
.idev-maintenance.due { background: var(--danger-bg); color: var(--danger); }
.idev-maintenance svg { flex: 0 0 17px; width: 17px; height: 17px; margin-top: 2px; }
.idev-maintenance b,.idev-maintenance span { display: block; font-size: 12px; line-height: 1.5; }
.idev-maintenance span { margin-top: 3px; color: var(--ink-2); }
.idev-note { margin: 0 22px 14px; color: var(--muted); font-size: 13px; line-height: 1.6; white-space: pre-wrap; }
.idev-activity { margin: 0 22px; padding: 16px 0 18px; border-top: 1px solid var(--line); }
.idev-activity h3,.idev-editor-body h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 13px; font-weight: 800; }
.idev-activity h3 svg { width: 15px; height: 15px; color: var(--muted); }
.idev-activity h3 span { margin-left: auto; color: var(--muted); font-size: 12px; font-weight: 600; }
.idev-event { display: grid; grid-template-columns: 84px minmax(0,1fr); gap: 12px; padding: 8px 0; }
.idev-event time { padding-top: 1px; color: var(--muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.idev-event b { display: block; font-size: 13px; line-height: 1.45; }
.idev-event span { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.idev-event p { margin: 5px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; white-space: pre-wrap; }
.idev-no-events { margin: 0; color: var(--muted); font-size: 13px; }
.idev-editor { border-top: 1px solid var(--line); }
.idev-editor > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 50px;
  padding: 12px 22px;
  color: var(--ink-2);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
  transition: background .16s ease,color .16s ease;
}
.idev-editor > summary::-webkit-details-marker { display: none; }
.idev-editor > summary:hover { background: var(--bg); color: var(--red); }
.idev-editor > summary:focus-visible { outline: 2px solid var(--red); outline-offset: -3px; }
.idev-editor > summary svg { width: 16px; height: 16px; }
.idev-editor > summary .idev-chevron { margin-left: auto; transition: transform .18s ease; }
.idev-editor[open] > summary .idev-chevron { transform: rotate(180deg); }
.idev-editor-body { padding: 22px; border-top: 1px solid var(--line); background: var(--bg); }
.idev-editor-body > form + form { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--line); }
.idev-formgrid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.idev-field { min-width: 0; }
.idev-field.idev-span2 { grid-column: span 2; }
.idev-field label { display: block; margin-bottom: 6px; color: var(--ink-2); font-size: 12px; font-weight: 650; }
.idev-field input,.idev-field select,.idev-field textarea { width: 100%; min-height: 44px; font-size: 14px; }
.idev-field textarea { resize: vertical; }
.idev-form-actions { display: flex; justify-content: flex-end; margin-top: 16px; }
.idev-form-actions .btn { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; }
.idev-form-actions svg { width: 16px; height: 16px; }
.idev-delete-form { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.idev-delete-form > div { min-width: 0; }
.idev-delete-form h3 { color: var(--danger); }
.idev-delete-form p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.idev-delete-button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 7px; min-height: 44px; border-color: var(--danger); background: var(--card); color: var(--danger); white-space: nowrap; transition: background .16s ease,color .16s ease; }
.idev-delete-button:hover { background: var(--danger-bg); }
.idev-delete-button:focus-visible { outline: 2px solid var(--danger); outline-offset: 2px; }
.idev-delete-button svg { width: 16px; height: 16px; }
.idev-recycle { margin-top: 28px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); box-shadow: 0 2px 5px rgba(16,24,40,.035); overflow: hidden; }
.idev-recycle .idev-schedule-icon { background: var(--bg); color: var(--ink-2); }
.idev-recycle-count { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: var(--bg); color: var(--ink-2); font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; }
.idev-recycle-list { display: grid; gap: 1px; border-top: 1px solid var(--line); background: var(--line); }
.idev-recycled-device { display: grid; grid-template-columns: minmax(180px,1fr) minmax(280px,1.2fr) auto; align-items: center; gap: 24px; min-width: 0; padding: 20px 24px; background: var(--card); }
.idev-recycled-identity { min-width: 0; }
.idev-recycled-identity h3 { margin: 5px 0; font-family: ui-monospace,"Cascadia Mono",Consolas,monospace; font-size: 18px; line-height: 1.3; overflow-wrap: anywhere; }
.idev-recycled-identity > span:last-child { display: block; color: var(--muted); font-size: 12px; line-height: 1.5; }
.idev-recycled-meta { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 0; }
.idev-recycled-meta > div { min-width: 0; }
.idev-recycled-meta dt { margin-bottom: 5px; color: var(--muted); font-size: 11px; font-weight: 700; }
.idev-recycled-meta dd { margin: 0; color: var(--ink-2); font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.idev-restore-button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; white-space: nowrap; }
.idev-restore-button:hover { border-color: var(--red); background: var(--danger-bg); color: var(--red); }
.idev-restore-button svg { width: 16px; height: 16px; }
.idev-recycle-empty { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 96px; padding: 24px; border-top: 1px solid var(--line); color: var(--muted); }
.idev-recycle-empty svg { flex: 0 0 20px; width: 20px; height: 20px; }
.idev-recycle-empty p { margin: 0; font-size: 13px; line-height: 1.6; }
.idev-empty { border: 1px dashed var(--line); border-radius: 16px; background: var(--card); }
.idev-empty h2 { margin: 12px 0 6px; font-size: 19px; }
.idev-empty p { margin: 0 0 16px; color: var(--muted); font-size: 14px; }
[data-theme="dark"] .idev-status {
  background: color-mix(in srgb,var(--device-status) 18%,var(--card));
  color: color-mix(in srgb,var(--device-status) 55%,#F3F6F8);
}
@media (min-width: 1500px) { .idev-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 1100px) {
  .idev-order-builder { grid-template-columns: 1fr; }
  .idev-schedule-preview { max-height: 360px; }
  .idev-builder-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .idev-next-queue > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1000px) {
  .idev-grid { grid-template-columns: 1fr; }
  .idev-kpis > div { padding: 16px; }
  .idev-result-count { display: none; }
  .idev-equipment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .idev-powder-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .idev-recycled-device { grid-template-columns: minmax(0,1fr) auto; }
  .idev-recycled-meta { grid-column: 1; grid-row: 2; }
  .idev-recycled-device > form { grid-column: 2; grid-row: 1 / span 2; }
}
@media (max-width: 720px) {
  .idev-heading { flex-direction: column; gap: 18px; padding: 24px 20px; }
  .idev-add-button { width: 100%; }
  .idev-command-watermark { right: -24px; width: 170px; height: 170px; }
  .idev-categories { grid-template-columns: 1fr; }
  .idev-categories a { min-height: 88px; padding: 16px 20px; }
  .idev-categories a:first-child { border-right: 0; border-bottom: 1px solid var(--idev-deck-line); }
  .idev-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .idev-kpis > div:nth-child(2) { border-right: 0; }
  .idev-kpis > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .idev-filters { flex-wrap: wrap; }
  .idev-search { flex-basis: 100%; max-width: none; }
  .idev-filters select { flex: 1 1 160px; min-width: 0; }
  .idev-filters .btn { min-height: 44px; }
  .idev-formgrid,.idev-schedule-formgrid { grid-template-columns: 1fr; }
  .idev-field.idev-span2 { grid-column: auto; }
  .idev-schedule-head { flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px 20px; }
  .idev-schedule-head > div { width: 100%; }
  .idev-schedule-count { margin-left: 56px; }
  .idev-order-inputs,.idev-slot-picker { padding: 20px; }
  .idev-weekboard-toolbar { align-items: flex-start; padding: 16px 20px; }
  .idev-weekboard-toolbar nav { flex: 0 0 auto; }
  .idev-week-today { display: none; }
  .idev-next-queue { padding: 16px 20px; }
  .idev-history-job { grid-template-columns: auto minmax(0,1fr); }
  .idev-history-meta { grid-column: 2; text-align: left; }
  .idev-schedule-foot { padding: 10px 20px; }
  .idev-powder-head { flex-direction: column; align-items: flex-start; gap: 8px; padding: 18px 20px; }
  .idev-order-list { grid-template-columns: 1fr; }
  .idev-powder-link { margin-left: 56px; }
  .idev-powder-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .idev-powder-item { padding: 18px 20px; }
  .idev-powder-foot { padding: 10px 20px; }
  .idev-add-panel { padding: 16px; }
  .idev-editor-body { padding: 16px; }
  .idev-facts a { display: inline-flex; align-items: center; min-height: 44px; }
}
@media (max-width: 440px) {
  .idev-device-top,.idev-identity { padding-left: 16px; padding-right: 16px; }
  .idev-facts,.idev-activity { margin-left: 0; margin-right: 0; padding-left: 16px; padding-right: 16px; }
  .idev-maintenance,.idev-note { margin-left: 16px; margin-right: 16px; }
  .idev-editor > summary { padding-left: 16px; padding-right: 16px; }
  .idev-event { grid-template-columns: 1fr; gap: 3px; }
  .idev-equipment-grid { grid-template-columns: 1fr; }
  .idev-delete-form { flex-direction: column; align-items: stretch; }
  .idev-delete-button { width: 100%; }
  .idev-recycled-device { grid-template-columns: 1fr; gap: 16px; padding: 18px 20px; }
  .idev-recycled-meta { grid-column: auto; grid-row: auto; grid-template-columns: 1fr; }
  .idev-recycled-device > form { grid-column: auto; grid-row: auto; }
  .idev-restore-button { width: 100%; }
  .idev-builder-actions { grid-template-columns: 1fr; }
  .idev-builder-actions .btn { width: 100%; }
  .idev-next-queue > div { grid-template-columns: 1fr; }
  .idev-job-edit-form { box-sizing: border-box; }
  .idev-history-job { grid-template-columns: 1fr; align-items: start; }
  .idev-history-meta { grid-column: auto; }
  .idev-kpis strong { font-size: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  .idev-categories a,.idev-categories a::after,.idev-device,.idev-slot-option,
  .idev-editor > summary,.idev-editor > summary .idev-chevron,.idev-delete-button { transition: none; }
  .idev-device:hover,.idev-slot-option:hover { transform: none; }
}
