/* PED-001 · Panel de pedidos */

.orders-status-card{
  margin-bottom:18px;
}

.orders-setting-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}

.orders-setting-copy{
  max-width:680px;
}

.orders-setting-copy h3,
.orders-mode-card h3{
  margin:4px 0 8px;
}

.orders-setting-copy p:last-child,
.orders-mode-card>p{
  margin-bottom:0;
}

.orders-mode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.orders-mode-card{
  display:flex;
  flex-direction:column;
}

.orders-mode-card .orders-switch{
  margin-top:auto;
  padding-top:18px;
}

.orders-switch{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  cursor:pointer;
}

.orders-switch input{
  width:20px;
  height:20px;
  margin:0;
}

.orders-state{
  margin-top:12px;
}

.orders-state.on{
  color:#486338;
}

.orders-state.off{
  color:#7d6750;
}

.orders-disabled-note{
  margin-top:18px;
}

#view-orders .settings-save{
  margin-top:20px;
}

@media(max-width:760px){
  .orders-mode-grid{
    grid-template-columns:1fr;
  }

  .orders-setting-row{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* ==========================================================
   PED-002A · Disponibilidad operativa
   ========================================================== */

.orders-operational{
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid #ddd8ca;
}

.orders-operational-section{
  margin-bottom:18px;
}

.orders-operational-label{
  display:block;
  margin-bottom:6px;
  color:#777565;
  font-size:10px;
  font-weight:700;
  letter-spacing:1.35px;
}

.orders-live-status{
  margin:0 0 12px;
  color:#486338;
  font-size:13px;
  font-weight:700;
}

.orders-live-status.paused{
  color:#8a5a2b;
}

.orders-pause-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.orders-pause-actions .btn{
  min-height:34px;
  padding:7px 10px;
  font-size:11px;
}

.orders-schedule-details{
  margin:18px 0;
  border-top:1px solid #e1dccf;
  border-bottom:1px solid #e1dccf;
}

.orders-schedule-details>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:14px 0;
  cursor:pointer;
  list-style:none;
}

.orders-schedule-details>summary::-webkit-details-marker{
  display:none;
}

.orders-schedule-details>summary>span:first-child{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.orders-schedule-details summary strong{
  font-size:13px;
}

.orders-schedule-details summary small{
  color:#777565;
  font-size:11px;
  font-weight:400;
}

.orders-schedule{
  padding:3px 0 16px;
}

.orders-day{
  padding:12px 0;
  border-top:1px solid #ebe7dd;
}

.orders-day:first-child{
  border-top:0;
}

.orders-day-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}

.orders-day-heading strong{
  font-size:12px;
}

.orders-add-window,
.orders-window-remove{
  border:0;
  background:transparent;
  color:#4d5c45;
  font:inherit;
  cursor:pointer;
}

.orders-add-window{
  padding:5px 0;
  font-size:11px;
  text-decoration:underline;
  text-underline-offset:3px;
}

.orders-window-remove{
  width:32px;
  height:32px;
  padding:0;
  font-size:20px;
  line-height:1;
}

.orders-day-closed{
  margin:0;
  color:#929083;
  font-size:11px;
}

.orders-window{
  display:grid;
  grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr) 32px;
  align-items:center;
  gap:8px;
  margin:7px 0;
}

.orders-window input{
  width:100%;
  min-width:0;
  margin:0;
}

.orders-window>span{
  color:#898678;
  text-align:center;
}

.orders-preparation-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:17px;
}

.orders-preparation-grid label{
  margin:0;
  font-size:11px;
  font-weight:600;
}

.orders-preparation-grid label>span{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:6px;
  color:#777565;
  font-weight:400;
}

.orders-preparation-grid input{
  width:90px;
  margin:0;
}

.orders-operational-save{
  margin-top:16px;
  width:100%;
}

@media(max-width:1050px){
  .orders-mode-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:620px){
  .orders-preparation-grid{
    grid-template-columns:1fr;
  }

  .orders-window{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 30px;
    gap:5px;
  }

  .orders-pause-actions .btn{
    flex:1 1 calc(50% - 7px);
  }
}

