@import url('https://fonts.googleapis.com/css2?family=Gaegu:wght@400;700&family=Gowun+Dodum&family=Nanum+Pen+Script&display=swap');

*{box-sizing:border-box}
:root{
  --brown-950:#27130d;
  --brown-900:#351a12;
  --brown-850:#402117;
  --brown-800:#4b281e;
  --brown-700:#684436;
  --brown-500:#9e7762;
  --line:#e4d9d2;
  --white:#fff;
  --pink:#ff8fb2;
  --text:#30211b;
}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#f2eeee;
  color:var(--text);
  font-family:"Gaegu","Gowun Dodum","Malgun Gothic",sans-serif;
}
button,a{font:inherit}
button{color:inherit}
a{text-decoration:none}

.site{
  width:min(1180px,100%);
  margin:0 auto;
  min-height:100vh;
  background:#fff;
  box-shadow:0 18px 65px rgba(46,25,17,.12);
}
.hero{
  background:#fff;
  border-bottom:1px solid #eee7e3;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0;
}
.header-banner{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}

.layout{display:grid;grid-template-columns:245px 1fr;background:#fff}
.sidebar{
  min-height:calc(100vh - 140px);
  background:linear-gradient(180deg,#4c291e,#2d160f);
  padding:34px 20px;
  color:#fff;
  border-right:1px solid #2a140d;
}
.avatar-frame{
  width:152px;height:152px;border-radius:50%;overflow:hidden;
  margin:0 auto 30px;border:3px solid #d4ad92;
  box-shadow:0 0 0 8px rgba(255,255,255,.045);
  background:#fff;
}
.avatar{display:block;width:100%;height:100%;object-fit:cover}
.nav{
  width:100%;display:block;border:0;
  border-top:1px dashed rgba(255,255,255,.23);
  background:transparent;color:#fff5ef;padding:18px 10px;
  cursor:pointer;font-weight:700;font-size:22px;transition:.2s;
}
.nav:last-child{border-bottom:1px dashed rgba(255,255,255,.23)}
.nav:hover,.nav.active{background:#fff;color:#412218;border-radius:12px}

.main{min-width:0;background:#fff;padding:32px 34px 54px}
.page-section{display:none;background:#fff;animation:fade .25s ease}
.page-section.active-section{display:block}
@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

.title-row{
  display:flex;justify-content:center;align-items:center;gap:14px;
  margin:2px 0 24px;
}
.title-row img{width:31px;height:31px;object-fit:contain}
.title-row h2{
  margin:0;color:#3a2017;font-size:39px;line-height:1;
  font-weight:700;letter-spacing:-.02em;
}
.title-small{margin-top:34px}
.title-small h2{font-size:35px}

.profile-table{
  display:grid;grid-template-columns:1fr 1fr;gap:0 42px;
  background:#fff;padding:0 18px;
}
.info-row{
  min-height:66px;display:grid;grid-template-columns:94px 1fr;align-items:center;
  border-bottom:1px solid #dbcfc7;font-size:23px;
}
.info-row.full{grid-column:1/-1}
.key{font-weight:700;color:#4a3025}
.value{font-weight:500}
.pink-heart{color:var(--pink);font-size:23px;margin-left:3px}
.birthday{position:relative;display:inline-block;width:max-content}
#dday{
  position:absolute;left:104%;top:-15px;white-space:nowrap;
  transform:rotate(-8deg);font-size:16px;color:#765044;font-weight:700;
}
#dday::after{
  content:"";position:absolute;width:45px;height:1px;background:#bd9e8c;
  left:-5px;bottom:-3px;transform:rotate(-14deg);
}

.fan-card{
  width:100%;margin:22px 0 4px;border:1px solid #e3dad4;border-radius:18px;
  background:#fff;padding:17px 22px;display:grid;grid-template-columns:135px 1fr 135px;
  gap:15px;align-items:center;cursor:pointer;transition:.2s;
  box-shadow:0 8px 24px rgba(66,37,26,.055);
}
.fan-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(66,37,26,.11)}
.fan-mascot{width:128px;height:128px;object-fit:contain;display:block}
.fan-copy{text-align:center}
.fan-label{
  display:inline-block;background:#543024;color:#fff;border-radius:999px;
  padding:7px 24px;font-size:18px;font-weight:700;
}
.fan-name{margin-top:7px;color:#3b2118;font-size:40px;font-weight:700}
.fan-name small{font-size:21px;font-weight:500}
.fan-symbol{font-size:27px;margin-top:1px}

.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.activity{
  border:1px solid #e4dbd5;border-radius:17px;background:#fff;
  padding:16px;cursor:pointer;transition:.2s;
}
.activity:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(64,35,24,.1)}
.activity-wide{grid-column:1/-1}
.activity-label{
  display:inline-block;background:#614033;color:#fff;
  padding:8px 22px;border-radius:999px;font-size:20px;font-weight:700;
}
.activity-image{
  display:block;width:100%;height:220px;object-fit:cover;
  border-radius:13px;margin:14px 0;border:1px solid #e2d7d0;
}
.photo-slot,.popup-image-slot{
  min-height:170px;margin:14px 0;display:grid;place-items:center;
  border:1px dashed #d9cec8;border-radius:13px;color:#ad9c91;background:#fff;
  font-size:20px;
}
.activity strong{font-size:21px}

.signature-title{margin-bottom:12px}
.signature-strip{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
  padding:0;background:transparent;border:0;
}
.signature-strip img{
  width:100%;height:auto;display:block;border:0;outline:0;background:transparent;
  box-shadow:none;border-radius:10px;
}

.links-title{margin-bottom:14px}
.links{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.link-button{
  min-height:68px;border:1px solid #e2dad5;background:#fff;border-radius:14px;
  display:flex;align-items:center;justify-content:center;gap:11px;
  cursor:pointer;color:#3b2a23;font-size:22px;font-weight:700;transition:.18s;
}
.link-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(55,31,22,.08)}
.youtube-icon{
  width:31px;height:22px;border-radius:6px;background:#ff0033;
  display:grid;place-items:center;flex:0 0 auto;
}
.youtube-icon span{
  width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;
  border-left:8px solid #fff;margin-left:2px;
}
.heart-icon{color:#ff90b6;font-size:28px;line-height:1}
.cafe-icon{width:34px;height:34px;display:inline-flex}
.cafe-icon svg{width:34px;height:34px;display:block}

.plain-card{
  min-height:350px;border:1px solid #e6ded8;border-radius:18px;background:#fff;
  padding:30px;font-size:22px;
}

/* modal */
.modal{position:fixed;inset:0;z-index:1000;display:none}
.modal.open{display:block}
.backdrop{position:absolute;inset:0;background:rgba(30,15,10,.74);backdrop-filter:blur(3px)}
.popup{
  position:relative;z-index:2;width:min(660px,calc(100% - 30px));
  margin:8vh auto 0;border:2px solid #6b4434;border-radius:19px;
  background:#fff;padding:30px;box-shadow:0 26px 70px rgba(0,0,0,.35);
  animation:pop .2s ease;font-size:22px;
}
.popup-wide{width:min(850px,calc(100% - 30px))}
@keyframes pop{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
.close{
  position:absolute;right:13px;top:12px;width:39px;height:39px;border:0;border-radius:50%;
  background:#4a281d;color:#fff;font-size:28px;cursor:pointer;z-index:3;
}
.popup-scarecrows{
  display:grid;grid-template-columns:160px 1fr 160px;align-items:center;text-align:center;gap:12px;
}
.popup-scarecrows img{width:155px;height:155px;object-fit:contain}
.popup-scarecrows h2{font-size:48px;margin:7px 0}
.popup-scarecrows p{margin:0 0 8px}
.mystery-popup{padding:18px}
.popup-feature-image{
  display:block;width:100%;max-height:440px;object-fit:cover;border-radius:13px;
}
.popup-copy{text-align:center;padding:13px 12px 7px}
.popup-copy h2{font-size:36px;margin:0 0 4px}
.popup-copy p{margin:0 0 14px}
.vod-button{
  display:inline-flex;align-items:center;justify-content:center;
  background:#4a281d;color:#fff;border-radius:999px;padding:11px 26px;
  font-size:22px;font-weight:700;
}
.vod-button:hover{background:#6a4030}
.game-tags{display:flex;flex-wrap:wrap;gap:8px}
.game-tags span{background:#f5efeb;padding:8px 13px;border-radius:999px;color:#5c4033;font-weight:700}

@media(max-width:820px){
  .layout{grid-template-columns:1fr}
  .sidebar{min-height:auto}
  .main{padding:26px 16px 44px}
  .profile-table{grid-template-columns:1fr}
  .info-row.full{grid-column:auto}
  .fan-card{grid-template-columns:82px 1fr 82px;padding:14px 8px}
  .fan-mascot{width:80px;height:90px}
  .fan-name{font-size:30px}
  .fan-name small{display:block;font-size:17px}
  .activity-grid,.links,.signature-strip{grid-template-columns:1fr}
  .activity-wide{grid-column:auto}
  .popup-scarecrows{grid-template-columns:90px 1fr 90px}
  .popup-scarecrows img{width:86px;height:110px}
}


/* ===== v4 header / typography refinements ===== */
body{
  font-family:"Gowun Dodum","Gaegu","Nanum Pen Script","Malgun Gothic",sans-serif;
}
.autumn-hero{
  position:relative;
  min-height:170px;
  padding:24px 42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  background:
    radial-gradient(circle at 50% 40%, rgba(246,234,222,.72), transparent 42%),
    linear-gradient(180deg,#ffffff 0%,#fffdfb 100%);
  overflow:hidden;
}
.hero-copy{text-align:center;position:relative;z-index:2}
.hero-title-line{display:flex;align-items:center;gap:13px;justify-content:center}
.hero-copy h1{
  margin:0;
  font-family:"Gaegu","Nanum Pen Script",cursive;
  font-size:clamp(48px,6.4vw,78px);
  line-height:1;
  letter-spacing:-.045em;
  font-weight:700;
  color:#3d2117;
}
.hero-copy p{
  margin:10px 0 0;
  font-size:13px;
  letter-spacing:.18em;
  color:#9e7663;
}
.hero-side{display:flex;align-items:center;gap:5px;position:relative;z-index:2}
.hero-chestnut{width:74px;height:74px;object-fit:contain}
.hero-spark{font-size:20px;color:#b98668}
.mini-scarecrow{font-size:31px;filter:saturate(.72)}
.hero-corner{
  position:absolute;
  font-size:52px;
  opacity:.34;
  top:13px;
  transform:rotate(-18deg);
}
.leaves-left{left:18px}
.leaves-right{right:18px;transform:rotate(18deg)}

.title-row h2,
.fan-name,
.activity strong,
.link-button,
.popup-copy h2{
  font-family:"Gaegu","Gowun Dodum",sans-serif;
}
.info-row{
  font-weight:600;
}
.info-row .key{font-weight:700}
.info-row .value{font-weight:600}

/* Natural photo display in cards */
.activity-image{
  height:230px;
  object-fit:cover;
}
.portrait-image{
  object-position:center 35%;
}

/* Popup line spacing requested by user */
.popup-copy-lines{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:9px;
}
.popup-copy-lines h2{margin:0 0 4px}
.popup-copy-lines p{
  margin:0;
  font-size:24px;
  line-height:1.35;
}
.mystery-popup .popup-feature-image{
  max-height:430px;
  object-fit:cover;
}
.song-popup{
  display:grid;
  grid-template-columns:minmax(260px,42%) 1fr;
  gap:24px;
  align-items:center;
}
.popup-song-image{
  width:100%;
  max-height:520px;
  object-fit:cover;
  object-position:center top;
  border-radius:14px;
}
.song-vod{margin-top:10px}
.secondary-vod{
  margin-top:4px;
  opacity:.42;
  cursor:not-allowed;
  border:0;
}
@media(max-width:820px){
  .autumn-hero{padding:20px 12px;gap:9px}
  .hero-chestnut{width:48px;height:48px}
  .mini-scarecrow{font-size:22px}
  .hero-corner{font-size:34px}
  .song-popup{display:block}
  .popup-song-image{max-height:380px;margin-bottom:18px}
}


/* ===== v5 refinements ===== */

/* Keep scarecrow mascots fully visible */
.fan-mascot{
  object-fit:contain !important;
  object-position:center !important;
  background:#fff;
}

/* Face-focused crop on the card; popup still shows the whole portrait */
.song-face-thumb{
  width:100%;
  height:230px;
  margin:14px 0;
  border-radius:13px;
  overflow:hidden;
  border:1px solid #e2d7d0;
  background:#fff;
}
.song-face-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  transform:scale(1.38);
  transform-origin:center 18%;
  display:block;
}
.popup-song-image{
  object-fit:contain !important;
  background:#f7f2ef;
  max-height:560px;
}

.song-link-row{
  width:100%;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.song-vod.alt{background:#7c4f6a}
.song-vod.alt:hover{background:#93617f}

/* Main-card faux game screen collage */
.game-preview-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin:14px 0;
}
.game-preview{
  position:relative;
  min-height:145px;
  border-radius:12px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  padding:14px;
  color:#fff;
  text-align:left;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
}
.game-preview::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 25%, rgba(255,255,255,.22), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(0,0,0,.34));
}
.game-preview span,
.game-preview small{position:relative;z-index:1}
.game-preview span{font:700 24px/1 Arial,sans-serif;letter-spacing:.02em}
.game-preview small{font:700 9px/1.3 Arial,sans-serif;opacity:.84;margin-top:5px;letter-spacing:.12em}
.pubg{
  background:
    linear-gradient(180deg, transparent 45%, rgba(39,27,15,.74)),
    radial-gradient(circle at 72% 20%, #d9b16b 0 8%, transparent 9%),
    linear-gradient(145deg,#5d8298 0 38%,#8d7a58 39% 62%,#5d4d35 63%);
}
.valorant{
  background:
    linear-gradient(180deg, transparent 45%, rgba(24,15,24,.72)),
    linear-gradient(135deg,#ff5a62 0 33%,#202b35 34% 65%,#7bd3c7 66%);
}
.overwatch{
  background:
    linear-gradient(180deg, transparent 45%, rgba(30,29,38,.72)),
    linear-gradient(140deg,#f4a43c 0 28%,#36495e 29% 68%,#d8dfe6 69%);
}
.minecraft{
  background:
    linear-gradient(180deg, transparent 45%, rgba(32,45,24,.72)),
    linear-gradient(0deg,#6e9f45 0 30%,#866749 31% 58%,#73b7d5 59%);
}
.popup-games .game-preview{min-height:180px}
.game-popup .popup-copy{padding-bottom:0}
.game-link-row{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:9px;
  margin-top:10px;
}
.game-vod{
  min-width:0;
  padding:11px 9px;
  text-align:center;
  font-size:18px;
  line-height:1.15;
}

@media(max-width:820px){
  .song-link-row{grid-template-columns:1fr}
  .game-preview-strip{grid-template-columns:1fr 1fr}
  .game-link-row{grid-template-columns:1fr 1fr}
}


/* ===== v6: exact user images / main-page finishing pass ===== */
.fan-card .fan-mascot,
.popup-scarecrows img{
  display:block !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
}
.fan-card .fan-mascot{
  width:135px !important;
  height:135px !important;
}
.popup-scarecrows img{
  width:160px !important;
  height:180px !important;
}

.actual-game-strip{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.actual-game{
  position:relative;
  height:160px;
  overflow:hidden;
  border-radius:12px;
  background:#eee;
  border:1px solid #e0d6d0;
}
.actual-game img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}
.actual-game span{
  position:absolute;
  left:9px;
  bottom:8px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(47,25,17,.78);
  color:#fff;
  font-size:17px;
  font-weight:700;
  line-height:1;
  backdrop-filter:blur(3px);
}
.popup-games .actual-game{
  height:190px;
}
@media(max-width:820px){
  .actual-game-strip{grid-template-columns:1fr 1fr}
  .fan-card .fan-mascot{width:82px !important;height:100px !important}
}


/* ===== v7 : 밤바먀 알아보기 ===== */
.about-page{padding-bottom:18px}
.about-intro{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  padding:34px 24px;
  margin-bottom:32px;
  text-align:center;
  border:1px solid #eadfd8;
  border-radius:24px;
  background:linear-gradient(135deg,#fff 0%,#fffaf6 48%,#f8eee7 100%);
  box-shadow:0 12px 32px rgba(78,42,29,.07);
}
.about-intro h2{
  margin:4px 0 7px;
  color:#43271d;
  font:700 clamp(34px,4vw,51px)/1.05 "Gaegu","Gowun Dodum",sans-serif;
}
.about-intro p{margin:0;color:#85695c;font-weight:600}
.about-kicker{font-size:12px!important;letter-spacing:.2em;color:#b27a65!important}
.about-leaf{font-size:45px}

.about-section-heading{
  display:flex;align-items:center;justify-content:center;gap:12px;
  margin:36px 0 18px;color:#4b2b20;
}
.about-section-heading h3{
  margin:0;font:700 34px/1 "Gaegu","Gowun Dodum",sans-serif;
}
.love-heading>span{color:#f08aa9;font-size:25px}
.hate-heading>span{font-size:24px}
.more-heading>span{color:#b67c58}

.taste-card{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:0;
  overflow:hidden;
  border:1px solid #e9ddd6;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 28px rgba(73,39,26,.07);
  margin-bottom:18px;
}
.taste-card>img{
  width:100%;height:320px;display:block;object-fit:cover;
}
.sweet-card>img{object-position:center 38%}
.rest-card>img{object-position:center 45%}
.taste-copy{
  display:flex;flex-direction:column;justify-content:center;
  padding:30px 34px;
}
.mini-label{font-size:11px;font-weight:800;letter-spacing:.16em;color:#b9826d}
.taste-copy h4,.dislike-copy h4{
  margin:7px 0 11px;font:700 31px/1 "Gaegu","Gowun Dodum",sans-serif;color:#492b20;
}
.taste-copy p,.dislike-copy p{margin:0;color:#775f55;font-weight:600;line-height:1.65}
.taste-tags{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.taste-tags span{
  padding:7px 13px;border-radius:999px;background:#fff1f4;color:#9b5269;
  border:1px solid #f2d5df;font-weight:700;
}
.rest-card{grid-template-columns:.95fr 1.05fr;background:#fffdfb}

.dislike-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dislike-card{
  overflow:hidden;border:1px solid #e8ddd7;border-radius:22px;background:#fff;
  box-shadow:0 10px 28px rgba(73,39,26,.065);
}
.dislike-image{height:270px;overflow:hidden}
.dislike-image img{width:100%;height:100%;object-fit:cover;display:block}
.dislike-card:first-child .dislike-image img{object-position:center 50%}
.dislike-card:last-child .dislike-image img{object-position:center 47%}
.dislike-copy{padding:22px 24px 25px}
.dislike-copy strong{color:#a85f43}

.bamya-moments{display:grid;gap:22px}
.moment-card{
  padding:22px;border:1px solid #e7d9d2;border-radius:22px;background:#fffaf7;
  box-shadow:0 10px 28px rgba(73,39,26,.07);
}
.moment-title{display:flex;align-items:center;gap:13px;margin-bottom:15px}
.moment-title>span{
  width:46px;height:46px;display:grid;place-items:center;border-radius:50%;
  background:#5a3022;color:#fff;font-weight:800;
}
.moment-title small{font-size:10px;letter-spacing:.16em;color:#b27b66;font-weight:800}
.moment-title h4{margin:2px 0 0;font:700 29px/1 "Gaegu","Gowun Dodum",sans-serif;color:#43271d}
.video-frame{
  width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:15px;background:#2d1b16;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
}
.video-frame iframe{width:100%;height:100%;border:0;display:block}
.moment-link{
  display:block;width:max-content;margin:14px auto 0;padding:9px 18px;border-radius:999px;
  background:#5a3022;color:#fff;text-decoration:none;font-weight:700;
}

@media(max-width:820px){
  .about-intro{gap:8px;padding:28px 12px}.about-leaf{font-size:28px}
  .taste-card,.rest-card{grid-template-columns:1fr}
  .rest-card>img{order:2}.rest-card>.taste-copy{order:1}
  .taste-card>img{height:250px}
  .dislike-grid{grid-template-columns:1fr}
  .dislike-image{height:240px}
}


/* ===== v8 : 방송일정 ===== */
.schedule-page{padding-bottom:20px}
.schedule-hero{
  display:flex;
  align-items:center;
  gap:18px;
  padding:28px 30px;
  margin-bottom:22px;
  border:1px solid #eaded7;
  border-radius:23px;
  background:linear-gradient(135deg,#fff 0%,#fffaf6 55%,#f4e9e0 100%);
  box-shadow:0 12px 30px rgba(75,40,27,.07);
}
.schedule-hero-icon{
  width:68px;height:68px;
  display:grid;place-items:center;
  border-radius:18px;
  background:#5a3022;
  font-size:34px;
  box-shadow:0 8px 18px rgba(74,40,29,.15);
}
.schedule-kicker{
  margin:0 0 4px;
  color:#b47e67;
  font-size:11px;
  letter-spacing:.18em;
  font-weight:800;
}
.schedule-hero h2{
  margin:0;
  color:#40241a;
  font:700 44px/1 "Gaegu","Gowun Dodum",sans-serif;
}
.schedule-hero p:last-child{
  margin:7px 0 0;
  color:#81675b;
  font-weight:600;
}

.schedule-card{
  overflow:hidden;
  border:1px solid #e6dbd4;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 30px rgba(69,37,25,.065);
}
.schedule-head,
.schedule-row{
  display:grid;
  grid-template-columns:90px 110px 1.15fr 1fr;
  align-items:center;
  gap:16px;
}
.schedule-head{
  min-height:54px;
  padding:0 22px;
  background:#4b291e;
  color:#fff;
  font-weight:800;
  font-size:17px;
}
.schedule-row{
  min-height:76px;
  padding:0 22px;
  border-bottom:1px solid #eee5df;
}
.schedule-row:last-child{border-bottom:0}
.schedule-row:hover{background:#fffaf7}
.day{
  font:700 22px/1 "Gaegu","Gowun Dodum",sans-serif;
  color:#5b3427;
}
.day.weekend{color:#b45b72}
.time{
  font-weight:800;
  color:#50372d;
}
.memo{
  color:#8b7468;
  font-size:15px;
  font-weight:600;
}
.content-pill{
  width:max-content;
  max-width:100%;
  padding:8px 14px;
  border-radius:999px;
  font-weight:800;
  font-size:15px;
}
.content-pill.rest{background:#f1ece8;color:#71594d}
.content-pill.talk{background:#fff0f4;color:#a2536d}
.content-pill.game{background:#eef3ff;color:#536d9c}
.content-pill.song{background:#fff4e8;color:#aa6a34}
.content-pill.special{background:#f2ecff;color:#765ba2}

.schedule-note-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:18px;
}
.schedule-note{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:20px 22px;
  border:1px solid #e9dfd8;
  border-radius:18px;
  background:#fffdfb;
}
.note-icon{font-size:28px}
.schedule-note h3{
  margin:0 0 5px;
  font:700 25px/1 "Gaegu","Gowun Dodum",sans-serif;
  color:#4a2c21;
}
.schedule-note p{
  margin:0;
  color:#877166;
  line-height:1.55;
  font-size:14px;
  font-weight:600;
}

@media(max-width:820px){
  .schedule-head{display:none}
  .schedule-row{
    grid-template-columns:70px 80px 1fr;
    gap:9px;
    padding:14px 16px;
  }
  .schedule-row .memo{
    grid-column:1/-1;
    padding-left:159px;
  }
  .schedule-note-grid{grid-template-columns:1fr}
  .schedule-hero{padding:22px 18px}
}


/* ===== v9 : 일정표 5열 + 내용 자동 색상 ===== */
.schedule-head,
.schedule-row{
  grid-template-columns:92px 70px 100px 1.15fr 1fr;
}
.date{
  font-weight:800;
  color:#6a4a3d;
  letter-spacing:.02em;
}
.schedule-content{
  width:max-content;
  max-width:100%;
  padding:8px 15px;
  border-radius:999px;
  font-weight:800;
  font-size:15px;
  background:#f2ece8;
  color:#70584d;
  transition:.2s;
}

/* keyword color classes */
.schedule-content.type-off{
  background:#ededed;
  color:#666;
}
.schedule-content.type-variety,
.schedule-content.type-minecraft{
  background:#edf8df;
  color:#5f7f3f;
}
.schedule-content.type-pubg{
  background:#fff4e8;
  color:#aa6a34;
}
.schedule-content.type-valorant{
  background:#fff0f4;
  color:#a2536d;
}
.schedule-content.type-tbd{
  background:#f2ecff;
  color:#765ba2;
}
.schedule-content.type-overwatch{
  background:#fff7cf;
  color:#9a761b;
}

@media(max-width:820px){
  .schedule-row{
    grid-template-columns:76px 48px 75px 1fr;
  }
  .schedule-row .memo{
    grid-column:1/-1;
    padding-left:0;
    margin-top:5px;
  }
}


/* ===== v10 : live Google Sheet schedule ===== */
.schedule-live-body{
  min-height:120px;
}
.schedule-loading,
.schedule-empty,
.schedule-error{
  min-height:130px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  color:#7c665b;
  padding:24px;
}
.schedule-loading{
  font-weight:700;
}
.loading-chestnut{
  display:block;
  font-size:28px;
  animation:chestnutBounce 1s ease-in-out infinite;
}
@keyframes chestnutBounce{
  0%,100%{transform:translateY(0) rotate(-5deg)}
  50%{transform:translateY(-6px) rotate(5deg)}
}
.schedule-empty strong,
.schedule-error strong{
  color:#4b2d22;
  font-size:18px;
}
.schedule-empty span,
.schedule-error span{
  font-size:14px;
}
.schedule-error button{
  margin-top:5px;
  border:0;
  border-radius:999px;
  padding:9px 16px;
  background:#5a3022;
  color:#fff;
  font:700 15px "Gaegu","Gowun Dodum",sans-serif;
  cursor:pointer;
}
.schedule-error button:hover{
  background:#73412f;
}


/* ===== v11 : uploaded videos embedded directly ===== */
.native-video-frame video{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#1f1512;
}
