:root{
  --lstops-blue:#1677ff;
  --lstops-orange:#ff922b;
  --lstops-yellow:#f4c430;
  --lstops-green:#2fb344;
  --lstops-red:#e03131;
  --lstops-ink:#17313a;
  --lstops-muted:#6f848d;
  --lstops-line:#dce5e9;
  --lstops-surface:#ffffff;
  --lstops-soft:#f6f9fa;
}
.lstops-panel{overflow:hidden}
.lstops-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}
.lstops-heading h2{margin-bottom:4px}
.lstops-origin{font-size:12px;padding:5px 9px;border:1px solid var(--lstops-line);border-radius:999px}
.lstops-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin-top:16px}
.lstops-work-card{border:1px solid var(--lstops-line);border-radius:16px;padding:14px;background:var(--lstops-surface)}
.lstops-work-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.lstops-work-head small{display:block;margin-top:4px}
.lstops-semaphore{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px}
.lstops-semaphore form{margin:0}
.lstops-stage{width:100%;min-height:42px;border:0;border-radius:14px;font-weight:800;cursor:pointer;padding:8px 6px;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}
.lstops-stage:hover{transform:translateY(-1px);filter:saturate(1.08)}
.lstops-stage.received{background:#dcecff;color:#0b4c8c}
.lstops-stage.milling{background:#ffe3bd;color:#8a4700}
.lstops-stage.sintering{background:#fff3ad;color:#685500}
.lstops-stage.delivered{background:#d7f4df;color:#176a32}
.lstops-stage.is-active{outline:3px solid currentColor;outline-offset:1px;box-shadow:0 5px 18px rgba(20,50,70,.12)}
.lstops-more{display:flex;gap:8px;margin-top:9px}
.lstops-more select{flex:1}
.lstops-map-summary{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.lstops-map-pill{font-size:12px;border-radius:999px;background:#eef2f7;padding:5px 8px}
.lstops-muted{font-size:12px;color:var(--lstops-muted)}
.lstops-inventory{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:16px}
.lstops-stock{border:2px solid var(--lstops-line);border-radius:20px;padding:16px;background:var(--lstops-surface);box-shadow:0 8px 24px rgba(22,49,58,.06);transition:transform .15s ease,border-color .15s ease,background .15s ease}
.lstops-stock:hover{transform:translateY(-2px)}
.lstops-stock-top{display:flex;gap:12px;align-items:center}
.lstops-stock-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.75);font-size:22px;box-shadow:inset 0 0 0 1px rgba(23,49,58,.08)}
.lstops-stock-state{font-size:13px;font-weight:800;margin-top:4px}
.lstops-stock-metrics{display:grid;gap:5px;margin-top:12px;font-size:12px;color:var(--lstops-muted)}
.lstops-stock strong{display:block;font-size:16px}
.lstops-stock [data-value]{font-size:30px;font-weight:900;margin:7px 0}
.lstops-stock small{display:block}
.lstops-stock.is-stock-ok{border-color:#7bd58a;background:#f0fbf2}
.lstops-stock.is-stock-min{border-color:#ffb15c;background:#fff6e9}
.lstops-stock.is-stock-out{border-color:#f08b8b;background:#fff0f0}
.lstops-stock.is-stock-unknown{border-color:var(--lstops-line);background:var(--lstops-soft)}
.lstops-low{margin-top:10px;padding:9px 11px;border-radius:10px;background:#f4f6f9}
.lstops-low.is-alert{background:#fff1f1;color:#8a1f1f;font-weight:700}
.lstops-capture{margin-top:12px}
.lstops-capture .form-grid{align-items:end}
.lstops-oven{margin-top:14px;border-top:1px solid var(--lstops-line);padding-top:12px}
.lstops-oven-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px dashed var(--lstops-line)}
.lstops-dialog{border:0;border-radius:20px;max-width:760px;width:min(92vw,760px);padding:0;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.lstops-dialog::backdrop{background:rgba(10,20,35,.55)}
.lstops-dialog-body{padding:20px}
.lstops-dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:start}
.lstops-dialog-head button{border:0;background:transparent;font-size:26px;cursor:pointer}
.lstops-disc-layout{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:18px;margin-top:16px}
.lstops-teeth{display:flex;flex-direction:column;gap:8px}
.lstops-tooth-chip{border:1px solid #ccd5e2;border-radius:12px;background:white;padding:9px 11px;text-align:left;cursor:pointer}
.lstops-tooth-chip strong,.lstops-tooth-chip small{display:block}
.lstops-tooth-chip.is-active{outline:3px solid #3a6ee8}
.lstops-tooth-chip.is-done{background:#eef9f0}
.lstops-wheel{position:relative;aspect-ratio:1;border-radius:50%;border:18px solid #e9edf3;background:radial-gradient(circle,#fff 0 46%,#eef2f7 47% 55%,#fff 56%);max-width:360px;margin:auto}
.lstops-wheel-pos{position:absolute;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;border:1px solid #b9c5d6;background:#fff;font-weight:800;cursor:pointer}
.lstops-wheel-pos.is-selected{background:var(--lstops-orange);color:#fff;border-color:#b96500}
.lstops-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.lstops-admin-link{display:flex;align-items:center;gap:8px;min-height:38px;border-radius:10px;text-decoration:none}
.lstops-admin-link .lstops-nav-icon{width:22px;text-align:center}
.lstops-quick-movement{margin-top:18px}
.lstops-form-action{display:flex;align-items:flex-end}
.lstops-movement-list{display:grid;gap:8px}
.lstops-movement-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(90px,1fr) minmax(120px,1fr) minmax(90px,.8fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--lstops-line);border-radius:12px;background:var(--lstops-surface)}
@media(max-width:720px){
  .lstops-semaphore{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lstops-disc-layout{grid-template-columns:1fr}
  .lstops-wheel{max-width:280px}
  .lstops-stock [data-value]{font-size:26px}
  .lstops-movement-row{grid-template-columns:1fr 1fr}
}

.lstops-action-cell{min-width:300px}
.lstops-board-cell{display:grid;gap:8px;margin-bottom:8px}
.lstops-board-loading{font-size:12px;color:var(--lstops-muted)}
.lstops-board-work{display:grid;gap:6px;padding:7px;border:1px solid var(--lstops-line);border-radius:14px;background:var(--lstops-soft)}
.lstops-board-work-head{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:11px;color:var(--lstops-muted)}
.lstops-board-work-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;color:var(--lstops-ink)}
.lstops-board-actions{display:grid;grid-template-columns:repeat(4,minmax(58px,1fr));gap:5px}
.lstops-board-stage{min-height:38px;border:0;border-radius:999px;padding:7px 6px;font-size:11px;font-weight:900;line-height:1.05;cursor:pointer;box-shadow:0 3px 10px rgba(22,49,58,.08);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}
.lstops-board-stage:hover{transform:translateY(-1px);filter:saturate(1.12);box-shadow:0 6px 14px rgba(22,49,58,.12)}
.lstops-board-stage.received{background:#2387ff;color:#fff}
.lstops-board-stage.milling{background:#ff922b;color:#fff}
.lstops-board-stage.sintering{background:#ffd43b;color:#4d3e00}
.lstops-board-stage.delivered{background:#2fb344;color:#fff}
.lstops-board-stage.is-active{outline:3px solid rgba(23,49,58,.72);outline-offset:2px}
.lstops-board-stage.is-past{filter:saturate(.7);opacity:.74}
.lstops-board-current{font-size:11px;color:var(--lstops-muted);font-weight:700}
.lstops-board-mobile{margin:10px 0}
@media(max-width:1100px){
  .lstops-action-cell{min-width:250px}
  .lstops-board-actions{grid-template-columns:repeat(2,minmax(70px,1fr))}
}

.lstops-admin-quick{
  margin:8px 0 10px;
  padding:11px 12px !important;
  border:2px solid #7fc9c8 !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#eefafa,#ffffff) !important;
  display:flex !important;
  align-items:center;
  gap:10px;
  box-shadow:0 8px 18px rgba(15,119,122,.10);
}
.lstops-admin-quick:hover{border-color:#0f777a !important;transform:translateY(-1px)}
.lstops-admin-quick-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#0f777a;
  color:white;
  font-size:18px;
  flex:0 0 34px;
}
.lstops-admin-quick-copy{display:flex;flex-direction:column;line-height:1.15}
.lstops-admin-quick-copy strong{font-size:13px;letter-spacing:.03em;text-transform:uppercase}
.lstops-admin-quick-copy small{font-size:11px;opacity:.72;margin-top:3px}
.lstops-mobile-admin span{font-size:20px}
.lstops-mobile-admin small{font-weight:800}

.lstops-howto{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin:16px 0 18px;
  padding:14px 16px;
  border:1px solid #cfe2ea;
  border-radius:16px;
  background:#f7fbfd;
}
.lstops-howto p{margin:4px 0 0;color:var(--lstops-muted);line-height:1.45}
.lstops-howto-icon{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:#17313a;
  color:#fff;
  font-weight:900;
  flex:0 0 28px;
}
.lstops-card-help{
  display:block;
  margin-top:12px;
  padding-top:10px;
  border-top:1px dashed rgba(23,49,58,.14);
  color:var(--lstops-muted);
  line-height:1.35;
}
.lstops-disc-section{margin-top:18px}
.lstops-measure-legend{
  margin:8px 0 14px;
  padding:10px 12px;
  border-radius:12px;
  background:#f6f8fa;
  color:var(--lstops-muted);
  font-size:12px;
}
.lstops-disc-family{margin-top:16px}
.lstops-disc-family + .lstops-disc-family{padding-top:16px;border-top:1px solid var(--lstops-line)}
.lstops-disc-family-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:10px;
}
.lstops-disc-family-head h3{margin:0}
.lstops-disc-family-head p{margin:2px 0 0;color:var(--lstops-muted);font-size:12px}
.lstops-variant-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(125px,1fr));
  gap:9px;
}
.lstops-variant-card{
  min-height:96px;
  border:2px solid var(--lstops-line);
  border-radius:15px;
  padding:11px;
  text-align:left;
  background:#fff;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(22,49,58,.05);
  transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;
}
.lstops-variant-card:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(22,49,58,.09);
  border-color:#87bfc1;
}
.lstops-variant-card.is-stock-ok{border-color:#8bd49a;background:#f5fcf6}
.lstops-variant-card.is-stock-min{border-color:#ffb15c;background:#fff9ef}
.lstops-variant-card.is-stock-out{border-color:#e99191;background:#fff5f5}
.lstops-variant-card.is-stock-unknown{border-color:#d7e0e4;background:#fff}
.lstops-variant-measure{
  display:block;
  margin-bottom:8px;
  font-size:15px;
  font-weight:900;
  color:var(--lstops-ink);
}
.lstops-variant-card strong{display:block;font-size:13px}
.lstops-variant-card small{display:block;margin-top:4px;color:var(--lstops-muted);font-size:11px}
.lstops-guided-form{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 16px;
}
.lstops-field-help{
  display:block;
  margin-top:6px;
  color:var(--lstops-muted);
  font-size:11px;
  line-height:1.35;
  font-weight:500;
}
.lstops-guided-form .field select,
.lstops-guided-form .field input{min-height:42px}
.lstops-form-action{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  gap:4px;
}
@media(max-width:900px){
  .lstops-guided-form{grid-template-columns:1fr}
  .lstops-variant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){
  .lstops-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lstops-howto{padding:12px}
  .lstops-measure-legend{line-height:1.5}
}

.lstops-board-identity{display:flex;align-items:center;gap:10px;min-width:0}
.lstops-board-identity>div{min-width:0}
.lstops-board-identity small{display:block;margin-top:2px;color:var(--lstops-muted)}
.lstops-short-code{
  display:grid;
  place-items:center;
  min-width:58px;
  height:48px;
  padding:0 9px;
  border-radius:13px;
  background:#17313a;
  color:#fff;
  font-size:22px;
  line-height:1;
  font-weight:950;
  letter-spacing:.06em;
}
.lstops-queue-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:30px;
  padding:0 9px;
  border-radius:999px;
  background:#eef4f7;
  color:#17313a;
  font-weight:900;
}
.lstops-disc-quick{
  display:block;
  margin-top:10px;
  padding:10px 11px;
  border:1px solid #dce5e9;
  border-radius:13px;
  background:#fbfcfd;
}
.lstops-disc-quick>span{display:block;margin-bottom:5px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.lstops-disc-quick select{
  width:100%;
  min-height:40px;
  border:1px solid #cbd8de;
  border-radius:10px;
  background:#fff;
  padding:7px 10px;
  font-weight:750;
}
.lstops-disc-quick small{display:block;margin-top:5px;color:var(--lstops-muted);font-size:10px;line-height:1.25}
.lstops-day-link{display:inline-block;margin-top:9px;font-size:11px;font-weight:800;text-decoration:none}
.lstops-day-nav{
  display:flex !important;
  align-items:center;
  gap:9px;
  margin:5px 0;
  padding:10px 11px !important;
  border-radius:12px !important;
  background:#f7fafb;
}
.lstops-day-nav>span:first-child{font-size:19px}
.lstops-day-nav span:last-child{display:flex;flex-direction:column}
.lstops-day-nav strong{font-size:12px}
.lstops-day-nav small{font-size:10px;opacity:.7;margin-top:2px}
.lstops-day-panel{overflow:hidden}
.lstops-day-list{display:grid;gap:9px}
.lstops-day-row{
  display:grid;
  grid-template-columns:48px 72px minmax(180px,1fr) minmax(150px,220px);
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid var(--lstops-line);
  border-radius:15px;
  background:#fff;
}
.lstops-day-seq{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#eef4f7;
  font-weight:950;
}
.lstops-day-code{
  font-size:24px;
  font-weight:950;
  letter-spacing:.06em;
  color:#17313a;
}
.lstops-day-main strong,.lstops-day-main span,.lstops-day-disc small,.lstops-day-disc strong{display:block}
.lstops-day-main span,.lstops-day-disc small{margin-top:3px;color:var(--lstops-muted);font-size:11px}
.lstops-day-disc strong{margin-top:3px}
.lstops-detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
@media(max-width:760px){
  .lstops-day-row{grid-template-columns:42px 64px 1fr}
  .lstops-day-disc{grid-column:2 / -1}
  .lstops-short-code{min-width:52px;height:44px;font-size:20px}
}

/* Compact navigation: keep destinations and click targets unchanged. */
@media (min-width: 901px) {
  .lstops-day-nav {
    display:flex !important;
    min-height:38px;
    padding:7px 10px !important;
    margin:2px 0 !important;
    gap:9px;
    border-radius:9px !important;
    background:transparent;
  }
  .lstops-day-nav>span:first-child{font-size:15px}
  .lstops-day-nav strong{font-size:12px;line-height:1.2}
  .lstops-day-nav small{display:none}
  .lstops-admin-quick {
    display:flex;align-items:center;gap:9px;
    min-height:38px;padding:7px 10px !important;
    border-radius:9px !important;
    margin:2px 0 !important;
  }
  .lstops-admin-quick-icon{font-size:16px}
  .lstops-admin-quick-copy strong{font-size:12px;line-height:1.2}
  .lstops-admin-quick-copy small{display:none}
  .lstops-admin-link{min-height:38px;padding:7px 10px !important;font-size:12px}
}
/* Preserve readable, touch-sized controls on smaller screens. */
@media (max-width:900px) {
  .lstops-day-nav,.lstops-admin-quick{min-height:44px}
}

/* LST user administration: keep the heading's actions above decorative overlays.
   The user form's Cancel link must remain a native navigable anchor. */
.page-heading:has(> a[href="/admin/users"]),
.page-heading:has(> a[href="/admin/users/new"]) {
  position: relative;
  z-index: 5;
  isolation: isolate;
}
.page-heading > a[href="/admin/users"],
.page-heading > a[href="/admin/users/new"] {
  position: relative;
  z-index: 6;
  pointer-events: auto;
  cursor: pointer;
}
