:root{
  --qy-bg:#f7f8fb;
  --qy-bg2:#f7f8fb;
  --qy-card:rgba(255,255,255,1);
  --qy-card2:rgba(255,255,255,1);
  --qy-border:rgba(15,23,42,.08);
  --qy-border2:rgba(15,23,42,.10);
  --qy-text:rgba(15,23,42,1);
  --qy-muted:rgba(71,85,105,1);
  --qy-muted2:rgba(100,116,139,1);
  --qy-radius:14px;
  --qy-shadow:0 18px 46px rgba(15,23,42,.08);
  --qy-shadow2:0 10px 18px rgba(15,23,42,.06);
  --qy-primary:var(--qiy-primary,#0066ff);
  --qy-secondary:var(--qiy-secondary,#00b8ff);
  --qy-accent:#635bff;
  --qy-primary-fallback:#0066ff;
  --qy-secondary-fallback:#00b8ff;
  --qy-ring:0 0 0 4px rgba(0,102,255,.14);
}

*{box-sizing:border-box}
html,body{height:100%}
body.qy-front{
  margin:0;
  color:var(--qy-text);
  background:linear-gradient(180deg, var(--qy-bg), var(--qy-bg2));
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  letter-spacing:-.012em;
}
body.qy-front::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:none;
  opacity:0;
}
body.qy-front > *{position:relative;z-index:1}

a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}

.container{
  width:100%;
  max-width:80rem;
  margin-left:auto;
  margin-right:auto;
  padding-left:16px;
  padding-right:16px;
}
@media (min-width: 640px){
  .container{padding-left:24px;padding-right:24px}
}
@media (min-width: 1024px){
  .container{padding-left:32px;padding-right:32px}
}

.muted{color:var(--qy-muted)}
.muted2{color:var(--qy-muted2)}
.break-any{overflow-wrap:anywhere;word-break:break-word}
.hidden{display:none!important}
.gradient{
  color:var(--qy-primary);
}
@supports (-webkit-background-clip:text) or (background-clip:text){
  .gradient{
    background:linear-gradient(135deg, var(--qy-primary), var(--qy-secondary));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
  }
}

.header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:50;
  backdrop-filter:blur(12px);
  background:rgba(255,255,255,.82);
  border-bottom:1px solid rgba(15,23,42,.08);
}
.header__inner{
  height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.navDesktop{display:none;gap:14px;align-items:center;flex:1;justify-content:flex-end;min-width:0}
.navMobile{display:flex;flex:1;justify-content:flex-end;min-width:0}
.navSecondary{opacity:.80}
@media (min-width: 1024px){
  .navDesktop{display:flex}
  .navMobile{display:none}
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.brand__mark{
  width:34px;height:34px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, var(--qy-primary), var(--qy-secondary));
  box-shadow:0 14px 34px rgba(0,102,255,.16);
}
.brand__mark::before{
  content:"七";
  color:#fff;
  font-weight:950;
  letter-spacing:-.04em;
  font-size:1.05rem;
  transform:translateY(-.5px);
}
.brand__name{
  font-weight:800;
  letter-spacing:-.02em;
  white-space:nowrap;
}

.nav{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}
.nav--mobile{
  overflow-x:auto;
  white-space:nowrap;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.nav--mobile::-webkit-scrollbar{display:none}
.nav__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border-radius:999px;
  font-size:.9rem;
  font-weight:700;
  color:rgba(15,23,42,1);
  border:1px solid transparent;
  background:transparent;
  appearance:none;
  -webkit-appearance:none;
  transition:background .18s ease,border-color .18s ease,transform .12s ease,opacity .18s ease;
}
.nav__link:hover{
  background:rgba(15,23,42,.04);
  border-color:rgba(15,23,42,.08);
}
.nav__link.is-active{
  background:linear-gradient(135deg, rgba(0,102,255,.12), rgba(0,184,255,.10));
  border-color:rgba(0,102,255,.22);
  box-shadow:0 10px 26px rgba(0,102,255,.10);
}
.nav__link.is-active::after{
  content:"";
  width:8px;height:8px;
  border-radius:999px;
  background:linear-gradient(135deg, var(--qy-primary), var(--qy-secondary));
  margin-left:10px;
  box-shadow:0 0 0 4px rgba(124,58,237,.10);
}
.nav__link.is-muted{opacity:.70}

.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}
.sidebar{
  position:sticky;
  top:0;
  height:100vh;
  background:rgba(255,255,255,1);
  border-right:1px solid rgba(15,23,42,.08);
}
.sidebar__inner{height:100%;display:flex;flex-direction:column;padding:16px 14px}
.sidebar__brand{display:flex;align-items:center;gap:12px;padding:10px 10px;border-radius:14px}
.sidebar__close{display:none;margin-left:auto}
.sidebar__brandName{font-weight:950;letter-spacing:-.02em;line-height:1.15}
.sidebar__brandDesc{margin-top:2px;color:var(--qy-muted2);font-weight:700;font-size:.86rem}
.sidebar__nav{margin-top:10px;display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}
.sideGroup{display:flex;flex-direction:column;gap:10px}
.sideGroup__title{padding:0 10px;color:var(--qy-muted2);font-weight:900;font-size:.72rem;letter-spacing:.10em;text-transform:uppercase}
.sideList{display:flex;flex-direction:column;gap:8px}
.sideLink{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 12px;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.06);
  background:rgba(255,255,255,1);
  color:rgba(15,23,42,1);
  font-weight:800;
  letter-spacing:-.01em;
  width:100%;
  text-align:left;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.sideLink:hover{border-color:rgba(15,23,42,.10);background:rgba(15,23,42,.02)}
