body.rfm-100hitu-page{
  background:radial-gradient(circle at 16% 0,rgba(229,45,39,.09),transparent 32%),radial-gradient(circle at 90% 7%,rgba(210,4,53,.07),transparent 30%),#faf6f5;
}
body.rfm-100hitu-page #rfm-ajax-content{min-height:70vh}
.rfm-100hitu-shell,
.rfm-100hitu-shell *{
  box-sizing:border-box;
  -webkit-tap-highlight-color:transparent;
}
.rfm-100hitu-shell{
  width:min(1680px,100%);
  margin:0 auto;
  padding:138px 48px 54px;
  font-family:var(--rfm-font-main,'Poppins',sans-serif);
}
.rfm-100hitu-hero{display:block}
.rfm-100hitu-page-head{
  width:min(1480px,100%);
  margin:0 auto 22px;
  display:grid;
  gap:10px;
}
.rfm-100hitu-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  width:max-content;
  min-height:36px;
  padding:0 14px 0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(210,4,53,.14);
  color:#d20435;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 8px 24px rgba(38,28,29,.05);
}
.rfm-100hitu-kicker-dot{
  width:11px;
  height:11px;
  border-radius:50%;
  background:#e52d27;
  box-shadow:0 0 0 5px rgba(229,45,39,.12);
  flex:0 0 auto;
}
#rfm-100hitu-title{
  margin:0;
  color:#120c12;
  font-size:clamp(40px,5.7vw,76px);
  line-height:.98;
  font-weight:800;
  letter-spacing:-.065em;
}
.rfm-100hitu-top-grid{
  width:min(1480px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);
  gap:clamp(22px,1.9vw,30px);
  align-items:stretch;
}
.rfm-100hitu-player-card,
.rfm-100hitu-description,
.rfm-100hitu-history-card{
  min-width:0;
  border-radius:34px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 22px 58px rgba(38,28,29,.07),inset 0 1px 0 rgba(255,255,255,.72);
  backdrop-filter:blur(22px) saturate(155%);
  -webkit-backdrop-filter:blur(22px) saturate(155%);
}
.rfm-100hitu-player-card{
  position:relative;
  overflow:hidden;
  width:100%;
  aspect-ratio:16/9;
}
.rfm-100hitu-art-frame{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  isolation:isolate;
}
.rfm-100hitu-art-frame::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(18,12,18,.04),rgba(18,12,18,.13));
  z-index:3;
  pointer-events:none;
}
.rfm-100hitu-logo{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.rfm-100hitu-play{
  position:absolute;
  right:22px;
  bottom:22px;
  z-index:5;
  transform:none;
  width:84px;
  height:84px;
  border:1px solid rgba(255,255,255,.70)!important;
  border-radius:50%!important;
  background:rgba(210,4,53,.84)!important;
  color:#fff!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 18px 38px rgba(210,4,53,.28),inset 0 1px 0 rgba(255,255,255,.28),0 0 0 9px rgba(255,255,255,.20);
  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.rfm-100hitu-play:hover,
.rfm-100hitu-play:focus-visible{
  transform:translateY(-1px) scale(1.035);
  background:rgba(229,45,39,.90)!important;
  box-shadow:0 22px 44px rgba(210,4,53,.34),inset 0 1px 0 rgba(255,255,255,.34),0 0 0 10px rgba(255,255,255,.24);
  outline:0;
}
.rfm-100hitu-play svg{
  width:34px;
  height:34px;
  fill:currentColor;
  display:block;
}
.rfm-100hitu-description{
  min-height:100%;
  height:100%;
  width:100%;
  padding:34px 38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:rgba(38,28,29,.76);
  font-size:clamp(17px,1.35vw,22px);
  line-height:1.46;
  font-weight:600;
  letter-spacing:-.025em;
}
.rfm-100hitu-description-content{
  display:grid;
  gap:13px;
}
.rfm-100hitu-desc-toggle{
  display:none;
  appearance:none;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
}
.rfm-100hitu-description p{margin:0;max-width:820px}
.rfm-100hitu-description strong{color:#261c1d;font-weight:800}
.rfm-100hitu-description a{color:#d20435;font-weight:800;text-decoration:none}
.rfm-100hitu-description a:hover,
.rfm-100hitu-description a:focus-visible{text-decoration:underline}
.rfm-100hitu-history-card{
  width:min(1480px,100%);
  margin:24px auto 0;
  padding:18px 24px;
  overflow:hidden;
}
.rfm-100hitu-history-card .rfm-history-expand-wrap,
.rfm-100hitu-history-card .rfm-history-expand-btn,
.rfm-100hitu-history-card .rfm-history-expand-slot{display:none!important}
.rfm-100hitu-history-list{
  width:100%;
  min-height:0;
  overflow:visible;
  display:block;
}
.rfm-100hitu-history-list .rfm-history-row{
  display:grid;
  grid-template-columns:92px minmax(0,1fr) 64px;
  gap:18px;
  align-items:center;
  min-height:70px;
  padding:8px 0;
  border-bottom:1px solid rgba(38,28,29,.07);
}
.rfm-100hitu-history-list .rfm-history-row:nth-child(n+41){display:none!important}
.rfm-100hitu-history-list .rfm-history-row:nth-child(40){border-bottom:0}
.rfm-100hitu-history-list .rfm-history-time{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  color:#d20435;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
  text-transform:uppercase;
}
.rfm-100hitu-history-list .rfm-history-row:first-child .rfm-history-time{
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  background:#e52d27;
  color:#fff;
  font-size:11px;
  letter-spacing:.08em;
  box-shadow:0 10px 22px rgba(229,45,39,.18);
}
.rfm-100hitu-history-list .rfm-history-meta{
  min-width:0;
  display:grid;
  gap:5px;
}
.rfm-100hitu-history-list .rfm-history-song-title,
.rfm-100hitu-history-list .rfm-history-artist-title{
  min-width:0;
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-transform:uppercase;
}
.rfm-100hitu-history-list .rfm-history-song-title{
  color:#261c1d;
  font-size:clamp(16px,1.48vw,22px);
  line-height:1.04;
  font-weight:800;
  letter-spacing:-.035em;
}
.rfm-100hitu-history-list .rfm-history-artist-title{
  color:rgba(38,28,29,.56);
  font-size:clamp(11px,.88vw,14px);
  line-height:1.05;
  font-weight:700;
  letter-spacing:.02em;
}
.rfm-100hitu-history-list .rfm-history-art{
  width:64px;
  height:64px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(210,4,53,.10),rgba(229,45,39,.04));
  text-decoration:none!important;
}
.rfm-100hitu-history-list .rfm-history-art img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.rfm-100hitu-history-list .rfm-history-art.is-station-fallback{
  background:#d20435;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px;
}
.rfm-100hitu-history-list .rfm-history-art.is-station-fallback img{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:contain;
  border-radius:10px;
}
.rfm-100hitu-history-loading{
  color:rgba(38,28,29,.54);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-align:center;
  text-transform:uppercase;
  padding:26px 0;
}
@media(max-width:1180px){
  .rfm-100hitu-shell{padding-left:28px;padding-right:28px}
  .rfm-100hitu-top-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
  .rfm-100hitu-description{padding:28px 30px;font-size:clamp(16px,1.55vw,20px)}
  .rfm-100hitu-history-list .rfm-history-row{grid-template-columns:80px minmax(0,1fr) 56px;gap:14px;min-height:64px}
  .rfm-100hitu-history-list .rfm-history-art{width:56px;height:56px;border-radius:16px}
}
@media(max-width:980px){
  .rfm-100hitu-shell{padding:112px 16px 34px}
  .rfm-100hitu-page-head{margin-bottom:18px;gap:8px}
  #rfm-100hitu-title{font-size:clamp(34px,10vw,54px)}
  .rfm-100hitu-top-grid{grid-template-columns:1fr;gap:16px;width:100%}
  .rfm-100hitu-player-card,
  .rfm-100hitu-description,
  .rfm-100hitu-history-card{border-radius:26px}
  .rfm-100hitu-art-frame{border-radius:26px}
  .rfm-100hitu-play{right:18px;bottom:18px;width:76px;height:76px}
  .rfm-100hitu-play svg{width:28px;height:28px}
  .rfm-100hitu-description{
    padding:0;
    font-size:15px;
    line-height:1.5;
    overflow:hidden;
  }
  .rfm-100hitu-desc-toggle{
    width:100%;
    min-height:68px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:0 20px;
    color:#261c1d;
    font-size:14px;
    line-height:1;
    font-weight:800;
    letter-spacing:.02em;
    text-transform:uppercase;
    cursor:pointer;
  }
  .rfm-100hitu-desc-toggle span{
    display:inline-flex;
    align-items:center;
    gap:10px;
  }
  .rfm-100hitu-desc-toggle span::before{
    content:'';
    width:10px;
    height:10px;
    border-radius:50%;
    background:#e52d27;
    box-shadow:0 0 0 5px rgba(229,45,39,.12);
    flex:0 0 auto;
  }
  .rfm-100hitu-desc-toggle svg{
    width:24px;
    height:24px;
    fill:#d20435;
    transition:transform .18s ease;
    flex:0 0 auto;
  }
  .rfm-100hitu-description.is-open .rfm-100hitu-desc-toggle svg{transform:rotate(180deg)}
  .rfm-100hitu-description-content{
    max-height:0;
    overflow:hidden;
    padding:0 20px;
    opacity:0;
    transition:max-height .28s ease,opacity .22s ease,padding .22s ease;
  }
  .rfm-100hitu-description.is-open .rfm-100hitu-description-content{
    max-height:520px;
    padding:0 20px 22px;
    opacity:1;
  }
  .rfm-100hitu-history-card{margin-top:18px;padding:14px 18px}
}
@media(max-width:520px){
  .rfm-100hitu-shell{padding-left:14px;padding-right:14px}
  .rfm-100hitu-kicker{min-height:32px;padding:0 12px 0 10px;font-size:11px;letter-spacing:.10em}
  .rfm-100hitu-kicker-dot{width:10px;height:10px}
  .rfm-100hitu-play{right:14px;bottom:14px;width:64px;height:64px;box-shadow:0 14px 30px rgba(210,4,53,.28),inset 0 1px 0 rgba(255,255,255,.30),0 0 0 7px rgba(255,255,255,.20)}
  .rfm-100hitu-play svg{width:24px;height:24px}
  .rfm-100hitu-desc-toggle{min-height:62px;padding:0 18px;font-size:13px}
  .rfm-100hitu-description-content{padding:0 18px}
  .rfm-100hitu-description.is-open .rfm-100hitu-description-content{padding:0 18px 20px}
  .rfm-100hitu-history-card{padding:12px 14px}
  .rfm-100hitu-history-list .rfm-history-row{grid-template-columns:58px minmax(0,1fr) 42px;gap:10px;min-height:58px;padding:7px 0}
  .rfm-100hitu-history-list .rfm-history-time{font-size:10px}
  .rfm-100hitu-history-list .rfm-history-row:first-child .rfm-history-time{min-height:24px;padding:0 8px;font-size:9px}
  .rfm-100hitu-history-list .rfm-history-song-title{font-size:13px;letter-spacing:-.025em}
  .rfm-100hitu-history-list .rfm-history-artist-title{font-size:10px}
  .rfm-100hitu-history-list .rfm-history-art{width:42px;height:42px;border-radius:13px}
}
@media (min-width:769px){
  body.rfm-100hitu-page #rfmHistoryContainer.rfm-history-preview-collapsed .rfm-history-row:nth-of-type(n+4){display:grid!important}
  body.rfm-100hitu-page #rfmHistoryContainer.rfm-history-preview-collapsed .rfm-history-row:nth-of-type(n+41){display:none!important}
  body.rfm-100hitu-page #rfmHistoryContainer.rfm-history-preview-collapsed{gap:0!important}
  body.rfm-100hitu-page #rfmHistoryContainer.rfm-history-preview-collapsed .rfm-history-row{min-height:70px!important}
}

/* v1.0.401: Relax FM Sentimentai station page reuses 100 HITŲ station surface. */
#rfm-sentimentai-title{
  margin:0;
  font-size:clamp(42px,6vw,84px);
  line-height:.92;
  letter-spacing:-.075em;
  color:#251b1d;
  text-wrap:balance;
}
body.rfm-sentimentai-page .rfm-100hitu-top-grid{
  align-items:stretch;
}
body.rfm-sentimentai-page .rfm-sentimentai-description-content p{
  max-width:880px;
}
@media (max-width: 767px){
  #rfm-sentimentai-title{font-size:clamp(34px,10vw,54px)}
}


/* v1.0.402: Sentimentai history uses the 100 HITŲ structure without artwork thumbnails. */
body.rfm-sentimentai-page .rfm-sentimentai-history-list .rfm-history-row{
  grid-template-columns:92px minmax(0,1fr);
}
body.rfm-sentimentai-page .rfm-sentimentai-history-list .rfm-history-art{
  display:none!important;
}
@media(max-width:1180px){
  body.rfm-sentimentai-page .rfm-sentimentai-history-list .rfm-history-row{
    grid-template-columns:80px minmax(0,1fr);
  }
}
@media(max-width:520px){
  body.rfm-sentimentai-page .rfm-sentimentai-history-list .rfm-history-row{
    grid-template-columns:58px minmax(0,1fr);
  }
}

/* v1.0.530: keep station-page play button anchored to the 16:9 logo.
   A global loading selector for #rfm-playbtn in rfm-sticky-player-final.css uses
   position:relative!important; this more specific rule restores the station hero button. */
body.rfm-100hitu-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play,
body.rfm-sentimentai-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play {
  position:absolute!important;
  right:22px!important;
  bottom:22px!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  z-index:5!important;
}

body.rfm-100hitu-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play:hover,
body.rfm-100hitu-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play:focus-visible,
body.rfm-sentimentai-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play:hover,
body.rfm-sentimentai-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play:focus-visible {
  transform:translateY(-1px) scale(1.035)!important;
}

@media(max-width:980px){
  body.rfm-100hitu-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play,
  body.rfm-sentimentai-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play {
    right:18px!important;
    bottom:18px!important;
  }
}

@media(max-width:520px){
  body.rfm-100hitu-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play,
  body.rfm-sentimentai-page .rfm-100hitu-art-frame > #rfm-playbtn.rfm-100hitu-play {
    right:14px!important;
    bottom:14px!important;
  }
}

/* v1.0.808: station landing pages keep mobile history compact and predictable.
   Metadata badges are intended for the Relax FM homepage history treatment;
   hide them on the dedicated 100 HITŲ and Sentimentai mobile histories. */
@media (max-width: 768px) {
  body.rfm-100hitu-page #rfmHistoryContainer .rfm-history-badge-wrap,
  body.rfm-100hitu-page #rfmHistoryContainer .rfm-mobile-history-badges,
  body.rfm-sentimentai-page #rfmHistoryContainer .rfm-history-badge-wrap,
  body.rfm-sentimentai-page #rfmHistoryContainer .rfm-mobile-history-badges {
    display: none !important;
  }
}


