/**
 * AI CineCatch — 어워드 & 추천 페이지 전용 스타일
 * common.css 카드·큐레이터·어워드 컴포넌트 재사용, 페이지 레이아웃만 보강
 */

/* 공개 OFF 직접 접근 — 헤더·푸터 유지, 본문만 안내 */
.awards-unavailable-wrap {
  min-height: calc(100vh - 220px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 20px 60px;
}
.awards-unavailable {
  max-width: 420px;
  text-align: center;
}
.awards-unavailable-eyebrow {
  margin: 0 0 10px;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: var(--accent-gold);
  text-transform: uppercase;
}
.awards-unavailable-title {
  margin: 0 0 12px;
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--text-main);
}
.awards-unavailable-desc {
  margin: 0 0 22px;
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--text-sub);
}
.awards-unavailable-home {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 99px;
  background: var(--accent-gold);
  color: #111;
  font-size: 0.88rem;
  font-weight: 800;
  text-decoration: none;
}

/*
 * 이번 시즌 수상작 라벨바 — 세로 타이포 (전역 AICineCatchPretendard + font-typography.css)
 */
#awardsHeroBg {
  opacity: 0.32;
}

/* 히어로 배너 모바일 */
@media (max-width: 991px) {
  #awardsHeroBanner .hero-title {
    font-size: 1.65rem !important;
  }
  #awardsHeroBg {
    opacity: 0.28 !important;
  }
}

/* PC 필터 — 모바일에서는 요약바만 */
.awards-pc-filters {
  display: flex;
}
@media (max-width: 991px) {
  .awards-filter-bar .awards-pc-filters {
    display: none !important;
  }
  .awards-filter-bar .mobile-only-filter-bar {
    display: flex !important;
  }
  .recommend-chips-section.awards-chips-section {
    margin-bottom: 20px !important;
    position: relative;
  }
  .awards-chips-section::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 34px;
    background: linear-gradient(270deg, rgba(15, 17, 19, 0.88) 0%, transparent 100%);
    pointer-events: none;
  }
}
@media (min-width: 992px) {
  .awards-filter-bar .mobile-only-filter-bar {
    display: none !important;
  }
}

/* ── 어워드 배지 (골드/실버/브론즈/보라) ── */
.awards-badge {
  display: inline-block;
  font-size: 0.68rem;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 4px;
  margin-bottom: 8px;
  letter-spacing: 0.02em;
}
.awards-badge-gold {
  color: var(--accent-gold);
  background: rgba(242, 193, 78, 0.1);
  border: 1px solid rgba(242, 193, 78, 0.28);
}
.awards-badge-silver {
  color: #c8d0dc;
  background: rgba(200, 208, 220, 0.08);
  border: 1px solid rgba(200, 208, 220, 0.2);
}
.awards-badge-bronze {
  color: #c9a070;
  background: rgba(201, 160, 112, 0.08);
  border: 1px solid rgba(201, 160, 112, 0.22);
}
.awards-badge-purple {
  color: #b8a0e8;
  background: rgba(184, 160, 232, 0.08);
  border: 1px solid rgba(184, 160, 232, 0.22);
}

/* ── 메인 어워드 하이라이트 ── */
.awards-highlight-section {
  overflow: visible;
}

#awardsMainHighlight {
  overflow: visible;
}

.awards-highlight-layout {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 16px;
  align-items: stretch;
}

.awards-highlight-side {
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
  min-height: 0;
}

.awards-highlight-main {
  position: relative;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(242, 193, 78, 0.22);
  border-radius: 16px;
  overflow: visible;
  cursor: pointer;
  transition: border-color 0.3s, box-shadow 0.3s;
}

/* sidebar-ranking-item 기본 효과만 덮어쓰고, PC 세부 배치는 하단 미디어쿼리에서 조정 */
.awards-highlight-main.sidebar-ranking-item {
  padding: 0;
  gap: 0;
  align-items: stretch;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(242, 193, 78, 0.22);
  border-radius: 16px;
}

.awards-highlight-main:hover,
.awards-highlight-side-card.sidebar-ranking-item:hover {
  border-color: rgba(242, 193, 78, 0.38);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
  transform: none;
}

/* 시즌 대상 — 우측 하단 PNG 리본 (카드 테두리 안쪽 · 우측 여백 확보) */
.awards-highlight-grand-ribbon {
  position: absolute;
  right: 11px;
  bottom: -16px;
  width: 92px;
  height: auto;
  z-index: 6;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.42));
  transition: transform 0.25s ease, filter 0.25s ease;
}

.awards-highlight-main:hover .awards-highlight-grand-ribbon {
  transform: scale(1.04) rotate(-2deg);
  filter: drop-shadow(0 10px 22px rgba(242, 193, 78, 0.28));
}

.awards-highlight-main .award-badge-ribbon {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.72rem;
  font-weight: 800;
  color: var(--accent-gold);
  background: rgba(12, 11, 14, 0.82);
  border: 1px solid rgba(242, 193, 78, 0.3);
  padding: 5px 10px;
  border-radius: 6px;
}

.awards-highlight-main-thumb {
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.awards-highlight-main-body {
  padding: 18px 20px 20px;
}

.awards-meta-creator {
  color: rgba(255, 255, 255, 0.42);
  font-weight: 600;
}

.awards-highlight-main-title {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--text-main);
  display: block;
  margin-bottom: 8px;
}

.awards-highlight-reason {
  font-size: 0.88rem;
  color: var(--text-sub);
  line-height: 1.5;
  margin: 0 0 10px;
}

.awards-highlight-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  font-size: 0.76rem;
  color: var(--text-muted);
  margin-bottom: 6px;
}

.awards-highlight-stats {
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 6px;
}

.awards-highlight-curator {
  font-size: 0.82rem;
  font-weight: 800;
  color: var(--accent-gold);
}

/* 보조 수상 카드 (우측 스택) */
.awards-highlight-side-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 12px 14px;
  cursor: pointer;
  transition: border-color 0.25s, background 0.25s;
}

.awards-highlight-side-card:hover {
  border-color: rgba(242, 193, 78, 0.22);
  background: rgba(255, 255, 255, 0.04);
}

.awards-highlight-side-card .awards-badge {
  margin-bottom: 0;
  flex-shrink: 0;
}

.awards-highlight-side-thumb {
  width: 56px;
  height: 56px;
  border-radius: 8px;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.awards-highlight-side-info {
  min-width: 0;
  flex: 1;
}

.awards-highlight-side-title {
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--text-main);
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-highlight-side-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  font-size: 0.7rem;
  color: var(--text-muted);
  margin-top: 3px;
}

.awards-highlight-side-submeta {
  display: inline-flex;
  flex-basis: 100%;
  margin-top: 3px;
  font-size: 0.68rem;
  color: rgba(255, 255, 255, 0.42);
  font-weight: 600;
}

/* PC — 전체 카드 크기는 유지하고, 썸네일만 원본처럼 안쪽 여백을 둔 가로형 */
@media (min-width: 992px) {
  .awards-highlight-main.sidebar-ranking-item {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    box-sizing: border-box;
    padding: 54px 16px 54px 14px;
    gap: 28px;
    height: 100%;
    min-height: 320px;
  }

  /* 원본 상태: 사진이 카드 테두리에 붙지 않고 상·하·좌측에 여백을 가짐 */
  .awards-highlight-main .award-badge-ribbon {
    top: 14px;
    left: 14px;
  }

  .awards-highlight-main-thumb {
    flex: 0 0 60%;
    width: 60%;
    max-width: none;
    min-height: 0;
    height: auto;
    align-self: stretch;
    aspect-ratio: unset;
    border-radius: 12px;
  }

  .awards-highlight-main-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 88px 0 0;
  }

  /* 우측 4카드 — 동일 높이 분배 (과도한 늘림 방지) */
  .awards-highlight-side-card {
    display: grid;
    grid-template-columns: max-content 56px minmax(0, 1fr);
    align-items: center;
    column-gap: 16px;
    flex: 1 1 0;
    min-height: 68px;
    padding: 10px 16px;
  }

  .awards-highlight-side-card .awards-badge {
    justify-self: start;
    min-width: 82px;
    text-align: center;
    white-space: nowrap;
  }

  .awards-highlight-side-thumb {
    justify-self: start;
  }

  .awards-highlight-side-info {
    min-width: 0;
  }

  /* 🌐 wrapper — 제목 텍스트 바로 옆에 붙도록 fit-content */
  .awards-highlight-side-info > .title-assist-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    width: fit-content !important;
    max-width: 100%;
    margin-bottom: 3px;
  }

  .awards-highlight-side-info .title-assist-wrapper .awards-highlight-side-title,
  .awards-highlight-side-info .title-assist-wrapper .sidebar-rank-title {
    display: block !important;
    width: auto !important;
    flex: 0 1 auto !important;
    min-width: 0;
    margin-bottom: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .awards-highlight-side-meta {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0;
    white-space: nowrap;
    overflow: hidden;
  }

  .awards-highlight-side-submeta {
    flex: 0 1 auto;
    flex-basis: auto;
    min-width: 0;
    margin-top: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .awards-highlight-side-submeta::before {
    content: "·";
    margin: 0 5px;
  }
}

/* ── 이번 시즌 수상작 그리드 ── */
.awards-winner-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
}

