:root{
  --border-pink:1.75px solid var(--color-primary);
  --radius-sm:20px;
  --radius-xs:10px;
  --gap-pc:20px;
  --gap-sp:15px;
  --page-pad-pc:20px;
  --page-pad-sp:10px;
  --body-pad:15px;
  --sun:#d93662;
  --sat:#246fbd;
  --sun-soft:#fff2f6;
  --sat-soft:#f0f7ff;
  --sun-outside:#fff8fa;
  --sat-outside:#f7fbff;
  --line-soft:#f3d4e2
}

.page{
  width:min(100%,var(--max));
  margin:0 auto;
  background:var(--color-background);
  overflow-x:clip
}

.main-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:var(--gap-pc);
  padding:15px var(--page-pad-pc) 30px
}

.block{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  background:var(--color-primary);
  border-radius:var(--radius-sm);
  box-shadow:var(--shadow-card);
  overflow:hidden
}

.block-title{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  margin:0;
  padding:10px 15px;
  background:var(--color-primary);
  color:var(--color-white);
  font-size:1.2em;
  font-weight:bold;
  line-height:1.05;
  text-align:center
}

.block-title-group,
.block-title-group .block-title{
  background:var(--color-primary)
}

.block-title-group .block-title,
.block-title-group .block-title+.block-title{
  padding-top:10px;
  padding-bottom:10px
}

.block-body{
  min-width:0;
  min-height:auto;
  flex:1 1 auto;
  padding:var(--body-pad);
  background:var(--color-white)
}

.block-body.short,
.block-birthday .block-body.short,
.block-onair .block-body.short{
  min-height:150px
}

.block-body.large{
  min-height:320px
}

.block-about .block-body,
.block-official .block-body{
  min-height:auto;
  padding-bottom:10px
}

.block-notice .block-body{
  min-height:250px;
  padding-bottom:10px
}

.block p,
.block li{
  margin:0;
  font-size:1rem;
  line-height:1.7
}

.block-birthday{
  grid-column:1 / 3;
  grid-row:1
}

.block-onair{
  grid-column:3 / 5;
  grid-row:1
}

.block-game-maker{
  grid-column:1 / 5;
  grid-row:2
}

.block-news{
  grid-column:1 / 5;
  grid-row:3
}

.block-event{
  grid-column:1 / 5;
  grid-row:4
}

.block-notice{
  grid-column:1 / 4;
  grid-row:5
}

.block-about{
  grid-column:4 / 5;
  grid-row:5 / 7;
  width:min(100%,360px);
  justify-self:stretch
}

.block-official{
  grid-column:1 / 4;
  grid-row:6
}

.block-game-maker .block-body{
  min-height:auto
}

.game-maker-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px
}

.game-maker-link{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:55px;
  padding:10px 10px;
  border:var(--border-pink);
  border-radius:var(--radius-xs);
  background:var(--color-white);
  color:var(--color-text);
  font-size:.98rem;
  font-weight:900;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip;
  transition:transform .15s ease,background .15s ease,color .15s ease
}

.game-maker-link:hover{
  transform:translateY(-2px);
  background:var(--color-primary);
  color:var(--color-white)
}

.game-maker-actions{
  display:flex;
  width:100%;
  margin-top:10px
}

.game-maker-all-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  min-height:35px;
  padding:5px 15px;
  border-radius:var(--radius-xs);
  background:var(--color-primary);
  color:var(--color-text);
  font-size:.9rem;
  font-weight:900;
  line-height:1.1;
  text-align:center;
  text-decoration:none;
  transition:transform .15s ease,background .15s ease
}

.game-maker-all-link:hover{
  transform:translateY(-2px);
  background:var(--color-primary-dark)
}

.link-list,
.notice-list,
.news-list,
.onair-list,
.birthday-list,
.about-text{
  display:grid
}

.link-list,
.notice-list,
.onair-list,
.about-text{
  gap:10px
}

.news-list{
  gap:10px
}

.birthday-list{
  gap:5px;
  align-content:start;
  margin-top:0
}

