/* =========================================================
   TTM Vault v0.11.9 — Home Screen + Recent Success Ticker
   ========================================================= */

.home-body{
  min-height:100vh;
  background:
    radial-gradient(900px 540px at 52% -5%,rgba(31,66,101,.24),transparent 62%),
    radial-gradient(620px 420px at 94% 22%,rgba(244,185,40,.055),transparent 70%),
    linear-gradient(180deg,#05090e 0%,#05080d 48%,#030609 100%);
}

.home-page{
  width:min(1240px,100%);
  margin:0 auto;
  padding:46px 26px 90px;
}

.home-hero{
  position:relative;
  min-height:520px;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  align-items:center;
  gap:34px;
  overflow:hidden;
  padding:54px 58px 48px;
  border:1px solid rgba(157,175,193,.45);
  border-radius:38px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.055),transparent 17%),
    radial-gradient(520px 330px at 90% 18%,rgba(255,199,57,.075),transparent 66%),
    linear-gradient(145deg,#141e29 0%,#0a121a 42%,#060a0f 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(255,255,255,.03),
    0 36px 90px rgba(0,0,0,.45);
}

.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    repeating-linear-gradient(115deg,transparent 0 92px,rgba(255,255,255,.012) 93px 94px),
    linear-gradient(90deg,transparent 0 66%,rgba(255,255,255,.018) 100%);
}

.home-hero-glow{
  position:absolute;
  width:520px;
  height:520px;
  right:-120px;
  top:-170px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(244,185,40,.10),transparent 68%);
  filter:blur(4px);
}

.home-hero-content,
.home-hero-side{
  position:relative;
  z-index:1;
}

.home-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:16px;
  color:#f7c64a;
  font-size:12px;
  font-weight:950;
  letter-spacing:.24em;
}

.home-kicker::before{
  content:"";
  width:28px;
  height:2px;
  background:#f4b928;
  box-shadow:0 0 14px rgba(244,185,40,.45);
}

.home-hero h1{
  margin:0;
  max-width:780px;
  color:#fff;
  font-size:clamp(48px,5.6vw,78px);
  line-height:.94;
  letter-spacing:-.045em;
  font-weight:950;
  text-shadow:0 5px 30px rgba(255,255,255,.045);
}

.home-hero h1 span{
  display:inline-block;
  margin-top:8px;
  color:#f5bd2f;
  text-shadow:0 0 26px rgba(244,185,40,.14);
}

.home-subtitle{
  max-width:680px;
  margin:24px 0 0;
  color:#b9c5d1;
  font-size:18px;
  line-height:1.55;
}

.home-search-block{
  max-width:790px;
  margin-top:34px;
}

.home-search-label{
  margin:0 0 9px 4px;
  color:#7f90a0;
  font-size:10px;
  font-weight:950;
  letter-spacing:.17em;
}

.home-search-shell{
  max-width:none;
  margin:0;
  align-items:center;
  padding:7px;
  border-color:#526273;
  border-radius:19px;
  background:linear-gradient(180deg,#0b141d,#071019);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 16px 34px rgba(0,0,0,.24);
}

.home-search-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#f4bf39;
  font-size:28px;
  line-height:1;
}

.home-search-shell input{
  min-width:0;
  min-height:48px;
  padding-left:0;
  font-size:17px;
}

.home-search-shell button{
  min-height:48px;
  padding:0 28px;
  border:1px solid #e3b33a;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    0 7px 22px rgba(190,128,16,.22);
  cursor:pointer;
}

.home-pills{
  margin-top:13px;
}

.home-pills .pill{
  padding:8px 12px;
  font-size:11px;
  cursor:pointer;
}

.home-hero-side{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:24px;
  min-height:330px;
}

.vault-mark{
  position:relative;
  width:285px;
  height:285px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:
    radial-gradient(circle at 40% 34%,rgba(255,255,255,.11),transparent 6%),
    radial-gradient(circle,#18232d 0 47%,#071019 48% 61%,#23303a 62% 64%,#080d12 65% 100%);
  border:1px solid #7a8793;
  box-shadow:
    inset 0 3px 2px rgba(255,255,255,.22),
    inset 0 -12px 28px rgba(0,0,0,.65),
    0 28px 56px rgba(0,0,0,.42),
    0 0 50px rgba(244,185,40,.055);
}

.vault-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(220,229,236,.22);
}

.vault-ring-one{inset:20px}
.vault-ring-two{inset:42px;border-style:dashed;border-color:rgba(244,185,40,.20)}