/*
 * 이번 시즌 수상작 카드 — 메인 어워드 대상카드(.awards-highlight-main)와 동일한
 * 은은한 골드/브론즈 라인 (기본 차분 · hover 시만 소폭 밝아짐)
 */
.awards-winner-card {
  position: relative;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(242, 193, 78, 0.22);
  border-radius: 14px;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s;
  isolation: isolate;
}

/* sidebar-ranking-item flex 무효화 */
.awards-winner-card.sidebar-ranking-item {
  display: block;
  padding: 0;
  gap: 0;
  align-items: stretch;
  border: 1px solid rgba(242, 193, 78, 0.22);
  border-radius: 14px;
}

.awards-winner-inner {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  height: 150px;
  overflow: hidden;
}

/*
 * ── 왼쪽 라벨바 — 카드와 동일 톤의 은은한 골드/브론즈 라인 ──
 */
.awards-winner-label-col {
  position: relative;
  width: 44px;
  flex-shrink: 0;
  display: flex;
  align-items: stretch;
  justify-content: center;
  box-sizing: border-box;
  padding: 0;
  border-radius: 12px 0 0 12px;
  overflow: hidden;
  isolation: isolate;
  background: transparent;
  border: 0;
  /* 라벨 영역 안쪽 1px 라인 — 카드 외곽선과 동일 색상 */
  box-shadow: inset 0 0 0 1px rgba(242, 193, 78, 0.22);
  transition: box-shadow 0.3s;
}

/*
 * 세로 라벨바 내 "AI" text-combine-upright 처리
 * — writing-mode:vertical-rl 에서 라틴 대문자 2글자를 하나의 정사각 셀로 합쳐 가로로 표시
 * — 일본어 '縦中横(タテチュウヨコ)'과 동일한 표준 기법
 */
.awards-winner-label-col .tcuy {
  text-combine-upright: all;
  -webkit-text-combine: horizontal; /* 구 webkit 호환 */
}

/* 베스트 AI연출 — 'AI' 글자만 아주 약간 축소 */
.awards-winner-label-col .awards-badge-type-best_direction .tcuy {
  font-size: 0.90em;
}

/* ─ 수상 라벨 내부 — 상단 1/4(아이콘) · 하단 3/4(텍스트) 영역 분리 ─ */
.awards-winner-label-col .awards-winner-label-badge {
  display: grid;
  grid-template-rows: 25% 75%; /* 라벨 높이의 1/4 = 아이콘, 3/4 = 텍스트 */
  align-items: stretch;
  margin: 0;
  width: 100%;
  height: 100%;
  flex: 1;
  min-height: 0;
  padding: 0 1px; /* 아이콘·텍스트가 라벨 폭을 넓게 쓰도록 좌우 여백 최소화 */
  gap: 0;
  border: 0;
  border-radius: 12px 0 0 12px;
  border-right: 1px solid rgba(0, 0, 0, 0.28);
  box-sizing: border-box;
}

/* 아이콘 전용 영역 — 상단 25%, PNG 원본 크기(31×26) 중앙 정렬 */
.awards-winner-label-col .awards-winner-label-icon {
  grid-row: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 0;
  flex-shrink: 0;
  padding: 2px 0 0;
  box-sizing: border-box;
  line-height: 1;
  writing-mode: horizontal-tb;
  text-orientation: mixed;
}

/* PNG 원본 해상도 31×26 — 확대 없이 1:1 표시해 퀄리티 유지 */
.awards-winner-label-col .awards-winner-label-icon-img {
  display: block;
  width: 31px;
  height: 26px;
  flex-shrink: 0;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.55));
  pointer-events: none;
  user-select: none;
}

/* 시즌대상 — 아이콘 위치 아래로 */
.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-icon {
  padding-top: 8px;
}

/* 텍스트 전용 영역 — 하단 75%, 가로 중앙 정렬 */
.awards-winner-label-col .awards-winner-label-text {
  grid-row: 2;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 2px 0 0;
  overflow: hidden;
  font-family: var(--font-display);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 세로 텍스트 — writing-mode를 lang span에 적용해 가로 중앙 정렬 보정 */
.awards-winner-label-col .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-winner-label-text .lang-en {
  display: inline-block;
  margin: 0 auto;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.62;
  letter-spacing: 0.10em;
  writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;
  text-align: center;
  background: linear-gradient(180deg, #fff4c8 0%, #e8c858 42%, #f5dc78 68%, #c9a030 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* 시즌대상 — 글자 수 적음: 텍스트 영역 세로 중앙 + 살짝 위 */
.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text {
  align-items: center;
  padding-top: 0;
  margin-top: -2px;
}

/*
 * 시즌대상 상하 간격 — vertical-rl 에서 margin-inline-end 로 세로축 간격 제어
 * 단어 내(시-즌, 대-상): 좁게 / 단어 사이(시즌-대상): 넓게
 */
.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-ko-word {
  display: inline-block;
}

.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-char {
  display: inline-block;
}

.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
  margin-inline-end: 0.20em; /* 시-즌, 대-상: 단어 내 간격 축소 */
}

.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-ko-word-gap {
  display: inline-block;
  height: 0.62em; /* 시즌-대상: 단어 사이 간격 유지 */
  width: 1em;
  overflow: hidden;
  vertical-align: middle;
}

.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text .lang-en {
  font-size: 14px; /* 베스트스토리 등 기본 라벨과 동일 크기 */
  line-height: 1.62;
  letter-spacing: 0.22em;
}

/* 베스트 AI연출 — 글자 수 많음: 상하 자간 확대 + 세로 중앙, 텍스트 살짝 위 */
.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text {
  align-items: center;
  padding-top: 0;
  margin-top: -4px;
}

.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text .lang-en {
  font-size: 14px; /* 베스트스토리 등 기본 라벨과 동일 크기 */
  line-height: 2.05;
  letter-spacing: 0.12em;
}

/* 베스트 AI연출 — AI·연·출 사이 세로 간격 (margin-inline-end 로만 제어) */
.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-ko-part--direction {
  line-height: 1; /* lang-ko 2.05 상속 차단 — 한글 글자 박스 여백으로 연-출 간격 벌어짐 방지 */
}

.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char {
  display: inline-block;
  line-height: 1;
}

.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:not(:last-child) {
  margin-inline-end: 0.14em;
}

/* 연-출 — tcuy AI 블록과 달리 한글 글자 박스가 커서 간격이 넓어 보임 → AI-연과 맞춤 */
.awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:nth-child(2) {
  margin-inline-end: 0.06em;
}

/* 베스트애니메이션 — 글자 많음: 위로 올리고 자간은 유지(다른 라벨보다 촘촘하게) */
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text {
  padding-top: 0;
  margin-top: -4px;
}

.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-en {
  font-size: 12.5px;
  line-height: 1.46;
  letter-spacing: 0.07em;
}

/*
 * KO — 베스트비주얼·베스트스토리·베스트애니메이션
 * vertical-rl 세로축(line-height) 간격 축소 → 디바이스별 하단 잘림 방지
 */
.awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-text .lang-ko,
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-ko {
  line-height: 1;
  letter-spacing: 0;
}

.awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-gap--prefix,
.awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-gap--prefix,
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-gap--prefix {
  height: 0.28em;
}

/* KO — 베스트비주얼·스토리·애니메이션 글자별 세로 간격 (PC) */
.awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-word,
.awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-word,
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-word {
  display: inline-block;
  line-height: 1;
}

.awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-word .awards-winner-label-char,
.awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-word .awards-winner-label-char,
.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-word .awards-winner-label-char {
  display: inline-block;
  line-height: 1;
}

.awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child),
.awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
  margin-inline-end: 0.08em;
}

.awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
  margin-inline-end: 0.06em;
}

/*
 * 베스트 단편 — '베스트'·'단편' 사이 간격
 * 일반 공백 1칸(line-height) 대비 약 1/3 높이로 축소
 */
.awards-winner-label-col .awards-winner-label-ko-gap {
  display: inline-block;
  height: 0.62em; /* 베스트-단편: 세로 간격 소폭 확대 */
  width: 1em;
  overflow: hidden;
  vertical-align: middle;
}

/*
 * 베스트비주얼·베스트스토리·베스트AI연출 — '베스트'와 나머지 단어 사이 약간 간격
 */
.awards-winner-label-col .awards-winner-label-ko-gap--prefix {
  height: 0.32em;
}

/*
 * EN 라벨바 전용 — 세로 글자·가로 합침 블록
 */
.awards-winner-label-col .awards-winner-label-en-char {
  display: inline-block;
}

.awards-winner-label-col .awards-winner-label-en-hblock {
  display: inline-block;
  writing-mode: horizontal-tb;
  text-orientation: mixed;
  line-height: 1;
  letter-spacing: 0.02em;
}

/* EN 분할 span — 부모 lang-en 금색 그라디언트 상속 */
.awards-winner-label-col .awards-winner-label-text .lang-en .awards-winner-label-en-char,
.awards-winner-label-col .awards-winner-label-text .lang-en .awards-winner-label-en-hblock,
.awards-winner-label-col .awards-winner-label-text .lang-en .awards-winner-label-en-stack {
  background: linear-gradient(180deg, #fff4c8 0%, #e8c858 42%, #f5dc78 68%, #c9a030 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* EN — AI DIR: BEST 세로 글자 간격 */
html[lang="en"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-en-stack--direction .awards-winner-label-en-char:not(:last-child) {
  margin-inline-end: 0.08em;
}

/* EN — ANIMATION: 글자 많음 → 크기·간격 축소 (하단 N 잘림 방지) */
html[lang="en"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-en {
  font-size: 9.8px;
  line-height: 1.18;
  letter-spacing: 0.01em;
}

html[lang="en"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-en-stack--animation .awards-winner-label-en-char:not(:last-child) {
  margin-inline-end: 0.01em;
}

/* EN — SHORT: 미세 상향 + 글자 간 세로 간격 확대 (PC·모바일 공통) */
html[lang="en"] .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text {
  align-items: flex-start;
  padding-top: 6px;
  margin-top: -2px;
}

.awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text .lang-en {
  letter-spacing: 0.12em;
  line-height: 1.78;
}

.awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-en-stack--short .awards-winner-label-en-char:not(:last-child) {
  margin-inline-end: 0.06em;
}

/* EN — STORY·SHORT(구 plain): 아이콘과 간격 확보, 아래 여백 균형 */
html[lang="en"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-text {
  align-items: flex-start;
  padding-top: 7px;
}

/* 베스트 단편 — 텍스트 위치 미세 상향 (KO) */
.awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text {
  padding-top: 4px;
  margin-top: -2px;
}

/* ─ 수상 등급별 라벨 내부 배경 (위→아래 그라디언트) ─ */

/* 👑 시즌 대상 */
.awards-winner-label-col .awards-badge-type-grand_prize {
  background: linear-gradient(180deg, #362e1d 0%, #1c1405 100%);
}

/* ✨ 베스트 비주얼 */
.awards-winner-label-col .awards-badge-type-best_visual {
  background: linear-gradient(180deg, #4f305a 0%, #17091f 100%);
}

/* 📖 베스트 스토리 */
.awards-winner-label-col .awards-badge-type-best_story {
  background: linear-gradient(180deg, #483424 0%, #1a0e06 100%);
}

/* 🎬 베스트 AI 연출 */
.awards-winner-label-col .awards-badge-type-best_direction {
  background: linear-gradient(180deg, #223b5e 0%, #051226 100%);
}

/* 💫 베스트 애니메이션 */
.awards-winner-label-col .awards-badge-type-best_animation {
  background: linear-gradient(180deg, #553a1c 0%, #1f1203 100%);
}

/* ⏱ 베스트 단편 */
.awards-winner-label-col .awards-badge-type-best_short {
  background: linear-gradient(180deg, #123c30 0%, #041712 100%);
}

/* 기타 수상 타입 — 동일 톤 fallback */
.awards-winner-label-col .awards-badge-type-curator_pick,
.awards-winner-label-col .awards-badge-type-binge,
.awards-winner-label-col .awards-badge-type-hidden_gem,
.awards-winner-label-col .awards-badge-type-audience_choice {
  background: linear-gradient(180deg, #362e1d 0%, #1c1405 100%);
}

.awards-winner-card:hover {
  border-color: rgba(242, 193, 78, 0.38);
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
}

/* hover 시 라벨 안쪽 라인도 카드와 함께 소폭 밝아짐 */
.awards-winner-card:hover .awards-winner-label-col {
  box-shadow: inset 0 0 0 1px rgba(242, 193, 78, 0.38);
}

.awards-winner-card .awards-badge {
  margin: 0;
}

.awards-winner-thumb {
  width: 120px; /* 요청에 따라 PC 썸네일 폭 104px → 120px 확대 */
  flex-shrink: 0;
  height: 100%;
  background-size: cover;
  background-position: center;
  border-right: 1px solid rgba(255, 255, 255, 0.04);
}

.awards-winner-body {
  flex: 1;
  min-width: 0;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}

.awards-winner-title {
  font-size: 0.92rem;
  font-weight: 800;
  color: var(--text-main);
  display: block;
  margin-bottom: 5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 수상작 카드 — 🌐는 제목 바로 옆 */
.awards-winner-body > .title-assist-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: fit-content !important;
  max-width: 100%;
  margin-bottom: 5px;
}

.awards-winner-body .title-assist-wrapper .awards-winner-title {
  margin-bottom: 0;
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0;
}

.awards-highlight-main-body .title-assist-wrapper {
  width: fit-content !important;
  max-width: 100%;
  margin-bottom: 8px;
}

.awards-highlight-main-body .title-assist-wrapper .awards-highlight-main-title {
  margin-bottom: 0;
  width: auto !important;
  flex: 0 1 auto !important;
}

.awards-winner-sub {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 4px 6px;
  font-size: 0.72rem;
  color: var(--text-muted);
  margin-bottom: 5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-winner-sub .awards-meta-creator {
  color: rgba(255, 255, 255, 0.4);
}

.awards-winner-stats {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.45);
  margin-bottom: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-winner-reason {
  font-size: 0.74rem;
  color: var(--text-sub);
  line-height: 1.45;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ── 큐레이터 추천 그리드 — 수상작 그리드와 동일 3열 (카드 가로 늘어짐 방지) ── */
.awards-curator-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
}

.awards-curator-grid .curator-quote {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 큐레이터 카드 — 메인 페이지와 동일하게 하단 썸네일·정보 좌측 정렬 */
.awards-curator-grid .curator-card {
  align-items: stretch;
}

.awards-curator-grid .curator-card .curator-badge-row,
.awards-curator-grid .curator-card .curator-badge {
  align-self: flex-start;
}

.awards-curator-grid .curator-card .curator-footer {
  justify-content: flex-start;
  width: 100%;
}

.awards-curator-grid .curator-card .curator-footer > div {
  text-align: left;
}

/* ── 큐레이터 추천 — 모바일 3D Coverflow 캐러셀 (ranking TOP 10 패턴) ── */
.awards-curator-carousel-wrap {
  display: none;
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}

.awards-curator-carousel-header {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
}

.awards-curator-carousel-subline {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
}

.awards-curator-carousel-desc {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--text-muted);
  min-width: 0;
}

.awards-curator-carousel-indicator {
  display: flex;
  align-items: baseline;
  gap: 3px;
  font-size: 0.74rem;
  font-weight: 700;
  color: var(--text-muted);
  flex-shrink: 0;
}

.awards-curator-carousel-indicator-idx {
  font-size: 0.95rem;
  font-weight: 900;
  font-style: italic;
  color: var(--accent-gold);
}

.awards-curator-carousel-wrap::before,
.awards-curator-carousel-wrap::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 32px;
  z-index: 100;
  pointer-events: none;
}

.awards-curator-carousel-wrap::before {
  left: 0;
  background: linear-gradient(90deg, var(--bg-primary) 0%, transparent 100%);
}

.awards-curator-carousel-wrap::after {
  right: 0;
  background: linear-gradient(270deg, var(--bg-primary) 0%, transparent 100%);
}

.awards-curator-carousel-stage {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 0;
  overflow: hidden;
  touch-action: pan-y;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.awards-curator-carousel-track {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  min-height: 200px;
  padding: 0 36px;
  box-sizing: border-box;
  pointer-events: none;
}

.awards-curator-carousel-track .awards-curator-carousel-card {
  pointer-events: auto;
}

.awards-curator-carousel-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 200;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(12, 11, 14, 0.82);
  color: rgba(255, 255, 255, 0.88);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.25s, background 0.25s, color 0.25s;
}

.awards-curator-carousel-prev { left: 8px; }
.awards-curator-carousel-next { right: 8px; }

.awards-curator-carousel-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  height: 18px;
  padding: 2px 12px 0;
}

.awards-curator-carousel-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  border: none;
  padding: 0;
  background: rgba(255, 255, 255, 0.2);
  cursor: pointer;
  transition: transform 0.25s, background 0.25s;
}

.awards-curator-carousel-dot.is-active {
  background: var(--accent-gold);
  transform: scale(1.3);
}

/* Coverflow 카드 — width·opacity 계단 (랭킹 TOP 10 동일) */
.awards-curator-carousel-card {
  position: relative;
  flex: 0 0 auto !important;
  width: 160px !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 -48px !important;
  scroll-snap-align: unset !important;
  scroll-margin: 0 !important;
  opacity: 1;
  cursor: pointer;
  z-index: 1;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  transform: none;
  transition: width 0.42s cubic-bezier(0.22, 1, 0.36, 1),
              margin 0.42s cubic-bezier(0.22, 1, 0.36, 1),
              opacity 0.42s ease;
}

.awards-curator-carousel-card:hover {
  transform: none;
  background: transparent;
}

.awards-curator-carousel-card.is-center {
  width: 280px !important;
  margin: 0 10px !important;
  opacity: 1;
  z-index: 10;
}

.awards-curator-carousel-card.is-side {
  width: 200px !important;
  margin: 0 -36px !important;
  opacity: 1;
  z-index: 7;
}

.awards-curator-carousel-card.is-far {
  width: 160px !important;
  margin: 0 -48px !important;
  opacity: 1;
  z-index: 4;
}

.awards-curator-carousel-card-inner {
  background-color: #131215;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  padding: 14px 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.38);
  transition: border-color 0.3s, box-shadow 0.3s;
}

/* 좌·우 카드 — 리뷰·큐레이터명 숨김 (중앙 카드 텍스트 혼선 방지) */
.awards-curator-carousel-card.is-side .curator-quote,
.awards-curator-carousel-card.is-side .curator-name,
.awards-curator-carousel-card.is-far .curator-quote,
.awards-curator-carousel-card.is-far .curator-name {
  display: none;
}

.awards-curator-carousel-card.is-side .awards-curator-carousel-card-inner,
.awards-curator-carousel-card.is-far .awards-curator-carousel-card-inner {
  background-color: #111013;
  border-color: rgba(255, 255, 255, 0.06);
}

.awards-curator-carousel-card.is-center .awards-curator-carousel-card-inner {
  padding: 16px 16px 14px;
  border-color: rgba(242, 193, 78, 0.38);
  background-color: #161418;
  background-image: linear-gradient(155deg, rgba(242, 193, 78, 0.1) 0%, rgba(255, 255, 255, 0.04) 50%);
  box-shadow: 0 0 32px rgba(242, 193, 78, 0.14), 0 14px 36px rgba(0, 0, 0, 0.48);
}

.awards-curator-carousel-card .curator-quote {
  font-size: 0.82rem;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.awards-curator-carousel-card.is-center .curator-quote {
  font-size: 0.88rem;
  -webkit-line-clamp: 3;
}

.awards-curator-carousel-card.is-side .curator-footer {
  margin-top: auto;
}

.awards-curator-carousel-card .curator-footer {
  justify-content: flex-start;
  width: 100%;
}

.awards-curator-carousel-info {
  flex: 1;
  min-width: 0;
  text-align: left;
}

.awards-curator-carousel-card .curator-target-title {
  font-size: 0.82rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-curator-carousel-card.is-center .curator-target-title {
  font-size: 0.9rem;
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.awards-curator-carousel-card .curator-name {
  font-size: 0.68rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-curator-carousel-card .curator-art-small {
  flex-shrink: 0;
}

/* ── 테마별 컬렉션 ── */
.awards-collection-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.awards-collection-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 18px;
  display: flex;
  gap: 16px;
  cursor: pointer;
  transition: border-color 0.3s;
}
.awards-collection-card:hover {
  border-color: rgba(242, 193, 78, 0.2);
}

.awards-collection-thumbs {
  position: relative;
  width: 120px;
  height: 88px;
  flex-shrink: 0;
}

.awards-collection-thumb {
  position: absolute;
  width: 72px;
  height: 52px;
  border-radius: 6px;
  background-size: cover;
  background-position: center;
  border: 2px solid var(--bg-primary);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}
.awards-collection-thumb-1 { left: 0; top: 0; z-index: 3; }
.awards-collection-thumb-2 { left: 24px; top: 12px; z-index: 2; opacity: 0.85; }
.awards-collection-thumb-3 { left: 48px; top: 24px; z-index: 1; opacity: 0.7; }

.awards-collection-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.awards-collection-title {
  font-size: 1rem;
  font-weight: 800;
  color: var(--text-main);
  margin: 0 0 6px;
}

.awards-collection-desc {
  font-size: 0.78rem;
  color: var(--text-muted);
  line-height: 1.45;
  margin: 0 0 10px;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.awards-collection-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.awards-collection-count {
  font-size: 0.72rem;
  color: var(--text-muted);
}

.awards-collection-btn {
  font-size: 0.72rem !important;
  padding: 6px 14px !important;
  height: auto !important;
  min-width: auto !important;
}

/* 빈 상태 */
.awards-empty-msg {
  color: var(--text-muted);
  font-size: 0.85rem;
  text-align: center;
  padding: 32px 16px;
}

/* ── PC 사이드바 — 연재 시리즈(common .sidebar-section / .sidebar-title) 간격 기준 ── */
.awards-page-sidebar {
  display: flex;
  flex-direction: column;
  /* portal-right-sidebar gap: 36px 상속 — 섹션 간 타이틀 여백 확보 */
}

/*
 * common.css @media(max-width:1024px) 에서 portal-right-sidebar 가 숨겨지므로
 * 어워드 페이지는 992px 이상에서 PC 사이드바를 다시 노출 (992~1024 태블릿 구간 포함)
 */
@media (min-width: 992px) {
  body[data-page="awards"] .portal-right-sidebar.awards-page-sidebar {
    display: flex !important;
  }
}

/* 사이드바 시즌 수상작 — 리본 메달 클리핑 방지 + 카드 우측 고정 */
.awards-page-sidebar .awards-container,
.awards-page-sidebar .award-list,
.awards-mobile-bottom-sections .awards-container,
.awards-mobile-bottom-sections .award-list {
  overflow: visible;
}

.awards-page-sidebar .award-item.sidebar-ranking-item,
.awards-mobile-bottom-sections .award-item.sidebar-ranking-item {
  position: relative !important;
  overflow: visible !important;
  align-items: center;
  padding: 9px 10px;
  min-height: 58px;
  /* 리본 꼬리가 인접 카드 배경에 가려지지 않도록 쌓임 순서 확보 */
  z-index: 1;
}

.awards-page-sidebar .award-item.sidebar-ranking-item:hover,
.awards-mobile-bottom-sections .award-item.sidebar-ranking-item:hover {
  z-index: 3;
}

/*
 * PC·모바일 시즌 수상작 — 메인 #seasonAwards / creators-sidebar-awards 와 동일 flex 배치
 * (absolute 중앙 고정 시 리본 꼬리만 카드 밖으로 나가 다음 카드에 가려져 원형 메달만 보이는 현상 방지)
 */
.awards-page-sidebar .award-medal-ribbon-wrap,
.awards-mobile-bottom-sections .award-medal-ribbon-wrap {
  position: relative;
  right: auto;
  top: auto;
  margin-top: 0;
  margin-left: auto !important;
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  min-width: 34px;
  z-index: 2;
  overflow: visible !important;
  pointer-events: none;
}

/* PC 타이틀은 common .sidebar-title 사용 (추가 margin·border 중복 제거) */
.awards-page-sidebar .awards-sidebar-block .sidebar-title {
  margin-bottom: 0;
  margin-top: 0;
}

.awards-sidebar-guide {
  padding: 14px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  border-radius: 12px;
}

.awards-sidebar-guide .ranking-guide-label {
  font-size: 0.72rem;
  font-weight: 800;
  color: var(--text-muted);
  margin: 0 0 6px;
}

.awards-sidebar-guide .ranking-guide-desc {
  font-size: 0.78rem;
  color: var(--text-sub);
  line-height: 1.55;
  margin: 0;
}

/* 사이드바 — 큐레이터/저장 추천 (연재 시리즈 새 에피소드 업데이트 스타일) */
.awards-sidebar-thumb-list {
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.awards-sidebar-thumb-card {
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: flex-start;
  justify-content: center;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  cursor: pointer;
  transition: var(--transition-fast);
}

.awards-sidebar-thumb-card:hover {
  border-color: rgba(242, 193, 78, 0.25);
  transform: translateX(2px);
}

.awards-sidebar-thumb-top {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.awards-sidebar-thumb-title-wrap {
  flex: 1;
  min-width: 0;
}

.awards-sidebar-thumb-title {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--text-main);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}

.awards-sidebar-thumb-badge {
  font-size: 0.68rem;
  color: var(--accent-orange);
  font-weight: 700;
  background: rgba(242, 142, 53, 0.12);
  padding: 2px 6px;
  border-radius: 4px;
  flex-shrink: 0;
  max-width: 42%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awards-sidebar-thumb-bottom {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.72rem;
  color: var(--text-muted);
  opacity: 0.85;
}

.awards-sidebar-thumb-rating {
  color: var(--accent-gold);
  font-weight: 600;
  flex-shrink: 0;
}

/*
 * 숨은 명작 TOP 5 — 시네마틱 가로 썸네일(64×44) · 좌우 패딩 축소 · 상하 여백은 적당히
 */
#awardsSidebarHiddenList.sidebar-ranking-list,
#awardsMobileHiddenList.sidebar-ranking-list {
  gap: 8px;
}

#awardsSidebarHiddenList .sidebar-ranking-item,
#awardsMobileHiddenList .sidebar-ranking-item {
  padding: 9px 8px;
  gap: 8px;
  align-items: center;
}

#awardsSidebarHiddenList .sidebar-rank-num,
#awardsMobileHiddenList .sidebar-rank-num {
  width: 22px;
  flex-shrink: 0;
  font-size: 1.05rem;
}

#awardsSidebarHiddenList .sidebar-rank-thumb,
#awardsMobileHiddenList .sidebar-rank-thumb {
  width: 64px;
  height: 44px;
  border-radius: 6px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  line-height: 0;
  color: transparent;
  text-shadow: none;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

#awardsSidebarHiddenList .sidebar-rank-title,
#awardsMobileHiddenList .sidebar-rank-title {
  font-size: 0.8rem;
}

/* 사이드바 시즌 대표 카드 — 메인 시즌 어워즈와 동일하게 배경 썸네일 전체 채움
   (sidebar-ranking-item flex 레이아웃과 분리) */
.awards-page-sidebar .awards-container .award-featured-card,
.awards-mobile-bottom-sections .awards-container .award-featured-card {
  display: block;
  width: 100%;
  padding: 0;
  background-color: transparent;
}

.awards-page-sidebar .awards-container .award-featured-bg,
.awards-mobile-bottom-sections .awards-container .award-featured-bg {
  width: 100%;
  height: 110px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* 모바일 선정 기준 — 탭 밖 별도 영역 (랭킹 산정 기준과 동일) */
.awards-mobile-guide-section {
  display: none;
}

/* 모바일 하단 탭 — ranking과 동일 패턴 */
.awards-mobile-bottom-sections {
  display: none;
}

@media (max-width: 991px) {
  .awards-page-sidebar {
    display: none !important;
  }

  .awards-mobile-bottom-sections {
    display: block;
    margin-bottom: 12px;
  }

  /* 어워드 선정 기준 — 탭 영역 밖, 페이지 하단 */
  .awards-mobile-guide-section {
    display: block;
    margin-bottom: 8px;
  }

  .awards-mobile-bottom-sections .mobile-tab-btn {
    flex: 1;
    padding: 10px 4px;
    font-size: 0.82rem;
    font-weight: 700;
    border: 1px solid transparent;
    background: transparent;
    color: rgba(255, 255, 255, 0.45);
    text-align: center;
    border-radius: 8px;
    cursor: pointer;
  }
  .awards-mobile-bottom-sections .mobile-tab-btn.active {
    background: rgba(242, 193, 78, 0.12);
    color: var(--accent-gold);
    border-color: rgba(242, 193, 78, 0.2);
  }
  .awards-mobile-bottom-sections .mobile-tab-content-pane {
    display: none;
  }
  .awards-mobile-bottom-sections .mobile-tab-content-pane.active {
    display: flex;
    flex-direction: column;
  }

  .awards-mobile-bottom-sections .mobile-tab-content-pane .sidebar-title {
    font-size: 0.95rem;
    color: var(--text-main);
  }

  /*
   * 모바일 탭 섹션 — 홈 시즌 어워즈·주간 인기 탭과 동일 수준으로 텍스트 확대
   */
  .awards-mobile-bottom-sections .award-featured-title {
    font-size: 1.08rem !important;
  }

  .awards-mobile-bottom-sections .award-featured-meta {
    font-size: 0.82rem !important;
  }

  .awards-mobile-bottom-sections .award-badge-ribbon {
    font-size: 0.72rem;
    padding: 4px 11px 4px 9px;
  }

  .awards-mobile-bottom-sections .award-badge-ribbon .award-trophy {
    font-size: 1.52rem;
  }

  .awards-mobile-bottom-sections .award-badge-ribbon--compact {
    font-size: 0.79rem;
  }

  .awards-mobile-bottom-sections .award-badge-ribbon--compact .award-trophy {
    font-size: 1.2rem;
  }

  .awards-mobile-bottom-sections .award-item-icon {
    font-size: 0.86rem;
    width: 28px;
    height: 28px;
  }

  .awards-mobile-bottom-sections .award-category {
    font-size: 0.69rem;
  }

  .awards-mobile-bottom-sections .award-title {
    font-size: 0.84rem;
  }

  .awards-mobile-bottom-sections .award-meta {
    font-size: 0.72rem;
  }

  /* 큐레이터 픽 탭 — 썸네일 카드 텍스트 확대 */
  .awards-mobile-bottom-sections .awards-sidebar-thumb-title {
    font-size: 0.88rem;
  }

  .awards-mobile-bottom-sections .awards-sidebar-thumb-badge {
    font-size: 0.74rem;
  }

  .awards-mobile-bottom-sections .awards-sidebar-thumb-bottom {
    font-size: 0.78rem;
  }

  /* 숨은 명작 탭 — 랭킹형 카드 텍스트 확대 */
  .awards-mobile-bottom-sections #awardsMobileHiddenList .sidebar-rank-title {
    font-size: 0.88rem;
  }

  .awards-mobile-bottom-sections #awardsMobileHiddenList .sidebar-rank-num {
    font-size: 1.26rem;
  }

  /* 하이라이트 — 모바일 세로 스택 */
  .awards-highlight-layout {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  /* 모바일 시즌 대상 — 세로 스택 · 썸네일 풀폭 */
  .awards-highlight-main.sidebar-ranking-item {
    display: block;
    flex-direction: column;
  }

  .awards-highlight-main-thumb {
    width: 100%;
    max-width: none;
    flex: none;
    min-height: 0;
    aspect-ratio: 16 / 9;
    border-radius: 16px 16px 0 0;
  }

  .awards-highlight-main-body {
    display: block;
    padding: 16px 76px 26px 16px;
    text-align: left;
  }

  .awards-highlight-reason {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .awards-highlight-grand-ribbon {
    width: 76px;
    right: 10px;
    bottom: -11px;
  }

  .awards-highlight-main-title {
    font-size: 1.15rem;
  }

  /* 모바일 — 하이라이트 우측 4개 수상 카드 숨김 (이번 시즌 수상작과 중복) */
  .awards-highlight-side {
    display: none !important;
  }

  /* 모바일 작은 수상 카드 — badge 상단 + 썸네일·본문 */
  .awards-highlight-side-card.sidebar-ranking-item {
    position: relative;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 14px;
    row-gap: 8px;
    align-items: start;
    padding: 12px;
  }

  .awards-highlight-side-card > .awards-badge {
    grid-column: 1 / -1;
    justify-self: start;
    width: auto;
    max-width: max-content;
    display: inline-flex;
    align-items: center;
    min-width: 0;
    margin-bottom: 0;
    white-space: nowrap;
  }

  .awards-highlight-side-card.sidebar-ranking-item::after {
    content: "›";
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 0.9rem;
    font-weight: 700;
    opacity: 0.34;
    pointer-events: none;
  }

  .awards-highlight-side-thumb {
    width: 72px;
    height: 72px;
  }

  .awards-highlight-side-info {
    align-self: center;
  }

  .awards-highlight-side-meta,
  .awards-highlight-side-submeta {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  /* 수상작 — 1열, 카드 높이 고정으로 모바일 무한 늘어짐 방지 */
  .awards-winner-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .awards-winner-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
  }

  .awards-winner-inner {
    /* 고정 높이: height:auto + align-items:stretch 조합에서 flex 아이템이 서로를
       참조하는 순환 높이 계산으로 컨테이너가 비정상적으로 늘어나는 현상 방지 */
    width: 100%;
    min-width: 0;
    height: 150px;
    min-height: unset;
    overflow: hidden; /* 고정 높이 밖으로 내용물 잘림 처리 */
  }

  .awards-winner-thumb {
    width: 110px;
    flex-shrink: 0;
    height: 100%;
    min-height: unset; /* 부모 fixed height 사용하므로 min-height 불필요 */
  }

  .awards-winner-label-col {
    width: 40px;
    flex-shrink: 0;
    padding: 1px;
  }

  .awards-winner-label-col .awards-winner-label-badge {
    padding: 0 1px; /* 아이콘이 라벨 폭을 더 채우도록 좌우 여백 축소 */
  }

  .awards-winner-label-col .awards-winner-label-icon-img {
    width: 31px;
    height: 26px;
  }

  .awards-winner-label-col .awards-winner-label-text {
    padding: 1px 0 0;
  }

  .awards-winner-label-col .awards-winner-label-text .lang-ko,
  .awards-winner-label-col .awards-winner-label-text .lang-en {
    font-size: 12px;
    line-height: 1.58;
    letter-spacing: 0.09em;
  }

  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-icon {
    padding-top: 7px;
  }

  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text {
    align-items: center;
    padding-top: 0;
    margin-top: -1px;
  }

  /* KO 모바일 — 시즌대상 텍스트 미세하게 위로 */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text {
    margin-top: -3px;
  }

  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
    margin-inline-end: 0.16em;
  }

  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-ko-word-gap {
    height: 0.52em;
  }

  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text .lang-ko,
  .awards-winner-label-col .awards-badge-type-grand_prize .awards-winner-label-text .lang-en {
    font-size: 12px; /* 베스트스토리 등 기본 라벨과 동일 크기 */
    line-height: 1.58;
    letter-spacing: 0.20em;
  }

  .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text {
    align-items: center;
    padding-top: 0;
    margin-top: -3px;
  }

  .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text .lang-ko,
  .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text .lang-en {
    font-size: 12px; /* 베스트스토리 등 기본 라벨과 동일 크기 */
    line-height: 1.98;
    letter-spacing: 0.11em;
  }

  .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:not(:last-child) {
    margin-inline-end: 0.12em;
  }

  /*
   * KO 모바일 — 베스트AI연출
   * lang-ko line-height 1.98 상속 시 한글 글자(연·출) 박스가 커져 연-출 간격이 넓어 보임
   * → line-height 1 고정 + 연(2번째) margin을 AI-연과 동일하게 재보정
   */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-text .lang-ko {
    line-height: 1;
    letter-spacing: 0;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-ko-part--direction,
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char {
    line-height: 1;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:nth-child(2),
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:nth-child(3) {
    line-height: 0.92;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:not(:last-child) {
    margin-inline-end: 0.08em;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_direction .awards-winner-label-dir-char:nth-child(2) {
    margin-inline-end: 0.02em;
  }

  .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text {
    padding-top: 4px;
    margin-top: -2px;
  }

  .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text {
    padding-top: 0;
    margin-top: -3px;
  }

  .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-ko,
  .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-en {
    font-size: 11.5px;
    line-height: 1.44;
    letter-spacing: 0.06em;
  }

  /* KO 모바일 — 베스트비주얼·스토리·애니메이션 글자별 세로 자간 */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-text .lang-ko,
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-text .lang-ko,
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-ko {
    line-height: 1;
    letter-spacing: 0;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child),
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
    margin-inline-end: 0.02em;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-ko-gap--prefix,
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-ko-gap--prefix {
    height: 0.08em;
  }

  /* KO 모바일 — 베스트애니메이션: 글자 수 많음 → 크기·간격 추가 축소 */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-ko {
    font-size: 10px;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-word .awards-winner-label-char {
    line-height: 0.90;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-word .awards-winner-label-char:not(:last-child) {
    margin-inline-end: -0.02em;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-ko-gap--prefix {
    height: 0.04em;
  }

  .awards-winner-label-col .awards-winner-label-ko-gap {
    height: 0.53em;
  }

  /* 베스트 단편 — '베스트'·'단편' 사이 간격 (모바일) */
  .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-ko-gap {
    height: 0.60em;
  }

  .awards-winner-label-col .awards-winner-label-ko-gap--prefix {
    height: 0.36em;
  }

  /* EN 모바일 — 2·3·5·6번째 카드(VISUAL·STORY·ANIMATION·SHORT) 텍스트 아래로 */
  /* EN 모바일 — VISUAL: 위치 미세 상향 */
  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 9px;
    margin-top: -1px;
  }

  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 11px;
  }

  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 2px;
    margin-top: -3px;
  }

  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 8px;
    margin-top: -2px;
  }

  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text .lang-en {
    font-size: 9.5px;
    line-height: 1.16;
    letter-spacing: 0.01em;
  }

  html[lang="en"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-en-stack--animation .awards-winner-label-en-char:not(:last-child) {
    margin-inline-end: 0.01em;
  }

  /* EN 모바일 — SHORT 글자 간 세로 간격 */
  .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text .lang-en {
    letter-spacing: 0.12em;
    line-height: 1.76;
  }

  .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-en-stack--short .awards-winner-label-en-char:not(:last-child) {
    margin-inline-end: 0.06em;
  }

  /* KO 모바일 — 베스트스토리 텍스트 위치 */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_story .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 5px;
  }

  /* KO 모바일 — 베스트비주얼: 스토리와 동일 크기·자간, 위치만 미세 상향 */
  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_visual .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 4px;
    margin-top: -1px;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_animation .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 0;
    margin-top: -3px;
  }

  html[lang="ko"] .awards-winner-label-col .awards-badge-type-best_short .awards-winner-label-text {
    align-items: flex-start;
    padding-top: 9px;
    margin-top: -2px;
  }

  .awards-winner-body {
    padding: 10px 12px;
    min-width: 0;
    overflow: hidden !important; /* 본문·말줄임이 카드 폭 안에 머물도록 */
  }

  /* 모바일 — 🌐 포함 제목 한 줄 말줄임 (fit-content로 카드가 화면 밖으로 밀리는 현상 방지) */
  .awards-winner-body > .title-assist-wrapper {
    width: 100% !important;
    max-width: 100%;
    overflow: hidden;
  }

  .awards-winner-body .title-assist-wrapper .awards-winner-title {
    flex: 1 1 auto !important;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .awards-winner-body .title-assist-wrapper .title-assist-icon {
    flex: 0 0 auto !important;
    flex-shrink: 0;
  }

  /* 모바일 — 수상작 설명 텍스트 미세 확대 */
  .awards-winner-reason {
    font-size: 0.78rem;
  }

  /* 큐레이터 — 모바일 Coverflow 캐러셀 / PC 그리드 분리 */
  .awards-curator-section {
    margin-bottom: 12px !important;
  }

  .awards-curator-section .awards-curator-carousel-header {
    margin-bottom: 6px !important;
  }

  .awards-curator-carousel-wrap {
    display: block;
    height: auto;
    margin-bottom: 0;
  }

  .awards-curator-carousel-track {
    min-height: 188px;
    padding: 0 32px;
  }

  .awards-curator-section .awards-curator-grid {
    display: none !important;
  }

  .awards-curator-carousel-card::before {
    display: none;
  }

  /* 큐레이터 — 1열 (캐러셀 미사용 영역 대비) */
  .awards-curator-grid {
    grid-template-columns: 1fr;
  }

  /* 컬렉션 — 1열 */
  .awards-collection-grid {
    grid-template-columns: 1fr;
  }

  /* 모바일 — 컬렉션 설명 텍스트 미세 확대 */
  .awards-collection-desc {
    font-size: 0.82rem;
  }
}

@media (min-width: 992px) and (max-width: 1300px) {
  .awards-winner-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  /* 중간 폭 PC — 큐레이터도 2열 */
  .awards-curator-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}

@media (min-width: 992px) {
  .awards-mobile-bottom-sections {
    display: none !important;
  }

  .awards-mobile-guide-section {
    display: none !important;
  }

  /* PC — 큐레이터 캐러셀 숨김, 그리드 유지 */
  .awards-curator-carousel-wrap {
    display: none !important;
  }

  .awards-curator-carousel-subline {
    display: none;
  }
}

/*
 * PC 전용 — 이번 시즌 수상작 카드 🌐 원제 툴팁 클리핑 수정
 *
 * 문제: .awards-winner-card(overflow:hidden) → .awards-winner-inner(overflow:hidden)
 *       → .awards-winner-body(overflow:hidden) 3중 클리핑으로 position:absolute 툴팁이 잘림
 *
 * 해결:
 *   1. .awards-winner-inner / .awards-winner-body 를 PC에서 overflow:visible 로 전환
 *   2. 카드 코너 시각 클리핑은 .awards-winner-card 의 border-radius + 카드 자체 background 가 유지
 *      (card 의 overflow:hidden 은 title-assist.css @media(min-width:1025px) .sidebar-ranking-item
 *       !important 규칙에 의해 이미 visible 로 전환됨)
 *   3. 라벨바 좌측 코너 클리핑은 .awards-winner-label-col 자체의 border-radius + overflow:hidden 이 담당
 *   4. 썸네일 배경(background-image)은 항상 해당 div 테두리 안에 페인팅 → 코너 유출 없음
 */
@media (min-width: 1025px) {
  .awards-winner-inner {
    overflow: visible;
  }

  .awards-winner-body {
    overflow: visible;
  }

  /* 툴팁이 인접 카드에 가려지지 않도록 호버 시 z-index 상향 */
  .awards-winner-card:hover {
    z-index: 110 !important;
  }

  /* 툴팁 자체가 최상위 레이어에 렌더링 */
  .awards-winner-card .title-assist-tooltip {
    z-index: 9999 !important;
  }
}

/* ────────────────────────────────────────────────────────
   테마별 추천 컬렉션 상세 모달 (PC 중앙 / 모바일 바텀시트)
   ──────────────────────────────────────────────────────── */

/* 어워드 페이지에서 작품 상세 모달이 컬렉션 모달 위에 오도록 z-index 보정 */
body[data-page="awards"] #cinemaDetailModal.active {
  z-index: 3400 !important;
}

.awards-col-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 3200;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(4, 4, 8, 0.82);
  backdrop-filter: blur(12px);
  opacity: 0;
  transition: opacity 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}

.awards-col-modal-backdrop.show {
  display: flex;
  opacity: 1;
}

.awards-col-modal-panel {
  position: relative;
  width: 100%;
  max-width: 920px;
  max-height: calc(100vh - 48px);
  background: linear-gradient(165deg, #0c0d12 0%, #090a0f 55%, #07080c 100%);
  border: 1px solid rgba(242, 193, 78, 0.22);
  border-radius: 20px;
  box-shadow:
    0 40px 100px rgba(0, 0, 0, 0.92),
    0 0 60px rgba(242, 148, 30, 0.06);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transform: scale(0.96) translateY(8px);
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}

.awards-col-modal-backdrop.show .awards-col-modal-panel {
  transform: scale(1) translateY(0);
}

/* 모바일 전용 — 드래그 핸들 (PC에서는 숨김) */
.awards-col-modal-handle {
  display: none;
}

.awards-col-modal-header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px 0;
  flex-shrink: 0;
}

.awards-col-modal-badge {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--accent-gold, #f2c14e);
  opacity: 0.9;
}

.awards-col-modal-close {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: var(--text-sub, #a0a4b8);
  font-size: 1rem;
  cursor: pointer;
  transition: var(--transition-fast, 0.2s ease);
  flex-shrink: 0;
}

.awards-col-modal-close:hover {
  border-color: rgba(242, 193, 78, 0.45);
  color: var(--accent-gold, #f2c14e);
  background: rgba(242, 193, 78, 0.08);
}

.awards-col-modal-header {
  position: static;
  width: auto;
  height: auto;
  padding: 12px 22px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  flex-shrink: 0;
  background: transparent;
  box-shadow: none;
}

.awards-col-modal-title-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.awards-col-modal-title {
  flex: 1;
  min-width: 0;
  margin: 0;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.35;
  color: var(--text-main, #eef0f6);
  letter-spacing: -0.02em;
}

/* ── 컬렉션 저장 버튼 (메타 영역 내 pill) ── */
.awards-col-save-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex-shrink: 0;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid rgba(242, 193, 78, 0.28);
  background: rgba(242, 193, 78, 0.06);
  color: rgba(210, 215, 228, 0.95);
  font-size: 0.76rem;
  font-weight: 700;
  cursor: pointer;
  transition: color 0.22s ease, border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
  line-height: 1.2;
  white-space: nowrap;
}

.awards-col-save-btn:hover {
  color: var(--accent-gold, #f2c14e);
  border-color: rgba(242, 193, 78, 0.5);
  background: rgba(242, 193, 78, 0.1);
  box-shadow: 0 0 16px rgba(242, 148, 30, 0.12);
}

.awards-col-save-btn.active {
  color: var(--accent-gold, #f2c14e);
  border-color: rgba(242, 193, 78, 0.55);
  background: rgba(242, 193, 78, 0.14);
  box-shadow: 0 0 14px rgba(242, 148, 30, 0.18);
}

.awards-col-save-label {
  letter-spacing: -0.01em;
}

/* ── 컬렉션 모달 북마크 아이콘 (작품 카드용) ── */
.awards-col-bmk-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 4px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: rgba(154, 160, 178, 0.9);
  transition: color 0.22s ease, filter 0.22s ease, transform 0.18s ease;
  line-height: 0;
}

.awards-col-bmk-btn:hover {
  color: var(--accent-gold, #f2c14e);
  filter: drop-shadow(0 0 8px rgba(242, 193, 78, 0.35));
  transform: translateY(-1px);
}

.awards-col-bmk-btn:active {
  transform: translateY(0) scale(0.94);
}

.awards-col-bmk-btn.active {
  color: var(--accent-gold, #f2c14e);
  filter: drop-shadow(0 0 10px rgba(242, 148, 30, 0.4));
}

.awards-col-bmk-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.awards-col-bmk-icon svg {
  display: block;
}

.awards-col-bmk-icon--header svg {
  width: 20px;
  height: 22px;
}

.awards-col-bmk-icon--card svg {
  width: 17px;
  height: 19px;
}

/* 기본: 외곽선만 / 활성: 골드 채움 */
.awards-col-bmk-shape {
  fill: transparent;
  transition: fill 0.22s ease, stroke 0.22s ease;
}

.awards-col-bmk-btn.active .awards-col-bmk-shape {
  fill: rgba(242, 193, 78, 0.32);
  stroke: var(--accent-gold, #f2c14e);
}

.awards-col-save-btn.active .awards-col-bmk-shape {
  fill: rgba(242, 193, 78, 0.32);
  stroke: var(--accent-gold, #f2c14e);
}

.awards-col-bmk-btn--card {
  width: 32px;
  height: 34px;
  align-self: center;
  border-radius: 6px;
}

.awards-col-bmk-btn--card:hover {
  background: rgba(255, 255, 255, 0.04);
}

.awards-col-bmk-btn--card.active {
  background: rgba(242, 193, 78, 0.08);
}

.awards-col-modal-desc {
  margin: 10px 0 0;
  font-size: 0.88rem;
  line-height: 1.55;
  color: var(--text-sub, #9ca3b8);
}

.awards-col-modal-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 14px;
  margin-top: 14px;
  margin-bottom: 4px;
}

.awards-col-modal-meta-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
}

.awards-col-modal-count {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--accent-orange, #f2941e);
  white-space: nowrap;
}

.awards-col-modal-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.awards-col-modal-tag {
  font-size: 0.68rem;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(242, 193, 78, 0.25);
  background: rgba(242, 193, 78, 0.07);
  color: rgba(242, 193, 78, 0.92);
}

.awards-col-modal-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 18px 22px 22px;
  -webkit-overflow-scrolling: touch;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.awards-col-modal-section-label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--text-muted, #6b7280);
  margin-bottom: 12px;
}

/* 작품 리스트 — PC 2열 그리드 */
.awards-col-works-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

/* 컬렉션 모달 내 작품 카드 — sidebar-ranking-item 스타일 확장 */
.awards-col-work-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.02);
  cursor: pointer;
  transition: border-color 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
  min-width: 0;
}

.awards-col-work-card:hover {
  border-color: rgba(242, 193, 78, 0.35);
  background: rgba(242, 193, 78, 0.04);
  box-shadow: 0 0 20px rgba(242, 148, 30, 0.08);
}

#awardsCollectionModal .awards-col-work-card.sidebar-ranking-item:hover {
  transform: none;
}

.awards-col-work-card:focus-visible {
  outline: 2px solid rgba(242, 193, 78, 0.45);
  outline-offset: 2px;
}

.awards-col-work-info {
  flex: 1;
  min-width: 0;
}

.awards-col-work-meta {
  display: flex;
  align-items: center;
  min-width: 0;
  font-size: 0.72rem;
  color: var(--text-muted, #7a8094);
  margin-top: 3px;
}

.awards-col-work-type {
  flex-shrink: 0;
}

.awards-col-work-genre {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awards-col-work-sep {
  flex-shrink: 0;
  opacity: 0.55;
  padding-inline: 5px;
  line-height: 1;
  user-select: none;
}

.awards-col-work-stats {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  min-width: 0;
  gap: 0;
  font-size: 0.72rem;
  color: var(--text-sub, #9ca3b8);
  margin-top: 4px;
  overflow: hidden;
}

.awards-col-work-views {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awards-col-work-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  flex-shrink: 0;
  align-self: stretch;
  padding-left: 2px;
}

.awards-col-work-chevron {
  font-size: 1.05rem;
  font-weight: 300;
  line-height: 1;
  color: rgba(154, 160, 178, 0.55);
  transition: color 0.22s ease, transform 0.22s ease;
  pointer-events: none;
  user-select: none;
}

.awards-col-work-card:hover .awards-col-work-chevron,
.awards-col-work-card:focus-visible .awards-col-work-chevron {
  color: var(--accent-gold, #f2c14e);
  transform: translateX(2px);
}

.awards-col-work-stats .awards-col-work-rating {
  color: var(--accent-gold, #f2c14e);
  font-weight: 700;
  flex-shrink: 0;
  white-space: nowrap;
}

.awards-col-work-stats .awards-col-work-src {
  color: rgba(242, 148, 30, 0.85);
  font-weight: 600;
  flex-shrink: 0;
  white-space: nowrap;
}

/* 모바일 — 바텀시트 / 좁은 화면 전체화면형 */
@media (max-width: 768px) {
  .awards-col-modal-backdrop {
    align-items: flex-end;
    padding: 0;
    background: rgba(0, 0, 0, 0.78);
  }

  .awards-col-modal-panel {
    max-width: 100%;
    max-height: min(92vh, calc(100dvh - env(safe-area-inset-top, 0px)));
    border-radius: 20px 20px 0 0;
    border-bottom: none;
    transform: translateY(100%);
    padding-bottom: env(safe-area-inset-bottom, 0);
  }

  .awards-col-modal-backdrop.show .awards-col-modal-panel {
    transform: translateY(0);
  }

  .awards-col-modal-handle {
    display: block;
    width: 44px;
    height: 5px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 3px;
    margin: 8px auto 2px;
    cursor: pointer;
    flex-shrink: 0;
  }

  .awards-col-modal-header-bar {
    padding: 6px 16px 0;
  }

  .awards-col-modal-close {
    width: 32px;
    height: 32px;
    font-size: 0.92rem;
  }

  .awards-col-modal-header {
    padding: 6px 16px 10px;
  }

  .awards-col-modal-title {
    font-size: 1.08rem;
    line-height: 1.3;
    padding-right: 36px;
  }

  .awards-col-modal-desc {
    margin-top: 5px;
    font-size: 0.8rem;
    line-height: 1.42;
  }

  .awards-col-modal-meta {
    margin-top: 8px;
    gap: 8px;
    align-items: center;
  }

  .awards-col-modal-meta-info {
    gap: 6px 8px;
  }

  .awards-col-modal-tag {
    padding: 2px 7px;
    font-size: 0.62rem;
  }

  .awards-col-modal-count {
    font-size: 0.72rem;
  }

  /* 모바일 — 컬렉션 저장: 아이콘 pill, 제목 영역과 시각적 연결 */
  .awards-col-save-btn {
    position: absolute;
    top: 6px;
    right: 16px;
    padding: 6px 8px;
    border-radius: 8px;
    gap: 0;
  }

  .awards-col-modal-header {
    position: relative;
  }

  .awards-col-save-label {
    display: none;
  }

  .awards-col-save-btn .awards-col-bmk-icon--header svg {
    width: 18px;
    height: 20px;
  }

  /* 터치 기기 — 탭 후 :hover 잔류로 active 해제가 안 보이는 현상 방지 */
  .awards-col-save-btn:not(.active):hover,
  .awards-col-save-btn:not(.active):active {
    color: rgba(210, 215, 228, 0.95);
    border-color: rgba(242, 193, 78, 0.28);
    background: rgba(242, 193, 78, 0.06);
    box-shadow: none;
  }

  .awards-col-save-btn:not(.active):hover .awards-col-bmk-shape,
  .awards-col-save-btn:not(.active):active .awards-col-bmk-shape {
    fill: transparent;
    stroke: currentColor;
  }

  .awards-col-modal-body {
    padding: 10px 16px calc(14px + env(safe-area-inset-bottom, 0));
  }

  .awards-col-modal-section-label {
    margin-bottom: 8px;
    font-size: 0.68rem;
  }

  .awards-col-works-grid {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-bottom: 8px;
  }

  .awards-col-work-card {
    padding: 9px 10px;
    gap: 10px;
  }

  .awards-col-work-meta {
    font-size: 0.76rem;
    margin-top: 4px;
    line-height: 1.35;
  }

  .awards-col-work-stats {
    font-size: 0.75rem;
    margin-top: 5px;
    line-height: 1.35;
  }

  .awards-col-work-sep {
    padding-inline: 4px;
  }

  .awards-col-work-chevron {
    font-size: 0.95rem;
  }
}

/* 아주 좁은 화면 — 거의 전체화면 */
@media (max-width: 480px) {
  .awards-col-modal-panel {
    max-height: calc(100dvh - 8px);
    border-radius: 16px 16px 0 0;
  }
}

/*
 * 컬렉션 상세 모달 — 🌐 원제 어시스트 툴팁 보정
 * PC: 상단 카드 툴팁이 헤더에 가려지지 않도록 아래 방향(.below) 배치
 */
@media (min-width: 769px) {
  #awardsCollectionModal .awards-col-work-card.sidebar-ranking-item {
    overflow: visible !important;
  }

  #awardsCollectionModal .awards-col-work-card.sidebar-ranking-item:hover {
    z-index: 12 !important;
  }

  .awards-col-modal-header {
    position: static;
  }

  .awards-col-modal-title {
    padding-right: 0;
  }

  .awards-col-save-btn {
    position: static;
    align-self: center;
  }

  #awardsCollectionModal .title-assist-tooltip.below {
    bottom: auto;
    top: calc(100% + 8px);
    transform: translateX(-50%) translateY(-4px);
    z-index: 1050 !important;
  }

  #awardsCollectionModal .title-assist-tooltip.below::after {
    top: auto;
    bottom: 100%;
    border-color: transparent transparent #1b1d20 transparent;
  }

  #awardsCollectionModal .title-assist-tooltip.below.premium::after {
    border-color: transparent transparent #1b1d20 transparent !important;
  }
}