/* ==========================================================
   PED-002A.7 · refinamiento UX
   ========================================================== */

.orders-setting-help{
  display:block;
  margin-top:7px;
  max-width:310px;
  color:#8a877a;
  font-size:10px;
  line-height:1.45;
  font-weight:400;
}

.orders-day{
  padding:0;
}

.orders-day-compact{
  display:grid;
  grid-template-columns:100px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:46px;
  border-top:1px solid #ebe7dd;
}

.orders-day:first-child .orders-day-compact{
  border-top:0;
}

.orders-day-compact>strong{
  font-size:12px;
}

.orders-day-summary{
  color:#747164;
  font-size:11px;
}

.orders-day-edit,
.orders-day-done{
  border:0;
  background:transparent;
  color:#41553e;
  font:inherit;
  font-size:11px;
  font-weight:600;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:3px;
}

.orders-day-editor{
  padding:10px 0 15px 114px;
}

.orders-day.is-expanded{
  background:rgba(239,235,224,.55);
}

.orders-day.is-expanded .orders-day-compact{
  padding-left:10px;
  padding-right:10px;
}

.orders-day.is-expanded .orders-day-editor{
  padding-left:124px;
  padding-right:10px;
}

.orders-day-editor .orders-add-window{
  margin-top:5px;
  margin-right:16px;
}

.orders-day-done{
  padding:5px 0;
}

.orders-mode-grid.has-expanded-schedule{
  grid-template-columns:1fr;
}

.orders-mode-grid.has-expanded-schedule
.orders-mode-card:not(.schedule-expanded){
  display:none;
}

.orders-mode-card.schedule-expanded{
  width:100%;
}

.orders-live-status{
  display:flex;
  align-items:center;
  gap:6px;
}

@media(max-width:760px){
  .orders-day-compact{
    grid-template-columns:80px minmax(0,1fr) auto;
    gap:8px;
  }

  .orders-day-editor,
  .orders-day.is-expanded .orders-day-editor{
    padding-left:0;
    padding-right:0;
  }
}


/* ==========================================================
   PED-002C · Catálogo comercial de pedidos
   ========================================================== */

.orders-catalog-card{
  margin-top:18px;
}

.orders-catalog-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
}

.orders-catalog-heading h3{
  margin:4px 0 8px;
}

.orders-catalog-heading p:last-child{
  max-width:720px;
  margin-bottom:0;
}

.orders-catalog-count{
  flex:0 0 auto;
  padding:8px 11px;
  border:1px solid #ddd8ca;
  border-radius:999px;
  color:#5d6657;
  background:#f7f4ec;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.orders-catalog-tabs{
  display:flex;
  gap:6px;
  margin-top:22px;
  padding-bottom:14px;
  border-bottom:1px solid #ddd8ca;
}

.orders-catalog-tab{
  min-height:36px;
  padding:7px 14px;
  border:1px solid #d8d3c6;
  border-radius:999px;
  background:transparent;
  color:#666457;
  font:inherit;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}

.orders-catalog-tab.is-active{
  border-color:#4d5c45;
  background:#4d5c45;
  color:#fff;
}

.orders-catalog-toolbar{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto;
  gap:9px;
  align-items:center;
  margin:16px 0 8px;
}

.orders-catalog-search{
  margin:0;
}

.orders-catalog-search input{
  width:100%;
  margin:0;
}

.orders-catalog-toolbar .btn{
  min-height:40px;
  padding:8px 12px;
  font-size:11px;
}

.orders-catalog-help{
  margin:8px 0 15px;
}

.orders-catalog-list{
  border-top:1px solid #e3ded2;
  border-bottom:1px solid #e3ded2;
}

.orders-catalog-loading,
.orders-catalog-empty{
  margin:0;
  padding:22px 4px;
  color:#888579;
  font-size:12px;
}

.orders-catalog-category{
  border-top:1px solid #e9e5da;
}

.orders-catalog-category:first-child{
  border-top:0;
}

.orders-catalog-category>summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  min-height:48px;
  padding:0 4px;
  cursor:pointer;
  list-style:none;
}