.vault-core{
  width:142px;
  height:142px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid #788794;
  border-radius:50%;
  background:linear-gradient(145deg,#27323d,#0b1218 58%,#1c2731);
  box-shadow:inset 0 2px 1px rgba(255,255,255,.22),0 12px 30px rgba(0,0,0,.38);
}

.vault-core span{
  color:#fff;
  font-size:24px;
  font-weight:950;
  letter-spacing:.08em;
}

.vault-core strong{
  margin-top:2px;
  color:#f4bc31;
  font-size:25px;
  letter-spacing:.05em;
}

.hero-side-copy{
  color:#71808e;
  font-size:9px;
  font-weight:950;
  letter-spacing:.25em;
  text-align:center;
}

.home-feature-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}

.home-feature-card{
  min-width:0;
  min-height:205px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 18px;
  align-items:start;
  gap:13px;
  padding:23px 20px;
  border:1px solid #334454;
  border-radius:23px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),transparent 24%),
    linear-gradient(180deg,#101923,#081018);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 12px 24px rgba(0,0,0,.16);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.home-feature-card:hover{
  transform:translateY(-2px);
  border-color:#657789;
  background:
    linear-gradient(145deg,rgba(255,255,255,.055),transparent 24%),
    linear-gradient(180deg,#141f2a,#09121a);
}

.home-feature-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid #5e6d7b;
  border-radius:13px;
  background:linear-gradient(145deg,#27323d,#0a1117 72%);
  color:#f4bd35;
  font-size:21px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13);
}

.home-card-kicker{
  min-height:23px;
  color:#8a9aa8;
  font-size:8px;
  font-weight:950;
  letter-spacing:.12em;
}

.home-feature-card h2{
  margin:5px 0 8px;
  font-size:18px;
  line-height:1.15;
}

.home-feature-card p{
  margin:0;
  color:#8998a6;
  font-size:12px;
  line-height:1.5;
}

.home-feature-card > b{
  align-self:center;
  color:#cbd5df;
  font-size:28px;
  font-weight:300;
}

.home-promise{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);
  gap:40px;
  align-items:center;
  margin-top:18px;
  padding:34px 36px;
  border:1px solid #263542;
  border-radius:24px;
  background:linear-gradient(115deg,rgba(244,185,40,.035),transparent 45%),#071019;
}

.home-promise h2{
  margin:7px 0 0;
  font-size:27px;
  line-height:1.18;
}

.home-promise p{
  margin:0;
  color:#8f9eab;
  font-size:14px;
  line-height:1.65;
}

.home-results{
  margin-top:18px;
  scroll-margin-top:94px;
}

.home-results .results-head h2{
  margin:5px 0 0;
}

@media(max-width:1040px){
  .home-hero{
    grid-template-columns:1fr;
  }
  .home-hero-side{
    display:none;
  }
  .home-feature-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .home-page{
    padding:22px 13px 70px;
  }
  .home-hero{
    min-height:0;
    padding:34px 18px 28px;
    border-radius:25px;
  }
  .home-hero h1{
    font-size:clamp(39px,12vw,54px);
  }
  .home-subtitle{
    margin-top:19px;
    font-size:15px;
  }
  .home-search-block{
    margin-top:25px;
  }
  .home-search-shell{
    flex-direction:row;
  }
  .home-search-shell input{
    font-size:16px;
  }
  .home-search-shell button{
    padding:0 15px;
    font-size:12px;
  }
  .home-search-icon{
    display:none;
  }
  .home-feature-grid{
    grid-template-columns:1fr;
    gap:10px;
    margin-top:11px;
  }
  .home-feature-card{
    min-height:0;
    padding:18px 16px;
  }
  .home-promise{
    grid-template-columns:1fr;
    gap:16px;
    padding:25px 20px;
  }
}

@media(max-width:480px){
  .home-search-shell{
    flex-direction:column;
    align-items:stretch;
  }
  .home-search-shell input{
    min-height:46px;
    padding:10px 12px;
  }
  .home-search-shell button{
    min-height:46px;
  }
}


/* =========================================================
   v0.11.9 — HOME RECENT SUCCESS TICKER
   Uses documented external success evidence already in the Vault.
   ========================================================= */
.home-success-ticker{
  min-height:56px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  margin-top:12px;
  overflow:hidden;
  border:1px solid #314636;
  border-radius:16px;
  background:
    linear-gradient(90deg,rgba(40,94,50,.14),transparent 25%,transparent 74%,rgba(244,188,49,.035)),
    #071019;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 9px 24px rgba(0,0,0,.13);
}

.home-success-ticker-label{
  height:100%;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 0 0 17px;
  color:#76df85;
  font-size:10px;
  font-weight:950;
  letter-spacing:.11em;
  white-space:nowrap;
}