.info-card,
.news-item,
.notice-item,
.link-item{
  background:var(--color-white);
  border-radius:var(--radius-xs)
}

.info-card,
.news-item,
.notice-item{
  border:var(--border-pink)
}

.info-card{
  padding:15px
}

.link-item{
  display:block;
  padding:5px 10px;
  border:var(--border-pink);
  font-size:.95rem;
  font-weight:bold;
  line-height:1.1;
  transition:transform .15s ease,background .15s ease,color .15s ease
}

.link-item:hover{
  transform:translateY(-2px);
  background:var(--color-primary)
}

.block-news .block-body,
.block-news .list{
  display:flex;
  flex-direction:column;
  flex:1 1 auto
}

.block-news .block-body{
  min-height:auto
}

.block-news .list{
  min-height:100%
}

.block-news .news-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  flex:1 1 auto;
  gap:10px
}

.block-news .link-item{
  align-self:stretch;
  margin-top:10px;
  padding:10px;
  text-align:center;
  background:var(--color-primary);
  border:0
}

.block-news .link-item:hover{
  background:var(--color-primary-dark);
  color:var(--color-white)
}

.news-item{
  position:relative;
  display:grid;
  align-content:start;
  gap:5px;
  min-width:0;
  padding:10px 10px;
  border:0;
  border-radius:var(--radius-xs);
  background:var(--color-white);
  box-shadow:none;
  overflow:hidden;
  isolation:isolate
}

.news-item::before,
.news-item::after{
  content:"";
  position:absolute;
  pointer-events:none
}

.news-item::before{
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:var(
    --news-brand-border,
    var(
      --news-brand-color,
      var(--color-primary)
    )
  )
}

.news-item::after{
  inset:2px;
  z-index:0;
  border-radius:calc(var(--radius-xs) - 2px);
  background:var(--color-white)
}

.news-item>*{
  position:relative;
  z-index:1
}

.news-item-head,
.news-brand-list,
.news-category-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  min-width:0
}

.news-item-head{
  gap:5px 5px
}

.news-brand-list,
.news-category-list{
  gap:5px
}

.news-date,
.news-category,
.news-brand{
  display:inline-flex;
  align-items:center;
  min-width:0;
  border-radius:999px;
  font-size:.74rem;
  font-weight:900;
  line-height:1.1;
  white-space:nowrap
}

.news-date{
  color:var(--color-text-muted)
}

.news-category{
  padding:5px 5px;
  border:1px solid var(
    --news-brand-color,
    var(--color-primary)
  );
  background:rgba(255,255,255,.86);
  color:var(--color-text)
}

.news-brand{
  padding:5px 10px;
  border:0;
  background:var(
    --news-brand-chip-bg,
    var(
      --news-brand-color,
      var(--color-primary)
    )
  );
  color:var(
    --news-brand-text,
    var(--color-white)
  );
  text-shadow:var(
    --news-brand-text-shadow,
    none
  )
}

.news-summary-title{
  position:relative;
  display:block;
  min-width:0;
  height:1.45em;
  overflow:hidden;
  color:var(--color-text);
  font-size:.96rem;
  font-weight:900;
  line-height:1.45;
  white-space:nowrap
}

.news-title-track{
  display:inline-flex;
  align-items:center;
  min-width:0;
  max-width:100%;
  white-space:nowrap;
  will-change:transform
}

.news-title-track.is-marquee{
  max-width:none;
  animation:
    newsTitleMarquee
    var(--news-marquee-duration,10s)
    linear
    infinite
}

.news-title-copy{
  margin-left:35px
}

@keyframes newsTitleMarquee{
  0%,12%{
    transform:translateX(0)
  }

  88%,100%{
    transform:translateX(
      calc(
        -1*
        var(
          --news-marquee-distance,
          0px
        )
      )
    )
  }
}

.block-event .block-body{
  min-height:auto
}

.event-schedule-body,
.event-schedule-panel,
.event-schedule-list,
.event-card-mainline,
.event-card-subline,
.onair-item,
.onair-section,
.about-text{
  display:grid
}