.orders-catalog-category>summary::-webkit-details-marker{
  display:none;
}

.orders-catalog-category-name{
  font-size:12px;
  font-weight:700;
}

.orders-catalog-category-count{
  color:#777467;
  font-size:11px;
}

.orders-catalog-chevron{
  color:#777467;
  font-size:13px;
}

.orders-catalog-items{
  padding:0 4px 10px;
}

.orders-catalog-item{
  display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:45px;
  padding:7px 8px;
  border-top:1px solid #efebe2;
  border-radius:5px;
}

.orders-catalog-item input{
  width:18px;
  height:18px;
  margin:0;
}

.orders-catalog-item-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}

.orders-catalog-item-name{
  overflow:hidden;
  font-size:12px;
  font-weight:600;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.orders-catalog-item-meta{
  color:#898678;
  font-size:10px;
}

.orders-catalog-item-price{
  color:#5e5c51;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
}

.orders-catalog-item.is-hidden{
  opacity:.55;
}

.orders-catalog-item.is-hidden input{
  cursor:not-allowed;
}

.orders-catalog-item.is-unavailable{
  background:rgba(239,235,224,.55);
}

.orders-catalog-badge{
  display:inline-block;
  margin-left:5px;
  padding:1px 5px;
  border-radius:999px;
  background:#ece7da;
  color:#786d5e;
  font-size:9px;
  font-weight:700;
}

.orders-catalog-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:16px;
}

.orders-catalog-footer p{
  margin:0;
}

.orders-catalog-footer .btn{
  flex:0 0 auto;
}

@media(max-width:760px){
  .orders-catalog-heading{
    flex-direction:column;
    gap:12px;
  }

  .orders-catalog-toolbar{
    grid-template-columns:1fr 1fr;
  }

  .orders-catalog-search{
    grid-column:1 / -1;
  }

  .orders-catalog-footer{
    align-items:stretch;
    flex-direction:column;
  }

  .orders-catalog-footer .btn{
    width:100%;
  }
}

@media(max-width:520px){
  .orders-catalog-toolbar{
    grid-template-columns:1fr;
  }

  .orders-catalog-search{
    grid-column:auto;
  }

  .orders-catalog-category>summary{
    grid-template-columns:minmax(0,1fr) auto auto;
  }

  .orders-catalog-item{
    grid-template-columns:22px minmax(0,1fr);
  }

  .orders-catalog-item-price{
    grid-column:2;
  }
}

/* ==========================================================
   PED-003A · Configuración logística de domicilio
   ========================================================== */

.orders-delivery-settings{
  margin-top:26px;
  padding-top:24px;
  border-top:1px solid #d8d2c3;
}

.orders-delivery-settings-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}

.orders-delivery-settings-heading h4{
  margin:4px 0 6px;
  font-size:17px;
}

.orders-delivery-settings-heading p{
  margin:0;
}

.orders-delivery-revision{
  flex:0 0 auto;
  padding:5px 8px;
  border:1px solid #ddd8ca;
  border-radius:999px;
  color:#777565;
  background:#faf8f2;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}

.orders-delivery-section{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid #ebe7dd;
}

.orders-delivery-section:first-of-type{
  margin-top:0;
}

.orders-delivery-section h5{
  margin:0 0 13px;
  font-size:13px;
}

.orders-delivery-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:16px;
}

.orders-delivery-grid>label{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
  font-size:12px;
  font-weight:700;
}

.orders-delivery-wide{
  grid-column:1 / -1;
}

.orders-delivery-grid input{
  width:100%;
  box-sizing:border-box;
}

.orders-input-unit{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
}

.orders-input-unit>span{
  color:#777565;
  font-size:12px;
  font-weight:700;
}

.orders-delivery-grid .orders-setting-help{
  line-height:1.45;
}

.orders-delivery-enquiry{
  align-items:flex-start;
  margin:0;
  padding:0;
}

.orders-delivery-enquiry input{
  flex:0 0 auto;
  margin-top:1px;
}