.home-success-star{
  color:#f4bd35;
  font-size:14px;
}

.home-success-ticker-viewport{
  min-width:0;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);
}

.home-success-ticker-track{
  --home-ticker-duration:75s;
  width:max-content;
  display:flex;
  align-items:center;
  will-change:transform;
  animation:homeTickerScroll var(--home-ticker-duration) linear infinite;
}

.home-success-ticker:hover .home-success-ticker-track,
.home-success-ticker:focus-within .home-success-ticker-track{
  animation-play-state:paused;
}

.home-success-ticker-group{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:17px;
  padding-right:17px;
}

.home-ticker-item{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:54px;
  color:#e6edf2;
  text-decoration:none;
  white-space:nowrap;
}

.home-ticker-item strong{
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.home-ticker-sport{
  color:#9baab6;
  font-size:10px;
  font-weight:750;
}

.home-ticker-days{
  padding:4px 7px;
  border:1px solid rgba(104,221,126,.27);
  border-radius:999px;
  background:rgba(69,173,86,.07);
  color:#75dd84;
  font-size:9px;
  font-weight:900;
}

.home-ticker-date{
  color:#748591;
  font-size:9px;
}

.home-ticker-divider{
  color:#425564;
  font-size:6px;
}

.home-success-ticker-source{
  padding-right:17px;
  color:#687987;
  font-size:8px;
  font-weight:950;
  letter-spacing:.12em;
  white-space:nowrap;
}

.home-success-ticker-loading{
  min-height:54px;
  display:flex;
  align-items:center;
  color:#71818e;
  font-size:10px;
  white-space:nowrap;
}

.home-success-ticker.is-empty .home-success-ticker-track{
  animation:none;
}

@keyframes homeTickerScroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

@media(max-width:760px){
  .home-success-ticker{
    grid-template-columns:auto minmax(0,1fr);
    gap:9px;
    min-height:52px;
    border-radius:14px;
  }
  .home-success-ticker-label{
    padding-left:12px;
    font-size:8px;
  }
  .home-success-ticker-source{
    display:none;
  }
  .home-success-ticker-group{
    gap:13px;
    padding-right:13px;
  }
  .home-ticker-item{
    gap:7px;
    min-height:50px;
  }
  .home-ticker-item strong{
    font-size:11px;
  }
  .home-ticker-sport,
  .home-ticker-days,
  .home-ticker-date{
    font-size:8px;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-success-ticker-viewport{
    overflow-x:auto;
    -webkit-mask-image:none;
    mask-image:none;
  }
  .home-success-ticker-track{
    animation:none;
  }
  .home-success-ticker-group[aria-hidden="true"]{
    display:none;
  }
}


/* =========================================================
   v0.11.10 — HOME SEARCH SIMPLIFICATION + TICKER READABILITY
   ========================================================= */

/* The home page is an entry point, not the advanced filter screen. */
.home-search-block{
  padding-bottom:2px;
}

.home-pills{
  display:none !important;
}

/* Give documented successes enough visual weight to be readable at a glance. */
.home-success-ticker{
  min-height:76px;
  gap:20px;
  margin-top:14px;
  border-radius:18px;
}

.home-success-ticker-label{
  gap:10px;
  padding-left:20px;
  font-size:12px;
  letter-spacing:.115em;
}

.home-success-star{
  font-size:18px;
}

.home-success-ticker-group{
  gap:22px;
  padding-right:22px;
}

.home-ticker-item{
  gap:11px;
  min-height:74px;
}

.home-ticker-item strong{
  font-size:16px;
}

.home-ticker-sport{
  font-size:11px;
}

.home-ticker-days{
  padding:5px 9px;
  font-size:11px;
}

.home-ticker-date{
  font-size:10px;
}

.home-ticker-divider{
  font-size:7px;
}

.home-success-ticker-source{
  padding-right:20px;
  font-size:9px;
}

.home-success-ticker-loading{
  min-height:74px;
  font-size:12px;
}

@media(max-width:760px){
  .home-success-ticker{
    min-height:64px;
    gap:11px;
  }
  .home-success-ticker-label{
    padding-left:13px;
    font-size:9px;
  }
  .home-success-star{
    font-size:15px;
  }
  .home-success-ticker-group{
    gap:16px;
    padding-right:16px;
  }
  .home-ticker-item{
    gap:8px;
    min-height:62px;
  }
  .home-ticker-item strong{
    font-size:13px;
  }
  .home-ticker-sport,
  .home-ticker-days{
    font-size:9px;
  }
  .home-ticker-date{
    font-size:8px;
  }
}
