/* Home illustrations and slow, always-on petals. Gameplay screens keep their layout. */
.home-shell{--orchard-green:#46734f;--orchard-pink:#c16d88}
.home-shell .home-hero{position:relative;isolation:isolate;display:block;min-height:520px;border:4px solid #fffdf6;border-radius:32px;background:#f3f6dc;overflow:hidden;box-shadow:0 7px 0 #72ad9920}
.home-shell .hero-landscape{position:absolute;inset:0;z-index:0;pointer-events:none}
.home-shell .hero-landscape img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.home-shell .hero-copy{position:relative;z-index:2;width:43%;min-height:520px;padding:36px 18px 44px 30px;justify-content:center;background:linear-gradient(90deg,#fffdf0eb 0%,#fffdf0b3 62%,#fffdf000 100%)}
.home-shell .hero-copy h1{font-size:clamp(32px,3.7vw,43px);color:#366e60;line-height:1.35;letter-spacing:-1.3px;text-shadow:0 2px 0 #fff8}
.home-shell .hero-copy p{font-size:17px;color:#466b57;line-height:1.8;margin-top:15px;font-weight:600}
.home-shell .hero-copy .smalltag{background:#fff8dcdb;border:1px dashed #d5b46d;color:#86713d;font-size:14px;backdrop-filter:blur(3px)}
.home-shell .hero-copy .pill{margin-top:23px!important;font-size:15px;background:#fffef3ed;border-color:#bad2a6;box-shadow:0 3px 0 #94b8781c;white-space:nowrap}
.farm-petals{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;--fall-distance:650px}
.farm-petal{position:absolute;top:-34px;left:var(--left);width:var(--size);height:calc(var(--size)*.7);background:linear-gradient(140deg,#fff2f6 4%,#f7b9cf 58%,#e39bb7);border-radius:75% 15% 75% 25%;box-shadow:inset 1px 1px 2px #fffc;opacity:0;animation:farm-petal-fall var(--duration) linear var(--delay) infinite;will-change:transform}
.farm-petal:nth-child(3n){background:linear-gradient(140deg,#fffbe9,#f5d38e);border-radius:75% 30% 75% 15%}
.farm-petal:nth-child(5n){background:linear-gradient(140deg,#f6fada,#bfd594);border-radius:80% 5% 80% 5%}
@keyframes farm-petal-fall{0%{opacity:0;transform:translate3d(0,-25px,0) rotate(0deg)}8%{opacity:.8}35%{transform:translate3d(calc(var(--drift)*.25 + 24px),calc(var(--fall-distance)*.35),0) rotate(130deg)}65%{transform:translate3d(calc(var(--drift)*.7 - 20px),calc(var(--fall-distance)*.65),0) rotate(260deg)}90%{opacity:.65}100%{opacity:0;transform:translate3d(var(--drift),var(--fall-distance),0) rotate(410deg)}}
.home-shell .mode-grid{gap:22px;margin-top:26px;align-items:stretch}
.home-shell .mode-card{display:flex;flex-direction:column;padding:0;border-radius:29px;border:3px solid #fffef7;outline:1px solid #bdd39b;background:#fffbed;overflow:hidden;box-shadow:0 7px 0 #8aa3641b;transition:transform .2s ease,box-shadow .2s ease}
.home-shell .mode-card.dual{outline-color:#e6b4c1;background:#fff4f1;box-shadow:0 7px 0 #c994a017}
.home-shell .mode-card::after{content:none}
.mode-illustration{display:block;position:relative;width:100%;aspect-ratio:1.95;overflow:hidden;background:#e8f0ce}
.mode-illustration::after{content:'';position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,#fffbed)}
.dual .mode-illustration::after{background:linear-gradient(transparent,#fff4f1)}
.mode-illustration img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 58%;transition:transform .45s ease}
.mode-scene-badge{position:absolute;left:15px;top:14px;display:inline-flex;align-items:center;gap:6px;background:#fffef1ee;border:1px solid #fff9;border-radius:20px;padding:7px 12px;font-family:Garden,Pretendard,sans-serif;font-size:15px;font-weight:400;color:#59794e;box-shadow:0 2px 7px #63824112}
.dual .mode-scene-badge{color:#ad627c;background:#fff8f1ee}
.mode-card-copy{display:flex;flex-direction:column;flex:1;padding:0 24px 22px;position:relative;z-index:1}
.home-shell .mode-label{font-size:12px;letter-spacing:.7px;font-weight:750;color:#688461;margin-top:1px}
.home-shell .mode-card.dual .mode-label{color:#b16e83}
.home-shell .mode-card h2.fruit-title{font-size:36px;margin:7px 0 7px;line-height:1.35}
.home-shell .mode-card .portrait-note{font-size:15px;align-self:flex-start;border-color:#d8e7bd;background:#f0f6e5;color:#65824e;margin:3px 0 10px;padding:5px 10px}
.home-shell .mode-card.dual .portrait-note{background:#fff3ef;border-color:#ebc7cc;color:#a57283}
.home-shell .mode-card p{font-size:16px;line-height:1.75;color:#557362;margin-bottom:18px}
.home-shell .mode-card .go{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:auto;padding:11px 16px;background:#dceebc;border:1px solid #bcd692;border-radius:15px;color:#426b39;font-size:20px;box-shadow:0 3px 0 #b5cc941f}
.home-shell .mode-card.dual .go{background:#f8dce5;border-color:#e9bbca;color:#a45372;box-shadow:0 3px 0 #ddaabe1f}
.mode-go-arrow{font-family:Pretendard,sans-serif;font-size:24px;font-weight:500;line-height:1}
.home-shell .stats{background:#fffef1c9;margin-top:26px;align-items:center;flex-wrap:nowrap;gap:22px;padding:14px 22px}
.stats-player{display:flex;align-items:center;gap:10px;flex-shrink:0;padding-right:22px;border-right:1px solid #c9dcb5}
.stats-player .avatar{width:50px;height:50px;box-shadow:0 0 0 2px #bbdce9;background-color:#fffdf4}
.stats-player.ian .avatar{box-shadow:0 0 0 2px #efcba4}
.stats-player strong{font-family:Garden,Pretendard,sans-serif;font-size:24px;font-weight:400;white-space:nowrap;color:#497c94}
.stats-player.ian strong{color:#ac753e}
.stats-values{display:flex;flex:1;align-items:center;justify-content:space-evenly;gap:16px;min-width:0}
.stats-values .stat{white-space:nowrap}
@media(max-width:850px){.stats-values .stat{display:flex;flex-direction:column;align-items:center;gap:5px}.stats-values .stat strong{margin-left:0}}
@media(max-width:700px){.home-shell .stats{flex-direction:column;align-items:stretch;gap:13px;padding:16px}.stats-player{border-right:0;border-bottom:1px solid #d3e2c5;padding:0 0 12px;justify-content:center}.stats-values{gap:8px}.stats-values .stat{font-size:12px}.stats-values .stat strong{font-size:20px}}
@media(hover:hover) and (pointer:fine){.home-shell .mode-card:hover{transform:translateY(-4px);box-shadow:0 9px 0 #8aa36420,0 15px 25px #76986715}.mode-card:hover .mode-illustration img{transform:scale(1.035)}}
@media(max-width:850px) and (min-width:651px){.home-shell .hero-copy{width:45%;padding-left:25px}.home-shell .hero-copy h1{font-size:33px}.home-shell .hero-copy p{font-size:16px}.home-shell .mode-grid{gap:18px}.mode-card-copy{padding:0 20px 20px}.home-shell .mode-card h2.fruit-title{font-size:34px}}
@media(max-width:650px){
  .home-shell .home-hero{min-height:0;display:flex;flex-direction:column;background:#fffdf0;border-radius:28px}
  .home-shell .hero-copy{width:100%;min-height:0;padding:27px 24px 14px;background:linear-gradient(#fffdf0,#fffdf0ed);order:0}
  .home-shell .hero-copy h1{font-size:35px}.home-shell .hero-copy p{font-size:17px;margin-top:10px}.home-shell .hero-copy .pill{margin-top:17px!important}
  .home-shell .hero-landscape{position:relative;inset:auto;order:1;aspect-ratio:1.5;width:100%}.home-shell .hero-landscape img{object-fit:cover;object-position:70% center}
  .home-shell .hero-landscape::before{content:'';position:absolute;inset:0 0 auto;height:15%;z-index:1;background:linear-gradient(#fffdf0,transparent)}
  .farm-petals{--fall-distance:850px}.home-shell .mode-grid{gap:24px}.mode-illustration{aspect-ratio:1.9}.mode-card-copy{padding:0 25px 24px}
  .home-shell .mode-card h2.fruit-title{font-size:38px}.home-shell .mode-card p{font-size:17px}.home-shell .mode-card .portrait-note{font-size:16px}.home-shell .mode-label{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  .farm-petal{animation:none;will-change:auto;top:var(--rest-top);opacity:.48;transform:rotate(var(--rest-turn))}
  .home-shell .mode-card,.mode-illustration img{transition:none}.home-shell .mode-card:hover,.mode-card:hover .mode-illustration img{transform:none}
}

/* A tablet silhouette and turning arrow replace the ambiguous box glyph. */
.home-shell .mode-card .orientation-note{display:inline-flex;align-items:center;gap:7px;max-width:100%;line-height:1.4}
.orientation-note .tablet-rotate-icon{display:block;width:34px;height:34px;flex:0 0 34px}
.orientation-note>span{min-width:0;word-break:keep-all}