.event-schedule-body{
  gap:10px
}

.event-range-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  min-width:0;
  border:var(--border-pink);
  border-radius:var(--radius-xs);
  background:var(--color-white);
  box-shadow:var(--shadow-card);
  overflow:hidden
}

.event-brand-row{
  display:grid;
  gap:10px
}

.event-brand-control-row{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 5px;
  min-width:0;
  padding:5px 10px;
  border:1px solid var(--color-primary-light);
  border-bottom:none;
  border-radius:15px 15px 0 0;
  background:var(--color-primary);
  box-shadow:var(--shadow-card)
}

.event-brand-title{
  display:inline-flex;
  align-items:center;
  flex-shrink:0;
  min-width:0;
  padding:1.5px 0;
  color:var(--color-white);
  font-size:20px;
  font-weight:bold;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap
}

.event-brand-action-group{
  display:flex;
  flex-wrap:nowrap;
  justify-content:flex-end;
  gap:10px;
  flex-shrink:0;
  min-width:0;
  white-space:nowrap
}

.event-brand-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px
}

.event-range-btn,
.event-brand-btn,
.event-brand-action-btn,
.event-action-link{
  border:0;
  border-radius:var(--radius-xs);
  background:var(--color-white);
  color:var(--color-text);
  font:inherit;
  font-weight:900;
  line-height:1.1;
  cursor:pointer;
  transition:background .15s ease,color .15s ease,transform .15s ease
}

.event-range-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:35px;
  padding:10px 10px;
  border-right:var(--border-pink);
  border-radius:0;
  background:var(--color-white);
  color:var(--color-text);
  text-align:center;
  white-space:nowrap
}

.event-range-btn:last-child{
  border-right:0
}

.event-range-btn:hover,
.event-range-btn.is-active{
  transform:none;
  background:var(--color-primary);
  color:var(--color-white)
}

.event-brand-btn,
.event-brand-action-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 1 112px;
  min-width:85px;
  max-width:130px;
  padding:10px 10px;
  box-shadow:var(--shadow-card);
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}

.event-brand-btn{
  border:1.75px solid var(--event-brand-color,var(--color-primary));
  color:var(--event-brand-color,var(--color-text))
}

.event-brand-action-btn{
  padding:10px 15px;
  border:0;
  border-radius:5px;
  background:var(--color-white);
  color:var(--color-text);
  font-size:12.5px;
  font-weight:bold;
  box-shadow:var(--shadow-card);
  white-space:nowrap
}

.event-brand-btn:hover,
.event-brand-btn.is-active{
  transform:translateY(-1px);
  background:var(--event-brand-color,var(--color-primary));
  color:var(--color-white)
}

.event-brand-action-btn:hover,
.event-brand-action-btn:focus-visible{
  transform:translateY(-1px);
  background:var(--color-primary-light);
  color:var(--color-primary-dark);
  outline:0
}

.event-schedule-panel{
  overflow:hidden;
  border:var(--border-pink);
  border-radius:var(--radius-xs);
  background:var(--color-white)
}

.event-schedule-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
  padding:10px 10px;
  background:var(--color-primary-light);
  border-bottom:var(--border-pink)
}

.event-schedule-panel-title,
.event-schedule-panel-count{
  min-width:0;
  color:var(--color-text);
  font-weight:900;
  line-height:1.1;
  white-space:nowrap
}

.event-schedule-panel-title{
  font-size:.98rem;
  overflow:hidden;
  text-overflow:ellipsis
}

.event-schedule-panel-count{
  flex:0 0 auto;
  padding:5px 10px;
  border-radius:999px;
  background:var(--color-white);
  color:var(--color-primary-dark);
  font-size:.78rem
}

.event-schedule-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:10px
}

.event-schedule-actions{
  display:flex;
  justify-content:center;
  padding:0 10px 10px
}

.event-schedule-actions[hidden]{
  display:none
}

