:root{
  --home-max: 1220px;
}

/* Home-only layout (keeps other pages unchanged) */
.home-wrap{max-width: var(--home-max); margin: 0 auto; padding: 8px 0 64px;}

.reveal{opacity:0; transform: translateY(10px); filter: blur(2px);}
.reveal.in{opacity:1; transform: translateY(0); filter: blur(0); transition: opacity .55s ease, transform .55s ease, filter .55s ease; transition-delay: var(--d,0ms);}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; filter:none;}
  .reveal.in{transition:none;}
}

.home-hero{
  position: relative;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 18px;
  padding: 18px;
  border-radius: 28px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.09);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
}
:root[data-theme="light"] .home-hero{
  border: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.72));
}

.home-hero:before{
  content:"";
  position:absolute;
  inset:-40px;
  background:
    radial-gradient(900px 420px at 10% 18%, rgba(10,132,255,.18), transparent 68%),
    radial-gradient(900px 420px at 90% 20%, rgba(20,184,166,.14), transparent 68%),
    radial-gradient(900px 520px at 50% 110%, rgba(255,159,10,.10), transparent 70%);
  pointer-events:none;
  opacity: .85;
}



:root[data-theme="light"] .home-hero:before{
  background:
    radial-gradient(900px 420px at 10% 18%, rgba(0,113,227,.14), transparent 68%),
    radial-gradient(900px 420px at 90% 20%, rgba(20,184,166,.10), transparent 68%),
    radial-gradient(900px 520px at 50% 110%, rgba(255,159,10,.08), transparent 70%);
  opacity: .95;
}
:root[data-theme="light"] .home-hero:after{
  content:"";
  position:absolute;
  inset:-28px;
  background: url('/static/img/bg_light.webp') center top / cover no-repeat;
  opacity: .08;
  filter: saturate(1.05) contrast(1.02);
  pointer-events:none;
}

.home-hero-left,.home-hero-right{position:relative; z-index:1;}

.home-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-weight: 700;
  letter-spacing: .2px;
}
:root[data-theme="light"] .home-badge{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.85);}

.home-title{margin: 14px 0 10px; font-size: 44px; line-height:1.05; letter-spacing:-.8px;}
.home-sub{margin:0 0 14px; color: var(--muted); font-size: 16px; max-width: 56ch;}

.home-search{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.12);
}
:root[data-theme="light"] .home-search{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.90);}

.home-search-ic{display:inline-flex; width:18px; height:18px; color: var(--muted);}
.home-search-in{
  flex:1;
  min-width:0;
  border:none;
  outline:none;
  background: transparent;
  color: var(--text);
  font-size: 15px;
}
.home-search-in::placeholder{color: var(--muted);}
.home-search-btn{height:40px; padding: 0 14px; border-radius: 14px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.06); color: var(--text); font-weight:700; cursor:pointer;}
:root[data-theme="light"] .home-search-btn{border-color: rgba(0,0,0,.12); background: rgba(0,0,0,.04);}
.home-search-btn:hover{transform: translateY(-1px);}

.home-cta{display:flex; gap:10px; flex-wrap:wrap; margin-top: 12px;}

.home-metrics{display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; margin-top: 14px;}
.home-metric{padding: 10px 12px; border-radius: 18px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.04);}
:root[data-theme="light"] .home-metric{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.85);}
.home-metric .k{color: var(--muted); font-size: 12px;}
.home-metric .v{font-weight: 850; font-size: 18px; margin-top: 2px;}

.home-warn{margin-top: 10px; padding: 10px 12px; border-radius: 16px; border: 1px solid rgba(255,176,32,.35); background: rgba(255,176,32,.10);}
:root[data-theme="light"] .home-warn{border-color: rgba(255,176,32,.45); background: rgba(255,176,32,.12);}

.home-bento{display:grid; grid-template-columns: 1fr 1fr; gap: 12px;}
.home-card{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
  overflow:hidden;
  min-height: 152px;
}
:root[data-theme="light"] .home-card{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.85);}
.home-card:hover{transform: translateY(-2px); transition: transform .25s ease;}

.home-card-head{display:flex; align-items:center; justify-content:space-between; gap: 10px; margin-bottom: 8px;}
.home-card-title{font-weight: 800; font-size: 13px; color: var(--muted); letter-spacing: .2px;}
.home-card-link{font-weight: 750; font-size: 13px; color: var(--text); opacity: .9;}
.home-card-link:hover{text-decoration: underline;}

