.work-grid.rental-layout {
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 1fr);
  grid-template-areas: "project queue";
}
.rental-layout > div { grid-area:project; }
.rental-queue { grid-area:queue; align-self:start; scroll-margin-top:16px; container-type:inline-size; }
.rental-queue-title {
  display:flex; align-items:center; gap:9px; margin:0; padding:14px var(--inset);
  background:var(--deep); color:#f6f8ed; font-size:16px; letter-spacing:-.025em;
}
.queue-mobile-title {display:none;}
.print-board {
  --spine: 43%; --arm: 20px; --inset: 20px;
  --waiting: #456784; --running: #217351; --handling: #a24f26; --you: #7a456c;
  isolation: isolate; position: relative; overflow: hidden; border-radius: 18px;
  border: 1px solid #cbd0c4; color: var(--ink); background: #fafaf4;
  box-shadow: 0 8px 28px #1e372a0a;
}
.queue-tabs { display:flex;gap:6px;padding:8px;background:#eeeee5;overflow:auto; }
.queue-tabs button { flex:1 0 auto;padding:9px 12px;min-height:42px;border:1px solid transparent;border-radius:6px;background:transparent; }
.queue-tabs button[aria-pressed=true] { border-color:var(--line);background:var(--surface); }
.queue-tabs small { margin-right:8px; }
.queue-hero {
  position: relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px;
  padding:20px var(--inset) 22px;
  background:radial-gradient(ellipse at 75% 36%,#e5eddf 0,transparent 63%);
}
.queue-hero-copy { align-self:center; min-width:0; }
.queue-kicker,.queue-note>small,.queue-machine figcaption,.queue-model-stamp { font:10px var(--mono);letter-spacing:.11em; }
.queue-kicker { display:flex;align-items:center;gap:8px;color:var(--teal);font-weight:700; }
.queue-kicker i { display:block;width:17px;height:3px;background:var(--teal); }
.queue-hero h3 { font-size:clamp(21px,5.5cqi,29px);letter-spacing:-.055em;margin:8px 0 12px; }
.queue-hero p { font-size:14px;color:var(--muted); }
.queue-eta { display:block;font-weight:620;font-size:clamp(30px,8cqi,48px);letter-spacing:-.065em;line-height:1.05;font-variant-numeric:tabular-nums; }
.queue-pill { display:inline-block;margin-top:12px;padding:4px 10px;border:1px solid #c1cec0;border-radius:50px;color:var(--teal);font-size:12px; }
.queue-hours {display:block;margin-top:9px;color:var(--muted);font-size:11px;}
.queue-machine { justify-self:end; align-self:start; width:clamp(82px,25cqi,138px); position:relative; }
.queue-photo {
  position:relative;display:grid;place-items:center; aspect-ratio:1; overflow:hidden;
  background-color:#e5eade;
  background-image:linear-gradient(#6e896413 1px,transparent 1px),linear-gradient(90deg,#6e896413 1px,transparent 1px);
  background-size:15px 15px;border:1px solid #bac7b3;border-radius:13px;
}
.queue-photo img { width:82%;height:82%;object-fit:contain; filter:drop-shadow(0 7px 4px #2d412719); }
.queue-cross,.queue-model-stamp { position:absolute;color:#485e49; }
.queue-cross { top:6px;left:10px;font:15px var(--mono); }
.queue-model-stamp { bottom:7px;right:10px;font-size:9px; }
.queue-machine figcaption {margin-top:7px;color:var(--muted);font-size:8px;}
.queue-manifest { position:relative; background-image:radial-gradient(#78867129 .7px,transparent .8px);background-size:17px 17px; }
.queue-rail { list-style:none;margin:0;padding:0; }
.queue-row {
  --track:var(--waiting);position:relative; min-height:72px; display:grid;
  grid-template-columns:var(--spine) 1fr; align-items:center;
}
.queue-row::before,.queue-row::after { content:'';position:absolute;left:var(--spine);transform:translateX(-50%); width:5px; background:var(--track); }
.queue-row::before { top:0;bottom:0; }
.queue-row::after { display:none; }
.queue-row:last-child { padding-bottom:14px; }
.queue-row:last-child::before { bottom:50%; }
.queue-pin { position:absolute;left:var(--spine);top:50%;z-index:1;width:15px;height:15px; transform:translate(-50%,-50%); border-radius:50%;background:var(--track);border:3px solid #fafaf4;box-shadow:0 0 0 1.5px var(--track); }
.queue-note { position:relative; grid-column:2; margin-left:var(--arm); margin-right:14px; padding:10px 0; justify-self:start; min-width:0; }
.queue-note::before { content:'';position:absolute;width:calc(var(--arm) - 9px);left:calc(-1 * var(--arm) + 3px);top:50%;height:1px;background:var(--track);opacity:.7; }
.queue-note>small { display:block;color:var(--track);font-weight:700; }
.queue-note h4 { margin:4px 0 3px;font-size:clamp(15px,3.6cqi,19px);letter-spacing:-.04em;line-height:1.2; }
.queue-note p { font-size:13px;color:var(--muted); }
.queue-note p b { color:var(--ink);white-space:nowrap; }
.queue-row:nth-child(even) .queue-note { grid-column:1;justify-self:end;text-align:right;margin-left:12px;margin-right:var(--arm); }
.queue-row:nth-child(even) .queue-note::before { left:auto;right:calc(-1 * var(--arm) + 3px); }
.queue-row.is-active { --track:var(--running); }
.queue-row.is-handling { --track:var(--handling); }
.queue-row.is-you,.queue-row.is-paused { --track:var(--you); }
.queue-row.is-paused .queue-pin { border-radius:3px; }
.queue-row.is-you .queue-note h4 { color:var(--you); }
.queue-row.is-you .queue-pin { width:20px;height:20px; }
.queue-row.is-gap { min-height:56px; }
.queue-row.is-gap h4 { display:none; }
.queue-row.is-gap button,.queue-pending button { background:none;border:0;color:var(--teal);text-decoration:underline;padding:6px 0;font-size:13px; }
.queue-key {display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;padding:10px 16px 16px;color:var(--muted);font-size:11px;}
.queue-key span {display:inline-flex;align-items:center;gap:5px;}
.queue-key span::before {content:'';height:3px;width:12px;border-radius:3px;background:var(--key);}
.key-running {--key:var(--running)} .key-wait {--key:var(--waiting)} .key-shop {--key:var(--handling)} .key-own {--key:var(--you)}
.queue-foot { padding:11px var(--inset);font-size:11px;color:var(--muted);border-top:1px solid var(--line);background:#f1f3e9; }
.queue-foot span,.queue-shipping { display:inline-flex;align-items:center;gap:7px; }
.queue-pending {padding:24px;}
.queue-disclosure summary {padding:13px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:pointer;border-block:1px solid var(--line);}
.queue-disclosure summary::marker {content:'';}
.queue-disclosure summary::-webkit-details-marker {display:none;}
.queue-disclosure:not([open]) .queue-less,.queue-disclosure[open] .queue-more {display:none;}
.queue-disclosure[open] summary svg {transform:rotate(180deg);}
.queue-shipping {min-height:44px;}
.private-turn b {font-size:32px;color:var(--teal);margin-right:10px;}
.ops-task {display:flex;flex-wrap:wrap;align-items:start;gap:8px 16px;border-bottom:1px solid var(--line);padding:12px 0;}
.ops-task time {min-width:135px;font-size:13px;font-weight:700;color:var(--teal);}
.ops-task small {display:block;font-size:12px;color:var(--muted);margin-block:4px;}
.queue-calendar {margin:24px 0;border-block:1px solid var(--line);padding:14px 0;}
.queue-calendar summary {cursor:pointer;font-weight:700;}
.queue-calendar form {margin-top:16px;}
.calendar-date {display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin:12px 0;}
@media (prefers-reduced-motion:no-preference){
  .queue-arrive .queue-note {animation:queue-annotate .5s ease-out both;}
  .queue-arrive .queue-row:nth-child(2) .queue-note {animation-delay:80ms;}
  .queue-arrive .queue-row:nth-child(3) .queue-note {animation-delay:160ms;}
  .queue-arrive .queue-row:nth-child(n+4) .queue-note {animation-delay:230ms;}
  .queue-arrive .queue-row::before {transform-origin:top;animation:queue-thread .5s ease-out backwards;}
  .queue-row.is-active .queue-pin {animation:queue-active 2s ease-out 3;}
  @keyframes queue-annotate {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
  @keyframes queue-thread {from{transform:translateX(-50%) scaleY(0)}to{transform:translateX(-50%) scaleY(1)}}
  @keyframes queue-active {50%{box-shadow:0 0 0 6px #21735126;}}
}
@media(min-width:821px) and (min-height:760px) {
  .rental-queue:not(:has(.queue-row:nth-child(n+7))) {position:sticky;top:12px;}
}
@media(width < 821px){
  .work-grid.rental-layout {grid-template-columns:minmax(0,1fr);grid-template-areas:"project";}
  .print-board {--spine:24px;--inset:16px;border-radius:12px;}
  .rental-queue {grid-area:auto;background:linear-gradient(115deg,#fafbf5 22%,#eaf0e4 100%);box-shadow:none;}
  .rental-queue-title {padding:14px var(--inset) 0;background:none;color:var(--teal);font:700 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;}
  .rental-queue-title > svg,.queue-desktop-title,.rental-printer .queue-machine figcaption {display:none;}
  .queue-mobile-title {display:inline;}
  .rental-printer {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:5px var(--inset) 14px;align-items:center;}
  .rental-machine h3 {font-size:clamp(19px,6.4cqi,24px);line-height:1.15;margin:0 0 6px;letter-spacing:-.045em;}
  .rental-selected {display:inline-flex;gap:4px;align-items:center;border-radius:12px;padding:2px 8px;background:#e0ebdc;color:#2f553b;font-size:11px;font-weight:650;}
  .rental-printer .queue-machine {width:clamp(55px,18cqi,74px);}
  .rental-printer .queue-photo {border-radius:8px;}
  .rental-printer .queue-cross,.rental-printer .queue-model-stamp {display:none;}
  .rental-start {grid-column:1/-1;border-top:1px solid #d5ddce;padding-top:10px;}
  .rental-start > span {display:flex;gap:5px;align-items:center;color:var(--muted);font-size:12px;font-weight:650;}
  .rental-start .queue-eta {font-size:clamp(20px,6.5cqi,26px);letter-spacing:-.045em;line-height:1.2;margin:3px 0;}
  .rental-start .queue-eta::first-letter {text-transform:uppercase;}
  .rental-start small,.rental-count {font-size:12px;color:var(--muted);}
  .rental-count {margin-left:auto;font-weight:500;}
  .rental-queue .queue-disclosure > summary {min-height:44px;gap:8px;margin:0;padding:9px var(--inset);border-bottom:none;background:#f4f6ed;color:var(--teal);font-size:13px;}
  .queue-disclosure[open] > summary {border-bottom:1px solid var(--line);}
  .rental-queue:has(.queue-disclosure:not([open])) .queue-foot {display:none;}
  .queue-note,.queue-row:nth-child(even) .queue-note {grid-column:2;justify-self:start;text-align:left;margin-left:var(--arm);margin-right:12px;}
  .queue-row:nth-child(even) .queue-note::before {left:calc(-1 * var(--arm) + 3px);right:auto;}
  .queue-tabs small {display:none;}
}