.event-schedule-more-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:35px;
  padding:5px 15px;
  border:0;
  border-radius:var(--radius-xs);
  background:var(--color-primary);
  color:var(--color-text);
  font:inherit;
  font-size:.9rem;
  font-weight:900;
  line-height:1.1;
  text-align:center;
  cursor:pointer;
  transition:transform .15s ease,background .15s ease,color .15s ease
}

.event-schedule-more-btn:hover,
.event-schedule-more-btn:focus-visible{
  transform:translateY(-1px);
  background:var(--color-primary-dark);
  color:var(--color-white);
  outline:0
}

.event-list-empty{
  grid-column:1 / -1;
  border-radius:var(--radius-xs);
  color:var(--color-text);
  font-weight:900;
  text-align:center;
  padding:10px 10px;
  border:var(--border-pink);
  font-size:.9rem
}

.event-schedule-card{
  --event-brand-color:var(--color-primary);
  display:grid;
  grid-template-columns:
    auto
    auto
    minmax(180px,2.2fr)
    minmax(145px,1.2fr)
    minmax(145px,1.25fr)
    auto;
  align-items:center;
  gap:7px;
  width:100%;
  min-width:0;
  min-height:46px;
  padding:7px 10px;
  border:1.75px solid var(--event-brand-color);
  border-left:10px solid var(--event-brand-color);
  border-radius:var(--radius-xs);
  background:var(--color-white);
  color:var(--color-text);
  text-decoration:none;
  box-shadow:0 5px 10px rgba(0,0,0,.06);
  transition:transform .15s ease,background .15s ease
}

.event-schedule-card:hover{
  transform:translateY(-1px);
  background:#fff8fc
}

.event-brand-chip,
.event-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  border-radius:999px;
  font-size:.74rem;
  font-weight:900;
  line-height:1.1;
  white-space:nowrap
}

.event-brand-chip{
  padding:4px 8px;
  background:var(--event-brand-color);
  color:var(--color-white);
  text-shadow:0 1px 2px rgba(0,0,0,.28)
}

.event-status{
  padding:4px 8px;
  border:1px solid var(--color-primary);
  background:var(--color-primary-light);
  color:var(--color-text)
}

.event-status.is-live,
.event-status.is-today{
  border-color:var(--color-primary);
  background:var(--color-primary);
  color:var(--color-white)
}

.event-status.is-near{
  border-color:var(--sun);
  background:var(--sun);
  color:var(--color-white)
}

.event-status.is-soon{
  border-color:var(--color-primary-dark);
  background:var(--color-primary-dark);
  color:var(--color-white)
}

.event-card-name,
.event-card-datetime,
.event-card-venue{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}

.event-card-name{
  color:var(--color-text);
  font-size:.98rem;
  font-weight:900;
  line-height:1.3
}

.event-card-datetime,
.event-card-venue{
  color:var(--color-text);
  font-size:.83rem;
  font-weight:800;
  line-height:1.25
}

.event-more-mark{
  flex:0 0 auto;
  color:var(--color-primary-dark);
  font-size:.8rem;
  font-weight:900;
  white-space:nowrap
}

.notice-list{
  align-content:start
}

.notice-item{
  overflow:hidden
}

.notice-summary{
  display:grid;
  grid-template-columns:75px minmax(0,1fr);
  align-items:center;
  width:100%;
  margin:0;
  padding:5px 10px;
  background:transparent;
  border:0;
  outline:0;
  box-shadow:none;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  font:inherit;
  color:inherit;
  text-align:left
}

.notice-date,
.notice-title{
  display:block;
  color:var(--color-text);
  line-height:1.2;
  white-space:nowrap
}

.notice-date{
  font-size:.8rem;
  font-weight:bold
}

.notice-title{
  min-width:0;
  font-size:.94rem;
  font-weight:800;
  line-height:1.3;
  overflow:hidden;
  text-overflow:ellipsis
}

.notice-detail{
  display:none;
  padding:0 10px 10px;
  font-size:.85rem;
  line-height:1.5;
  color:var(--color-text);
  text-align:left;
  word-break:break-word
}

.notice-item.is-open .notice-detail{
  display:block
}