.sideLink.is-active{border-color:rgba(0,102,255,.20);background:rgba(0,102,255,.08)}
.sideLink__dot{width:10px;height:10px;border-radius:999px;background:rgba(15,23,42,.16);flex-shrink:0}
.sideLink.is-active .sideLink__dot{background:linear-gradient(135deg,var(--qy-primary),var(--qy-secondary))}
.sidebar__footer{padding:10px 10px;border-top:1px solid rgba(15,23,42,.08);margin-top:12px}
.sidebar__footerText{color:var(--qy-muted2);font-weight:700;font-size:.86rem}

.topbar{
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(255,255,255,1);
  border-bottom:1px solid rgba(15,23,42,.08);
}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}
.topbar__left{display:flex;align-items:center;gap:12px;min-width:0}
.topbar__title{font-weight:950;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar__menuBtn{display:none}

.sidebarOverlay{display:none}
@media (max-width: 1023.98px){
  .shell{grid-template-columns:1fr}
  .sidebar{
    position:fixed;
    left:0;top:0;bottom:0;
    width:290px;
    transform:translateX(-110%);
    transition:transform .22s ease;
    z-index:40;
    box-shadow:var(--qy-shadow);
  }
  body.is-sidebar-open .sidebar{transform:translateX(0)}
  .topbar__menuBtn{display:inline-flex}
  .sidebarOverlay{
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.30);
    display:none;
    z-index:35;
  }
  body.is-sidebar-open .sidebarOverlay{display:block}
  .sidebar__close{display:inline-flex}
}

.main{
  padding-top:16px;
  padding-bottom:64px;
  flex:1;
}

.card{
  border-radius:var(--qy-radius);
  background:var(--qy-card);
  border:1px solid var(--qy-border);
  box-shadow:var(--qy-shadow2);
  position:relative;
  overflow:hidden;
}
.card::before{
  content:"";
  position:absolute;
  inset:-1px -1px auto -1px;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(0,102,255,.40), rgba(0,184,255,.34), transparent);
  opacity:.20;
}
.card--heavy{box-shadow:var(--qy-shadow)}
.card__pad{padding:22px}
@media (min-width: 768px){
  .card__pad{padding:26px}
}

