/* Global shell: footer & shared structural visuals */

.ys-footer{
  background:
    radial-gradient(600px 240px at 12% -10%, rgba(59,130,246,.10), rgba(59,130,246,0) 60%),
    radial-gradient(700px 300px at 88% 120%, rgba(59,130,246,.08), rgba(59,130,246,0) 60%),
    linear-gradient(180deg, #0e1726, #0b1220 60%);
  color:#cbd5e1;
}

.ys-footer h4{color:#e8eef9}
.ys-footer a{color:#cbd5e1;text-decoration:none}
.ys-footer a:hover{color:#fff;text-decoration:none}

.ys-footer .footer-bottom{margin-top:1.25rem;padding-top:1rem}
.ys-footer .footer-hr{height:1px;background:rgba(148,163,184,.18)}

.ys-footer .footer-copy{
  padding-top:1rem;
  text-align:center;
  color:#cbd5e1;
  font-size:.9rem;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
}

.ys-footer .footer-copy span + span{margin-left:0}
.ys-footer .footer-copy span{display:inline-flex;align-items:center}
.ys-footer .footer-copy img{display:inline-block;vertical-align:text-bottom;margin-right:0}
.ys-footer .footer-copy .beian-link{display:inline-flex;align-items:center;gap:2px}
.ys-footer .footer-copy a{display:inline-flex;align-items:center}

@media (max-width:767px){
  .ys-footer{background:#2c333d;color:#f5e7c9;padding-top:14px;padding-bottom:14px}
  .ys-footer .ys-footer-main{display:none}
  .ys-footer .footer-bottom{margin-top:0;padding-top:0}
  .ys-footer .footer-hr{display:none}

  .ys-footer .footer-copy{
    padding-top:0;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:2px 10px;
    text-align:center;
    color:#f5e7c9;
    font-size:13px;
    line-height:1.45;
  }

  .ys-footer .footer-copy span{display:inline-flex;align-items:center;color:#f5e7c9}
  .ys-footer .footer-copy span + span{margin-left:0}
  .ys-footer .footer-copy span:last-child{display:block;width:100%;justify-content:center}
  .ys-footer .footer-copy a{color:#f5e7c9}
}

@media (min-width:768px){
  .ys-footer{padding-top:2.5rem;padding-bottom:2.5rem}
}

/* Mobile floating contact widget */
.ys-float-contact{display:none}
@media (max-width:900px){
  .ys-float-contact{
    position:fixed;
    right:14px;
    bottom:calc(76px + env(safe-area-inset-bottom, 0px));
    z-index:900;
    display:block;
  }
  body.ys-route-account .ys-float-contact,
  body.ys-route-orders .ys-float-contact,
  body.ys-route-order .ys-float-contact,
  body.ys-route-ticket .ys-float-contact,
  body.ys-route-ticket-new .ys-float-contact,
  body.ys-route-password .ys-float-contact{
    bottom:calc(132px + env(safe-area-inset-bottom, 0px));
  }
  .ys-float-contact-toggle{
    border:0;
    border-radius:4px;
    background:#1d5fd1;
    color:#fff;
    font-size:13px;
    font-weight:700;
    padding:10px 14px;
    box-shadow:0 8px 22px rgba(29,95,209,.32);
  }
  .ys-float-contact-panel{
    position:absolute;
    right:0;
    bottom:48px;
    width:min(78vw,280px);
    border:1px solid #dce6f4;
    border-radius:12px;
    background:#fff;
    box-shadow:0 16px 30px rgba(9,30,66,.16);
    padding:12px;
  }
  .ys-float-contact-title{
    font-size:13px;
    font-weight:700;
    color:#123356;
    margin:0 0 8px;
  }
  .ys-float-contact-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}
  .ys-float-contact-item{
    display:flex;
    align-items:center;
    gap:8px;
    text-decoration:none;
    color:#334155;
    border:1px solid #e4ecf8;
    background:#f8fbff;
    border-radius:10px;
    padding:8px 10px;
    font-size:13px;
    line-height:1.4;
  }
  .ys-float-contact-item:hover{border-color:#c8d9f1;color:#1d5fd1}
  .ys-float-contact-dot{
    width:22px;
    height:22px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    font-weight:700;
    color:#fff;
    background:#1d5fd1;
    flex:0 0 22px;
  }
  .ys-kind-qq .ys-float-contact-dot{background:#0284c7}
  .ys-kind-email .ys-float-contact-dot{background:#0ea5a4}
}