.birthday-title{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding-left:40px;
  padding-right:40px
}

.birthday-title-text{
  display:block;
  min-width:0;
  line-height:1.05
}

.birthday-nav-btn{
  position:absolute;
  top:0;
  bottom:0;
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--color-white);
  box-shadow:none;
  font:inherit;
  font-size:1em;
  font-weight:900;
  line-height:1
}

#birthdayPrevBtn{
  left:0
}

#birthdayNextBtn{
  right:0
}

.birthday-nav-btn:hover,
.birthday-nav-btn:active{
  background:transparent;
  color:var(--color-white);
  box-shadow:none;
  transform:none
}

.birthday-body{
  display:flex;
  flex-direction:column;
  gap:5px 0;
  min-height:100%
}

.birthday-head{
  display:flex;
  align-items:center;
  justify-content:center
}

.birthday-date{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:35px;
  padding:5px;
  background:var(--color-primary-light);
  border-radius:var(--radius-xs);
  font-size:1rem;
  font-weight:bold;
  line-height:1.25;
  text-align:center;
  box-sizing:border-box
}

.birthday-item,
.birthday-empty{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:5px 5px;
  background:var(--color-white)
}

.birthday-empty{
  justify-content:center;
  color:var(--color-text);
  font-weight:bold;
  text-align:center
}

.birthday-item{
  white-space:nowrap;
  overflow:hidden;
  font-size:.95rem;
  line-height:1.08
}

.birthday-dot,
.onair-dot{
  flex:0 0 12px;
  width:10px;
  height:10px;
  border-radius:50%
}

.birthday-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  flex:1 1 auto;
  line-height:1.05;
  white-space:nowrap;
  overflow:hidden
}

.birthday-kana,
.birthday-name{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:clip;
  white-space:nowrap
}

.birthday-kana{
  margin-bottom:0;
  color:var(--color-text-muted);
  font-size:.72em;
  line-height:1
}

.birthday-name{
  font-weight:900;
  line-height:1.1
}

.onair-body{
  display:flex;
  flex-direction:column;
  gap:15px
}

.onair-section{
  gap:10px
}

.onair-label{
  margin:0;
  padding:5px 10px;
  background:var(--color-primary-light);
  border-radius:var(--radius-xs);
  color:var(--color-text);
  font-size:.95rem;
  font-weight:bold;
  line-height:1.2;
  text-align:center;
  letter-spacing:.06em
}

.onair-item,
.onair-empty{
  min-width:0;
  background:var(--color-white)
}

.onair-item{
  gap:5px;
  padding:5px 5px;
  font-size:.95rem;
  line-height:1.2
}

.onair-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px 5px;
  color:var(--color-text);
  font-weight:700;
  text-align:center
}

.onair-line-main,
.onair-line-sub{
  display:flex;
  align-items:center;
  min-width:0;
  white-space:nowrap
}

.onair-line-main{
  gap:10px;
  overflow:hidden
}

.onair-line-sub{
  justify-content:flex-end;
  gap:5px;
  color:var(--color-text);
  font-size:.85em;
  font-weight:bold;
  line-height:1.1
}

.onair-time-label,
.onair-time,
.onair-name{
  white-space:nowrap
}

.onair-name{
  flex:1 1 auto;
  min-width:0;
  font-weight:bold
}

.about-body{
  display:flex;
  flex-direction:column;
  gap:10px
}

.about-top{
  display:flex;
  align-items:center;
  justify-content:center;
  padding-top:2px
}

.about-icon-frame{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:170px;
  padding:5px;
  background:var(--color-primary);
  border-radius:100px
}

.about-icon-image{
  width:min(100%,160px);
  height:auto;
  object-fit:contain;
  border-radius:10px
}

.about-sns{
  display:flex;
  justify-content:center;
  gap:10px
}

.about-sns-bottom{
  margin-top:2px
}

.about-sns-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  padding:5px;
  background:var(--color-primary);
  border-radius:50%;
  transition:transform .15s ease,background .15s ease
}