/* v1.0.809: dedicated station-history layout and first-entry hardening.
   Desktop badges live inside the text column instead of becoming a fourth grid item.
   Mobile keeps badges absent and pins artwork to the right-hand column. */
@media (min-width: 769px) {
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-time {
    grid-column: 1;
    grid-row: 1;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-meta {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    align-self: center;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-art {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    margin: 0 !important;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) #rfmHistoryContainer .rfm-station-history-badges,
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) #rfmHistoryContainer .rfm-station-history-badges.has-cycle,
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) #rfmHistoryContainer .rfm-station-history-badges.has-cycle-2,
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) #rfmHistoryContainer .rfm-station-history-badges.has-cycle-3 {
    position: static !important;
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    overflow: visible !important;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) #rfmHistoryContainer .rfm-station-history-badges .rfm-history-badge {
    flex: 0 0 auto !important;
    max-width: 150px !important;
    min-height: 22px !important;
    padding: 5px 8px !important;
    font-size: 8px !important;
    letter-spacing: .045em !important;
  }
}

@media (max-width: 768px) {
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-time {
    grid-column: 1;
    grid-row: 1;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-meta {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }

  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-art,
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-art.has-image,
  body.rfm-100hitu-page:not(.rfm-sentimentai-page) .rfm-100hitu-history-list .rfm-history-row > .rfm-history-art.is-station-fallback {
    display: block !important;
    visibility: visible !important;
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    min-width: 42px;
    margin: 0 !important;
  }
}
