/**
 * All of the CSS for your admin-specific functionality should be
 * included in this file.
 */
 /*******************************Calendar Top Navigation*********************************/
 div#calendar{
    margin:0px auto;
    padding:0 10px;
    width: 100%;
    max-width:1600px;
    font-family:Helvetica, "Times New Roman", Times, serif;
  }
   
  div#calendar div.box{
      position:relative;
      top:0px;
      left:0px;
      width:100%;
      height:40px;
      background-color:   #787878 ;      
  }
   
  div#calendar div.header{
      line-height:40px;  
      vertical-align:middle;
      position:absolute;
      left:0;
      top:0px;
      width:100%;
      height:40px;   
      text-align:center;
  }
   
  div#calendar div.header a.prev,div#calendar div.header a.next{ 
      position:absolute;
      top:0px;   
      height: 17px;
      display:block;
      cursor:pointer;
      text-decoration:none;
      color:#FFF;
  }
   
  div#calendar div.header span.title{
      color:#FFF;
      font-size:18px;
  }
   
   
  div#calendar div.header a.prev{
      left:5px;
  }
   
  div#calendar div.header a.next{
      right:5px;
  }
   
   
   
   
  /*******************************Calendar Content Cells*********************************/
  div#calendar div.box-content{
      border:1px solid #787878 ;
      border-top:none;
      padding:8px;
  }
   
   
   
  div#calendar ul.label{
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-gap: 5px;
    padding-left:5px;
    padding-right:5px;
    margin-bottom:0px;
    margin:0px;
    width:100%;
  }
   
  div#calendar ul.label li{
      margin:0px;
      padding:0px;
      list-style-type:none;
      width:100%;
      height:40px;
      line-height:40px;
      vertical-align:middle;
      text-align:center;
      color:#000;
      font-size: 15px;
      background-color: transparent;
  }
   
   
  div#calendar ul.dates{
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-gap: 8px;
    padding-left:5px;
    padding-right:5px;
    margin:0px;
    grid-auto-rows: minmax(240px, auto);
    align-items:start;
    box-sizing:border-box;
  }
   
  /** overall width = width+padding-right**/

  div#calendar ul.dates li{
      margin:0px;
      padding:0px;
      list-style-type:none;
      width:100%;
      min-height:240px;
      font-size:13px;
      background-color: #f2f2f2;
      color:#000;
      text-align:left; 
      position: relative;
      border:1px solid #c7c7c7;
      border-radius:4px;
      display:flex;
      flex-direction:column;
      overflow:hidden;
      box-sizing:border-box;
      
  }
   
  :focus{
      outline:none;
  }
   
div.clear{
    clear:both;
}

  .pisol-order-count{
    position: absolute;
    width: 20px;
    height: 20px;
    display: flex;
    border-radius: 10px;
    text-align: center;
    background: #343a40;
    font-size: 12px;
    justify-content: center;
    align-items: center;
    color: #fff;
    top: 6px;
    right: 6px;
  }
  .pisol-order-count.pi-is-past{
    background:#e6e6e6;
    color:#000;
  }

  .order-box{
    width: 70%;
    background: #fff;
    margin: auto;
    position: relative;
  }

  .pi-calendar-nav{
      display:block;
      text-align:center;
      margin:auto;
      padding:10px;
  }

  .pi-calendar-nav-bt, .pisol-order-detail{
    color: #fff;
    background-color: #6c757d;
    display: inline-block;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    padding: 7px 15px;
    font-size: 16px;
    line-height: 1.5;
    border-radius: .25rem;
    margin:10px;

  }

  .p-3{
      padding:15px;
  }

  .my-0{
      margin-top:0px;
      margin-bottom:0px;
  }

  .pi-calendar-nav-bt.btn-primary{
      background:#dda500;
  }

  .pi-table{
      width:100%;
      margin-top:10px;
  }

  .pi-table td{
      vertical-align: top;
  }

  .pi-table th, .pi-table td {
    border-bottom: 1px solid #ddd;
  }

  .pi-product-table {
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    border-collapse: collapse;
    width: 100%;
  }
  
  .pi-product-table td, .pi-product-table th {
    border: 1px solid #ddd;
    padding: 8px;
  }
  
  .pi-product-table tr:nth-child(even){background-color: #f2f2f2;}
  
  .pi-product-table tr:hover {background-color: #ddd;}
  
  .pi-product-table th {
    padding-top: 12px;
    padding-bottom: 12px;
    text-align: left;
    background-color: #4CAF50;
    color: white;
  }
  
  .order-box .mfp-close{
      color:#fff !important;
      background:#000 !important;
  }

  .order-box a{
      text-decoration:none;
  }

  .pi-alert{
      padding:10px;
      background:rgb(227, 126, 126);
      color:#FFF;
      border-radius:5px;
      margin-bottom:10px;
      margin-top:10px;
  }

  #pi-back-to-orders{
      color:#000;
      font-size:22px;
  }

  .p-1{
      padding-top:5px;
      padding-bottom:5px;
  } 
  
.border-top{
    border-top:1px solid #ccc;
}
    
.border-bottom{
    border-top:1px solid #ccc;
}

.order-detail-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}