.hero{
  border:1px solid var(--qy-border2);
  background:
    radial-gradient(980px 520px at 18% 0%, rgba(124,58,237,.12), transparent 64%),
    radial-gradient(820px 480px at 82% 10%, rgba(6,182,212,.09), transparent 64%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02));
}
.hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:18px;
  align-items:start;
}
@media (max-width: 1023.98px){
  .hero__grid{grid-template-columns:1fr}
}
.hero__title{
  margin:0;
  font-size:2.05rem;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.03em;
}
@media (min-width: 768px){
  .hero__title{font-size:2.65rem}
}
.hero__lead{
  margin-top:12px;
  font-size:1.05rem;
  line-height:1.65;
  color:var(--qy-muted);
}
.hero__actions{margin-top:18px}
.hero__actionsRow{display:flex;flex-wrap:wrap;gap:12px}
.hero__kpis{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.hero__right .hero__kpis{grid-template-columns:repeat(1,minmax(0,1fr))}
.kpi{
  padding:12px;
  border-radius:16px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.10);
  position:relative;
  overflow:hidden;
}
.kpi::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(220px 140px at 20% 0%, rgba(124,58,237,.12), transparent 70%);
  opacity:.85;
  pointer-events:none;
}
.kpi > *{position:relative}
.kpi__v{font-weight:900;letter-spacing:-.02em;font-size:1.15rem}
.kpi__k{margin-top:4px;font-size:.82rem;color:var(--qy-muted);font-weight:700}

.grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.col-3{grid-column:1 / span 3}
.col-4{grid-column:1 / span 4}
.col-8{grid-column:5 / -1}
.col-9{grid-column:4 / -1}
.col-7{grid-column:1 / span 7}
.col-5{grid-column:8 / -1}
.sticky{position:sticky;top:92px;align-self:start}
.narrow{max-width:44rem;margin-left:auto;margin-right:auto}
.narrow-lg{max-width:64rem;margin-left:auto;margin-right:auto}
@media (max-width: 1023.98px){
  .col-3,.col-4,.col-8,.col-9,.col-7,.col-5{grid-column:1 / -1}
  .sticky{position:static}
}

.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width: 1023.98px){.cards-3{grid-template-columns:repeat(1,minmax(0,1fr))}}
.cards-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width: 1023.98px){.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 639.98px){.cards-4{grid-template-columns:repeat(1,minmax(0,1fr))}}

.homeIntro{padding:18px 0 8px}
.homeIntro__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(255,255,255,.78);
  color:var(--qy-muted2);
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.72rem;
}
.homeIntro__title{
  margin:0;
  font-weight:980;
  letter-spacing:-.03em;
  font-size:2rem;
  line-height:1.15;
  margin-top:12px;
}
@media (min-width: 768px){.homeIntro__title{font-size:2.35rem}}
.homeIntro__desc{margin-top:10px;color:var(--qy-muted);font-weight:700;line-height:1.7;max-width:56rem}
.homeIntro__pills{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(255,255,255,.72);
  color:rgba(15,23,42,.86);
  font-weight:800;
}
.homeIntro__actions{margin-top:14px;display:flex;gap:12px;flex-wrap:wrap}

.homeBlock{padding-top:18px}
.homeBlock__head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.homeBlock__title{font-weight:950;letter-spacing:-.02em;font-size:1.05rem}
.homeBlock__desc{color:var(--qy-muted2);font-weight:700}

.section{padding-top:26px}
.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.section__title{font-weight:950;letter-spacing:-.02em;font-size:1.15rem}
.section__desc{color:var(--qy-muted2);font-weight:700}

.card--link{display:block;transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease}
.card--link:hover{transform:translateY(-1px);box-shadow:var(--qy-shadow)}
.cardTitle{font-weight:950;letter-spacing:-.02em}
.cardMeta{color:var(--qy-muted2);margin-top:8px;font-weight:700}
.cardPrice{margin-top:14px;font-weight:950;font-size:1.35rem;letter-spacing:-.03em;color:var(--qy-primary)}
.cardCta{margin-top:10px;color:var(--qy-muted);font-weight:800}

.heroSlider{margin-top:0}
.heroSlider__inner{padding-top:0}
.heroSlider__viewport{overflow:hidden;border-radius:var(--qy-radius);border:1px solid var(--qy-border);background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.72));box-shadow:var(--qy-shadow2)}
.heroSlider__track{display:flex;transition:transform .38s ease;will-change:transform}
.heroSlide{min-width:100%;padding:26px}
@media (min-width: 768px){.heroSlide{padding:34px}}
.heroSlide__content{max-width:52rem}
.heroSlide__eyebrow{color:var(--qy-muted2);font-weight:900;letter-spacing:.02em;text-transform:uppercase;font-size:.78rem}
.heroSlide__title{margin-top:10px;font-weight:950;letter-spacing:-.03em;font-size:2.1rem;line-height:1.15}
@media (min-width: 768px){.heroSlide__title{font-size:2.6rem}}
.heroSlide__desc{margin-top:12px;color:var(--qy-muted);font-weight:700;line-height:1.7}
.heroSlide__actions{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap}
.heroDots{display:flex;justify-content:center;gap:10px;margin-top:12px}
.heroDot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(15,23,42,.18);background:rgba(15,23,42,.06);cursor:pointer}
.heroDot.is-active{background:linear-gradient(135deg,var(--qy-primary),var(--qy-secondary));border-color:rgba(0,102,255,.22)}

.tableToolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pager{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pager__info{font-weight:800}

.homeQuickGrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.homeQuickLeft{grid-column:1 / span 7}
.homeQuickRight{grid-column:8 / -1}
@media (max-width: 1023.98px){
  .homeQuickLeft,.homeQuickRight{grid-column:1 / -1}
}
.quickBtns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
@media (max-width: 639.98px){
  .quickBtns{grid-template-columns:repeat(1,minmax(0,1fr))}
}

@supports (color: color-mix(in srgb, #000 0%, #fff 100%)){
  :root{
    --qy-ring:0 0 0 4px color-mix(in srgb, var(--qy-primary) 18%, transparent);
  }
  body.qy-front::before{
    background:
      radial-gradient(1200px 700px at 50% -12%, color-mix(in srgb, var(--qy-primary) 16%, transparent), transparent 62%),
      radial-gradient(980px 640px at 16% 12%, color-mix(in srgb, var(--qy-secondary) 12%, transparent), transparent 60%),
      repeating-linear-gradient(90deg, rgba(255,255,255,.028) 0, rgba(255,255,255,.028) 1px, transparent 1px, transparent 92px),
      repeating-linear-gradient(0deg, rgba(255,255,255,.022) 0, rgba(255,255,255,.022) 1px, transparent 1px, transparent 92px);
  }
  .nav__link.is-active{
    background:linear-gradient(135deg, color-mix(in srgb, var(--qy-primary) 22%, transparent), color-mix(in srgb, var(--qy-secondary) 14%, transparent));
  }
  .card::before{
    background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--qy-primary) 70%, transparent), color-mix(in srgb, var(--qy-secondary) 70%, transparent), transparent);
  }
  .hero{
    background:
      radial-gradient(980px 520px at 18% 0%, color-mix(in srgb, var(--qy-primary) 14%, transparent), transparent 64%),
      radial-gradient(820px 480px at 82% 10%, color-mix(in srgb, var(--qy-secondary) 10%, transparent), transparent 64%),
      linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02));
  }
  .kpi::before{
    background:radial-gradient(220px 140px at 20% 0%, color-mix(in srgb, var(--qy-primary) 16%, transparent), transparent 70%);
  }
  .input:focus{
    border-color:color-mix(in srgb, var(--qy-primary) 55%, transparent);
  }
  .item.is-active{
    border-color:color-mix(in srgb, var(--qy-primary) 35%, rgba(255,255,255,.14));
    background:linear-gradient(180deg, color-mix(in srgb, var(--qy-primary) 14%, transparent), rgba(255,255,255,.04));
  }
  .badge--success{
    border-color:color-mix(in srgb, var(--qy-secondary) 30%, rgba(255,255,255,.12));
    background:linear-gradient(135deg, color-mix(in srgb, var(--qy-secondary) 20%, transparent), rgba(255,255,255,.05));
  }
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius:14px;
  font-weight:800;
  border:1px solid transparent;
  cursor:pointer;
  user-select:none;
  appearance:none;
  -webkit-appearance:none;
  transition:transform .12s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,opacity .18s ease,filter .18s ease;
}
.btn:focus-visible{outline:none;box-shadow:var(--qy-ring)}
.btn:active{transform:translateY(1px)}
.btn--primary{
  background:var(--qy-primary);
  color:#fff;
  box-shadow:0 16px 44px rgba(0,102,255,.20);
}
.btn--primary:hover{
  filter:brightness(1.05);
}
.btn--primary:active{
  filter:brightness(.98);
}
.btn--secondary{
  background:rgba(15,23,42,.03);
  border-color:rgba(15,23,42,.10);
  color:rgba(15,23,42,1);
}
.btn--secondary:hover{background:rgba(15,23,42,.05);border-color:rgba(15,23,42,.14)}
.btn--block{width:100%}
.btn--sm{padding:10px 12px;border-radius:12px;font-size:.875rem}

