/* HARIKA LAZER - Musteri randevu mobil duzeltme
   Sadece body.customerRandevuPage icin calisir; admin/panel/kargo/hesap sayfalarina etki etmez. */

body.customerRandevuPage{
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
}
body.customerRandevuPage .page{
  width:100%;
}
body.customerRandevuPage .customerTop,
body.customerRandevuPage .calendarShell{
  max-width:100%;
}
body.customerRandevuPage .week,
body.customerRandevuPage .days{
  grid-template-columns:repeat(7,minmax(0,1fr));
}
body.customerRandevuPage .day,
body.customerRandevuPage .week div{
  min-width:0;
}
body.customerRandevuPage .status{
  min-width:0;
  max-width:100%;
  text-align:center;
  justify-content:center;
}

@media(max-width:760px){
  body.customerRandevuPage{
    min-width:0;
    background:
      radial-gradient(circle at 18% 8%, rgba(255,255,255,.95) 0, rgba(255,255,255,0) 260px),
      radial-gradient(circle at 88% 14%, rgba(160,201,242,.36) 0, rgba(160,201,242,0) 290px),
      linear-gradient(135deg,#eaf2fa 0%,#fbfdff 48%,#e7f0f8 100%);
  }
  body.customerRandevuPage .page{
    max-width:520px;
    margin:0 auto;
    /* iPhone dinamik ada/status bar ile ust butonlar cakismasin diye
       sadece musteri randevu sayfasini mobilde biraz asagi alir. */
    padding:44px 8px 82px;
    padding-top:calc(44px + env(safe-area-inset-top, 0px));
    overflow:hidden;
  }
  body.customerRandevuPage .customerTop{
    display:grid;
    grid-template-columns:54px minmax(0,1fr) 54px;
    grid-template-rows:auto auto;
    gap:10px;
    align-items:center;
    margin-bottom:12px;
    padding:10px;
    border-radius:28px;
  }
  body.customerRandevuPage .customerTop .logo{
    grid-column:1;
    grid-row:1;
    width:54px;
    height:54px;
    border-radius:18px;
    font-size:20px;
  }
  body.customerRandevuPage .customerTop .btn.dark{
    grid-column:2 / 4;
    grid-row:1;
    width:100%;
    height:54px;
    min-width:0;
    padding:0 12px;
    border-radius:20px;
    font-size:17px;
    line-height:1.08;
    text-align:center;
    white-space:normal !important;
  }
  body.customerRandevuPage .customerTop .navBtn{
    width:54px;
    height:50px;
    border-radius:18px;
    font-size:30px;
    line-height:1;
  }
  body.customerRandevuPage .customerTop .navBtn:first-of-type{
    grid-column:1;
    grid-row:2;
  }
  body.customerRandevuPage .customerTop .monthTitle{
    grid-column:2;
    grid-row:2;
    min-width:0;
    font-size:23px;
    line-height:1.08;
    letter-spacing:.25px;
    text-align:center;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  body.customerRandevuPage .customerTop .navBtn:last-of-type{
    grid-column:3;
    grid-row:2;
  }
  body.customerRandevuPage .calendarShell{
    width:100%;
    padding:10px 8px;
    border-radius:28px;
    overflow:hidden;
  }
  body.customerRandevuPage .week,
  body.customerRandevuPage .days{
    gap:5px;
  }
  body.customerRandevuPage .week div{
    padding:8px 0 7px;
    font-size:11px;
    line-height:1;
    letter-spacing:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:clip;
  }
  body.customerRandevuPage .day{
    min-height:78px;
    padding:6px 2px;
    border-radius:17px;
    gap:4px;
    overflow:hidden;
  }
  body.customerRandevuPage .num{
    font-size:24px;
    line-height:1;
  }
  body.customerRandevuPage .status{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:3px;
    width:100%;
    font-size:11px;
    line-height:1.05;
    font-weight:900;
    white-space:normal;
    overflow:hidden;
    text-align:center;
  }
  body.customerRandevuPage .dot{
    width:8px;
    height:8px;
    flex:0 0 8px;
  }
  body.customerRandevuPage .modalWrap{
    padding:12px;
  }
  body.customerRandevuPage .modal{
    width:min(100%,420px);
    max-height:calc(100vh - 24px);
    border-radius:28px;
  }
  body.customerRandevuPage .modalHead{
    padding:14px 16px;
  }
  body.customerRandevuPage .modalHead h3{
    font-size:20px;
  }
  body.customerRandevuPage .modalBody{
    padding:16px;
  }
}

@media(max-width:380px){
  body.customerRandevuPage .page{padding-left:6px;padding-right:6px;padding-top:calc(40px + env(safe-area-inset-top, 0px));}
  body.customerRandevuPage .customerTop{grid-template-columns:48px minmax(0,1fr) 48px;gap:8px;padding:8px;border-radius:24px;}
  body.customerRandevuPage .customerTop .logo{width:48px;height:48px;border-radius:16px;font-size:18px;}
  body.customerRandevuPage .customerTop .btn.dark{height:48px;border-radius:18px;font-size:15px;}
  body.customerRandevuPage .customerTop .navBtn{width:48px;height:46px;border-radius:16px;font-size:27px;}
  body.customerRandevuPage .customerTop .monthTitle{font-size:20px;}
  body.customerRandevuPage .calendarShell{padding:8px 6px;border-radius:24px;}
  body.customerRandevuPage .week,
  body.customerRandevuPage .days{gap:4px;}
  body.customerRandevuPage .week div{font-size:10px;}
  body.customerRandevuPage .day{min-height:72px;border-radius:15px;}
  body.customerRandevuPage .num{font-size:22px;}
  body.customerRandevuPage .status{font-size:10px;}
}


@media(max-width:760px){
  body.customerRandevuNoCalc .customerTop{
    grid-template-columns:54px 54px minmax(0,1fr) 54px;
    grid-template-rows:auto;
  }
  body.customerRandevuNoCalc .customerTop .logo{grid-column:1;grid-row:1;}
  body.customerRandevuNoCalc .customerTop .navBtn:first-of-type{grid-column:2;grid-row:1;}
  body.customerRandevuNoCalc .customerTop .monthTitle{grid-column:3;grid-row:1;}
  body.customerRandevuNoCalc .customerTop .navBtn:last-of-type{grid-column:4;grid-row:1;}
}
@media(max-width:380px){
  body.customerRandevuNoCalc .customerTop{grid-template-columns:48px 48px minmax(0,1fr) 48px;}
}

/* Kargo / teslim seçimi - sadece müşteri randevu popup içi */
.customerRandevuPage .deliveryOptions{display:flex;flex-direction:column;gap:10px;margin:12px 0}
.customerRandevuPage .deliverySectionTitle{font-weight:900;color:#0f2540;margin:4px 0 2px}
.customerRandevuPage .deliveryChoice{width:100%;text-align:left;border:1px solid rgba(15,37,64,.14);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 8px 20px rgba(15,37,64,.08);padding:12px 14px;color:#0f2540;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:4px}
.customerRandevuPage .deliveryChoice b{font-size:15px;line-height:1.25}
.customerRandevuPage .deliveryChoice span{font-size:13px;line-height:1.35;color:#53657a;word-break:break-word}
.customerRandevuPage .deliveryChoice.selected{border:2px solid #12e67d;background:rgba(229,255,245,.92);box-shadow:0 0 0 3px rgba(18,230,125,.34),0 0 18px rgba(18,230,125,.36)}
.customerRandevuPage .deliveryEmpty,.customerRandevuPage .deliveryLoading{border:1px dashed rgba(15,37,64,.22);border-radius:16px;padding:12px;color:#53657a;background:rgba(255,255,255,.56);font-weight:700;line-height:1.35}
.customerRandevuPage .message.small{font-size:15px;line-height:1.4;color:#0f2540;margin-bottom:4px}

/* Admin çift tık kişi ekranında adres kutusu */
.addressInfoBox{border:1px solid #d4e1ee;border-radius:18px;padding:13px 14px;background:rgba(246,250,255,.88);font-weight:800;color:#26394f;line-height:1.35;white-space:pre-wrap;word-break:break-word;min-height:48px}
.addressInfoBox.cargo{background:linear-gradient(145deg,rgba(232,247,255,.92),rgba(255,255,255,.82));border-color:#c2dff2;color:#10263c}
.addressInfoBox.pickup{background:linear-gradient(145deg,rgba(232,255,244,.92),rgba(255,255,255,.82));border-color:#b8e8cd;color:#08723b}
.addressInfoBox.empty{background:rgba(246,250,255,.74);color:#7a8998}


/* Koyu tema: seçili kargo/adres kartı neon yeşil belirgin çizgi */
.customerRandevuPage.hl-night-mode .deliveryChoice.selected{
  border:2px solid #00ff88!important;
  background:linear-gradient(145deg,rgba(0,255,136,.18),rgba(7,33,42,.94))!important;
  box-shadow:0 0 0 3px rgba(0,255,136,.40),0 0 20px rgba(0,255,136,.72),0 0 42px rgba(0,255,136,.34),inset 0 0 20px rgba(0,255,136,.13)!important;
  outline:1px solid rgba(184,255,220,.78)!important;
}
.customerRandevuPage.hl-night-mode .deliveryChoice.selected b{color:#fff!important;text-shadow:0 0 10px rgba(0,255,136,.65)!important;}
.customerRandevuPage.hl-night-mode .deliveryChoice.selected span{color:#c9ffe5!important;}