.order-detail-header-right{
    display:flex;
    align-items:center;
    justify-content:space-between;
    grid-gap:10px;
}

#order-tags{
    display:flex;
    flex-wrap:wrap;
    margin-top:10px;
    align-items: center;
    justify-content: center;
    grid-gap:10px;
}

.order-tag{
    background-color: #6c757d;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 12px;
    cursor:pointer;
}

.order-tag.active{
    background-color: #007bff;
}

/* Keep neutral background for day cells even if status class is present */
#calendar ul.dates li.pi-status-recibido,
#calendar ul.dates li.pi-status-supervisado,
#calendar ul.dates li.pi-status-en-elaboracion,
#calendar ul.dates li.pi-status-en-reparto,
#calendar ul.dates li.pi-status-entregado{
    background:#f2f2f2;
    color:#000;
}

/* Day cell layout */
.pi-day-wrapper{
    display:flex;
    flex-direction:column;
    height:100%;
    padding:6px;
    box-sizing:border-box;
    gap:6px;
}
.pi-day-body-scroll{
    flex:1;
    display:flex;
    flex-direction:column;
    gap:8px;
    overflow-y:auto;
}
.pi-day-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.pi-day-number{
    font-weight:700;
    font-size:16px;
}
.pi-day-weekday{
    display:none;
    font-weight:600;
    font-size:12px;
    text-align:center;
    line-height:1.2;
    color:#444;
}

@media (max-width: 1024px){
  div#calendar ul.dates{grid-template-columns: repeat(5, 1fr);}
  div#calendar ul.label{display:none !important;}
  .pi-day-top{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    column-gap:8px;
    padding-right:0;
  }
  .pi-day-weekday{display:block;text-align:center;}
  .pisol-order-count{
    position:static;
    margin-left:0;
    justify-self:end;
  }
}

@media (max-width: 900px){
  div#calendar ul.dates{grid-template-columns: repeat(4, 1fr);}
}
@media (max-width: 720px){
  div#calendar ul.dates{grid-template-columns: repeat(3, 1fr);}
}
@media (max-width: 540px){
  div#calendar ul.dates{grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 420px){
  div#calendar ul.dates{grid-template-columns: repeat(2, minmax(0,1fr));grid-auto-rows:minmax(160px,auto);}
  .pi-day-top{
    grid-template-columns:auto 1fr auto;
    column-gap:6px;
  }
}

.pi-day-slot{
    flex:1;
    border-top:1px solid #d4d4d4;
    padding-top:4px;
    display:flex;
    flex-direction:column;
    gap:4px;
    overflow:visible;
}
.pi-day-slot:first-of-type{
    border-top:none;
}
.pi-slot-title{
    font-weight:700;
    text-align:center;
    font-size:11px;
    text-transform:uppercase;
}
.pi-slot-orders{
    display:flex;
    flex-direction:column;
    gap:4px;
    flex:1;
    max-height:none;
    overflow:visible;
}
.pi-slot-empty{
    min-height:16px;
}
.pi-day-order{
    display:block;
    padding:4px 6px;
    border-radius:4px;
    border:1px solid #dcdcdc;
    background:#fff;
    color:#000;
    font-size:11px;
    line-height:1.35;
    text-decoration:none;
    word-break:break-word;
}
.pi-day-order:hover{
    text-decoration:underline;
}
.pi-day-order.pi-status-recibido{background:#FF0000;color:#fff;border-color:#b80000;}
.pi-day-order.pi-status-supervisado{background:#FF9900;color:#000;border-color:#cc7a00;}
.pi-day-order.pi-status-en-elaboracion{background:#FFFF00;color:#000;border-color:#d6d600;}
.pi-day-order.pi-status-en-reparto{background:#00FF00;color:#000;border-color:#00b300;}
.pi-day-order.pi-status-entregado{background:#00FF00;color:#000;border:1px solid #00b300;}
.pi-day-order.pi-is-past{
    background:#FFFFFF !important;
    color:#000 !important;
    border-color:#dcdcdc !important;
}

@media print{
    td{
        padding:10px;
    }

    .mfp-close, #pi-back-to-orders, .print-btn{
        display:none;
    }
}