.about-sns-link:hover{
  transform:translateY(-2px);
  background:#fff8fc
}

.about-sns-icon-image{
  width:100%;
  height:100%;
  object-fit:contain
}

.about-profile-card{
  margin-top:2px
}

.about-explain-title{
  display:block;
  max-width:100%;
  margin-bottom:5px;
  color:var(--color-primary);
  font-size:17.5px;
  font-weight:bold;
  line-height:1;
  text-align:center;
  letter-spacing:.1em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip
}

.about-text{
  gap:5px
}

.about-text p{
  margin:0;
  font-size:.83rem;
  line-height:1.58;
  color:var(--color-text)
}

@media (max-width:768px){
  .main-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:var(--gap-sp);
    padding:10px var(--page-pad-sp) 20px
  }

  .block-birthday{
    grid-column:1 / 3;
    grid-row:1
  }

  .block-onair{
    grid-column:3 / 5;
    grid-row:1
  }

  .block-game-maker{
    grid-column:1 / 5;
    grid-row:2
  }

  .block-news{
    grid-column:1 / 5;
    grid-row:3
  }

  .block-event{
    grid-column:1 / 5;
    grid-row:4
  }

  .block-notice{
    grid-column:1 / 5;
    grid-row:5
  }

  .block-about{
    grid-column:1 / 5;
    grid-row:6;
    width:100%;
    justify-self:stretch
  }

  .block-official{
    grid-column:1 / 5;
    grid-row:7
  }

  .game-maker-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px
  }

  .game-maker-link{
    min-height:50px;
    padding:5px 5px;
    font-size:clamp(.68rem,3.3vw,.88rem);
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:clip
  }

  .block-news .news-list{
    grid-template-columns:1fr
  }

  .news-item{
    padding:10px 10px
  }

  .news-deadline{
    margin-left:0
  }

  .event-range-row{
    grid-template-columns:repeat(4,minmax(0,1fr))
  }

  .event-range-btn{
    min-height:35px;
    padding:5px 5px;
    font-size:.8rem
  }

  .event-brand-row{
    gap:5px
  }

  .event-brand-control-row{
    gap:5px;
    padding:5px 10px;
    border-radius:15px 15px 0 0
  }

  .event-brand-title{
    padding:1px 0;
    font-size:18px;
    letter-spacing:.08em
  }

  .event-brand-action-group{
    gap:5px
  }

  .event-brand-list{
    gap:5px
  }

  .event-brand-action-btn{
    flex:0 0 auto;
    min-width:5.8em;
    max-width:none;
    padding:5px 10px;
    font-size:.8rem
  }

  .event-brand-btn{
    flex-basis:calc((100% - 15px) / 4);
    min-width:0;
    max-width:none;
    padding:5px 5px;
    font-size:.8rem
  }

  .event-schedule-head{
    padding:5px 10px
  }

  .event-schedule-panel-title{
    font-size:.9rem
  }

  .event-schedule-panel-count{
    padding:5px 5px;
    font-size:.72rem
  }

  .event-schedule-list{
    grid-template-columns:1fr;
    gap:5px;
    padding:10px
  }

  .event-schedule-actions{
    padding:0 10px 10px
  }

  .event-schedule-more-btn{
    min-height:35px;
    padding:5px 10px;
    font-size:.82rem
  }

  .event-schedule-card{
    grid-template-columns:
      auto
      auto
      minmax(110px,1.5fr)
      minmax(105px,1fr)
      minmax(105px,1fr)
      auto;
    gap:5px;
    padding:7px 8px;
    border-left-width:8px
  }

  .event-brand-chip,
  .event-status{
    padding:3px 7px;
    font-size:.68rem
  }

  .event-card-name{
    font-size:.9rem
  }

  .event-card-datetime,
  .event-card-venue{
    font-size:.74rem
  }

  .block-body.short,
  .block-body.large{
    min-height:auto
  }

  .birthday-title{
    padding-left:30px;
    padding-right:30px
  }

  .birthday-nav-btn{
    width:30px;
    font-size:.85em
  }
}