.dsd-section{
  margin-top:26px;
  padding:22px;
  border:1px solid var(--dop-border,#ddd);
  border-radius:10px;
}
.dsd-section h3{
  font-size:18px;
  margin:0 0 10px;
}
.dsd-section p{
  font-size:12px;
  line-height:1.7;
  opacity:.75;
}
.dsd-controls{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0;
}
.dsd-controls label{
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:10px;
  font-weight:800;
}
.dsd-controls select,
.dsd-controls input{
  width:100%;
  min-width:0;
  height:42px;
  padding:8px;
  border:1px solid var(--dop-border,#ddd);
  border-radius:6px;
  background:var(--dop-bg,#fff);
  color:var(--dop-text,#111);
}
.dsd-tools{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:16px 0;
}
.dsd-tools button,
.dsd-actions button{
  padding:11px 13px;
  border:1px solid var(--dop-border,#ddd);
  border-radius:6px;
  background:transparent;
  color:inherit;
  font:700 11px Montserrat,sans-serif;
  cursor:pointer;
}
.dsd-tools button.active{
  background:var(--dop-text,#111);
  color:var(--dop-bg,#fff);
}
.dsd-vehicle{
  width:min(100%,440px);
  margin:20px auto;
  padding:18px;
  border:2px solid var(--dop-border,#ddd);
  border-radius:35px 35px 12px 12px;
  background:var(--dop-surface,#f6f6f6);
}
.dsd-front{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  font-size:11px;
  font-weight:800;
}
.dsd-front i{font-size:23px}
.dsd-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
}
.dsd-cell{
  aspect-ratio:1;
  min-width:0;
  border:1px solid var(--dop-border,#ddd);
  border-radius:6px;
  background:var(--dop-bg,#fff);
  color:var(--dop-text,#111);
  font:800 10px Montserrat,sans-serif;
  cursor:pointer;
}
.dsd-cell[data-kind="aisle"]{
  background:transparent;
  border:1px dashed var(--dop-border,#ddd);
  opacity:.55;
}
.dsd-cell[data-kind="door"]{
  border-style:dashed;
  font-size:9px;
}
.dsd-cell[data-kind="driver"]{
  background:var(--dop-text,#111);
  color:var(--dop-bg,#fff);
}
.dsd-cell[data-kind="blocked"]{
  background:repeating-linear-gradient(
    45deg,
    transparent,
    transparent 5px,
    var(--dop-border,#ddd) 5px,
    var(--dop-border,#ddd) 10px
  );
}
.dsd-cell:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
.dsd-status{
  margin-top:15px;
  padding:12px;
  border:1px solid var(--dop-border,#ddd);
  border-radius:6px;
  font-size:12px;
  line-height:1.7;
}
.dsd-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
.dsd-actions .dsd-primary{
  background:var(--dop-text,#111);
  color:var(--dop-bg,#fff);
}
@media(max-width:650px){
  .dsd-section{padding:14px}
  .dsd-controls{grid-template-columns:1fr}
  .dsd-vehicle{padding:12px}
  .dsd-grid{gap:5px}
  .dsd-cell{font-size:9px}
}

/* Kenyan vehicle layout presentation */
.dsd-vehicle{
  border-radius:38px 38px 14px 14px;
  box-shadow:inset 0 0 0 4px var(--dop-surface,#f6f6f6);
}
.dsd-front{
  padding-bottom:12px;
  border-bottom:1px solid var(--dop-border,#ddd);
}
.dsd-cell[data-kind="door"]{
  border:2px dashed currentColor;
  background:transparent;
}
.dsd-cell[data-kind="driver"]{
  font-size:10px;
}
.dsd-grid{
  padding-top:14px;
}
