/* Fruit Bowl Secrets — show page. A cozy sunlit kitchen world. */
.fruit-page main {
  background:
    radial-gradient(1100px 480px at 85% -5%, rgba(255, 183, 77, 0.35), transparent 60%),
    radial-gradient(900px 560px at 8% 12%, rgba(255, 107, 129, 0.20), transparent 55%),
    linear-gradient(180deg, #fff7ea 0%, #ffedd6 34%, #ffe3ec 68%, #fff6ea 100%);
  color: #43302b;
  position: relative;
  overflow: hidden;
}
#fruit-sparkles { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 3; }
.fruit-inner { position: relative; z-index: 5; }
.fb-hero { text-align: center; padding: 64px 20px 10px; }
.fb-hero small { letter-spacing: 0.3em; font-weight: 800; color: #d1495b; }
.fb-title {
  font-size: clamp(2.4rem, 8vw, 4.8rem);
  line-height: 1.02; margin: 14px 0 6px; font-weight: 900;
  background: linear-gradient(100deg, #f6b73c 5%, #e2574c 38%, #d1495b 62%, #7fb069 92%);
  background-size: 220% 100%;
  -webkit-background-clip: text; background-clip: text; color: transparent;
  animation: fruit-slide 9s ease-in-out infinite alternate;
  filter: drop-shadow(0 6px 22px rgba(209, 73, 91, 0.30));
}
@keyframes fruit-slide { from { background-position: 0% 0; } to { background-position: 100% 0; } }
.fb-sub { font-size: clamp(1.05rem, 3vw, 1.45rem); letter-spacing: 0.14em; font-weight: 700; color: #8a5a44; margin: 0 0 10px; }
.fb-tag { font-style: italic; color: #7a5c50; margin: 0 auto 26px; max-width: 560px; }
.fb-key { max-width: 430px; margin: 6px auto 0; padding: 0 18px; }
.fb-key img { width: 100%; border-radius: 20px; display: block; box-shadow: 0 22px 48px rgba(122, 66, 40, 0.35), 0 0 0 1px rgba(209, 73, 91, 0.25); }
.begin-btn {
  display: inline-block; border: none; cursor: pointer; margin-top: 28px;
  font: inherit; font-weight: 900; letter-spacing: 0.06em; font-size: 1.05rem;
  color: #5c2400; background: linear-gradient(135deg, #ffd98e, #f6b73c 55%, #ffc7d1);
  padding: 16px 34px; border-radius: 999px;
  box-shadow: 0 0 0 0 rgba(242, 153, 84, 0.55), 0 14px 34px rgba(122, 66, 40, 0.35);
  animation: begin-pulse 2.2s ease-out infinite;
}
@keyframes begin-pulse {
  0% { box-shadow: 0 0 0 0 rgba(242, 153, 84, 0.55), 0 14px 34px rgba(122,66,40,0.35); }
  70% { box-shadow: 0 0 0 20px rgba(242, 153, 84, 0), 0 14px 34px rgba(122,66,40,0.35); }
  100% { box-shadow: 0 0 0 0 rgba(242, 153, 84, 0), 0 14px 34px rgba(122,66,40,0.35); }
}
.fb-watch { max-width: 430px; margin: 44px auto 6px; padding: 0 18px; }
.fb-watch video {
  width: 100%; border-radius: 18px; display: block;
  box-shadow: 0 24px 60px rgba(122, 66, 40, 0.4), 0 0 0 1px rgba(209, 73, 91, 0.3), 0 0 44px rgba(246, 183, 60, 0.25);
  background: #000;
}
.fb-watch .runtime { text-align: center; color: #8a5a44; font-size: 0.9rem; margin: 10px 0 0; }
.fb-watch .alt-watch { text-align: center; margin: 12px 0 0; }
.fb-watch .alt-watch a { color: #d1495b; font-weight: 700; }
.fb-section { text-align: center; padding: 46px 20px 2px; }
.fb-section small { letter-spacing: 0.26em; font-weight: 800; color: #d1495b; }
.fb-section h2 { margin: 8px 0 8px; color: #43302b; }
.fb-section p { max-width: 640px; margin: 0 auto; color: #5f463c; }
.episode-grid, .character-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 22px; max-width: 1120px; margin: 28px auto 6px; padding: 0 20px;
}
.episode-card, .character-card {
  background: rgba(255, 252, 246, 0.88); border: 1px solid rgba(209, 73, 91, 0.3);
  border-radius: 18px; overflow: hidden; text-align: left;
  box-shadow: 0 16px 36px rgba(122, 66, 40, 0.18);
}
.episode-card img, .character-card img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.card-pad { padding: 16px 18px 20px; }
.card-pad h3 { margin: 0 0 6px; color: #43302b; }
.card-pad p { margin: 0; color: #5f463c; }
.ep-badge { display: inline-block; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.12em; padding: 5px 10px; border-radius: 999px; margin-bottom: 10px; }
.ep-badge.out { background: #ffe1e8; color: #a4133c; }
.ep-badge.soon { background: #ffefc4; color: #8a5a00; }
.play-hint { display: inline-block; margin-top: 12px; font-weight: 800; letter-spacing: 0.08em; color: #d1495b; text-decoration: none; }
.fruit-zone { text-align: center; padding: 54px 20px 8px; }
.big-fruit { font-size: 4.2rem; background: none; border: none; cursor: pointer; line-height: 1; transition: transform 0.15s ease; }
.big-fruit:hover { transform: scale(1.12) rotate(-6deg); }
.fruit-line { color: #7a5c50; font-style: italic; margin: 10px 0 0; }
.fruit-secret { color: #a4133c; font-weight: 700; min-height: 1.4em; margin: 8px auto 0; max-width: 520px; }
.sparkle { position: fixed; z-index: 50; pointer-events: none; font-size: 1.1rem; animation: sparkle-fly 1s ease-out forwards; }
@keyframes sparkle-fly { to { transform: translate(var(--dx), var(--dy)) scale(0.4); opacity: 0; } }