.label{display:block;font-size:.86rem;color:var(--qy-muted);margin-bottom:8px;font-weight:700}
.input{
  width:100%;
  background:rgba(255,255,255,1);
  border:1px solid rgba(15,23,42,.12);
  border-radius:14px;
  padding:12px 14px;
  font-size:.95rem;
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.input::placeholder{color:rgba(148,163,184,.70)}
.input:focus{
  border-color:var(--qy-primary);
  box-shadow:var(--qy-ring);
}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width: 767.98px){.row{grid-template-columns:1fr}}

.list{display:flex;flex-direction:column;gap:12px}
.item{
  width:100%;
  text-align:left;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(255,255,255,1);
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease;
}
.item:hover{background:rgba(15,23,42,.02);border-color:rgba(15,23,42,.14);box-shadow:0 14px 26px rgba(15,23,42,.10)}
.item.is-active{border-color:rgba(37,99,235,.35);background:linear-gradient(180deg, rgba(37,99,235,.08), rgba(255,255,255,1))}

.split{border-top:1px solid rgba(15,23,42,.10);padding-top:16px;margin-top:16px}

.link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:rgba(15,23,42,1);
  font-weight:800;
  letter-spacing:-.01em;
  border-bottom:1px solid transparent;
  transition:border-color .18s ease,opacity .18s ease,transform .12s ease;
  background:transparent;
  border-left:0;
  border-right:0;
  border-top:0;
  padding:0;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}
.link:hover{border-color:rgba(15,23,42,.24)}

.tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  font-weight:800;
  color:rgba(226,232,240,1);
}

.stat{
  border-radius:16px;
  padding:14px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.10);
}

.tableWrap{overflow:auto;border-radius:16px;border:1px solid rgba(15,23,42,.10)}
.table{width:100%;border-collapse:collapse;font-size:.93rem}
.table th{
  text-align:left;
  color:var(--qy-muted);
  font-size:.82rem;
  padding:12px 12px;
  border-bottom:1px solid rgba(15,23,42,.10);
  background:rgba(15,23,42,.03);
}
.table td{
  padding:12px 12px;
  border-bottom:1px solid rgba(15,23,42,.06);
}
.table tr:hover td{background:rgba(15,23,42,.02)}

.badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:-.02em;
  font-size:.85rem;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(15,23,42,.03);
}
.badge--success{
  border-color:rgba(6,182,212,.26);
  background:linear-gradient(135deg, rgba(6,182,212,.14), rgba(255,255,255,.05));
}
.badge--warning{
  border-color:rgba(255,255,255,.16);
  background:linear-gradient(135deg, rgba(245,158,11,.18), rgba(255,255,255,.05));
}

.toast{
  position:fixed;
  left:16px;
  right:16px;
  bottom:20px;
  z-index:60;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .22s ease,transform .22s ease;
  pointer-events:none;
}
@media (min-width: 768px){
  .toast{left:auto;right:22px;bottom:22px;max-width:420px}
}
.toast.is-show{opacity:1;transform:translateY(0)}
.toast__inner{
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  box-shadow:var(--qy-shadow2);
  display:flex;
  gap:10px;
  align-items:center;
}
.toast__dot{
  width:10px;height:10px;border-radius:999px;
  background:linear-gradient(135deg, var(--qy-primary), var(--qy-secondary));
  flex-shrink:0;
}

.footer{
  border-top:1px solid rgba(15,23,42,.08);
  background:rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
}
.footer__grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:18px;
  padding-top:28px;
  padding-bottom:22px;
}
@media (min-width: 768px){
  .footer__grid{grid-template-columns:repeat(var(--footer-cols,4),minmax(0,1fr))}
}
.footer__title{font-weight:900;letter-spacing:-.02em;margin-bottom:10px}
.footer__list{display:flex;flex-direction:column;gap:8px}
.footer__link{color:var(--qy-muted);font-weight:700}
.footer__link:hover{color:#fff}
.footer__bottom{
  padding:16px 0 26px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:space-between;
  color:var(--qy-muted2);
  font-size:.9rem;
}