.home-kpis{display:grid; grid-template-columns: 1fr 1fr; gap: 12px;}
.home-kpis .k{color: var(--muted); font-size: 12px;}
.home-kpis .v{font-weight: 900; font-size: 18px; margin-top: 2px;}
.home-kpis .m{color: var(--muted); font-size: 12px; margin-top: 2px;}

.home-mini-chart{margin-top: 10px; border-radius: 16px; border: 1px solid rgba(255,255,255,.10); background: rgba(0,0,0,.10); padding: 10px;}
:root[data-theme="light"] .home-mini-chart{border-color: rgba(0,0,0,.10); background: rgba(0,0,0,.03);}

.home-links{display:flex; flex-direction:column; gap: 8px;}
.home-link{padding: 10px 10px; border-radius: 14px; border: 1px solid rgba(255,255,255,.10); background: rgba(0,0,0,.10); font-weight: 700;}
:root[data-theme="light"] .home-link{border-color: rgba(0,0,0,.10); background: rgba(0,0,0,.03);}
.home-link:hover{transform: translateY(-1px);}

.home-pill-row{display:flex; gap: 8px; flex-wrap:wrap; margin-top: 12px;}

.home-section{margin-top: 18px; padding: 12px 0;}
.home-section-head{display:flex; align-items:flex-end; justify-content:space-between; gap: 14px; padding: 0 2px 10px;}
.home-section h2{margin:0; font-size: 20px; letter-spacing: -.2px;}

.home-scroller{
  display:flex;
  gap: 12px;
  overflow:auto;
  padding: 6px 2px 10px;
  scrollbar-width: none;
}
.home-scroller::-webkit-scrollbar{display:none;}

.home-tag-card{
  flex: 0 0 320px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
}
:root[data-theme="light"] .home-tag-card{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.85);}
.home-tag-head{display:flex; align-items:center; justify-content:space-between; gap: 10px; margin-bottom: 8px;}
.home-tag-head .t{font-weight: 900; letter-spacing: -.2px;}
.home-tag-link{font-weight: 750; color: var(--muted);} 
.home-tag-link:hover{text-decoration: underline;}

.home-tag-list{display:flex; flex-direction:column; gap: 8px;}
.home-tag-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.10);
}
:root[data-theme="light"] .home-tag-item{border-color: rgba(0,0,0,.10); background: rgba(0,0,0,.03);}
.home-tag-item .n{font-weight: 750; min-width:0; overflow:hidden; text-overflow: ellipsis; white-space: nowrap;}

.home-grid{display:grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px;}
.home-panel{
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 14px;
}
:root[data-theme="light"] .home-panel{border-color: rgba(0,0,0,.10); background: rgba(255,255,255,.85);}
.home-panel-head{display:flex; align-items:center; justify-content:space-between; gap: 10px; margin-bottom: 10px;}
.home-panel-head h2{margin:0; font-size: 18px;}
.home-panel-link{color: var(--muted); font-weight: 750;}
.home-panel-link:hover{text-decoration: underline;}

.home-latest{display:flex; flex-direction:column; gap: 10px;}
.home-latest-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.10);
}
:root[data-theme="light"] .home-latest-item{border-color: rgba(0,0,0,.10); background: rgba(0,0,0,.03);}
.home-latest-item .name{font-weight: 850; letter-spacing: -.15px;}
.home-latest-item .meta{margin-top: 6px; display:flex; gap: 6px; flex-wrap:wrap;}
.home-latest-item .val{font-weight: 900;}

.home-actions{display:grid; gap: 10px;}
.home-action{
  padding: 14px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.10);
}
:root[data-theme="light"] .home-action{border-color: rgba(0,0,0,.10); background: rgba(0,0,0,.03);}
.home-action:hover{transform: translateY(-2px); transition: transform .25s ease;}
.home-action .tt{font-weight: 900;}
.home-action .mm{color: var(--muted); font-size: 13px; margin-top: 4px;}

@media (max-width: 980px){
  .home-hero{grid-template-columns: 1fr;}
  .home-title{font-size: 38px;}
  .home-grid{grid-template-columns: 1fr;}
}

@media (max-width: 560px){
  .home-title{font-size: 32px;}
  .home-metrics{grid-template-columns: 1fr 1fr;}
  .home-bento{grid-template-columns: 1fr;}
  .home-tag-card{flex-basis: 86vw;}
}