.orders-delivery-confirmation{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:16px;
  padding:12px 14px;
  border:1px solid #e1dccf;
  border-radius:8px;
  background:#faf8f2;
  font-size:12px;
}

.orders-delivery-confirmation span{
  color:#5e5d53;
}

.orders-delivery-settings-status{
  min-height:18px;
  margin:16px 0 10px;
}

#orders-delivery-settings-save{
  width:100%;
}

@media(max-width:760px){

  .orders-delivery-settings-heading{
    flex-direction:column;
  }

  .orders-delivery-grid{
    grid-template-columns:1fr;
  }

  .orders-delivery-wide{
    grid-column:auto;
  }

  .orders-delivery-confirmation{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }

}


/* ==========================================================
   PED-003A.6D · Logística en tarjeta independiente
   ========================================================== */

.orders-delivery-settings-card{
  margin-top:18px;
}

.orders-delivery-settings-card
.orders-delivery-settings{
  margin-top:0;
  padding-top:0;
  border-top:0;
}


/* ==========================================================
   PED-003B · Verificación del origen de reparto
   ========================================================== */

.orders-origin-verification{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:16px;
  padding:14px 15px;
  border:1px solid #e1dccf;
  border-radius:8px;
  background:#faf8f2;
}

.orders-origin-verification-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.orders-origin-verification-copy strong{
  font-size:12px;
}

.orders-origin-verification-copy span{
  color:#5e5d53;
  font-size:12px;
  line-height:1.45;
}

.orders-origin-verification-copy small{
  color:#777565;
  font-size:10px;
  line-height:1.4;
}

.orders-origin-verification.verified{
  border-style:solid;
}

#orders-delivery-origin-verify{
  flex:0 0 auto;
  white-space:nowrap;
}

@media(max-width:760px){
  .orders-origin-verification{
    align-items:stretch;
    flex-direction:column;
  }

  #orders-delivery-origin-verify{
    width:100%;
  }
}

/* ==========================================================
   PED-003B.5 · Simulador administrativo de rutas
   ========================================================== */

.orders-route-preview{
  margin-top:18px;
  padding:15px;
  border:1px solid #e1dccf;
  border-radius:8px;
  background:#faf8f2;
}

.orders-route-preview-heading{
  margin-bottom:13px;
}

.orders-route-preview-heading>div{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.orders-route-preview-heading strong{
  font-size:12px;
}

.orders-route-preview-heading span{
  color:#777565;
  font-size:11px;
  line-height:1.4;
}

.orders-route-preview-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:12px;
}

.orders-route-preview-grid>label{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  font-size:11px;
  font-weight:700;
}

.orders-route-preview-grid input{
  width:100%;
  box-sizing:border-box;
}

.orders-route-preview-wide{
  grid-column:1 / -1;
}

#orders-route-preview-submit{
  width:100%;
  margin-top:12px;
}

.orders-route-preview-result{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:12px;
  padding:14px;
  border:1px solid #ddd8ca;
  border-radius:8px;
  background:#fff;
}

.orders-route-preview-result[hidden]{
  display:none;
}

.orders-route-preview-result.loading,
.orders-route-preview-result.unavailable,
.orders-route-preview-result.ambiguous{
  gap:4px;
}

.orders-route-preview-result>span,
.orders-route-preview-result div>span{
  color:#5e5d53;
  font-size:11px;
  line-height:1.45;
}

.orders-route-preview-metrics{
  display:flex;
  align-items:baseline;
  gap:10px;
}

.orders-route-preview-metrics strong{
  font-size:22px;
}

.orders-route-preview-metrics span{
  font-size:12px;
}

.orders-route-preview-coverage,
.orders-route-preview-address{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.orders-route-preview-coverage strong{
  font-size:12px;
}

.orders-route-preview-address{
  padding-top:10px;
  border-top:1px solid #ebe7dd;
}

.orders-route-preview-address small{
  color:#777565;
  font-size:10px;
}

@media(max-width:760px){
  .orders-route-preview-grid{
    grid-template-columns:1fr;
  }

  .orders-route-preview-wide{
    grid-column:auto;
  }
}
