/* theme-vol13.css — vol.13（2026年8月・海）の月テーマスキン
   出典: docs/mock の theme-sea ブロック（クラス名を .theme-vol14 に改名）。
   ポータルには適用しない（過去Volは当時のテーマのまま凍結する設計のため）。
   次回Vol以降は Skill が新しい theme-volNN.css を生成する想定。 */

/* ============================================================
   ★月テーマ「theme-sea」（vol.13=8月・海。Skillがその月の告知素材から
   色・モチーフ・角丸トーンを抽出して、このブロックだけを毎月生成し直す。
   過去Volのページには適用されず、当時のテーマのまま凍結される）
   ============================================================ */
.theme-vol14 {
  --pop: #254484;        /* ロゴ縁の青 */
  --tealband: #32528f;   /* 帯・見出しバンド */
  --aqua2: #2b4f97;      /* カード枠 */
  --line: 2px solid var(--aqua2); /* 共通の枠線（丸サムネの縁・ボタン枠など）。base.css の --line は :root で解決され
                                       テーマの --pop を見ないため、ここで枠色（--aqua2）に合わせて再定義する */
  --mint2: #c6af9e;
  --lemon: #fbf39d;
  --coral: #e8704f;
  --ink2: #1c3b7c;
  /* 季節モチーフ装飾は不採用（2026-09-01運営判断: 品質基準未達のため。季節感はテーマ配色と素材画像で表現） */
  --font-pop: "M PLUS Rounded 1c", "Noto Sans JP", sans-serif;
  /* ページ背景（放射の光線 3 色＋下地）。告知画像に合わせて Vol ごとに差し替える（2026-09-14 にトークン化） */
  background:
    repeating-conic-gradient(from 8deg at 50% 30%,
      rgba(236,215,132,.34) 0deg 6deg, rgba(255,255,255,0) 6deg 12deg,
      rgba(251,243,157,.42) 12deg 18deg, rgba(198,175,158,.28) 18deg 24deg),
    #fdfaf0;
  color: var(--ink2);
}
/* --- 文字まわり: 角ゴ→丸ゴのポップに --- */
.theme-vol14 .section-head--inline h2,
.theme-vol14 .career-head h2 {
  font-family: var(--font-pop); font-weight: 900; text-transform: none;
  letter-spacing: .01em; line-height: 1.05; color: var(--pop);
  font-size: clamp(30px,6vw,68px);
  text-shadow: -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff,
    -2px 0 0 #fff, 2px 0 0 #fff, 0 -2px 0 #fff, 0 2px 0 #fff, 0 5px 0 color-mix(in srgb, var(--pop) 22%, transparent);
}
.theme-vol14 .section-head--inline p,
.theme-vol14 .career-head p {
  background: var(--tealband); color: #fff; border: none;
  font-family: var(--font-pop); letter-spacing: .06em;
}
/* --- カード様式: 白×水色の太枠・大きめ角丸（告知画像2の白カード） --- */
.theme-vol14 .window-card, .theme-vol14 .metric-card, .theme-vol14 .cast-card,
.theme-vol14 .live-row, .theme-vol14 .career-panel, .theme-vol14 .faq-panel,
.theme-vol14 .footer-panel, .theme-vol14 .hashtag-panel, .theme-vol14 .bn-card,
.theme-vol14 .profile-hero__visual, .theme-vol14 .profile-hero__body, .theme-vol14 .profile-info__card {
  border: 3px solid var(--aqua2); border-radius: 22px;
}
.theme-vol14 .panel-title, .theme-vol14 .profile-info__card h2 {
  border-bottom: none; background: var(--tealband); color: #fff;
  border-radius: 10px; padding: 8px 12px; font-family: var(--font-pop); letter-spacing: .06em;
}
.theme-vol14 .badge { border: 2px solid var(--aqua2); font-family: var(--font-pop); }
.theme-vol14 .badge--live { background: var(--lemon); }
.theme-vol14 .btn-pill { background: var(--pop); color: #fff; border: none; font-family: var(--font-pop); box-shadow: 0 4px 0 color-mix(in srgb, var(--pop) 30%, transparent); }
.theme-vol14 .btn-pill--white { background: #fff; color: var(--pop); border: 2px solid var(--pop); box-shadow: none; }
/* --- ヒーロー下: リード文 + 青い日程バンド --- */
.theme-vol14 .hero-date { position: relative; background: transparent; }
.theme-vol14 .hero-lead {
  margin: 0 0 6px; font-family: var(--font-pop); font-weight: 900;
  font-size: clamp(13px,2vw,19px); color: var(--tealband);
  text-shadow: -1.5px -1.5px 0 #fff, 1.5px -1.5px 0 #fff, -1.5px 1.5px 0 #fff, 1.5px 1.5px 0 #fff;
}
.theme-vol14 .hero-date h1 {
  font-family: var(--font-pop); font-weight: 900; color: var(--pop);
  text-shadow: -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff, 0 5px 0 color-mix(in srgb, var(--pop) 20%, transparent);
}
.theme-vol14 .date-pill {
  display: inline-block; margin-top: 14px; padding: 12px 26px;
  background: var(--pop); color: #fff; border-radius: 18px;
  font-family: var(--font-pop); font-weight: 900; font-size: clamp(15px,2.1vw,24px); letter-spacing: .02em; /* 2026-09-14: 日本語の日程表記（年・曜日つき）が PC で 1 行に収まる大きさに */
  box-shadow: 0 5px 0 color-mix(in srgb, var(--ink2) 25%, transparent);
}
.theme-vol14 .date-pill small { font-size: .42em; margin: 0 4px; vertical-align: 2px; letter-spacing: .1em; }


.theme-vol14 .now-section { background: transparent; position: relative; }

/* --- 帯・ティッカー・ストリップ --- */
.theme-vol14 .now-ticker { background: var(--tealband); border-color: var(--pop); }
.theme-vol14 .ticker__track { color: #fff; font-family: var(--font-pop); font-weight: 900; letter-spacing: .04em; }
.theme-vol14 .series-strip { background: var(--pop); }
.theme-vol14 .series-strip b { font-family: var(--font-pop); color: var(--lemon); }
.theme-vol14 .bn-band { border-color: var(--aqua2); }
/* --- OP: 夏空バースト --- */
.theme-vol14 .opening {
  background:
    repeating-conic-gradient(from 0deg at 50% 46%,
      rgba(255,255,255,.14) 0deg 6deg, rgba(255,255,255,0) 6deg 12deg),
    radial-gradient(90% 70% at 50% 30%, color-mix(in srgb, var(--pop) 55%, #fff), transparent 70%),
    var(--pop);
}
.theme-vol14 .opening__sub { color: #fff; }
.theme-vol14 .opening__vol { background: var(--lemon); color: var(--pop); font-family: var(--font-pop); }
/* --- ナビ --- */
.theme-vol14 .home-nav--dark { background: color-mix(in srgb, var(--pop) 97%, transparent); border-bottom: 3px solid var(--tealband); }
.theme-vol14 .home-nav { border-bottom: 3px solid var(--aqua2); }
.theme-vol14 .home-nav__menu a, .theme-vol14 .home-nav__menu button { font-family: var(--font-pop); }
.theme-vol14 .home-nav--dark .home-nav__menu .is-here, .theme-vol14 .home-nav__menu .is-here { background: var(--lemon); color: var(--pop); border-color: var(--lemon); }
.theme-vol14 .profile-nav { background: var(--pop); border-bottom: 3px solid var(--tealband); }
/* --- LIVE部品 --- */
.theme-vol14 .metric-card--black { background: var(--pop); }
.theme-vol14 .metric-card--goal { background: var(--lemon); }
.theme-vol14 .metric-card strong { font-family: var(--font-pop); font-weight: 900; }
.theme-vol14 .mode-switch { border: 2px solid var(--pop); }
.theme-vol14 .mode-switch button { font-family: var(--font-pop); }
.theme-vol14 .mode-switch button + button { border-left: 2px solid var(--pop); }
.theme-vol14 .mode-switch button[aria-pressed="true"] { background: var(--pop); }
.theme-vol14 .official-note { background: var(--lemon); border: 2px solid var(--pop); border-radius: 16px; font-family: var(--font-pop); }
.theme-vol14 .progress { border: 2px solid var(--pop); }
.theme-vol14 .progress span { background: linear-gradient(90deg, var(--aqua2), color-mix(in srgb, var(--tealband) 55%, var(--lemon) 45%)); }
.theme-vol14 .live-row.is-goal .progress span { background: repeating-linear-gradient(45deg, var(--lemon) 0 10px, var(--gold) 10px 20px); }
.theme-vol14 .progress i { background: var(--pop); }
.theme-vol14 .live-no { background: var(--lemon); border: 2px solid var(--pop); font-family: var(--font-pop); }
.theme-vol14 .pass-chip { background: var(--mint2); border: 1.5px solid var(--tealband); }
.theme-vol14 .goal-chip { border: 1.5px solid var(--pop); font-family: var(--font-pop); }
.theme-vol14 .goal-chip.is-done { background: var(--lemon); }
.theme-vol14 .live-bp, .theme-vol14 .digest-num, .theme-vol14 .mini-ms b, .theme-vol14 .growth-val, .theme-vol14 .career-list .p, .theme-vol14 .career-list .v, .theme-vol14 .bn-card .vol { font-family: var(--font-pop); font-weight: 900; }
.theme-vol14 .mini-ms { border: 2px solid var(--aqua2); border-radius: 14px; }
.theme-vol14 .mini-ms--goal { background: var(--lemon); }
.theme-vol14 .growth-bar { background: color-mix(in srgb, var(--aqua2) 45%, #ffffff); border: 2px solid var(--tealband); }
.theme-vol14 .growth-col.is-current .growth-bar { background: var(--lemon); border-color: var(--pop); }
.theme-vol14 .career-list li { border: 2px solid var(--aqua2); }
.theme-vol14 .career-list li.is-current { background: var(--mint2); }
.theme-vol14 .career-tag { border: 1.5px solid var(--tealband); font-family: var(--font-pop); }
.theme-vol14 .cast-card:hover { background: var(--lemon); }
.theme-vol14 .cast-card b { background: var(--lemon); border: 2px solid var(--pop); }
.theme-vol14 .faq-list details { border: 2px solid var(--aqua2); border-radius: 16px; }
.theme-vol14 .faq-list summary { font-family: var(--font-pop); }
.theme-vol14 .faq-list summary::after { background: var(--lemon); border: 2px solid var(--pop); }
.theme-vol14 .event-dl div { border-bottom: 2px dashed var(--aqua2); }
.theme-vol14 .site-footer { background: transparent; }
