/* Petalattice v0.8.9 compiled release stylesheet. Source cascade order preserved. */

/* ===== app-core.css ===== */
/* ===== source: core-base ===== */
/* ==================================================================
   00-app.css
   ================================================================== */
/* Petalattice RTP v02 — Consolidated stylesheet

   The previous 28-version cascade has been collapsed into one source file.
   Rule order is intentionally preserved byte-for-byte inside the sections below
   so the visual cascade remains identical to RTP v01 while future edits have a
   single source of truth.
*/

/* ==========================================================================
   Consolidated from: 01-tokens.css
   ========================================================================== */
/* 01-tokens.css
   Tema değişkenleri, reset ve sayfa zemini.

   Tasarım yönü: derin gece-bahçesi. Zemin koyu ve doygun, paneller camsı;
   böylece ekranda asıl renkli olan tek şey çiçekler oluyor ve tahta "parlıyor".
   Açık temada dokuz doygun renk zeminle yarışıyordu — koyu zemin onları
   yarıştırmak yerine öne çıkarıyor. */

:root{
  --cell:rgba(255,255,255,.045);
  --cell-given:rgba(255,255,255,.085);
  --cell-peer:rgba(255,255,255,.10);
  --cell-same:rgba(255,196,90,.20);
  --cell-done:rgba(120,225,180,.14);
  --grid-line:rgba(255,255,255,.09);
  --grid-bold:rgba(255,255,255,.30);
  --sel:#ffc85a;
  --good:#5fd6a4;
  --bad:#ff7a7a;
  --vine:#c9a6ff;
  /* Yumuşak gölge: geniş yayılım, düşük opaklık — sert bir kenar yerine
     yüzeyin altından sızan bir ışık hissi. */
  --glow:0 0 0 1px rgba(255,255,255,.05) inset, 0 1px 0 rgba(255,255,255,.07) inset;
  --radius-lg:28px;
  --radius-md:22px;
  --radius-sm:16px;
  --tap:44px;
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
html{
  background:linear-gradient(168deg,#222842 0%,#181d33 52%,#12162a 100%);
}
html,body{
  margin:0;min-height:100%;
  /* Gövde metni: nötr, ekranda okunaklı sistem yazı tipi. */
  
  color:var(--text);
  font-feature-settings:"ss01","cv01";
}
/* Başlıklar SERIF. Gövde metni nötr sans kalıyor; asıl karakteri bu kontrast
   veriyor — "gece bahçesi" temasına zarif bir edebi ton katıyor. */
h1,h2,h3,h4,.qc-title,.cta-main b,.gstat b,.streak-box b,.goal-box b{
  
  letter-spacing:.005em;font-weight:700;
}
.hud-timer span, .goals-head span{
  font-variant-numeric:tabular-nums;
}
body{
  min-height:100dvh;
  overflow-x:hidden;
  touch-action:manipulation;
  /* Işık lekeleri daha geniş ve daha düşük yoğunlukta; kenarları belli olan
     bir "spot" değil, dağılmış bir aydınlanma. */
  background-attachment:fixed;
}
button{font:inherit;color:inherit;touch-action:manipulation}
select{font:inherit}
.screen{padding:max(14px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) max(14px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px))) max(14px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))) max(14px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))}
.hidden{display:none!important}

/* ==========================================================================
   Consolidated from: 02-layout.css
   ========================================================================== */
/* 02-layout.css
   Menü, sayfa başlıkları, kartlar ve butonlar — oyun ekranı dışındaki her şey.
   Bu ekranlar kaydırılabilir (oyun ekranı kaydırılmaz, bkz. 04-game-ui.css). */

.screen{margin:0 auto}
/* Ana ekran içeriği dikeyde ortalanır; menü kısa olduğu için altta ölü boşluk
   kalmasın. Uzun ekranlarda da dengeli durur. */

/* ---- hero ---- */
.hero{text-align:center;padding:14px 0 20px}
.logo-mark{
  width:52px;height:52px;margin:0 auto 12px;position:relative;
  display:grid;grid-template-columns:repeat(3,1fr);gap:3px;
  filter:drop-shadow(0 6px 16px rgba(0,0,0,.5))
}
.logo-mark i{border-radius:50%;display:block}
.hero h1{
  margin:0;font-size:clamp(24px,6.4vw,31px);font-weight:800;letter-spacing:.20em;
  background:linear-gradient(180deg,#fff,#b9c4e6);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p{margin:8px 0 0;font-size:11.5px;color:var(--muted);letter-spacing:.01em}

/* ---- menü kartları ----
   Sadeleştirildi: uzun açıklama paragrafları kalktı, kart artık başlık + tek
   satır canlı alt bilgi. Ana ekranın işi yönlendirmek, anlatmak değil. */

/* ilerleme + toplanan çiçek önizlemesi */
.progress{height:4px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden}
.progress>i{display:block;height:100%;border-radius:99px;
  background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .3s ease}

/* ---- sayfa başlığı ---- */



.btn.back{
  width:40px;height:40px;padding:0;font-size:18px;flex-shrink:0;
  display:grid;place-items:center;border-radius:12px
}

/* ---- butonlar ---- */
.btn{
  border:1px solid var(--glass-line);
  background:var(--glass);
  color:var(--text);
  border-radius:var(--radius-sm);
  padding:11px 14px;min-height:var(--tap);
  font-weight:700;font-size:13px;cursor:pointer;
  transition:transform .12s ease,background .15s ease,border-color .15s ease;
}
.btn:hover{background:var(--glass-2);border-color:var(--glass-line-2)}
.btn:active{transform:scale(.96)}
.btn.primary{
  border:0;color:var(--accent-ink);font-weight:800;
  background:linear-gradient(180deg,var(--accent),var(--accent-2));
  box-shadow:0 10px 26px rgba(255,171,61,.28)
}
.btn.ghost{background:transparent}
.btn:disabled{opacity:.35;cursor:default}
.btn:disabled:active{transform:none}

/* ---- devam kartı ---- */

/* ---- demo çubuğu ---- */
.demo-tag{font-size:10px;color:var(--muted);letter-spacing:.04em}

/* ---- bölüm kartı / chapter afişi ---- */















/* ---- yolculuk haritası ---- */
.journey-map{
  border:1px solid var(--glass-line);
  background:rgba(255,255,255,.025)
}
.map-grid{display:grid}


















/* ---- kart (genel) ---- */
.card{
  background:var(--glass);
  border:1px solid var(--glass-line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm)
}
.page-card{padding:16px}

/* ===================================================================
   ANA EKRAN — hızlı kart şeridi, hedefler, marka, tek büyük eylem
   Referans akış: üstte kaydırılan kartlar, ortada nefes alanı, altta
   tek net CTA ve sabit sekme çubuğu.
   =================================================================== */

/* ---- ana ekran üst barı ---- */
.home-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.home-brand{font-weight:700;text-transform:uppercase}
.home-bar .icon-btn{font-size:15px}

/* ---- üst kart şeridi ---- */
.quick-rail{
  display:flex;overflow-x:auto;overflow-y:hidden;margin:0 -2px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.quick-rail::-webkit-scrollbar{display:none}
.quick-card{
  position:relative;flex:0 0 auto;
  scroll-snap-align:start;cursor:pointer;
  display:flex;flex-direction:column;
  transition:transform .22s cubic-bezier(.22,1,.36,1), box-shadow .22s ease;
  overflow:hidden;
}
.quick-card::after{
  /* üstten inen yumuşak ışık */
  content:"";position:absolute;inset:0;pointer-events:none;
}
.quick-card:active{transform:scale(.965)}
.qc-daily{background:linear-gradient(155deg,#4a6bb0,#283a6b)}
.qc-free{background:linear-gradient(155deg,#9268cf,#4b3277)}
.qc-garden{background:linear-gradient(155deg,#2f9d78,#1a5c47)}
.qc-ico{line-height:1;margin-bottom:auto;opacity:.9}
.qc-kicker{letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-top:10px
}
.qc-title{font-weight:800;margin-top:2px;line-height:1.25}
.qc-cta{
  margin-top:9px;align-self:flex-start;
  font-size:11px;font-weight:800;color:var(--accent-ink);
  background:linear-gradient(180deg,var(--accent),var(--accent-2));
  padding:6px 13px;border-radius:99px
}
.qc-badge{
  position:absolute;top:10px;right:10px;
  font-size:10px;font-weight:800;padding:4px 9px;border-radius:99px;color:#fff;border:1px solid rgba(255,255,255,.16)
}

/* ---- hedefler ---- */
.goals{
  border:1px solid var(--glass-line);
  box-shadow:var(--shadow-sm), var(--glow);
}
.goals-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}
.goals-head h3{margin:0;font-size:12px;font-weight:700}
.goals-head span{font-size:11px;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}
.goals-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px}
.goal-box{border:1px solid rgba(255,255,255,.06);
  border-radius:14px;padding:9px 5px;text-align:center
}
.goal-box b{display:block;line-height:1.1;font-variant-numeric:tabular-nums}
.goal-box span{color:var(--muted);letter-spacing:.02em}
.goals-bar{height:4px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.goals-bar>i{display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .35s ease}

/* ---- marka ---- */
.brand{text-align:center}
.brand .logo-mark{width:38px;height:38px;margin:0 auto 9px}
.brand h1{
  margin:0;font-weight:800;
  -webkit-background-clip:text;background-clip:text
}
.brand p{margin:6px 0 0}

/* ---- ana eylem ---- */
.cta-zone{display:grid;justify-items:center;gap:7px;margin-top:auto}
.cta-main{
  /* Tam genişlik hâli ekranı kaplıyordu; ortada dar bir düğme hem daha sakin
     duruyor hem başparmak erişimine daha uygun. */
  width:auto;margin:0 auto;
  border:0;cursor:pointer;
  color:var(--accent-ink);
  transition:transform .22s cubic-bezier(.22,1,.36,1), box-shadow .22s ease
}
.cta-main:active{transform:scale(.975)}
.cta-main b{display:block;font-weight:800}
.cta-main span{display:block;opacity:.75;margin-top:1px}
.cta-discard{
  border:1px solid var(--glass-line);background:transparent;color:var(--muted);
  border-radius:12px;padding:9px;font-size:11px;cursor:pointer
}

/* ---- alt sekme çubuğu ---- */
.tabbar{
  position:fixed;bottom:0;z-index:40;
  display:none;grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(255,255,255,.06);
  padding:6px 8px calc(6px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
}
body.show-tabs .tabbar{display:grid}
.tab{
  border:0;background:none;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);border-radius:12px;
  transition:color .15s ease
}
.tab .tab-ico{line-height:1}
.tab.active{color:var(--accent)}
.tab:active{transform:scale(.94)}

/* Sekme çubuğu görünürken sayfaların altına yer bırak */
body.show-tabs #journey,body.show-tabs #garden,
body.show-tabs #free,body.show-tabs #daily{
  padding-bottom:calc(78px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))
}

/* Kısa ekranlarda ana ekran içeriğini sıkıştır — hedef, tek ekranda kalmak.
   Sırayla marka alanı, sonra kart yüksekliği, en son demo çubuğu küçülür. */
@media(max-height:820px){
  #home{gap:12px}
  .quick-card{min-height:152px;width:150px}
  .qc-ico{font-size:26px}
  .brand{padding:2px 0}
  .brand .logo-mark{width:38px;height:38px;margin-bottom:8px}
  .brand h1{font-size:clamp(20px,5.4vw,25px)}
  .brand p{font-size:10.5px;margin-top:5px}
  .goal-box{padding:8px 5px}
  .goal-box b{font-size:15px}
}
@media(max-height:720px){
  #home{gap:10px}
  .quick-card{min-height:132px;width:140px;padding:12px}
  .qc-ico{font-size:22px}
  .qc-cta{padding:6px 13px;font-size:11px}
  .brand p{display:none}
  .brand .logo-mark{width:32px;height:32px;margin-bottom:6px}
  .goals{padding:10px}
  .goals-row{margin-bottom:9px}
  .cta-main{padding:13px}
  .cta-main b{font-size:16px}
}
@media(max-height:620px){
  .brand{display:none}
  .quick-card{min-height:120px}
}

/* ---- yumuşak giriş ----
   Ana ekran öğeleri sırayla ve hafifçe yükselerek belirir. Sertliği kıran şey
   büyük ölçüde bu: her şeyin aynı anda "yapışması" yerine yerleşme hissi. */
@keyframes rise-in{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:none}
}
#home > *{animation:rise-in .5s cubic-bezier(.22,1,.36,1) both}
#home > *:nth-child(1){animation-delay:.02s}
#home > *:nth-child(2){animation-delay:.08s}
#home > *:nth-child(3){animation-delay:.14s}
#home > *:nth-child(4){animation-delay:.20s}
#home > *:nth-child(5){animation-delay:.26s}
.quick-rail .quick-card{animation:rise-in .55s cubic-bezier(.22,1,.36,1) both}
.quick-rail .quick-card:nth-child(1){animation-delay:.06s}
.quick-rail .quick-card:nth-child(2){animation-delay:.13s}
.quick-rail .quick-card:nth-child(3){animation-delay:.20s}

/* İlerleme çubukları da yumuşak dolar */
.goals-bar>i,.progress>i{transition:width .7s cubic-bezier(.22,1,.36,1)}

/* Marka yazısında çok hafif bir nefes */
@keyframes soft-breathe{
  0%,100%{opacity:.85}
  50%{opacity:1}
}
.brand p{animation:soft-breathe 5s ease-in-out infinite}

/* ---- Journey: chapter ızgarası + bölüm satırları ---- */











/* bölüm satırı */
.lvl-row{
  display:flex;align-items:center;gap:11px;cursor:pointer;
  border:1px solid var(--glass-line);
  transition:transform .12s ease,border-color .15s ease;
}
.lvl-row:active{transform:scale(.99)}
.lvl-row.done .lvl-num{border-color:var(--good);color:var(--good)}
.lvl-row.locked{opacity:.45;cursor:default}
.lvl-row.locked:active{transform:none}
.lvl-num{
  position:relative;flex-shrink:0;border-radius:50%;
  border:1.5px solid var(--glass-line-2);color:var(--text-2);
  display:grid;place-items:center;font-weight:800;
}
.lvl-row.current .lvl-num{border-color:var(--accent);color:var(--accent)}
.lvl-check{
  position:absolute;right:-4px;top:-4px;width:15px;height:15px;border-radius:50%;
  background:var(--good);color:#06301f;font-size:9px;font-weight:900;
  display:grid;place-items:center;font-style:normal;border:1.5px solid var(--bg)
}
.lvl-art{flex-shrink:0;
  background-size:contain;background-position:center;background-repeat:no-repeat;
}
.lvl-body{flex:1;min-width:0}
.lvl-body b{display:block;line-height:1.25}
.lvl-body span{display:block;color:var(--muted);line-height:1.4;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}



/* ==========================================================================
   Consolidated from: 03-flowers.css
   ========================================================================== */
/* 03-flowers.css
   Tahta hücreleri, çiçek token'ı, notlar, sarmaşık ve animasyonlar. */

/* ---- hücreler ---- */
.cell{
  position:relative;
  background:var(--cell);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;user-select:none;
  /* Kural etiketleri hücre sınırına yakın durduğu için taşma görünür olmalı.
     paint containment kaldırıldı; layout/style containment korunuyor. */
  overflow:visible;
  contain:layout style;
}
.cell.given{background:var(--cell-given)}
.cell:active{background:var(--cell-peer)}

/* Vurgu hiyerarşisi (zayıftan güçlüye): peer < same < selected */
.cell.peer{background:var(--cell-peer)}
.cell.same{background:var(--cell-same);box-shadow:inset 0 0 0 1px rgba(255,200,90,.45)}
.cell.selected{
  background:rgba(255,200,90,.28);
  outline:2px solid var(--sel);outline-offset:-2px;z-index:9;
}
.cell.given-select{box-shadow:inset 0 0 0 1px rgba(255,200,90,.5)}



/* 3×3 sınırları */
.cell.c3,.cell.c6{border-right:2px solid var(--grid-bold)}
.cell.r3,.cell.r6{border-bottom:2px solid var(--grid-bold)}

/* ---- çiçek token ---- */
/* Görseller 01-config.js içindeki FLOWER_ASSETS'ten geliyor; oradaki bir satırı
   değiştirmek o çiçeği her yerde (tahta, palet, rozet) günceller. */
.flower-token{position:relative;z-index:5;flex-shrink:0;max-width:100%;max-height:100%}
.flower-token.tok-lg{width:76%;height:76%}
.flower-token.tok-md{width:78%;height:78%}
.flower-token.tok-sm{width:82%;height:82%}
.flower-token.tok-xs{width:100%;height:100%}
.flower-token.has-image{
  background-repeat:no-repeat;background-position:center;background-size:contain;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.45));
}
.cell.selected .flower-token,.cell.same .flower-token{transform:scale(1.06)}
.flower-token.css-bloom{transition:transform .1s ease}

/* CSS ile çizilen yedek çiçek (görsel yoksa devreye girer) */
.flower-token.css-bloom .ring{
  position:absolute;inset:9%;border-radius:50%;
  background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.55),transparent 62%),var(--c2);
  opacity:.30;
}
.flower-token.css-bloom .petal{
  position:absolute;left:50%;top:50%;width:38%;height:53%;
  transform-origin:50% 100%;
  background:linear-gradient(180deg,var(--c1),var(--c2));
  border-radius:50% 50% 50% 50%/60% 60% 40% 40%;
  box-shadow:inset 0 -3px 6px rgba(0,0,0,.15),inset 0 2px 4px rgba(255,255,255,.36);
}
.flower-token.p3 .petal{width:46%;height:56%}
.flower-token.p4 .petal{width:42%;height:55%}
.flower-token.p5 .petal{width:38%;height:53%}
.flower-token.p6 .petal{width:34%;height:52%}
.flower-token.p7 .petal{width:30%;height:51%}
.flower-token.p8 .petal{width:27%;height:50%}
.flower-token.css-bloom .core{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:28%;height:28%;border-radius:50%;
  background:radial-gradient(circle at 35% 32%,#fffef4,#ffe9ab 62%,#e7b74a 100%);
}

/* Renk körlüğü yardımı: çiçeğin üstünde numarası */
.flower-token .cb-num{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  z-index:8;font-size:11px;font-weight:900;color:#1b1200;
  text-shadow:0 0 3px #ffe9ab,0 0 3px #ffe9ab,0 0 4px #ffe9ab;
  pointer-events:none;display:none;line-height:1
}
body.cb-on .flower-token .cb-num{display:block}
body.cb-on .cell .flower-token .cb-num{font-size:clamp(10px,1.9vw,16px)}
body.cb-on .flower-token.tok-xs .cb-num{font-size:9px}

/* ---- notlar ---- */
.notes-grid{
  position:absolute;inset:3px;z-index:4;
  display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:1px
}
.note-dot{display:flex;align-items:center;justify-content:center;position:relative}
.note-dot i{
  width:82%;height:82%;border-radius:50%;
  background:linear-gradient(180deg,var(--c1),var(--c2));
  box-shadow:0 0 0 1px rgba(0,0,0,.35);
}
.note-dot .note-num{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-size:8px;font-weight:900;color:#fff;z-index:2;
  text-shadow:0 0 2px #000,0 0 2px #000;display:none;line-height:1
}
body.cb-on .note-dot .note-num{display:block}

/* ---- Spectrum sarmaşığı ---- */
.cell.spectrum-cell{background:rgba(201,166,255,.13)}
.cell.spectrum-cell.peer{background:rgba(201,166,255,.20)}
.cell.spectrum-cell.selected{background:rgba(255,200,90,.28)}
.cell.spectrum-cell::before{
  content:"";position:absolute;z-index:2;border-radius:99px;
  background:linear-gradient(90deg,#ff5a6e,#ff9a3c,#ffd23c,#a8e05a,#3ecf87,#3ec9d6,#5aa9ff,#a98cff,#ff6ec7);
  box-shadow:0 0 8px rgba(201,166,255,.55)
}
.cell.vine-h::before{top:50%;height:5px;transform:translateY(-50%)}
.cell.vine-h.spectrum-start::before{left:50%;width:50%}
.cell.vine-h.spectrum-mid::before{left:0;width:100%}
.cell.vine-h.spectrum-end::before{left:0;width:50%}
.cell.vine-v::before{
  left:50%;width:5px;transform:translateX(-50%);
  background:linear-gradient(180deg,#ff5a6e,#ff9a3c,#ffd23c,#a8e05a,#3ecf87,#3ec9d6,#5aa9ff,#a98cff,#ff6ec7)
}
.cell.vine-v.spectrum-start::before{top:50%;height:50%}
.cell.vine-v.spectrum-mid::before{top:0;height:100%}
.cell.vine-v.spectrum-end::before{top:0;height:50%}
.cell.spectrum-cell .vine-dot{
  position:absolute;z-index:3;width:9px;height:9px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.85);background:var(--vine);
  box-shadow:0 0 6px rgba(201,166,255,.7)
}

/* Bölge tamamlandı işareti */



/* ---- animasyonlar ----
   Sadece transform/opacity — compositor'da çalışır, layout tetiklemez. */
@keyframes bloom-in{
  0%{transform:scale(.35) rotate(-16deg);opacity:0}
  60%{transform:scale(1.14) rotate(4deg);opacity:1}
  100%{transform:scale(1) rotate(0);opacity:1}
}
.flower-token.just-placed{animation:bloom-in .3s cubic-bezier(.34,1.56,.64,1) both}
@keyframes cell-wave{0%{transform:scale(1)}40%{transform:scale(1.18)}100%{transform:scale(1)}}



body.no-anim *,body.no-anim *::before,body.no-anim *::after{
  animation:none!important;transition:none!important
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ===== CHAPTER 3-5 MEKANİK İŞARETLERİ ===== */

/* İkiz Çiçek — aynı harfi taşıyan iki hücre aynı rengi taşır. Etiket hücrenin
   köşesinde kalır; çiçek ikonunun okunmasını engellemez. */
.twin-tag{
  position:absolute;z-index:22;left:3px;top:3px;
  width:16px;height:16px;border-radius:6px;
  display:grid;place-items:center;
  font:900 9px/1 var(--font-ui);
  color:#2a1b08;
  background:linear-gradient(180deg,#ffe7a0,#e9b94f);
  border:1px solid rgba(255,241,190,.75);
  box-shadow:0 2px 5px rgba(0,0,0,.26),0 0 0 1px rgba(86,52,9,.32);
  pointer-events:none;
}
.cell.selected .twin-tag{box-shadow:0 0 0 2px rgba(255,231,160,.25),0 2px 5px rgba(0,0,0,.3)}

/* Gölge Bölge — gizli ek 3×3. Hafif bir tonlama, tahtayı kalabalıklaştırmaz. */
.cell.in-zone{background:rgba(150,120,255,.10)}
.cell.in-zone.peer{background:rgba(150,120,255,.17)}
.cell.in-zone.same{background:var(--cell-same)}
.cell.in-zone.selected{background:rgba(255,200,90,.28)}

/* Çit — serbest şekilli bahçe yatağı, kesik çizgili dış kenar. */
.cell.in-fence{background:rgba(95,214,164,.09)}
.cell.in-fence.peer{background:rgba(95,214,164,.16)}
.cell.in-fence.selected{background:rgba(255,200,90,.28)}
.cell.fence-l{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55)}
.cell.fence-r{box-shadow:inset -2px 0 0 0 rgba(120,235,190,.55)}
.cell.fence-t{box-shadow:inset 0 2px 0 0 rgba(120,235,190,.55)}
.cell.fence-b{box-shadow:inset 0 -2px 0 0 rgba(120,235,190,.55)}
/* Birden çok kenar aynı anda sınır olabilir; box-shadow'ları birleştir. */
.cell.fence-l.fence-t{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset 0 2px 0 0 rgba(120,235,190,.55)}
.cell.fence-l.fence-b{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}
.cell.fence-r.fence-t{box-shadow:inset -2px 0 0 0 rgba(120,235,190,.55), inset 0 2px 0 0 rgba(120,235,190,.55)}
.cell.fence-r.fence-b{box-shadow:inset -2px 0 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}
.cell.fence-l.fence-r{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset -2px 0 0 0 rgba(120,235,190,.55)}
.cell.fence-t.fence-b{box-shadow:inset 0 2px 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}
.cell.fence-l.fence-t.fence-b{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset 0 2px 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}
.cell.fence-r.fence-t.fence-b{box-shadow:inset -2px 0 0 0 rgba(120,235,190,.55), inset 0 2px 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}
.cell.fence-l.fence-r.fence-t{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset -2px 0 0 0 rgba(120,235,190,.55), inset 0 2px 0 0 rgba(120,235,190,.55)}
.cell.fence-l.fence-r.fence-b{box-shadow:inset 2px 0 0 0 rgba(120,235,190,.55), inset -2px 0 0 0 rgba(120,235,190,.55), inset 0 -2px 0 0 rgba(120,235,190,.55)}

/* =====================================================================
   TAMAMLAMA EFEKTLERİ
   Eski hâl tek bir emoji idi ve tamamlama hiç hissedilmiyordu. Artık üç
   katman var: hücre bazlı dalga, bölge üstüne oturan altın halka ve tahtayı
   yalayan ışık süpürmesi. Hepsi transform/opacity ile — compositor'da çalışır,
   81 hücrelik tahtada layout tetiklemez.
   ===================================================================== */

/* --- 1. Hücre dalgası: tamamlanan sıra/bölge boyunca sırayla ilerler --- */
@keyframes cell-pop{
  0%{transform:scale(1)}
  35%{transform:scale(1.28) rotate(-6deg)}
  70%{transform:scale(.94) rotate(3deg)}
  100%{transform:scale(1) rotate(0)}
}
.cell.wave .flower-token{animation:cell-pop .5s cubic-bezier(.34,1.56,.64,1) both}

/* hücrenin arkasında kısa bir altın parlama */
@keyframes cell-flash{
  0%{opacity:0}
  25%{opacity:.85}
  100%{opacity:0}
}
.cell.wave::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(circle at 50% 50%, rgba(255,214,120,.9), transparent 70%);
  animation:cell-flash .5s ease-out both;
}

/* --- 2. Bölge halkası: tamamlanan 3×3'ün üstünde genişleyen altın halka --- */




/* --- 3. Bölge çiçeği: ortada büyüyüp yerleşen işaret --- */



/* --- 4. Satır/sütun süpürmesi: tahtayı yalayan ışık --- */
@keyframes sweep-x{ from{transform:translateX(-110%)} to{transform:translateX(110%)} }
@keyframes sweep-y{ from{transform:translateY(-110%)} to{transform:translateY(110%)} }
.line-sweep{
  position:absolute;z-index:15;pointer-events:none;opacity:.9;
  background:linear-gradient(90deg,transparent,rgba(255,224,150,.85),transparent);
}
.line-sweep.row{left:0;width:100%;animation:sweep-x .55s ease-out both}
.line-sweep.col{top:0;height:100%;
  background:linear-gradient(180deg,transparent,rgba(255,224,150,.85),transparent);
  animation:sweep-y .55s ease-out both}

/* --- 5. Bölüm bitişi: yukarı süzülen çiçek yağmuru --- */
@keyframes petal-fall{
  0%{transform:translateY(0) rotate(0);opacity:0}
  12%{opacity:1}
  100%{transform:translateY(-120px) rotate(var(--spin,180deg));opacity:0}
}
.petal-burst{
  position:absolute;z-index:16;width:22px;height:22px;pointer-events:none;
  background-size:contain;background-repeat:no-repeat;background-position:center;
  animation:petal-fall 1.1s ease-out both;
}

/* Eski emoji patlaması artık kullanılmıyor */
/* v12.2.4 — CC0 Kenney finish particles. Image sprites are used only on the
   completion card; gameplay remains DOM-light on low-end phones. */
@keyframes finish-spark-float{
  0%{transform:translate(-50%,-50%) scale(.45) rotate(0);opacity:0}
  18%{opacity:.78}
  100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.05) rotate(var(--rot));opacity:0}
}
.finish-spark-particle{position:absolute;left:50%;top:26%;width:46px;height:46px;pointer-events:none;z-index:0;background:var(--spark-img) center/contain no-repeat;animation:finish-spark-float 1.15s ease-out both;filter:drop-shadow(0 0 8px rgba(255,216,125,.22))}
.finish-card>*:not(.finish-spark-particle){position:relative;z-index:1}



/* ==========================================================================
   Consolidated from: 04-game-ui.css
   ========================================================================== */
/* 04-game-ui.css
   Oyun ekranı. Tek kural: telefonda hiçbir şey kaydırılmaz.
   Düzen dikey bir flex kolonu — tahta esner (flex:1), HUD ve dock sabit
   yükseklikte kalır. Tahta boyutu min() ile hem genişliğe hem kalan yüksekliğe
   göre sınırlanır, böylece kısa ekranlarda taşmaz. */

#game{
  position:fixed;inset:0;
  height:100dvh;
  overflow:hidden;
}
.game-shell{
  height:100%;
  display:flex;flex-direction:column;
  max-width:560px;margin:0 auto;
}

/* ---- üst bar ---- */
.hud{display:flex;align-items:center;flex-shrink:0}
.hud-title{flex:1;min-width:0}
.hud-title h2{margin:0;font-weight:800;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hud-title p{margin:1px 0 0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hud-timer{text-align:right;flex-shrink:0}
.hud-timer span{display:block;font-weight:800;font-variant-numeric:tabular-nums;color:var(--accent);line-height:1.1}
.hud-timer small{display:block;font-size:9px;color:var(--muted)}
.icon-btn{
  width:38px;height:38px;flex-shrink:0;border-radius:12px;
  border:1px solid var(--glass-line);background:var(--glass);
  font-size:16px;line-height:1;cursor:pointer;
  display:grid;place-items:center;transition:transform .12s ease
}
.icon-btn:active{transform:scale(.92)}

/* ---- tahta ---- */
.board-stage{
  flex:1;min-height:0;min-width:0;
  display:flex;justify-content:center;
  overflow:hidden;
}
.board{
  /* Boyut JS tarafından ölçülüp --board-size ile veriliyor (bkz. 06-board.js).
     Önceki sürüm "100dvh eksi 250px" gibi sabit bir tahmine dayanıyordu; HUD
     yüksekliği cihaza/font ölçeğine göre değiştiği için bazı tarayıcılarda
     tahta konteynerini aşıp üst bara biniyordu. Artık gerçek kalan alan
     ölçülüyor, tahmin yok. */
  width:var(--board-size, 100%);
  height:var(--board-size, auto);
  aspect-ratio:1;
  max-width:100%;
  max-height:100%;
  display:grid;grid-template-columns:repeat(9,1fr);
  border:1px solid var(--glass-line-2);
  overflow:hidden;
  flex:0 0 auto;
  position:relative;   /* efekt katmanları buraya konumlanıyor */
}

/* ---- ilerleme + durum ---- */
/* Dikeyde bu sarmalayıcı düzeni etkilemez (display:contents), yatayda sağ
   sütun olur. HUD işaretlemede tahtadan sonra geliyor; dikeyde order ile
   yukarı alınıyor. */
.side-column{display:contents}
.hud{order:-1}
.board-stage{order:0}
.hud-strip{order:1}
.dock{order:2}
.hud-strip{flex-shrink:0}
.progress-mini{height:3px;border-radius:99px;background:var(--glass);overflow:hidden}
.progress-mini>i{display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .25s ease}
.hud-status{
  margin-top:5px;font-size:10px;line-height:1.35;color:var(--muted);
  height:26px;overflow:hidden;display:flex;align-items:center
}
.hud-status.good{color:var(--good)}
.hud-status.bad{color:var(--bad)}
/* Aynı sınıf Free/Daily sayfalarında da kullanılıyor; orada yükseklik sabiti
   istemiyoruz, metin birden çok satır olabilir. */
.page-status,#freeStatus,#dailyStatus{
  height:auto!important;font-size:11px!important;line-height:1.5;
  padding:10px 12px;border-radius:var(--radius-sm);
  background:var(--glass);border:1px solid var(--glass-line);color:var(--text-2);
  display:block!important
}
#freeStatus.good,#dailyStatus.good{color:var(--good);border-color:rgba(95,214,164,.4)}
#freeStatus.bad,#dailyStatus.bad{color:var(--bad);border-color:rgba(255,122,122,.4)}

/* ---- alt dock ---- */
.dock{flex-shrink:0;display:flex;flex-direction:column}
/* Araç sırası ve palet aynı ızgara genişliğini paylaşır; palet düğmeleri
   sınırlandığı için ikisi de ortalanıp hizalı duruyor. */
.dock-tools{display:grid;grid-template-columns:repeat(5,1fr);
  width:var(--dock-w);margin:0 auto}
.tool{
  border:1px solid var(--glass-line);padding:6px 4px;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:1px;transition:transform .12s ease,background .15s ease
}
.tool:active{transform:scale(.94)}
.tool .tool-ico{line-height:1}
.tool .tool-lbl{color:var(--text-2);letter-spacing:.01em;white-space:nowrap}
.tool.active{
  background:linear-gradient(180deg,var(--accent),var(--accent-2));
  border-color:transparent;box-shadow:0 6px 18px rgba(255,171,61,.32)
}
.tool.active .tool-ico,.tool.active .tool-lbl{color:var(--accent-ink);font-weight:800}
.tool:disabled{opacity:.32;cursor:default}
.tool:disabled:active{transform:none}

/* ---- palet ---- */
.palette{display:grid;grid-template-columns:repeat(5,1fr);
  width:var(--dock-w);margin:0 auto}
.color-btn{
  /* Palet düğmesi yüksekliği açıkça sınırlı. Serbest bırakılınca (aspect-ratio
     ile kare) düğmeler 60px'e çıkıyor, tahtadaki çiçek ~30px olduğu için palet
     iki kat iri duruyordu. */
  position:relative;
  border:1px solid var(--glass-line);cursor:pointer;padding:4px;
  display:grid;place-items:center;transition:transform .1s ease,background .15s ease
}
.color-btn:active{transform:scale(.9)}
/* Çiçeği düğmenin YÜKSEKLİĞİNE bağla: düğme geniş ama alçak olduğu için
   genişliğe bağlamak onu tekrar orantısız büyütüyordu. */
.color-btn .flower-token{width:auto;aspect-ratio:1}
.color-btn .remain-badge{
  position:absolute;top:-5px;right:-5px;
  min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;line-height:1;
  background:var(--accent);color:var(--accent-ink);
  border:2px solid var(--bg);pointer-events:none
}
.color-btn.exhausted{opacity:.3}
.color-btn.exhausted .remain-badge{background:var(--muted);color:var(--bg)}
.clear-btn{font-size:19px;color:var(--muted)}

/* ---- ayarlar sayfası (alt sheet) ---- */
.sheet{
  position:fixed;inset:0;z-index:60;
  display:flex;align-items:flex-end;justify-content:center;
  padding:0
}
.sheet-panel{
  width:100%;overflow:auto;
  border:1px solid var(--glass-line-2);border-bottom:0
}
.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.sheet-head h3{margin:0}
.setting-row{
  display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--text-2);
  border-bottom:1px solid var(--glass-line)
}
.setting-row:last-of-type{border-bottom:0}
.setting-row.unsupported{opacity:.45;cursor:default}
.setting-row input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}
.setting-note{font-size:10px;line-height:1.45;padding-top:8px}
.volume-panel{
  margin:6px 0 4px;padding:10px 12px 11px;border:1px solid var(--glass-line);border-radius:16px;
  background:rgba(255,255,255,.035)
}
.volume-row{padding:7px 0 8px}
.volume-row+.volume-row{border-top:1px solid rgba(255,255,255,.06)}
.volume-copy{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:11px;color:var(--text-2)}
.volume-copy output{min-width:40px;text-align:right;font-variant-numeric:tabular-nums;color:var(--accent-2);font-weight:700}
.volume-slider{width:100%;height:28px;margin:0;accent-color:var(--accent);cursor:pointer;touch-action:pan-y}
.volume-slider:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:999px}
.volume-panel.muted{opacity:.58}
.lang-select{
  border:1px solid var(--glass-line);
  color:var(--text);font-size:12px;min-height:36px;cursor:pointer
}
.sheet-actions{margin-top:12px}
.sheet-actions .btn{width:100%}
/* Release accessibility: honor the OS reduced-motion preference without
   removing interaction feedback or changing puzzle logic. */
@media (prefers-reduced-motion: reduce){
  html:not(.force-motion) *,html:not(.force-motion) *::before,html:not(.force-motion) *::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important;
  }
}
.legal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.legal-actions .btn{min-height:42px;font-size:10px}
.release-version{margin:12px 0 2px;text-align:center;color:#78859e;font-size:9px;line-height:1.45}
.release-version b{color:#a8b4ca;font-weight:800}
.legal-panel{max-width:560px}
.legal-body{font-size:11px;line-height:1.58;color:#cbd4e4}
.legal-body h4{margin:14px 0 5px;color:#f4d27d;font-size:12px}
.legal-body p{margin:7px 0}
.legal-body ul{padding-left:18px;margin:7px 0}
.legal-status{margin-top:12px;padding:9px 11px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#9dacbf;font-size:9px}

.sheet-rule{
  margin-top:12px;border:1px solid var(--glass-line);
  font-size:11px;line-height:1.5;color:var(--text-2)
}
.sheet-rule b{color:var(--text)}
.spectrum-mini{display:flex;gap:5px;margin-top:9px;flex-wrap:wrap}
.spectrum-mini i{width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.2)}

/* Küçük/kısa ekranlarda etiketleri düşür, tahtaya yer aç */
@media(max-height:700px){
  .tool .tool-lbl{display:none}
  .tool{min-height:40px}
  .hud-status{height:20px;font-size:9px}
}
@media(max-height:600px){
  .hud-title p{display:none}
  .hud-strip{display:none}
}
/* Masaüstünde ve tablette tahta büyüsün ama ekranı taşmasın */
@media(min-width:760px){
  .tool .tool-lbl{font-size:10px}
}

/* ---- yatay mod ----
   İki sütunlu bir yatay düzen denendi (tahta solda, kontroller sağda) ama sağ
   sütun yeterince genişleyemediği için palet düğmeleri 28px'e kadar iniyordu —
   dokunma hedefi için çok küçük. 9x9 bir tahta + 9 renklik palet, telefon
   yataydayken makul boyutlarda yan yana sığmıyor. Zorlamak yerine oyuncuyu
   dikeye yönlendiriyoruz; tablet ve masaüstü yataydan etkilenmiyor. */
.rotate-hint{display:none}
@media(orientation:landscape) and (max-height:520px) and (pointer:coarse){
  .game-shell{display:none}
  .rotate-hint{
    position:absolute;inset:0;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px
  }
  .rotate-hint .rot-ico{font-size:40px;line-height:1}
  .rotate-hint p{margin:0;font-size:14px;color:var(--text-2);max-width:26ch;line-height:1.5}
}

/* Mekanik kural kartları (ayarlar sayfasında) */
.sheet-rule.twin{border-color:rgba(255,200,90,.35);background:rgba(255,200,90,.09)}
.sheet-rule.zone{border-color:rgba(150,120,255,.35);background:rgba(150,120,255,.09)}
.sheet-rule.fence{border-color:rgba(95,214,164,.35);background:rgba(95,214,164,.09)}

/* Ayarlar sayfasındaki geliştirici araçları — katlanmış durur, ana akışı bozmaz */
.sheet-tools{margin-top:12px;border:1px dashed var(--glass-line);padding:10px 12px}
.sheet-tools>summary{
  list-style:none;cursor:pointer;font-size:11px;color:var(--muted);
  letter-spacing:.08em;text-transform:uppercase;min-height:32px;display:flex;align-items:center
}
.sheet-tools>summary::-webkit-details-marker{display:none}
.sheet-tools>summary::after{content:"▾";margin-left:auto;transition:transform .15s}
.sheet-tools[open]>summary::after{transform:rotate(180deg)}
.sheet-tools-note{margin:6px 0 10px;font-size:10px;color:var(--muted);line-height:1.5}
.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.tools-grid .btn{padding:8px 6px;font-size:10.5px;min-height:38px}
.sheet-tools .demo-tag{display:block;margin-top:9px;font-size:9.5px;color:var(--muted)}

/* Rehber balonu — yalnızca ilk bölümde, oynayarak öğretmek için.
   Tahtayı kapatmaz; altta durur ve dokunmayı engellemez. */
.coach{
  position:absolute;left:10px;right:10px;z-index:30;pointer-events:none;
  bottom:calc(50% - 8px);
}
.coach-bubble{
  pointer-events:auto;
  margin:0 auto;max-width:330px;
  background:linear-gradient(180deg,#2a3352,#1e253c);
  border:1px solid rgba(255,200,90,.45);
  border-radius:16px;padding:12px 14px;
  box-shadow:0 16px 40px rgba(0,0,0,.5);
  animation:rise-in .35s ease both;
}
.coach-bubble p{margin:0 0 9px;font-size:12px;line-height:1.5;color:var(--text)}
.coach-next{
  border:0;border-radius:10px;padding:7px 16px;cursor:pointer;
  font-size:11.5px;font-weight:800;color:var(--accent-ink);
  background:linear-gradient(180deg,var(--accent),var(--accent-2));
}
.coach-next:active{transform:scale(.95)}
/* Rehber sırasında vurgulanan hedef */
.cell.coach-target{
  outline:2px solid var(--accent);outline-offset:-2px;
  animation:coach-pulse 1.4s ease-in-out infinite;z-index:12
}
@keyframes coach-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,200,90,.5)}50%{box-shadow:0 0 0 7px rgba(255,200,90,0)}}
.color-btn.coach-target{outline:2px solid var(--accent);outline-offset:2px;animation:coach-pulse 1.4s ease-in-out infinite}

/* ---- Ayar satırları: ikon + etiket + gerçek anahtar ----
   Kutu işareti yerine kaydırmalı anahtar; mobil his olarak çok daha oturaklı. */
.setting-row{gap:11px}
.sr-ico{flex-shrink:0;
}
.sr-ico svg{display:block}
.sr-label{min-width:0}
input.sw{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.sw-track{
  position:relative;flex-shrink:0;width:46px;height:27px;border-radius:99px;
  background:rgba(255,255,255,.10);border:1px solid var(--glass-line);
  transition:background .18s ease,border-color .18s ease;cursor:pointer;
}
.sw-track::after{
  content:"";position:absolute;top:2px;left:2px;width:21px;height:21px;border-radius:50%;
  background:linear-gradient(180deg,#fff,#dfe4f2);
  box-shadow:0 2px 5px rgba(0,0,0,.4);
  transition:transform .2s cubic-bezier(.34,1.4,.64,1);
}
input.sw:checked + .sw-track{
  background:linear-gradient(180deg,var(--accent),var(--accent-2));
  border-color:transparent;
}
input.sw:checked + .sw-track::after{transform:translateX(19px)}
input.sw:disabled + .sw-track{opacity:.4}

/* Ayarlar başlığında ince bir süs ayırıcı */
.sheet-head{position:relative;padding-bottom:10px}
.sheet-head::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
}

/* ==========================================================================
   Consolidated from: 05-screens.css
   ========================================================================== */
/* 05-screens.css
   Daily Bloom, My Garden, Free Bloom zorluk kartları ve tam ekran modallar
   (tanıtım + bitiş). */

/* ---- Daily Bloom ---- */
.daily-hero{
  border:1px solid var(--glass-line);text-align:center
}
.daily-date{font-weight:900}
.daily-diff{margin-top:3px}
.daily-streak-row{display:grid;grid-template-columns:repeat(3,1fr)}
.streak-box{border:1px solid var(--glass-line)
}
.streak-box b{display:block;line-height:1.1}
.streak-box span{font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.week-strip{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:14px}
.week-day{
  border:1px solid var(--glass-line);text-align:center
}
.week-day .wd-name{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.week-day .wd-mark{font-size:15px;line-height:1.4;color:rgba(255,255,255,.18)}
.week-day.done{background:rgba(95,214,164,.14);border-color:rgba(95,214,164,.45)}
.week-day.done .wd-mark{color:var(--good)}
.week-day.today{border-color:var(--accent)}
.week-day.today .wd-name{color:var(--accent);font-weight:800}

/* ---- Free Bloom zorluk kartları ---- */
.difficulty-grid{display:grid;margin-bottom:14px}
.diff-card{
  text-align:left;background:var(--glass);cursor:pointer;
  transition:transform .12s ease,border-color .15s ease;color:var(--text)
}
.diff-card:active{transform:scale(.98)}
.diff-card.active{background:rgba(255,200,90,.12)}
.diff-card h4{margin:0}
.diff-card.active h4{color:var(--accent)}
.diff-card .diff-meta{display:block}
.diff-card p{margin:6px 0 0;line-height:1.45}
.diff-card .diff-solved{
  display:inline-block;margin-top:8px;font-size:9.5px;font-weight:800;
  padding:3px 8px;border-radius:99px;border:1px solid var(--glass-line)
}
.diff-card.active .diff-solved{color:var(--accent);border-color:rgba(255,200,90,.4)}
.free-actions{display:grid;gap:8px}
.free-actions .btn{min-height:50px;font-size:15px}
@media(max-width:520px){ .difficulty-grid{grid-template-columns:1fr} }

/* ---- My Garden ---- */
.garden-stats{display:grid;grid-template-columns:repeat(2,1fr)}
@media(min-width:520px){.garden-stats{grid-template-columns:repeat(4,1fr)}}
.gstat{
  border:1px solid var(--glass-line);text-align:center
}
.gstat b{display:block;line-height:1.1}
.gstat span{text-transform:uppercase;letter-spacing:.06em}

.collection-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.bloom-card{
  border:1px solid var(--glass-line);text-align:center
}
.bloom-icon{margin:0 auto 6px;border-radius:50%;
  display:grid;place-items:center;font-size:17px;color:var(--muted);
  background:rgba(255,255,255,.04);border:1px solid var(--glass-line);background-position:center;background-repeat:no-repeat
}
.bloom-card.done .bloom-icon{border-color:rgba(255,200,90,.45);background-color:rgba(255,200,90,.10)}
.bloom-card h4{margin:0;font-weight:700}
.bloom-card p{margin:2px 0 0;color:var(--muted)}





/* ---- tam ekran modallar (tanıtım / bitiş) ---- */
.finish{
  position:fixed;inset:0;z-index:70;
  background:rgba(6,9,18,.80);backdrop-filter:blur(8px);
  display:flex;align-items:center;justify-content:center;
  padding:18px;overflow:auto
}
.finish-card{
  width:100%;max-width:420px;
  background:linear-gradient(180deg,#1c2339,#141a2c);
  border:1px solid var(--glass-line-2);border-radius:var(--radius-lg);
  padding:22px;box-shadow:var(--shadow);text-align:center
}
.finish-flower{
  width:76px;height:76px;margin:0 auto 10px;
  background-size:contain;background-position:center;background-repeat:no-repeat;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.5))
}
.finish-card h2{margin:0 0 8px;font-size:21px}
.finish-card p{margin:0 auto 16px;font-size:12.5px;line-height:1.55;color:var(--text-2);max-width:34ch}
.finish-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* tanıtım kartı */
.onboard-card{max-width:430px;text-align:left}
.onboard-mark{display:flex;justify-content:center;margin-bottom:6px}
.onboard-mark .logo-mark{width:56px;height:56px;margin:0}
.onboard-card h2{text-align:center;font-size:21px;margin:8px 0 0}
.onboard-lead{text-align:center;margin:7px auto 15px!important;font-size:12px!important}
.onboard-steps{margin:0 0 12px;padding:0 0 0 20px;display:grid;gap:11px}
.onboard-steps li{font-size:12px;line-height:1.5;color:var(--text-2)}
.onboard-steps b{display:block;font-size:12.5px;margin-bottom:2px;color:var(--text)}
.onboard-steps span{color:var(--muted);font-size:11px}
.onboard-note{
  margin:0 0 15px!important;font-size:11px!important;line-height:1.5!important;
  background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius-sm);
  padding:10px 12px;max-width:none!important;text-align:left;color:var(--text-2)
}

/* =====================================================================
   MY GARDEN — gerçek bahçe
   Koleksiyon eskiden bir kart listesiydi. Tamamlanan her bölüm artık bahçeye
   gerçekten bir çiçek dikiyor; bahçe doldukça görünür biçimde büyüyor.
   Amaç: biriken, kişisel, "benim bahçem" denebilecek bir şey.
   ===================================================================== */
/* Kısa ekranlarda bahçe ekranı tek sayfaya sığsın diye biraz basık. */
.garden-scene{width:100%;overflow:hidden;
  border:1px solid var(--glass-line);
  margin-bottom:10px;
}





/* Her çiçek kendi sapıyla topraktan çıkar */










/* Ayrıntılı liste artık katlanmış bir bölümde */
.garden-list{border:1px solid var(--glass-line);margin-top:6px}
.garden-list>summary{
  list-style:none;cursor:pointer;
  letter-spacing:.08em;text-transform:uppercase;min-height:34px;display:flex;align-items:center
}
.garden-list>summary::-webkit-details-marker{display:none}
.garden-list>summary::after{content:"▾";margin-left:auto;transition:transform .15s}
.garden-list[open]>summary::after{transform:rotate(180deg)}

@media(max-height:700px){
  .garden-scene{aspect-ratio:16/9}
  .garden-stats{gap:6px;margin-bottom:12px}
  .gstat{padding:9px 6px}
  .gstat b{font-size:17px}
  
}

/* ==========================================================================
   Consolidated from: 06-responsive.css
   ========================================================================== */
/* 06-responsive.css
   Kırılım noktaları. Oyun ekranının kendi yükseklik kuralları 04-game-ui.css
   içinde; burada yalnızca menü/sayfa ekranları ele alınıyor. */

@media(max-width:940px){
  .map-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .page-card{padding:14px}
  .hero{padding:6px 0 14px}
  .journey-map{padding:13px 11px}
}
@media(max-width:420px){
  .screen{padding:10px}
  
  
}

/* v0.10.7 — gameplay feel: selection and modes stay legible without heavy FX */
html body :is(#game,#loadoutStage) .cell.selected{
  outline:2px solid #516d45!important;outline-offset:-2px!important;
  box-shadow:inset 0 0 0 2px rgba(255,253,241,.72),0 0 0 1px rgba(72,96,61,.20)!important;
}
html body :is(#game,#loadoutStage) .cell.selected:not(.given):empty::before{
  content:"";position:absolute;inset:32%;z-index:2;pointer-events:none;border-radius:50%;
  border:1.5px solid rgba(69,98,58,.58);box-shadow:0 0 0 4px rgba(255,253,241,.45);
}
html body :is(#game,#loadoutStage) .cell.same:not(.selected){
  box-shadow:inset 0 0 0 1.5px rgba(92,119,70,.42)!important;
}
html body #game.note-mode #board{
  box-shadow:0 0 0 2px rgba(151,119,59,.24),var(--board-shadow,0 8px 28px rgba(68,54,33,.16))!important;
}
html body #game.note-mode .cell.selected{
  outline-color:#a17a36!important;background:#f3ead3!important;
}
html body #game.note-mode .cell.selected:not(.given):empty::before{
  border-style:dashed;border-color:#9b742f;box-shadow:none;
}
html body #game .color-btn.rule-disabled{
  opacity:.34!important;filter:grayscale(.58) saturate(.45)!important;
}
html body #game.note-mode .color-btn.rule-disabled{
  opacity:1!important;filter:none!important;
}
@media(prefers-reduced-motion:reduce){
  html body :is(#game,#loadoutStage) .cell.selected,html body #game.note-mode #board{transition:none!important}
}

/* v0.10.6 — stable gameplay loop and cross-viewport safeguards */
html body .home-next-action{
  display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:50px;margin:8px 0 0;padding:8px 12px;
  border:1px solid rgba(148,137,96,.28);border-radius:15px;background:linear-gradient(135deg,#f7f5e8,#e8eddb);color:#355440;text-align:left;box-shadow:0 4px 12px rgba(44,67,46,.07);
}
html body .home-next-action.hidden{display:none!important}
html body .home-next-action-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#44694b;color:#fff6d9;font-size:15px}
html body .home-next-action>span:nth-child(2){display:grid;gap:2px;min-width:0}
html body .home-next-action small{color:#a18145;font:700 7px/1.2 system-ui,sans-serif;letter-spacing:.14em}
html body .home-next-action b{overflow:hidden;color:#395640;font:600 11px/1.25 system-ui,sans-serif;white-space:nowrap;text-overflow:ellipsis}
html body .home-next-action>i{font:400 24px/1 Georgia,serif;color:#7a866b}

html body .result-reference-garden{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:45px;margin:8px 0 0;padding:9px 14px;
  border:1px solid #a9955e;border-radius:999px;background:linear-gradient(180deg,#fff9e6,#eee5c9);color:#38573e;font:600 12px/1.2 system-ui,sans-serif;
}
html body .result-reference-garden.hidden{display:none!important}
html body .result-reference-garden>span:first-child{color:#a8863e;font-size:16px}
html body #game .hud-status.early-guide{background:#f4ecd5!important;border-color:#d5bd7b!important;color:#4d593f!important;font-weight:600!important}

html,body{max-width:100%;overflow-x:hidden}
html body .screen,html body .page,html body .page-card{min-width:0;max-width:100%}
html body img,html body svg{max-width:100%}
html body button,html body select,html body input{max-width:100%}
html body :is(.story-card,.sheet-panel,.shop-earn-dialog,.mechanic-coach-card){max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
html body .pg-nav{padding-bottom:max(8px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
html body :is(#garden,#gardenPlay,#shopSheet,#free,#daily) :is(.collection-premium-shell,.garden-page-shell,.shop-reference-scroll,.free-page-shell,.daily-flower-shell){scroll-padding-bottom:110px}

@media(max-width:699px){
  html body #home .home-next-action{width:calc(100% - 2px);align-self:center}
  html body .result-reference-panel{padding-bottom:max(18px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  html body #game .game-main{min-width:0!important}
  html body :is(#game,#loadoutStage) .board-wrap{max-width:100%!important}
}

@media(min-width:700px){
  html body #home .home-next-action{width:min(100%,720px);align-self:center;min-height:56px;padding-inline:16px}
  html body .home-next-action b{font-size:12px}
  html body #game .game-main{width:min(100%,980px)!important;margin-inline:auto!important}
  html body #gardenPlay.garden-page #gardenScreen{width:min(100%,1050px)!important;margin-inline:auto!important}
  html body #free>.free-page-shell{padding-bottom:24px!important}
}

@media(min-width:1100px){
  html body .shell{max-width:1440px;margin-inline:auto}
  html body #shopSheet .shop-reference-scroll,
  html body #garden.collection-premium-page .collection-premium-shell{width:min(1180px,100%)!important;margin-inline:auto!important}
  html body :is(#game,#loadoutStage) .board{width:min(62dvh,620px)!important;height:min(62dvh,620px)!important}
}
/* Dokunmatik cihazlarda hover efekti yok; geri bildirim :active ile veriliyor */
@media(hover:none){
  .btn:hover, .color-btn:hover, .tool:hover{
    transform:none;background:var(--glass);border-color:var(--glass-line)
  }
}
/* Geniş ekranda menüyü iki sütuna aç */
@media(min-width:760px){
  .map-grid{grid-template-columns:1fr 1fr;gap:14px}
}

/* ==========================================================================
   Consolidated from: 07-redesign.css
   ========================================================================== */
/* 07-redesign.css
   Final art-direction pass based on the approved Petalattice mockups.
   This file intentionally overrides older prototype styling rather than
   rewriting the gameplay CSS. The logic stays untouched; presentation changes.
*/

:root{
  --bg:#11182b;
  --bg2:#18233a;
  --bg3:#0b1221;
  --glass:rgba(20,27,48,.72);
  --glass-2:rgba(32,41,68,.82);
  --glass-line:rgba(217,224,255,.12);
  --glass-line-2:rgba(255,228,170,.24);
  --text:#f7f5f0;
  --text-2:#d1d6e5;
  --muted:#929cb9;
  --accent:#ffc75a;
  --accent-2:#f3a52f;
  --accent-ink:#2b210c;
  --shadow:0 28px 70px rgba(0,0,0,.55),0 3px 12px rgba(0,0,0,.32);
  --shadow-sm:0 14px 36px rgba(0,0,0,.34);
}

html,body{background:#0b1221}
body{
  background:
    radial-gradient(1100px 720px at 88% -10%,rgba(116,88,188,.20),transparent 62%),
    radial-gradient(900px 600px at -10% 20%,rgba(255,177,76,.10),transparent 62%),
    linear-gradient(180deg,#161b30 0%,#111a2d 48%,#0c1525 100%);
}

/* Shared screen framing */
.screen{max-width:560px}
.page{padding-top:max(12px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))}
.page>.page-card{
  background:linear-gradient(180deg,rgba(44,43,69,.93),rgba(16,27,46,.96));
  border-color:rgba(255,255,255,.10);
  box-shadow:0 24px 60px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06);
}



.btn.back,.icon-btn{
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.055));
  border-color:rgba(255,255,255,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 6px 18px rgba(0,0,0,.20)
}

/* ========================================================================
   HOME — scenic hero + glass quick cards
   ======================================================================== */
#home{
  position:relative;isolation:isolate;overflow:hidden;padding-top:max(13px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)));
  padding-bottom:calc(82px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
}
#home::before{
  content:"";position:absolute;z-index:-3;inset:0;
  background:url("../scenes/soft-botanical-home.webp") center 48%/cover no-repeat;
}
#home::after{
  content:"";position:absolute;z-index:-2;inset:0;pointer-events:none;
}
.home-brand{color:#d5d9e8;font-size:13px;letter-spacing:.16em;text-shadow:0 2px 12px #000}

.quick-rail{position:relative;z-index:2;gap:11px;padding:5px 2px 8px}
.quick-card{
  width:148px;min-height:154px;border-radius:24px;padding:14px;
  background-position:center!important;background-size:cover!important;
  border:1px solid rgba(255,255,255,.17);
  box-shadow:0 18px 40px rgba(0,0,0,.33),inset 0 1px 0 rgba(255,255,255,.13);
}
.quick-card::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(9,15,29,.12),rgba(9,15,29,.30) 42%,rgba(7,12,25,.78) 100%);
}
.quick-card::after{z-index:0;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 36%)}
.quick-card>*{position:relative;z-index:1}
.qc-daily{background-image:url("../scenes/soft-botanical-home.webp")!important}
.qc-free{background-image:url("../scenes/chapter-prism.webp")!important}
.qc-garden{background-image:url("../scenes/soft-botanical-home.webp")!important}
.qc-ico{font-size:27px;text-shadow:0 3px 14px rgba(0,0,0,.65)}
.qc-kicker{color:rgba(255,255,255,.72);font-size:8.5px}
.qc-title{font-size:15px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.72)}
.qc-cta{box-shadow:0 7px 18px rgba(0,0,0,.24)}
.qc-badge{background:rgba(9,14,26,.62);backdrop-filter:blur(8px)}

.goals{
  position:relative;z-index:2;
  background:linear-gradient(180deg,rgba(22,28,50,.75),rgba(17,25,44,.72));
  border-color:rgba(255,255,255,.12);backdrop-filter:blur(16px);
  padding:14px;border-radius:24px;
}
.goal-box{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.07)}
.goal-box b{font-size:17px}.goal-box span{font-size:9px}

.brand{
  position:relative;z-index:2;margin:auto 0 0;padding:30px 0 16px;
  text-shadow:0 5px 22px rgba(0,0,0,.85)
}
.brand::before{
  content:"";position:absolute;left:50%;top:5px;transform:translateX(-50%);
  width:280px;height:160px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse,rgba(7,12,25,.72),transparent 68%);
}
.brand .logo-mark{filter:drop-shadow(0 5px 16px rgba(0,0,0,.72))}
.brand h1{font-size:clamp(27px,7vw,36px);letter-spacing:.19em;color:#f7f5ee;background:none;-webkit-text-fill-color:initial}
.brand p{font-size:12px;color:#abb4cf}
.cta-zone{position:relative;z-index:2;padding-bottom:8px}
.cta-main{
  min-width:250px;max-width:330px;border-radius:20px;padding:12px 28px;
  background:linear-gradient(180deg,#ffd47b,#ffad3d);
  box-shadow:0 14px 34px rgba(255,173,61,.25),inset 0 1px 0 rgba(255,255,255,.48)
}
.cta-main b{font-size:17px}.cta-main span{font-size:11.5px}

.tabbar{
  max-width:560px;margin:0 auto;left:50%;right:auto;width:100%;transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(16,23,42,.88),rgba(10,16,31,.98));
  backdrop-filter:blur(20px);border-top-color:rgba(255,255,255,.07)
}
.tab{padding:7px 4px 6px;font-size:10px}.tab .tab-ico{font-size:18px}

/* ========================================================================
   GAME — remove help/status row, enlarge board, compact chrome
   ======================================================================== */
.game-shell{gap:5px}
.hud{gap:8px;padding:1px 2px 0}
.hud .icon-btn{width:42px;height:42px;border-radius:14px}
.hud-title h2{font-size:17px}.hud-title p{font-size:10px}
.hud-timer span{font-size:17px}
.board-stage{padding:2px 0;align-items:center}
.board{
  border-radius:22px;padding:5px;gap:1px;
  background:rgba(198,204,230,.11);
  border-color:rgba(224,228,247,.19);
  box-shadow:0 24px 52px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)
}
/* User explicitly asked for the help/status sentence to disappear. Keep only
   the progress hairline so JS can continue updating status invisibly. */
#game .hud-strip{flex-shrink:0}
#game .hud-strip .hud-status{display:none!important}
.dock{--dock-w:min(100%,460px);gap:7px}
.dock-tools{gap:7px}
.tool{min-height:46px;border-radius:15px;background:rgba(31,41,61,.85)}
.tool .tool-ico{font-size:17px}.tool .tool-lbl{font-size:9.5px}
.palette{gap:7px}
.color-btn{height:clamp(48px,13.5vw,61px);border-radius:15px;background:rgba(31,42,60,.88)}
.color-btn .flower-token{height:94%}

/* ========================================================================
   DAILY BLOOM — real scene hero
   ======================================================================== */
.daily-hero{
  position:relative;overflow:hidden;isolation:isolate;
  min-height:260px;padding:36px 18px 18px;margin-bottom:14px;
  border-radius:26px;border-color:rgba(255,223,159,.20);
  background:url("../scenes/soft-botanical-home.webp") center/cover no-repeat;
  box-shadow:0 18px 40px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.10)
}
.daily-hero::before{
  content:"";position:absolute;z-index:-1;inset:0;
  background:linear-gradient(180deg,rgba(9,14,30,.14),rgba(9,14,30,.48) 48%,rgba(8,13,28,.88) 100%)
}
.daily-hero::after{
  content:"✦";position:absolute;top:24px;left:50%;transform:translateX(-50%);
  color:#ffd16a;font-size:24px;text-shadow:0 0 18px rgba(255,205,100,.65)
}
.daily-date{font-size:clamp(34px,9vw,45px);color:#ffe09a;text-shadow:0 4px 18px rgba(0,0,0,.74);margin-top:34px}
.daily-diff{font-size:13px;color:#e7e8ef;text-shadow:0 2px 10px #000}
.daily-streak-row{margin-top:22px;gap:8px}
.streak-box{
  background:rgba(16,20,39,.60);backdrop-filter:blur(9px);
  border-color:rgba(255,255,255,.13);padding:12px 6px;border-radius:17px
}
.streak-box b{font-size:24px;color:#ffd06b}.streak-box span{color:#c8ccdc}
.week-strip{gap:7px;margin:2px 0 16px}
.week-day{padding:10px 2px;border-radius:17px;background:rgba(255,255,255,.055)}
.week-day.today{background:rgba(255,197,90,.10);box-shadow:0 0 0 2px rgba(255,200,90,.12),0 7px 20px rgba(255,181,57,.10)}
#dailyPlayBtn{border-radius:20px;font-size:17px;box-shadow:0 12px 28px rgba(255,171,61,.25)}
#dailyStatus{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.08)}

/* ========================================================================
   FREE BLOOM — four illustrated difficulty environments
   ======================================================================== */


.difficulty-grid{grid-template-columns:1fr;gap:10px}
.diff-card{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:124px;padding:18px 18px 15px;border-radius:22px;
  background-image:var(--diff-art);background-size:cover;background-position:center;
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 12px 28px rgba(0,0,0,.22);text-shadow:0 2px 8px rgba(0,0,0,.74)
}
.diff-card::before{
  content:"";position:absolute;z-index:-1;inset:0;
  background:linear-gradient(90deg,rgba(7,13,27,.88) 0%,rgba(7,13,27,.72) 48%,rgba(7,13,27,.22) 100%)
}
.diff-card::after{
  content:"›";position:absolute;right:16px;top:50%;transform:translateY(-50%);
  width:31px;height:31px;border-radius:50%;display:grid;place-items:center;
  background:rgba(12,18,33,.56);border:1px solid rgba(255,255,255,.16);
  color:#fff;font-size:22px;text-shadow:none
}
.diff-card h4{font-size:22px;color:#fff;margin-right:42px}
.diff-card .diff-meta{font-size:10.5px;color:#d0d5e4;margin-top:4px}.diff-card p{font-size:11.5px;color:#eceef5;max-width:72%;margin-top:8px}
.diff-card .diff-solved{background:rgba(4,9,18,.48);color:#c9cfdf;border-color:rgba(255,255,255,.12)}
.diff-card.active{
  border-color:#ffca5f;background-image:var(--diff-art);
  box-shadow:0 0 0 1px rgba(255,202,95,.50),0 0 28px rgba(255,188,61,.20),0 16px 34px rgba(0,0,0,.32)
}
.diff-card.active::after{content:"✓";color:#2b210c;background:#ffca5f;border-color:#ffe5aa;font-size:16px;font-weight:900}
.diff-card.active h4,.diff-card.active .diff-solved{color:#ffd06b}
.diff-relax::before{background:linear-gradient(90deg,rgba(7,24,31,.87),rgba(7,34,41,.63) 55%,rgba(7,20,28,.20))}
.diff-normal::before{background:linear-gradient(90deg,rgba(12,28,25,.88),rgba(17,47,36,.60) 55%,rgba(7,20,18,.18))}
.diff-hard::before{background:linear-gradient(90deg,rgba(35,15,19,.90),rgba(65,28,24,.62) 55%,rgba(35,14,18,.18))}
.diff-expert::before{background:linear-gradient(90deg,rgba(25,13,43,.92),rgba(55,29,82,.62) 55%,rgba(25,13,43,.15))}
#newBloomBtn{border-radius:20px;min-height:58px;font-size:17px;box-shadow:0 13px 30px rgba(255,171,61,.24)}
#freeStatus{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.08)}

/* ========================================================================
   MY GARDEN — actual garden scene, richer stats + collection
   ======================================================================== */
.garden-stats{gap:9px;margin-bottom:14px}
.gstat{
  position:relative;overflow:hidden;padding:14px 8px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
  border-color:rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)
}
.gstat::before{content:"✦";display:block;font-size:9px;color:rgba(255,203,97,.65);margin-bottom:3px}
.gstat b{font-size:23px;color:#ffd06b}.gstat span{font-size:8.5px;color:#aeb7d0}
.garden-scene{
  position:relative;isolation:isolate;aspect-ratio:16/10;border-radius:28px;
  background:url("../scenes/soft-botanical-home.webp") center 56%/cover no-repeat;
  border-color:rgba(255,228,178,.17);
  box-shadow:0 20px 46px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)
}
.garden-scene::before{
  content:"";position:absolute;z-index:1;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(4,9,18,.05),rgba(4,9,18,.12) 48%,rgba(4,9,18,.36) 100%)
}
/* Replace the old CSS-gradient fake landscape with the approved artwork. */







.garden-list{background:rgba(11,18,33,.34);border-color:rgba(255,255,255,.09);border-radius:24px;padding:12px 14px}
.garden-list>summary{color:#aeb9d5;font-size:11px}

.collection-grid{gap:9px}
.bloom-card{
  min-height:112px;padding:12px 7px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.04));
  border-color:rgba(255,255,255,.09)
}
.bloom-icon{width:50px;height:50px;margin-bottom:8px;background-size:88%;border-color:rgba(255,201,91,.34);background-color:rgba(15,21,36,.55);box-shadow:0 7px 16px rgba(0,0,0,.20)}
.bloom-card h4{font-size:12px}.bloom-card p{font-size:9px}
.bloom-card.locked{opacity:.34;filter:saturate(.35)}

/* ========================================================================
   GARDEN JOURNEY / CHAPTER MAP — scenic chapter identity
   ======================================================================== */
#journey .page-card{padding-bottom:18px}




















.journey-map{
  position:relative;isolation:isolate;overflow:hidden;padding:14px;border-radius:26px;
  background-image:var(--chapter-art);background-size:cover;background-position:center;
  border-color:rgba(255,255,255,.11)
}
.journey-map::before{
  content:"";position:absolute;z-index:-1;inset:0;
  background:linear-gradient(180deg,rgba(8,14,28,.86),rgba(8,14,28,.93)),radial-gradient(circle at 80% 0%,rgba(255,196,90,.12),transparent 42%);
  backdrop-filter:blur(5px)
}
.map-grid{gap:8px}
.lvl-row{
  min-height:59px;padding:9px 11px;border-radius:17px;
  background:linear-gradient(90deg,rgba(23,31,51,.88),rgba(17,25,43,.72));
  border-color:rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.035)
}
.lvl-row.current{border-color:#ffc85a;background:linear-gradient(90deg,rgba(73,54,31,.72),rgba(26,31,46,.78));box-shadow:0 0 0 1px rgba(255,200,90,.18)}
.lvl-num{width:36px;height:36px;border-color:rgba(255,206,106,.38);font-size:14px}
.lvl-art{width:38px;height:38px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.42))}
.lvl-body b{font-size:15px}.lvl-body span{font-size:10.5px}

/* ========================================================================
   SETTINGS — premium bottom sheet over blurred garden
   ======================================================================== */
.sheet{background:rgba(4,8,17,.70);backdrop-filter:blur(11px)}
.sheet::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:url("../scenes/soft-botanical-home.webp") center/cover no-repeat;filter:blur(8px) brightness(.38);transform:scale(1.05)
}
.sheet-panel{
  max-width:560px;max-height:92dvh;border-radius:30px 30px 0 0;padding:18px 18px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  background:linear-gradient(180deg,rgba(28,34,61,.97),rgba(12,23,42,.99));
  border-color:rgba(255,255,255,.13);box-shadow:0 -28px 70px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.06)
}
.sheet-head{padding:2px 0 13px}.sheet-head h3{font-size:24px}.sheet-head::after{background:linear-gradient(90deg,transparent,rgba(255,199,90,.55),transparent)}
.setting-row{min-height:58px;border-bottom-color:rgba(255,255,255,.075);font-size:13px}
.sr-ico{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:#ffc85a;background:rgba(255,200,90,.06);border:1px solid rgba(255,200,90,.20);flex:0 0 auto}
.sr-ico svg{width:19px;height:19px}
.sr-label{flex:1;margin-left:1px}
.lang-select{border-radius:12px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.11);padding:9px 11px}
.setting-note{padding:10px 0 2px;color:#8f9ab8}
.sheet-tools{border-color:rgba(192,168,255,.16);background:rgba(138,104,196,.06);border-radius:18px}
.sheet-rule{position:relative;overflow:hidden;border-radius:18px;padding:13px 14px;background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border-color:rgba(255,255,255,.09)}
.sheet-rule::after{content:"✿";position:absolute;right:12px;bottom:-7px;font-size:42px;color:rgba(167,129,224,.14)}
.sheet-rule.spectrum{background:linear-gradient(135deg,rgba(121,83,174,.18),rgba(255,255,255,.03));border-color:rgba(201,166,255,.28)}

/* ========================================================================
   Responsive polish
   ======================================================================== */
@media(max-width:520px){
  .page-card{padding:15px}
  #home{padding-left:12px;padding-right:12px}
  .quick-card{width:146px}
  
}
@media(max-width:390px){
  .quick-card{width:136px;min-height:146px;padding:12px}
  .goals{padding:11px}.goal-box b{font-size:15px}
  .daily-hero{min-height:238px;padding-left:12px;padding-right:12px}
  .daily-date{font-size:34px}
  .diff-card{min-height:116px;padding:15px}.diff-card h4{font-size:20px}
  .garden-scene{aspect-ratio:16/11}
  
  
}
@media(max-height:760px){.brand{padding:10px 0 4px}.brand::before{height:110px}
  .quick-card{min-height:130px}.goals{padding:10px}
  .cta-main{padding:10px 22px}.cta-main b{font-size:15px}
  #game .hud .icon-btn{width:38px;height:38px}.dock{gap:5px}.tool{min-height:41px}.color-btn{height:45px}
}
@media(max-height:650px){
  #home::after{background:linear-gradient(180deg,rgba(10,15,30,.45),rgba(10,16,30,.93))}
  .brand{display:none}
  #game .hud-strip{display:none}
}

/* ========================================================================
   HOME V3 — match the approved compact reference composition
   Logo at top, 3 equal cards, progress panel, scenic resume card.
   ======================================================================== */
#home{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:10px;
  min-height:100dvh;
  padding:12px 12px calc(76px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  background:#0d1424;
}
#home::before{
  background-image:url("../scenes/soft-botanical-home.webp");
  background-position:center top;
  background-size:cover;
  transform:none;
}
#home::after{
  background:
    linear-gradient(180deg,rgba(10,16,31,.12) 0%,rgba(10,16,31,.18) 26%,rgba(10,16,31,.34) 58%,rgba(10,16,31,.68) 100%),
    radial-gradient(82% 30% at 50% 10%,rgba(86,112,175,.12),transparent 74%),
    radial-gradient(100% 46% at 50% 100%,rgba(7,12,24,.12),rgba(7,12,24,.34) 70%,rgba(7,12,24,.56) 100%);
}
.home-bar{
  position:absolute;
  z-index:8;
  top:max(12px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)));
  left:12px;
  right:12px;
  margin:0;
  pointer-events:none;
}
.home-bar .home-brand{display:none}
.home-bar .icon-btn{
  margin-left:auto;
  pointer-events:auto;
  width:38px;height:38px;border-radius:14px;
  background:rgba(24,33,58,.44);
  backdrop-filter:blur(18px);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 8px 20px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.10);
}

/* Top logo block: no giant mid-screen brand anymore. */
#home .home-hero-brand{
  position:relative;
  z-index:2;
  margin:0;
  padding:22px 0 2px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-shadow:0 4px 18px rgba(0,0,0,.72);
}
#home .home-hero-brand::before{display:none}
#home .home-hero-brand .logo-mark{
  width:34px;height:34px;margin:0 auto 9px;
  opacity:.96;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.65));
}
#home .home-hero-brand h1{
  margin:0;
  display:flex;flex-direction:column;gap:0;
  color:#f8f4ec;
  filter:drop-shadow(0 2px 10px rgba(0,0,0,.20));
  background:none;
  -webkit-text-fill-color:initial;
}
#home .home-hero-brand h1 span{display:block}
#home .home-hero-brand p{display:none}

/* Three mode cards must be visible at once like the approved mockup. */
#home .quick-rail{
  position:relative;z-index:3;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  overflow:visible;
  padding:0;
  margin:0;
  scroll-snap-type:none;
}
#home .quick-card{
  width:auto;
  min-width:0;
  min-height:150px;
  padding:14px 12px 12px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px) saturate(1.05);
  background-image:none!important;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
#home .quick-card::before{
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.03) 36%,rgba(6,10,23,.12) 100%);
}
#home .quick-card::after{
  background:radial-gradient(92% 62% at 24% 0%,rgba(255,255,255,.16),transparent 70%), radial-gradient(60% 28% at 50% 100%,rgba(255,255,255,.04),transparent 70%);
}
#home .qc-daily{background:linear-gradient(160deg,#6f93d2 0%,#3e5c98 58%,#314879 100%)!important}
#home .qc-free{background:linear-gradient(160deg,#b385ea 0%,#8457c3 58%,#613d97 100%)!important}
#home .qc-garden{background:linear-gradient(160deg,#69c9a5 0%,#3aa982 58%,#26795e 100%)!important}
#home .qc-ico{
  line-height:1;
}
#home .qc-kicker{
  font-size:8px;
  line-height:1.15;
  letter-spacing:.13em;
  color:rgba(255,255,255,.72);
}
#home .qc-title{
  margin-top:3px;
  
  font-size:clamp(14px,4vw,17px);
  line-height:1.12;
  color:#fff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
#home .qc-cta{
  margin-top:10px;
  padding:6px 13px;
  border-radius:999px;
  font-size:10px;
  line-height:1;
  background:linear-gradient(180deg,#ffd77f,#ffbe56);
  color:#2c210b;
  box-shadow:0 6px 14px rgba(0,0,0,.20);
}
/* Daily badge was expanding into a black pill. Lock it to the small round dot
   from the reference, while still allowing ✓ / streak content. */
#home .qc-badge{display:none!important}

/* Progress panel: compact segmented layout exactly below the three cards. */
#home .goals{
  position:relative;z-index:3;
  padding:12px 12px 11px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(24,31,53,.78),rgba(18,26,44,.86));
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(16px);
}
#home .goals-head{margin-bottom:8px}
#home .goals-head h3{font-size:12px}
#home .goals-head span{font-size:11px}
#home .goals-row{
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-bottom:9px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:14px;
  overflow:hidden;
  background:rgba(255,255,255,.035);
}
#home .goal-box{
  border:0;
  border-right:1px solid rgba(255,255,255,.07);
  border-radius:0;
  background:transparent;
  padding:9px 4px 8px;
}
#home .goal-box:last-child{border-right:0}
#home .goal-box b{font-size:16px;color:#f7f7fb}
#home .goal-box span{font-size:8px;color:#8f99b5}
#home .goals-bar{height:4px;background:rgba(255,255,255,.08)}

/* The reference has one scenic resume card rather than a huge empty hero gap. */
#home .home-resume-card{
  position:relative;z-index:3;
  min-height:214px;
  margin:0;
  padding:18px 14px 18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.15);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  background:url("../scenes/chapter-meadow.webp") center 62%/cover no-repeat;
}
#home .home-resume-card::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,12,24,.10),rgba(7,12,24,.18) 40%,rgba(7,12,24,.46) 100%);
}
#home .home-resume-card>*{position:relative;z-index:1}
#home .resume-title{
  margin:auto 0 4px;
  width:100%;
  text-align:center;
  
  font-size:16px;
  font-weight:800;
  line-height:1.2;
  color:#fff;
  text-shadow:0 3px 12px rgba(0,0,0,.70);
}
#home .cta-main{
  width:min(74%,250px);
  min-width:0;
  max-width:none;
  margin:0 auto;
  padding:10px 20px;
  border-radius:16px;
  background:linear-gradient(180deg,#ffd77f,#ffbe56);
  box-shadow:0 10px 22px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.48);
}
#home .cta-main b{font-size:14px}
#home .cta-main span{display:none}
#home .cta-discard{display:none!important}

/* Keep the compact composition on short phones instead of dropping the brand. */
@media(max-height:760px){
  #home{gap:8px;padding-top:8px}
  #home .home-hero-brand .logo-mark{width:28px;height:28px;margin-bottom:5px}
  #home .quick-card{min-height:132px;padding:10px}
  #home .qc-ico{font-size:22px}
  #home .qc-kicker{margin-top:8px;font-size:7.5px}
  #home .qc-title{font-size:13px}
  #home .qc-cta{margin-top:7px;padding:5px 10px;font-size:9px}
  #home .goals{padding:10px}
  #home .goal-box{padding:7px 3px 6px}
  #home .home-resume-card{min-height:178px;padding:14px 12px}
}
@media(max-width:360px){
  #home{padding-left:9px;padding-right:9px}
  #home .quick-rail{gap:6px}
  #home .quick-card{padding:10px 8px;border-radius:16px}
  #home .qc-title{font-size:12px}
  #home .qc-kicker{font-size:7px;letter-spacing:.08em}
  #home .qc-cta{padding:5px 9px}
}

/* ========================================================================
   HOME V5 — refined logo mark + consistent vector mode icons
   ======================================================================== */
/* ==================================================================
   v12.3.3 — INTRO MOBILE COMPOSITION FIX
   ================================================================== */
.app-splash{background:#050918}
.app-splash-garden{inset:0;height:auto;background-image:linear-gradient(180deg,rgba(4,8,22,.72) 0%,rgba(7,10,25,.46) 42%,rgba(14,12,29,.30) 72%,rgba(6,8,19,.58) 100%),url("../scenes/soft-botanical-home.webp");background-position:center 51%;background-size:cover;background-repeat:no-repeat;opacity:.12;filter:brightness(.42) saturate(.68) blur(1.2px);transform:scale(1.06);animation:splashGardenSceneV3 4.05s cubic-bezier(.22,1,.36,1) forwards}
.app-splash-garden::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,9,23,.65),rgba(5,9,23,.20) 45%,rgba(4,7,17,.08) 68%,rgba(4,7,17,.42)),radial-gradient(circle at 50% 58%,rgba(247,173,125,.13),transparent 30%);pointer-events:none}
.app-splash-garden::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 61%,rgba(255,188,127,.18),transparent 34%);opacity:0;animation:splashGardenWarmthV3 4.05s ease forwards;pointer-events:none}
.app-splash-path{display:none}
.app-splash-backdrop{z-index:1;background:radial-gradient(circle at 50% 48%,rgba(111,91,214,.10),transparent 30%),linear-gradient(180deg,rgba(3,7,20,.34),rgba(7,8,22,.10))}
.app-splash-backdrop::after{background:radial-gradient(circle at 50% 53%,rgba(255,163,208,.09),transparent 28%);animation:splashDawnGlowV3 4.05s ease forwards}
.app-splash-petals{z-index:6}.app-splash-center{z-index:4;top:54%;width:min(45vw,220px);height:min(45vw,220px);transform:translate(-50%,-50%)}
.app-splash-glow{inset:8%;background:radial-gradient(circle,rgba(255,207,159,.42),rgba(255,133,204,.17) 34%,rgba(125,104,236,.06) 61%,transparent 74%);animation:splashCoreGlowV3 4.05s ease forwards}
.app-splash-bud{width:min(12vw,62px);height:min(18vw,90px);animation:splashBudV3 4.05s ease forwards}
.app-splash-bud::before{border-radius:55% 55% 42% 42%/76% 76% 32% 32%;clip-path:polygon(50% 0,76% 14%,94% 48%,78% 82%,50% 100%,22% 82%,6% 48%,24% 14%);background:radial-gradient(circle at 45% 18%,#fff0f7 0%,#f9a9d6 28%,#dc75c6 58%,#7d5abc 100%)}
.app-splash-blossom{width:min(30vw,150px);height:min(30vw,150px);animation:splashBlossomV3 4.05s ease forwards}
.app-splash-blossom .petal{width:34%;height:58%;margin:-48% 0 0 -17%;clip-path:polygon(50% 0,78% 15%,98% 48%,82% 79%,50% 100%,18% 79%,2% 48%,22% 15%);border-radius:54% 54% 40% 40%/70% 70% 36% 36%;background:radial-gradient(circle at 48% 20%,#fff1f7 0%,#f6afd8 29%,#e17ac6 55%,#8e67c8 82%,#684fa9 100%);box-shadow:0 0 14px rgba(255,188,229,.17),inset 0 -8px 13px rgba(88,59,151,.20)}
.app-splash-blossom .core{width:22%;height:22%;background:radial-gradient(circle,#fff8d6 0%,#ffd87e 54%,#eda354 82%,#b86867 100%);box-shadow:0 0 13px rgba(255,220,130,.38),0 0 28px rgba(255,167,108,.14)}
.app-splash-lattice{width:min(38vw,186px);height:min(38vw,186px);animation:splashLatticeV3 4.05s ease forwards;filter:drop-shadow(0 0 10px rgba(242,200,119,.05))}
.app-splash-lattice::before{inset:5%;border-width:1px;border-color:rgba(245,210,132,.27);box-shadow:none}.app-splash-lattice::after{inset:22%;border-width:1px;border-color:rgba(164,188,255,.19);box-shadow:none}.app-splash-lattice .ring{inset:11%;border-color:rgba(219,166,245,.19);border-width:1px}.app-splash-lattice .cross,.app-splash-lattice .cross::before{height:1px;width:68%;background:linear-gradient(90deg,transparent,rgba(245,210,132,.21),transparent)}.app-splash-lattice .orbit{display:none}
.app-splash-sparks{inset:4%}.app-splash-sparks span{width:4px;height:4px;box-shadow:0 0 8px rgba(255,213,125,.28)}
.app-splash-brand{z-index:8;top:29%;width:min(94vw,760px);padding:0 14px;animation:splashBrandV3 4.05s cubic-bezier(.22,1,.36,1) forwards}.app-splash-brand-mark{margin-bottom:7px}.app-splash-brand-mark .mini-flower{width:32px;height:32px}
.app-splash-title{font-size:clamp(38px,8.3vw,82px);letter-spacing:.075em;line-height:.94;font-weight:300;white-space:nowrap;background:linear-gradient(92deg,#f3acd6 0%,#e9c6e1 28%,#9fcbef 58%,#e8c97b 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 16px rgba(0,0,0,.18)}
.app-splash-sub{margin-top:10px;gap:10px;font-size:clamp(13px,2.35vw,24px);letter-spacing:.23em;color:#e6c37d;text-shadow:0 1px 10px rgba(0,0,0,.28)}.app-splash-sub::before,.app-splash-sub::after{width:min(11vw,76px);opacity:.70}
.app-splash-brand::before{width:min(74vw,560px);height:100px;animation:splashBrandHaloV3 4.05s ease forwards}.app-splash-brand-shine{width:min(82vw,620px);height:118px;animation:splashBrandShineV3 4.05s ease forwards}.app-splash-skip{z-index:10;background:rgba(4,7,17,.46);border-color:rgba(255,221,171,.14)}
@keyframes splashGardenSceneV3{0%{opacity:.10;transform:scale(1.06);filter:brightness(.36) saturate(.60) blur(1.4px)}45%{opacity:.15;transform:scale(1.05);filter:brightness(.40) saturate(.64) blur(1.1px)}60%{opacity:.24;transform:scale(1.04);filter:brightness(.49) saturate(.72) blur(.7px)}74%{opacity:.58;transform:scale(1.025);filter:brightness(.66) saturate(.82) blur(.3px)}88%{opacity:.90;transform:scale(1.01);filter:brightness(.78) saturate(.90) blur(0)}100%{opacity:1;transform:scale(1);filter:brightness(.84) saturate(.94) blur(0)}}
@keyframes splashGardenWarmthV3{0%,61%{opacity:0}78%{opacity:.44}100%{opacity:.68}}@keyframes splashDawnGlowV3{0%,55%{opacity:.07}75%{opacity:.25}100%{opacity:.16}}
@keyframes splashBudV3{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}7%{opacity:1}19%{opacity:1;transform:translate(-50%,-50%) scale(1)}30%{opacity:.72}39%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.04)}}
@keyframes splashBlossomV3{0%,16%{opacity:0;transform:translate(-50%,-50%) scale(.48) rotate(-4deg)}27%{opacity:1;transform:translate(-50%,-50%) scale(1.04) rotate(0)}43%{opacity:1;transform:translate(-50%,-50%) scale(1)}56%{opacity:.88}64%{opacity:.24;transform:translate(-50%,-50%) scale(.95)}70%,100%{opacity:0;transform:translate(-50%,-50%) scale(.89)}}
@keyframes splashCoreGlowV3{0%,14%{opacity:.10;transform:scale(.72)}30%{opacity:.40;transform:scale(1)}52%{opacity:.22;transform:scale(1.05)}64%{opacity:.05;transform:scale(1.14)}70%,100%{opacity:0;transform:scale(1.18)}}
@keyframes splashLatticeV3{0%,28%{opacity:0;transform:translate(-50%,-50%) scale(.78) rotate(-4deg)}40%{opacity:.62;transform:translate(-50%,-50%) scale(1) rotate(0)}52%{opacity:.46}61%{opacity:.12;transform:translate(-50%,-50%) scale(1.04) rotate(4deg)}68%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.07) rotate(6deg)}}
@keyframes splashBrandV3{0%,49%{opacity:0;transform:translateX(-50%) translateY(10px) scale(.987)}59%{opacity:.96;transform:translateX(-50%) translateY(0) scale(1)}70%,100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloV3{0%,51%{opacity:0;transform:translate(-50%,-50%) scale(.86)}63%{opacity:.62;transform:translate(-50%,-50%) scale(1)}100%{opacity:.15;transform:translate(-50%,-50%) scale(1.02)}}
@keyframes splashBrandShineV3{0%,56%{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) translateX(-24%)}64%{opacity:.70}76%{opacity:.48;transform:translate(-50%,-50%) rotate(-10deg) translateX(22%)}83%,100%{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) translateX(31%)}}
@media(max-width:680px){.app-splash-garden{background-position:center 52%}.app-splash-brand{top:27%;width:96vw;padding:0 10px}.app-splash-brand-mark .mini-flower{width:29px;height:29px}.app-splash-title{font-size:clamp(35px,10.4vw,58px);letter-spacing:.052em}.app-splash-sub{font-size:clamp(12px,3.5vw,17px);letter-spacing:.17em;gap:8px}.app-splash-sub::before,.app-splash-sub::after{width:min(8vw,34px)}.app-splash-center{top:55%;width:min(56vw,214px);height:min(56vw,214px)}.app-splash-blossom{width:min(35vw,138px);height:min(35vw,138px)}.app-splash-lattice{width:min(49vw,188px);height:min(49vw,188px)}.app-splash-petals span{width:12px;height:20px}}
@media(max-height:650px){.app-splash-brand{top:23%}.app-splash-center{top:54%;transform:translate(-50%,-50%) scale(.88)}.app-splash-skip{bottom:8px}}
@media(prefers-reduced-motion:reduce){.app-splash-garden{opacity:1!important;transform:none!important;filter:brightness(.84) saturate(.94)!important}.app-splash-center{display:none}.app-splash-brand{opacity:1!important;transform:translateX(-50%)!important}}

#home .home-prism-mark{
  width:42px;height:42px;margin:0 auto 8px;
  display:grid;place-items:center;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.24));
}
#home .home-prism-mark svg{
  display:block;width:100%;height:100%;overflow:visible;
}
/* Logo classes deliberately use pg-logo-* names. The old generic .petal class
   collided with the board-flower CSS and physically moved SVG petals apart. */
#home .home-prism-mark .pg-logo-petal{
  stroke:rgba(255,255,255,.20);stroke-width:.85;
}
#home .pg-logo-red{fill:#f05d67}
#home .pg-logo-orange{fill:#f4a23c}
#home .pg-logo-green{fill:#41b877}
#home .pg-logo-blue{fill:#37a8d8}
#home .pg-logo-violet{fill:#7b72dc}
#home .pg-logo-pink{fill:#d65ca9}
#home .pg-logo-core{fill:#ffe4a3;stroke:rgba(255,255,255,.58);stroke-width:.85}
#home .pg-logo-glint{fill:rgba(255,255,255,.90)}

#home .home-hero-brand{
  min-height:112px;
  padding-top:15px;
}
#home .home-hero-brand h1{
  
  font-size:clamp(22px,5.8vw,29px);
  font-weight:700;
  line-height:.90;
  letter-spacing:.145em;
  text-shadow:0 3px 12px rgba(0,0,0,.38);
}

#home .qc-ico{
  width:46px;height:46px;
  margin:1px auto auto;
  display:grid;place-items:center;
  align-self:center;
  font-size:0;
  color:rgba(248,250,255,.96);
  text-shadow:none;
  filter:drop-shadow(0 5px 10px rgba(0,0,0,.17));
}
#home .qc-ico svg{
  width:40px;height:40px;display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#home .qc-infinity svg{width:43px;height:43px;stroke-width:3.2}
#home .qc-sprout svg{width:41px;height:41px;stroke-width:2.7}

#home .quick-card{
  padding-top:15px;
}
#home .qc-kicker{
  width:100%;
  margin-top:10px;
}
#home .qc-title{width:100%}

/* A little more air and softness, closer to the approved concept image. */
#home .quick-card,
#home .goals,
#home .home-resume-card{
  -webkit-backdrop-filter:blur(16px) saturate(1.05);
  backdrop-filter:blur(16px) saturate(1.05);
}
#home .quick-card{
  box-shadow:0 16px 32px rgba(2,7,18,.14),inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.08);
}
#home .goals{
  box-shadow:0 15px 34px rgba(2,7,18,.14),inset 0 1px 0 rgba(255,255,255,.08);
}
#home .home-resume-card{
  box-shadow:0 18px 38px rgba(2,7,18,.16),inset 0 1px 0 rgba(255,255,255,.10);
}

@media(max-height:760px){
  #home .home-hero-brand{min-height:100px;padding-top:12px}
  #home .home-prism-mark{width:36px;height:36px;margin-bottom:6px}
  #home .home-hero-brand h1{font-size:22px}
  #home .qc-ico{width:40px;height:40px}
  #home .qc-ico svg{width:35px;height:35px}
  #home .qc-infinity svg{width:38px;height:38px}
}

/* ========================================================================
   JOURNEY V7 — real chapter-map composition
   Compact horizontal chapter rail + scenic hero + winding level path.
   ======================================================================== */
#journey{
  isolation:isolate;
  padding-left:12px;
  padding-right:12px;
}
#journey>.page-card{
  padding:8px 0 26px;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}




/* Chapter selector becomes one compact horizontal rail. */










/* Selected chapter gets one cinematic hero rather than another text panel. */








/* Map container: no more long stack of cards. */
#journey .journey-map::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:50%;top:48px;bottom:48px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(255,212,125,.10),rgba(255,212,125,.42) 12%,rgba(255,212,125,.22) 86%,rgba(255,212,125,.06));
  box-shadow:0 0 18px rgba(255,197,86,.14);
}

/* Each level is a stop on a winding garden trail. */
#journey .lvl-row{
  position:relative;
  width:74%;
  min-height:78px;
  padding:5px 6px;
  border:0;
  border-radius:18px;
  background:transparent;
  box-shadow:none;
  display:grid;
  grid-template-columns:68px minmax(0,1fr) 15px;
  align-items:center;
  gap:9px;
  overflow:visible;
}
#journey .lvl-row:nth-child(odd){align-self:flex-start}
#journey .lvl-row:nth-child(even){align-self:flex-end;grid-template-columns:15px minmax(0,1fr) 68px;text-align:right}
#journey .lvl-row:nth-child(even) .lvl-num{grid-column:3;grid-row:1}
#journey .lvl-row:nth-child(even) .lvl-art{grid-column:3;grid-row:1}
#journey .lvl-row:nth-child(even) .lvl-body{grid-column:2;grid-row:1}


/* connector from one stop toward the center trail */
#journey .lvl-row::before{
  content:"";
  position:absolute;
  top:50%;
  width:31%;
  height:2px;
  opacity:.62;
  background:linear-gradient(90deg,rgba(255,209,116,.52),rgba(255,209,116,.08));
  pointer-events:none;
}
#journey .lvl-row:nth-child(odd)::before{left:58px;transform:translateY(-50%) rotate(8deg);transform-origin:left center}
#journey .lvl-row:nth-child(even)::before{right:58px;transform:translateY(-50%) rotate(-8deg);transform-origin:right center;background:linear-gradient(270deg,rgba(255,209,116,.52),rgba(255,209,116,.08))}

/* Number + flower become one large circular map node. */
#journey .lvl-num{
  position:relative;
  grid-column:1;grid-row:1;
  width:58px;height:58px;
  border-radius:50%;
  border:2px solid rgba(201,211,236,.28);
  background:linear-gradient(180deg,rgba(25,34,57,.96),rgba(12,20,37,.96));
  color:#dce3f4;
  display:grid;
  place-items:center;
  font-weight:800;
  box-shadow:0 9px 22px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08);
  z-index:2;
}
#journey .lvl-art{
  grid-column:1;grid-row:1;
  width:42px;height:42px;
  justify-self:center;
  align-self:center;
  z-index:3;
  opacity:1;
  background-size:contain;
  filter:drop-shadow(0 4px 7px rgba(0,0,0,.45));
  pointer-events:none;
}
/* show the level number as a small badge instead of under the flower */
#journey .lvl-num{font-size:0}
#journey .lvl-body{
  position:relative;
  z-index:2;
  min-width:0;
  padding:9px 10px;
  border-radius:15px;
  background:linear-gradient(180deg,rgba(26,35,58,.73),rgba(16,25,43,.78));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 7px 18px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(10px);
}
#journey .lvl-row.done .lvl-body{border-color:rgba(95,214,164,.12)}
#journey .lvl-row.current .lvl-body{
  border-color:rgba(255,200,90,.32);
}

@media(max-width:390px){
  #journey{padding-left:9px;padding-right:9px}
  #journey .lvl-row{width:78%;grid-template-columns:62px minmax(0,1fr) 13px;gap:7px}
  #journey .lvl-row:nth-child(even){grid-template-columns:13px minmax(0,1fr) 62px}
  #journey .lvl-num{width:54px;height:54px}
  #journey .lvl-art{width:39px;height:39px}
  #journey .lvl-body{padding:8px 8px}
}

/* ==========================================================================
   Consolidated from: 08-typography.css
   ========================================================================== */
/* ============================================================================
   08-typography.css — PETALATTICE / TEK FONT KONTROL NOKTASI
   ============================================================================
   Oyundaki TÜM font-family seçimleri bu dosyadan yönetilir.

   Sadece aşağıdaki üç değişkeni değiştirmen yeterli:
     --font-ui      : küçük metinler, menüler, butonlar, açıklamalar
     --font-display : başlıklar, bölüm isimleri, büyük sayılar / marka
     --font-numeric : süre ve sayaçlar

   Her yerde TEK FONT kullanmak istersen üçünü de aynı değere ayarla.
   Örnek:
     --font-ui:"Arial",sans-serif;
     --font-display:"Arial",sans-serif;
     --font-numeric:"Arial",sans-serif;

   Harici font dosyası gerektirmeyen sistem fontları kullanıldığı için Netlify,
   Android, iOS ve masaüstünde güvenli fallback vardır.
   ============================================================================ */

:root{
  --font-ui:"SF Pro Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,system-ui,sans-serif;
  --font-display:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --font-numeric:"Iowan Old Style",Palatino,Georgia,"Times New Roman",serif;
}

/* Varsayılan: oyundaki her metin UI fontunu miras alır. */
html,body,button,input,select,textarea{
  font-family:var(--font-ui);
}

/* Başlık / marka / büyük bilgi dili. */
h1,h2,h3,h4,
.home-hero-brand h1,
.qc-title,
.cta-main b,
.gstat b,
.streak-box b,
.goal-box b,
.daily-date,
.diff-card h4,
.lvl-num,
.lvl-body b,
.resume-title{
  font-family:var(--font-display);
}

/* Sayaçlar ve süreler tek noktadan. */
.hud-timer span, .goals-head span{
  font-family:var(--font-numeric);
  font-variant-numeric:tabular-nums;
}

/* ==========================================================================
   Consolidated from: 09-journey-v8.css
   ========================================================================== */
/* 09-journey-v8.css
   Garden Journey polish pass.
   Goal: make the chapter area feel like an actual garden trail instead of
   alternating UI cards. The level names are now lightweight labels attached
   to large flower nodes on a single winding path.
*/




/* Smaller chapter rail: it should behave as a picker, not dominate the page. */






/* The chapter hero stays cinematic but is shorter, so the actual journey
   appears much earlier on a phone screen. */






/* ------------------------------------------------------------------------
   Winding trail
   ------------------------------------------------------------------------ */
#journey .journey-map{
  border-color:rgba(255,225,165,.11);
}
/* Remove the rigid vertical line from V7. */
/* One continuous, softly glowing garden trail. */

/* Every level occupies one invisible map band. No rectangular row card. */
#journey .lvl-row,
#journey .lvl-row:nth-child(even){
  border-radius:0;
  align-self:stretch;
  text-align:left;
}

/* Large flower stop. */
#journey .lvl-num,
#journey .lvl-row:nth-child(even) .lvl-num{
  transition:transform .13s ease,box-shadow .16s ease,border-color .16s ease;
}
#journey .lvl-art,
#journey .lvl-row:nth-child(even) .lvl-art{
  opacity:1;
  pointer-events:none;
}

/* Small number plate hanging off the node. */
#journey .lvl-check{
  box-shadow:0 4px 10px rgba(0,0,0,.22);
}

/* Labels are typography, not cards. This is the main visual change from V7. */
#journey .lvl-body,
#journey .lvl-row:nth-child(even) .lvl-body{
  right:auto;
  min-width:0;
  border-radius:0;
  backdrop-filter:none;
}
#journey .lvl-body span{
  margin-top:5px;
  font-size:10px;
  line-height:1.25;
  color:#aeb8cf;
  text-shadow:0 2px 7px rgba(0,0,0,.88);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* Finished stops feel grown-in rather than neon green UI buttons. */
#journey .lvl-row.done .lvl-body{border:0}

/* Only the active stop gets a real UI capsule. That makes the current goal
   obvious without turning all twelve stops back into a list. */
#journey .lvl-row.current .lvl-body{
  border-radius:13px;
}
#journey .lvl-row.locked .lvl-art{display:none}

@media(max-width:390px){
  
  
  
  #journey .journey-map{padding-left:8px;padding-right:8px}
  #journey .lvl-body span{font-size:9px}
}

/* ==========================================================================
   Consolidated from: 10-journey-v9.css
   ========================================================================== */
/* 10-journey-v9.css
   Garden Journey simplification pass.
   Goal: bring the screen back toward the original premium concept —
   less dashboard UI, less descriptive text, more calm scenic map.
*/

/* Remove the big page heading/subtitle block. The back button is enough. */




/* Chapter selector should feel secondary and compact. */









/* Scenic chapter hero, but without the unnecessary descriptive paragraph. */








/* The map becomes a calm scenic board, closer to the original concept art. */
#journey .journey-map::before{
  backdrop-filter:none;
}
/* A much softer, narrower path, more like a garden trail than a UI line. */
#journey .map-grid::before{
  inset:14px 11% 18px;
}

/* Layout: big nodes, but text is just text — no description lines, no boxes. */


/* Done/current/locked states are calmer and less UI-heavy. */
#journey .lvl-row.done .lvl-num{
  box-shadow:0 12px 24px rgba(0,0,0,.20),0 0 0 4px rgba(103,220,173,.05), inset 0 1px 0 rgba(255,255,255,.10);
}
#journey .lvl-row.current .lvl-body{
  margin-top:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

@media (max-width:390px){
  
  
  
  
  #journey .journey-map{padding:16px 8px 28px}
  #journey .map-grid::before{inset:12px 10% 16px}
  #journey .lvl-num,#journey .lvl-row:nth-child(even) .lvl-num{top:18px}
}

/* ==========================================================================
   Consolidated from: 11-journey-v10.css
   ========================================================================== */
/* 11-journey-v10.css
   Journey redesign: no top chapter strip, no big banner card, just a single
   premium map board with tiny chapter navigation and minimal text.
*/

/* Screen chrome */
#journey{
  padding-top:12px;
}




/* One single map board */
#journey .journey-map{
  position:relative;
  overflow:hidden;
  background-image:
    linear-gradient(180deg,rgba(4,9,20,.18) 0%,rgba(4,9,20,.20) 12%,rgba(4,9,20,.28) 40%,rgba(4,9,20,.38) 100%),
    var(--chapter-art);
  background-repeat:no-repeat;
}
#journey .journey-map::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
#journey .journey-map::after{
  display:none !important;
}

#journey .map-grid{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:100%;
  padding:0 0 8px;
}

/* Small floating chapter controls inside the map */
#journey .journey-floating-head{
  position:relative;
  display:grid;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 10px 24px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.06);
}
#journey .journey-head-copy{
  min-width:0;
  text-align:center;
}
#journey .journey-head-kicker{
  display:block;
  margin-bottom:2px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#d0a95b;
}
#journey .journey-head-copy strong{
  display:block;
  line-height:1;
  color:#f8f4ea;
  text-shadow:0 2px 8px rgba(0,0,0,.44);
}
#journey .journey-nav-btn{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(11,17,32,.42);
  color:#f1dfb1;
  line-height:1;
  box-shadow:0 8px 16px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.05);
}
#journey .journey-nav-btn:disabled{
  opacity:.3;
}

/* Decorative path only */
#journey .map-grid::before{
  content:"";
  position:absolute;
  z-index:0;
  left:12%;
  right:12%;
  pointer-events:none;
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M22 2 C28 6 69 8 76 14 S31 24 25 32 S67 41 73 48 S35 57 28 66 S65 74 72 82 S38 92 52 99' fill='none' stroke='%23e7c887' stroke-opacity='.33' stroke-width='1.2' stroke-linecap='round'/%3E%3Cpath d='M22 2 C28 6 69 8 76 14 S31 24 25 32 S67 41 73 48 S35 57 28 66 S65 74 72 82 S38 92 52 99' fill='none' stroke='%23fff3c7' stroke-opacity='.11' stroke-width='.48' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* Each level is just a stop on the path */
#journey .lvl-row,
#journey .lvl-row:nth-child(even){
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  min-height:98px;
  height:98px;
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  overflow:visible;
}
#journey .lvl-row::before{display:none!important}
#journey .lvl-row:active{transform:none}
#journey .lvl-row:active .lvl-num{transform:scale(.97)}

#journey .lvl-num,
#journey .lvl-row:nth-child(even) .lvl-num{
  position:absolute;
  top:14px;
  left:calc(23% - 32px);
  width:64px;
  height:64px;
  border-radius:50%;
  border:2px solid rgba(104,228,182,.84);
  font-size:0;
  display:grid;
  place-items:center;
}
#journey .lvl-row:nth-child(even) .lvl-num{left:calc(77% - 32px)}
#journey .lvl-art,
#journey .lvl-row:nth-child(even) .lvl-art{
  position:absolute;
  top:22px;
  left:calc(23% - 23px);
  width:46px;
  height:46px;
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.30));
}
#journey .lvl-row:nth-child(even) .lvl-art{left:calc(77% - 23px)}
#journey .lvl-num::after{
  content:attr(data-level);
  position:absolute;
  left:-6px;
  bottom:-6px;
  min-width:30px;
  height:25px;
  padding:0 6px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(17,24,43,.96);
  border:1.5px solid rgba(255,214,128,.60);
  color:#ffd77d;
  font-size:11px;
  line-height:1;
}
#journey .lvl-row:nth-child(even) .lvl-num::after{left:auto;right:-6px}
#journey .lvl-check{
  right:-4px;
  top:-4px;
  width:21px;
  height:21px;
  border:2px solid #111b30;
  background:#66ddb1;
  color:#163329;
  font-size:10px;
}

/* Minimal labels */
#journey .lvl-body,
#journey .lvl-row:nth-child(even) .lvl-body{
  position:absolute;
  top:35px;
  left:calc(23% + 42px);
  width:40%;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  text-align:left;
}
#journey .lvl-row:nth-child(even) .lvl-body{
  left:auto;
  right:calc(23% + 42px);
  text-align:right;
}
#journey .lvl-body b{
  display:block;
  font-size:18px;
  line-height:1.04;
  color:#f8f3ea;
  text-shadow:0 2px 10px rgba(0,0,0,.52);
}
#journey .lvl-body span{
  display:none !important;
}

#journey .lvl-row.done .lvl-num{
  border-color:rgba(104,228,182,.84);
}
#journey .lvl-row.current .lvl-num{
  border-color:#ffd06a;
  box-shadow:0 0 0 6px rgba(255,202,90,.06),0 0 24px rgba(255,193,68,.13),0 10px 22px rgba(0,0,0,.22);
}
#journey .lvl-row.current .lvl-body b{color:#ffe09d}
#journey .lvl-row.locked{opacity:.38;filter:saturate(.24)}
#journey .lvl-row.locked .lvl-check{display:none}

@media (max-width:390px){
  #journey .journey-map{margin:0 8px 12px;min-height:calc(100svh - 138px)}
  #journey .map-grid::before{left:11%;right:11%;top:80px;bottom:22px}
  #journey .lvl-row,#journey .lvl-row:nth-child(even){min-height:92px;height:92px}
  #journey .lvl-num,#journey .lvl-row:nth-child(even) .lvl-num{left:calc(23% - 30px);width:60px;height:60px}
  #journey .lvl-row:nth-child(even) .lvl-num{left:calc(77% - 30px)}
  #journey .lvl-art,#journey .lvl-row:nth-child(even) .lvl-art{left:calc(23% - 21px);top:21px;width:42px;height:42px}
  #journey .lvl-row:nth-child(even) .lvl-art{left:calc(77% - 21px)}
  #journey .lvl-body,#journey .lvl-row:nth-child(even) .lvl-body{top:34px;left:calc(23% + 38px);width:42%}
  #journey .lvl-row:nth-child(even) .lvl-body{left:auto;right:calc(23% + 38px)}
  #journey .lvl-body b{font-size:16px}
}

/* ==========================================================================
   Consolidated from: 12-garden-v13.css
   ========================================================================== */
/* 12-garden-v14.css
   My Garden refresh:
   - garden scene changes by completed chapter, not every level
   - much softer/glassier visual treatment
   - Free Bloom + Daily Bloom move into compact top cards
   - chapter collection remains the main content
*/


/* Scenic chapter-based garden stage */
#garden .garden-scene{
  isolation:isolate;
}
#garden .garden-scene.complete{
  box-shadow:
    0 20px 52px rgba(5,11,24,.34),
    0 0 26px rgba(255,198,92,.10),
    inset 0 1px 0 rgba(255,255,255,.09),
    inset 0 -18px 45px rgba(4,8,18,.14);
}
#garden .garden-scene.empty::before{
  background:
    radial-gradient(90% 58% at 50% 100%,rgba(120,144,196,.08),transparent 70%),
    linear-gradient(180deg,rgba(7,12,24,.18),rgba(7,12,24,.22));
}


/* Stats */
#garden .gstat,
#garden .garden-mini-card,
#garden .garden-list,
#garden .bloom-card{
  backdrop-filter:blur(14px) saturate(1.08);
  -webkit-backdrop-filter:blur(14px) saturate(1.08);
}
#garden .gstat{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:linear-gradient(180deg,rgba(27,39,66,.74),rgba(15,26,47,.84));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 12px 26px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
#garden .gstat::before{display:none!important}
#garden .gstat-icon{
  display:grid;
  place-items:center;
}
#garden .gstat b{
  display:block;
  max-width:100%;
  margin:0;
  line-height:1.05;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#garden .gstat span:not(.gstat-icon){
  display:block;
  max-width:100%;
}

/* Top mini cards for Daily / Free instead of long bottom sections */
#garden .garden-mini-card{
  min-width:0;
  border:1px solid rgba(255,255,255,.10);
}
#garden .garden-mini-head{
  display:flex;
  gap:10px;
  justify-content:space-between;
}
#garden .garden-mini-head b{
  color:#f8f4eb;
  font-size:19px;
  line-height:1;
}
#garden .mini-day{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
}
#garden .mini-day.done{
  box-shadow:0 0 0 1px rgba(111,224,182,.05) inset;
}
#garden .mini-day small{
  text-transform:uppercase;
}
#garden .mini-day b{
  line-height:1;
}

/* Main collection */
#garden .garden-list{
  margin:0;
  padding:0 10px 16px;
  border-radius:26px;
  background:linear-gradient(180deg,rgba(13,23,42,.74),rgba(10,18,35,.86));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 38px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}
#garden .garden-list > summary{
  min-height:52px;
  padding:0 2px;
  list-style:none;
  display:flex;
  align-items:center;
  color:#c8d1e3;
  font-size:10.6px;
  letter-spacing:.10em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(255,255,255,.055);
}
#garden .garden-list > summary::after{
  content:"⌃";
  margin-left:auto;
  color:#8f9ab2;
  font-size:12px;
}
#garden .garden-list:not([open]) > summary::after{content:"⌄"}
#garden .garden-list > summary::-webkit-details-marker{display:none}


#garden .collection-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
#garden .bloom-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  background:linear-gradient(180deg,rgba(29,42,67,.70),rgba(18,30,50,.86));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 10px 22px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.04);
}
#garden .bloom-icon{
  border-radius:14px;
  display:grid;
  place-items:center;
  background-position:center;
  background-repeat:no-repeat;
  color:#7d879f;
  font-size:21px;
}
#garden .bloom-card h4{
  max-width:100%;
  line-height:1.15;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
}
#garden .bloom-card p{
  margin:4px 0 0;
  font-size:8px;
  color:#8e99b3;
  text-align:center;
}
#garden .bloom-card.locked .bloom-icon{
  background:rgba(255,255,255,.018);
  border:1px dashed rgba(255,255,255,.11);
  border-radius:50%;
}


@media(max-width:390px){
  #garden .gstat-icon{margin-bottom:4px}
  #garden .garden-mini-head b{font-size:18px}
  
  
  
  
  
  
  #garden .garden-mini-days{gap:3px}
  #garden .mini-day{border-radius:10px}

  #garden .garden-list{padding-left:8px;padding-right:8px;border-radius:22px}
  #garden .collection-grid{gap:7px}
  #garden .bloom-card{padding:8px 4px}
}

/* ==========================================================================
   Consolidated from: 12-journey-v11.css
   ========================================================================== */
/* 12-journey-v11.css
   Full-screen Journey map + node layer fix.
   - The back button floats over the map instead of reserving an empty band.
   - The map fills the Journey screen edge-to-edge behind the bottom nav.
   - Flower art sits behind the node ring and the number badge always stays on top.
*/

/* Remove the empty purple header area. */
#journey{
  position:relative;
  padding:0 !important;
  min-height:100svh;
  overflow:visible;
  background:#0d1628;
}
body.show-tabs #journey{
  padding-bottom:0 !important;
}
#journey > .page-card{
  position:relative;
  width:100%;
  min-height:100svh;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}

/* Keep the existing back button, but make it an overlay on top of the scenery. */




/* One continuous map from the very top of the Journey screen. */
#journey .journey-map{
  margin:0;
  min-height:100svh;
  padding:14px 0 calc(88px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  border:0;
  border-radius:0;
  box-shadow:none;
  background-position:center top;
  background-size:cover;
}
#journey .journey-map::before{
  background:
    linear-gradient(180deg,rgba(5,11,23,.20) 0%,rgba(5,11,23,.15) 16%,rgba(5,11,23,.24) 55%,rgba(5,11,23,.36) 100%),
    radial-gradient(75% 28% at 50% 0%,rgba(255,219,139,.06),transparent 74%);
}

/* Leave room for the floating back button without creating a separate header. */
#journey .journey-floating-head{
  padding:8px 10px;
  border-radius:17px;
  background:rgba(12,20,38,.34);
  border-color:rgba(255,255,255,.09);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
#journey .journey-nav-btn{
  width:38px;
  height:38px;
  border-radius:12px;
  font-size:20px;
}
#journey .journey-head-kicker{font-size:9px}
#journey .journey-head-copy strong{font-size:18px}

/* Let the scenic path breathe a little more. */
#journey .map-grid{
  padding-bottom:4px;
}
#journey .map-grid::before{
  top:72px;
  bottom:20px;
  opacity:.34;
  filter:drop-shadow(0 0 7px rgba(255,211,118,.08));
}

/* ----------------------------------------------------------------------
   Node layering
   ----------------------------------------------------------------------
   Previously .lvl-art had a higher z-index than .lvl-num, so large petals
   could cover the number plaque. The ring is now a transparent foreground
   layer, the flower sits behind it, and the number/check badges sit above all.
*/
#journey .lvl-num,
#journey .lvl-row:nth-child(even) .lvl-num{
  z-index:6;
  background:
    radial-gradient(circle at 50% 50%,rgba(12,33,32,.16) 0 58%,rgba(9,26,25,.62) 59% 100%);
  border-color:rgba(103,226,180,.86);
  box-shadow:
    0 12px 24px rgba(0,0,0,.18),
    0 0 0 4px rgba(103,220,173,.035),
    inset 0 1px 0 rgba(255,255,255,.08);
  overflow:visible;
}
#journey .lvl-art,
#journey .lvl-row:nth-child(even) .lvl-art{
  z-index:5;
}
#journey .lvl-num::after{
  z-index:12;
  isolation:isolate;
  box-shadow:0 6px 14px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.05);
}
#journey .lvl-check{
  z-index:13;
}
#journey .lvl-body,
#journey .lvl-row:nth-child(even) .lvl-body{
  z-index:7;
}

/* Current and completed rings stay transparent enough to preserve the flower. */
#journey .lvl-row.done .lvl-num{
  background:
    radial-gradient(circle at 50% 50%,rgba(13,42,37,.13) 0 58%,rgba(10,33,30,.64) 59% 100%);
}
#journey .lvl-row.current .lvl-num{
  background:
    radial-gradient(circle at 50% 50%,rgba(78,54,24,.10) 0 58%,rgba(55,38,19,.70) 59% 100%);
}

@media(max-width:390px){
  #journey .journey-floating-head{
    margin-left:64px;
    margin-right:10px;
    padding:7px 8px;
  }
  #journey .journey-nav-btn{width:36px;height:36px}
  
}

/* ==========================================================================
   Consolidated from: 13-garden-v15.css
   ========================================================================== */
/* 13-garden-v15.css
   My Garden v15
   - A+B hybrid: top summary cards + tabbed archive
   - achievement-driven Free Bloom records
   - scalable chapter accordions for 50+ chapters
   - softer, single-scene chapter progression hero
*/

#garden .garden-scene{
  margin-bottom:14px;
  transition:filter .35s ease, box-shadow .35s ease;
}
#garden .garden-scene.empty{filter:saturate(.82) brightness(.84)}
#garden .garden-scene.complete{filter:saturate(1.06) brightness(1.03)}







#garden .garden-mini-card{
  background:linear-gradient(180deg,rgba(26,37,61,.62),rgba(15,24,44,.74));
  border-color:rgba(255,255,255,.11);
  box-shadow:0 14px 30px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.06);
}
#garden .garden-seg{
  font:inherit;
}
#garden .garden-seg.active{
  border-color:rgba(255,214,125,.24);
}













#garden .garden-substats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
#garden .garden-subcard{
  min-width:0;
  padding:12px 9px 10px;
  text-align:center;
  background:linear-gradient(180deg,rgba(27,39,66,.7),rgba(16,27,46,.8));
  border:1px solid rgba(255,255,255,.08);
}
#garden .garden-subcard small{
  display:block;
  font-size:7px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
#garden .garden-subcard b{
  display:block;
  margin-top:6px;
  font-size:15px;
}

#garden .garden-mode-grid{
  display:grid;
  grid-template-columns:1fr;
}
#garden .garden-mode-card,
#garden .garden-daily-feature,
#garden .garden-day-card{
  background:linear-gradient(180deg,rgba(29,42,67,.68),rgba(18,30,50,.82));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  box-shadow:0 12px 24px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.04);
}
#garden .garden-mode-card.locked{opacity:.7;filter:saturate(.65)}
#garden .garden-mode-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
#garden .garden-mode-flower{
  width:42px;
  height:42px;
  border-radius:14px;
  background-position:center;
  background-size:86%;
  background-repeat:no-repeat;
  background-color:rgba(255,255,255,.03);
  flex:0 0 42px;
}
#garden .garden-mode-copy{min-width:0}
#garden .garden-mode-copy h4{
  margin:0 0 2px;
  color:#faf3e4;
  font-size:13px;
}
#garden .garden-mode-copy p{
  margin:0;
  color:#8f9bb5;
  font-size:8px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
#garden .garden-mode-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#garden .garden-mode-metrics div{
  min-width:0;
  padding:9px 8px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.05);
}
#garden .garden-mode-metrics small,
#garden .garden-day-card small,
#garden .garden-daily-feature p{
  color:#91a0bc;
  font-size:7px;
  letter-spacing:.07em;
  text-transform:uppercase;
}
#garden .garden-mode-metrics b{
  display:block;
  margin-top:4px;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#garden .garden-daily-feature{
  padding:12px 13px;
  margin-bottom:12px;
}
#garden .garden-daily-feature b{
  display:block;
  margin:6px 0 4px;
  color:#fff2d3;
  font-size:16px;
}
#garden .garden-daily-feature p{
  margin:0;
  letter-spacing:.04em;
}
#garden .garden-activity-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#garden .garden-day-card{
  padding:10px 9px 9px;
  text-align:center;
}
#garden .garden-day-card b{
  display:block;
  margin-top:6px;
  color:#f7f0df;
  font-size:15px;
}
#garden .garden-day-card span{
  display:block;
  margin-top:4px;
  color:#8fa0bc;
  font-size:8px;
}
#garden .garden-day-card.done{
  border-color:rgba(112,226,185,.18);
  background:linear-gradient(180deg,rgba(40,66,68,.6),rgba(19,35,47,.84));
}
#garden .garden-day-card.done b{color:#93f3c7}

@media(max-width:390px){
  
  
  #garden .garden-archive-head{padding:12px 10px 10px}
  #garden .garden-seg{padding:8px 7px;font-size:8.2px}
  #garden .garden-substats{gap:6px}
  #garden .garden-subcard{padding:10px 6px 8px;border-radius:14px}
  #garden .garden-subcard b{font-size:13px}
  #garden .garden-mode-card{padding:10px}
  #garden .garden-mode-head{gap:8px}
  #garden .garden-mode-flower{width:38px;height:38px;flex-basis:38px}
  #garden .garden-mode-copy h4{font-size:12px}
  #garden .garden-mode-metrics{gap:6px}
  #garden .garden-mode-metrics b{font-size:11px}
  #garden .garden-day-card{padding:9px 8px}
}

/* ==========================================================================
   Consolidated from: 13-journey-v12.css
   ========================================================================== */
/* 13-journey-v12.css
   Final Journey cleanup: remove the redundant back button completely.
   Bottom navigation is the only way back to Home, so the map can use the
   full width at the top without reserving space for a floating control.
*/



#journey .journey-map{
  padding-top:12px;
}

#journey .journey-floating-head{
  margin:0 12px 8px;
  min-height:auto;
  max-width:960px;
  grid-template-columns:38px minmax(0,1fr) 38px;
  align-items:center;
  padding:10px 12px;
}
#journey .journey-head-copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
}
#journey .journey-head-copy strong{
  font-size:clamp(16px,3vw,20px);
  line-height:1.05;
}
#journey .journey-region{
  margin-top:1px;
  font-size:10px;
}
#journey .journey-star-score{
  margin-top:2px;
  font-size:10px;
  line-height:1.15;
}
#journey .journey-head-copy .journey-bloom-mix{
  margin-top:4px;
  width:54px;
  height:28px;
}
#journey .map-grid::before{
  top:108px;
}
#journey .journey-floating-head + .lvl-row{
  margin-top:10px;
}

@media(max-width:390px){
  #journey .journey-map{
    padding-top:10px;
  }
  #journey .journey-floating-head{
    margin:0 10px 8px;
    grid-template-columns:36px minmax(0,1fr) 36px;
    padding:9px 10px;
  }
  #journey .journey-head-copy strong{font-size:17px}
  #journey .journey-region{font-size:9px}
  #journey .journey-star-score{font-size:9px}
  #journey .journey-head-copy .journey-bloom-mix{width:50px;height:26px}
  #journey .map-grid::before{top:100px}
  #journey .journey-floating-head + .lvl-row{margin-top:8px}
}

/* ==========================================================================
   Consolidated from: 14-garden-v15-scale.css
   ========================================================================== */
/* 14-garden-v15-scale.css
   Scale + evolution pass for My Garden.
   One persistent garden image, chapter-by-chapter physical additions, and a
   collection browser that stays compact with 50+ chapters / 1000+ levels.
*/

/* The scene itself stays calm; progress is expressed by real overlay objects. */













/* Five-chapter milestones. They remain quiet enough not to look pasted on. */










/* A+B archive: compact summary above, switchable detailed panels below. */
#garden .garden-archive{
  margin-top:0;
}
#garden .garden-archive-head{
  z-index:2;
  backdrop-filter:blur(16px) saturate(1.08);
  -webkit-backdrop-filter:blur(16px) saturate(1.08);
}

/* Scalable collection browser: only the selected chapter's flower grid exists. */
#garden .garden-chapter-browser{
  background:linear-gradient(180deg,rgba(28,40,65,.62),rgba(16,27,47,.75));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 24px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.04);
}
#garden .garden-chapter-current{
  grid-template-columns:1fr auto;
}
#garden .garden-chapter-current small{
  grid-column:1/-1;
  color:#8f9db8;
  font-size:7.5px;
  letter-spacing:.10em;
  text-transform:uppercase;
}
#garden .garden-chapter-current b{
  min-width:0;
}
#garden .garden-chapter-current span{
  color:#ffd58a;
  font-size:10px;
}






#garden .garden-single-chapter-grid{
  padding-top:2px;
}

/* ==========================================================================
   Consolidated from: 15-garden-showcase.css
   ========================================================================== */
/* 15-garden-showcase.css
   Final My Garden styling based on the approved visual reference.
   - static premium flower-garden hero (no pasted chapter overlays)
   - blurred garden artwork behind the entire screen
   - warm gold + navy glass panels
   - achievement-led Free Bloom summary
   - Daily Bloom streak summary
   - archive tabs + scalable chapter jump selector
*/

#garden{
  padding:14px 10px 26px;
}
#garden > .page-card{
  max-width:760px;
  margin:0 auto;
  padding:0 0 18px;
  border:0;
  box-shadow:none;
}


/* Hero: keep the art clean. */
#garden .garden-scene{
  position:relative;
  width:100%;
  aspect-ratio:2.02/1;
  margin:0 0 12px;
  border-radius:28px;
  overflow:hidden;
  background-image:url("../scenes/soft-botanical-home.webp")!important;
  background-size:cover!important;
  background-position:center 53%!important;
  filter:none!important;
  border:1px solid rgba(246,205,126,.44);
}
#garden .garden-scene::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  backdrop-filter:none!important;
  background:
    linear-gradient(180deg,rgba(4,9,18,.015),rgba(4,9,18,.08) 56%,rgba(4,9,18,.17)),
    radial-gradient(90% 34% at 50% 100%,rgba(255,199,91,.06),transparent 70%)!important;
}
#garden .garden-scene::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 52px rgba(3,7,16,.10)!important;
  opacity:1!important;
}


/* Shared premium surface language */
#garden .gstat,
#garden .garden-mini-card,
#garden .garden-archive,
#garden .garden-mode-card,
#garden .garden-subcard,
#garden .garden-day-card,
#garden .garden-daily-feature,
#garden .garden-chapter-browser,
#garden .bloom-card{
  border-color:rgba(238,194,112,.34)!important;
  background:linear-gradient(180deg,rgba(22,34,58,.80),rgba(10,22,42,.88))!important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 0 0 1px rgba(255,214,137,.015)!important;
  backdrop-filter:blur(15px) saturate(1.04)!important;
  -webkit-backdrop-filter:blur(15px) saturate(1.04)!important;
}

/* Four top stats */
#garden .garden-stats{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin:0 0 10px!important;
}
#garden .gstat{
  min-width:0;
  min-height:92px!important;
  padding:10px 4px 9px!important;
  border-radius:18px!important;
}
#garden .gstat-icon{
  width:24px!important;
  height:24px!important;
  margin-bottom:5px!important;
  color:#ffc966!important;
  filter:drop-shadow(0 0 8px rgba(255,193,86,.12));
}
#garden .gstat:nth-child(2) .gstat-icon{color:#70d9dc!important}
#garden .gstat:nth-child(3) .gstat-icon{color:#f3a758!important}
#garden .gstat:nth-child(4) .gstat-icon{color:#ffd06a!important}
#garden .gstat-icon svg{width:23px!important;height:23px!important}
#garden .gstat b{
  font-size:clamp(15px,4.5vw,20px)!important;
  color:#f9f4e9!important;
  text-shadow:0 2px 8px rgba(0,0,0,.25);
}
#garden .gstat span:not(.gstat-icon){
  margin-top:6px!important;
}

/* Achievement pair */
#garden .garden-mini-panels{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  margin:0 0 10px!important;
}
#garden .garden-streak-focus{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
#garden .garden-streak-focus b{line-height:1}
#garden .garden-mini-days{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
}
#garden .mini-day{
  background:rgba(255,255,255,.027)!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
#garden .mini-day.done{
  background:linear-gradient(180deg,rgba(99,216,171,.10),rgba(255,255,255,.02))!important;
  border-color:rgba(96,220,174,.20)!important;
}
#garden .mini-day b{color:#f7f0e2!important}
#garden .mini-day.done b{color:#7ce8b8!important}

/* Archive */
#garden .garden-archive{
  margin:0!important;
  padding:0 0 14px!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
#garden .garden-archive-head{
  position:relative!important;
  top:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:14px 12px 11px!important;
  background:linear-gradient(180deg,rgba(18,31,52,.70),rgba(13,25,45,.44))!important;
  border-bottom:1px solid rgba(241,197,111,.14)!important;
}
#garden .garden-archive-title{
  margin:0!important;
  line-height:1!important;
}
#garden .garden-archive-title::after{
  content:"❧";
  margin-left:5px;
  color:#d2a451;
  font-size:14px;
}
#garden .garden-segments{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  padding:3px!important;
  border-radius:999px!important;
  background:rgba(8,17,33,.42)!important;
  border:1px solid rgba(238,193,107,.16)!important;
}
#garden .garden-seg{
  min-width:0!important;
  min-height:38px!important;
  padding:8px 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
}
#garden .garden-seg.active{
  background:
    radial-gradient(80% 130% at 50% 100%,rgba(255,205,99,.16),transparent 70%),
    linear-gradient(180deg,rgba(98,76,43,.42),rgba(40,35,31,.30))!important;
  border:1px solid rgba(248,197,98,.55)!important;
  box-shadow:0 0 20px rgba(255,188,71,.08),inset 0 1px 0 rgba(255,255,255,.07)!important;
}
#garden .garden-panel-stack{padding:12px!important;min-height:190px!important}
#garden .garden-panel.hidden{display:none!important}

/* Chapter browser */
#garden .garden-chapter-browser{
  display:grid!important;
  grid-template-columns:44px 38px minmax(0,1fr) auto 44px!important;
  gap:8px!important;
  align-items:center!important;
  margin-bottom:10px!important;
  padding:10px!important;
  border-radius:17px!important;
}
#garden .garden-chapter-nav{
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
  border:1px solid rgba(238,194,112,.22)!important;
  background:rgba(255,255,255,.025)!important;
  color:#ffc96a!important;
  font:inherit!important;
  font-size:25px!important;
}
#garden .garden-chapter-nav:disabled{opacity:.28!important}
#garden .garden-chapter-flower{
  width:38px;
  height:38px;
  border-radius:50%;
  background-position:center;
  background-size:82%;
  background-repeat:no-repeat;
  background-color:rgba(255,255,255,.03);
  border:1px solid rgba(245,201,116,.25);
  box-shadow:0 8px 18px rgba(0,0,0,.16);
}
#garden .garden-chapter-current{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-width:0!important;
  gap:3px!important;
}
#garden .garden-chapter-current b{
  max-width:100%;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#garden .garden-chapter-jump{
  position:relative;
  display:block;
  max-width:100%;
  line-height:1;
  text-transform:uppercase;
  cursor:pointer;
}
#garden .garden-chapter-jump select{
  position:absolute;
  inset:0;
  width:100%;
  opacity:0;
  cursor:pointer;
}
#garden .garden-chapter-score{
  color:#ffd06b;
  font-size:11px;
  white-space:nowrap;
}


/* Collection: scrollable gallery instead of a huge wall. */
#garden .garden-single-chapter-grid{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:clamp(108px,30vw,132px)!important;
  grid-template-columns:none!important;
  gap:9px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:3px 1px 8px!important;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
}
#garden .garden-single-chapter-grid::-webkit-scrollbar{display:none}
#garden .bloom-card{
  scroll-snap-align:start;
  min-height:168px!important;
  padding:10px 7px 9px!important;
  border-radius:17px!important;
}
#garden .bloom-icon{
  width:88px!important;
  height:88px!important;
  flex:0 0 88px!important;
  margin:3px auto 5px!important;
  background-size:90%!important;
  filter:drop-shadow(0 7px 9px rgba(0,0,0,.20))!important;
}
#garden .bloom-card h4{
  margin:auto 0 0!important;
  color:#f7f1e6!important;
  font-size:10.5px!important;
}
#garden .bloom-master{
  margin-top:7px;
  color:#f6b94e;
  font-size:8px;
  letter-spacing:.13em;
  white-space:nowrap;
  text-shadow:0 0 8px rgba(255,184,71,.10);
}
#garden .bloom-card.locked{opacity:.30!important;filter:saturate(.25)!important}

/* Detail tabs keep the same premium language. */
#garden .garden-substats{gap:7px!important;margin-bottom:10px!important}
#garden .garden-subcard{border-radius:14px!important}
#garden .garden-subcard small{color:#98a5bb!important}
#garden .garden-subcard b{color:#f7d99c!important}
#garden .garden-mode-grid{gap:9px!important}
#garden .garden-mode-card{border-radius:17px!important;padding:11px!important}
#garden .garden-mode-metrics div{background:rgba(255,255,255,.025)!important}
#garden .garden-mode-metrics b{color:#ffd37c!important}
#garden .garden-daily-feature{border-radius:17px!important}
#garden .garden-day-card{border-radius:14px!important}

@media(max-width:390px){
  #garden{padding-left:8px;padding-right:8px}
  #garden .garden-scene{aspect-ratio:1.92/1;border-radius:24px}
  #garden .garden-stats{gap:6px!important}
  #garden .gstat{min-height:84px!important;padding:8px 3px!important;border-radius:15px!important}
  #garden .gstat-icon{width:20px!important;height:20px!important}
  #garden .gstat-icon svg{width:19px!important;height:19px!important}
  #garden .gstat b{font-size:14px!important}

  #garden .garden-archive{border-radius:21px!important}
  #garden .garden-archive-title{font-size:13px!important}
  #garden .garden-panel-stack{padding:9px 8px!important}
  #garden .garden-chapter-browser{
    grid-template-columns:40px 34px minmax(0,1fr) auto 40px!important;
    gap:6px!important;
    padding:8px!important;
  }
  #garden .garden-chapter-nav{width:40px!important;height:40px!important;border-radius:12px!important}
  #garden .garden-chapter-flower{width:34px;height:34px}
  #garden .garden-chapter-current b{font-size:12.5px!important}
  #garden .garden-chapter-jump{font-size:6.8px}
  #garden .garden-chapter-score{font-size:9.5px}
  #garden .garden-single-chapter-grid{grid-auto-columns:clamp(102px,31vw,118px)!important;gap:7px!important}
  #garden .bloom-card{min-height:150px!important;border-radius:15px!important}
  #garden .bloom-icon{width:76px!important;height:76px!important;flex-basis:76px!important}
  #garden .bloom-card h4{font-size:9.5px!important}
}

/* ==========================================================================
   Consolidated from: 16-game-v20.css
   ========================================================================== */
/* 16-game-v20.css
   Premium gameplay pass: scenic chapter backdrop, compact glass HUD,
   board-first layout, softer dock and no 3x3 completion bloom/tint.
*/

#game{
  --game-scene-art:url("../scenes/chapter-meadow.webp");
  isolation:isolate;
}
#game::before,
#game::after{
  position:absolute;
  inset:0;
  pointer-events:none;
}
#game::before{
  z-index:0;
}
#game::after{
  z-index:0;
}
#game .game-shell{
  position:relative;
  z-index:1;
  justify-content:flex-start;
}

/* ---- premium compact HUD ---- */
#game .hud{
  order:-1;
  backdrop-filter:blur(16px) saturate(1.05);
  -webkit-backdrop-filter:blur(16px) saturate(1.05);
}
#game .hud .icon-btn{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
#game .hud .icon-btn svg{
  width:21px;
  height:21px;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#game .hud-title{
  min-width:0;
  padding-left:1px;
}
#game .hud-title h2{
  margin:0;
  line-height:1.02;
  letter-spacing:.005em;
  text-shadow:0 2px 9px rgba(0,0,0,.28);
}
#game .hud-title p{
  margin:4px 0 0;
  line-height:1;
  letter-spacing:.035em;
}
#game .hud-timer small{
  margin-top:2px;
  font-size:7px;
  color:#8f9bb6;
  white-space:nowrap;
}

/* ---- board is the hero ---- */
:is(#game,#loadoutStage) .board-stage{
  order:0;
  position:relative;
  width:100%;
}
:is(#game,#loadoutStage) .board-stage::before{
  content:"";
  position:absolute;
  inset:5% 2% -5%;
  border-radius:32px;
  background:radial-gradient(70% 70% at 50% 44%,rgba(123,147,201,.12),transparent 74%);
  filter:blur(10px);
  pointer-events:none;
}
:is(#game,#loadoutStage) .board{
  position:relative;
  z-index:1;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
:is(#game,#loadoutStage) .cell.c3,
:is(#game,#loadoutStage) .cell.c6{
  border-right:2px solid rgba(230,235,249,.34);
}
:is(#game,#loadoutStage) .cell.r3,
:is(#game,#loadoutStage) .cell.r6{
  border-bottom:2px solid rgba(230,235,249,.34);
}

/* 3×3 completion must never leave a persistent tint/flower again. */




/* Row/column feedback stays, but much calmer. */
@keyframes cell-pop-v20{
  0%{transform:scale(1)}
  45%{transform:scale(1.10)}
  100%{transform:scale(1)}
}
:is(#game,#loadoutStage) .cell.wave::after{
  background:radial-gradient(circle at 50% 50%,rgba(255,218,136,.36),transparent 72%);
  animation-duration:.36s;
}

/* ---- progress line ---- */
#game .hud-strip{
  order:1;
  max-width:none;
  padding:0;
}
#game .progress-mini{
  border-radius:99px;
  overflow:hidden;
}

/* ---- one coherent bottom control tray ---- */
#game .dock{
  order:2;
  --dock-w:100%;
  width:100%;
  backdrop-filter:blur(17px) saturate(1.06);
  -webkit-backdrop-filter:blur(17px) saturate(1.06);
}
#game .dock-tools,
#game .palette{
  width:100%;
  margin:0;
  gap:6px;
}
#game .tool.active .tool-lbl{font-weight:700}
#game .tool:disabled{opacity:.26}
#game .color-btn:active{
  transform:scale(.94);
}
#game .color-btn .remain-badge{
  border-width:1.5px;
  border-color:#111d32;
}

/* Notes / special mechanics should read clearly over the softer board. */

@media(max-width:390px){
  #game .hud-timer{min-width:50px;padding:4px 5px}
  #game .hud-timer span{font-size:16.5px}
  #game .dock{gap:6px}
  #game .tool{border-radius:12px}
}

@media(max-height:720px){
  #game .game-shell{gap:5px}
}

/* ==========================================================================
   Consolidated from: 16-garden-v17.css
   ========================================================================== */
/* 16-garden-v17.css
   My Garden polish pass.
   - Fixes the missing full-screen garden background.
   - Keeps the hero as a clean static flower field.
   - Removes wrapping "0 solved" copy from Free Bloom chips.
   - Rebalances Free / Daily cards and cleans typography.
*/

/* The previous pseudo-background was behind the section's own background due
   to a negative z-index. Keep it inside the stacking context instead. */
#garden{
  position:relative!important;
}
#garden::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  inset:-34px!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(4,9,20,.26) 0%,rgba(5,11,24,.54) 34%,rgba(4,9,20,.78) 72%,rgba(3,8,18,.91) 100%),
    url("../scenes/soft-botanical-home.webp") center top / cover no-repeat!important;
  filter:blur(8px) saturate(.88) brightness(.68)!important;
  transform:scale(1.07)!important;
  transform-origin:top center!important;
  opacity:.92!important;
}
#garden > .page-card{
  position:relative!important;
}

/* Softer hero separation from the background. */
#garden .garden-scene{
  border-color:rgba(243,203,125,.32)!important;
  box-shadow:
    0 18px 44px rgba(0,0,0,.25),
    0 0 30px rgba(255,195,87,.035),
    inset 0 1px 0 rgba(255,255,255,.09),
    inset 0 -28px 48px rgba(4,9,18,.12)!important;
}

/* Typography cleanup. */
#garden .garden-mini-kicker{
  text-transform:uppercase!important;
}
#garden .gstat span:not(.gstat-icon){
  color:#aeb8ca!important;
  font-family:var(--font-ui)!important;
  font-size:7.4px!important;
  font-weight:500!important;
  line-height:1.12!important;
  text-transform:none!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}
#garden .gstat b{
  font-variant-numeric:tabular-nums!important;
}

/* Keep both achievement cards visually balanced. */
#garden .garden-mini-card{
  display:flex!important;
  flex-direction:column!important;
}

/* Free Bloom compact achievement block. */








/* No secondary "0 solved" line. Each chip is one clean row:
   flower · difficulty · count · record. */









/* Daily Bloom: use two short metrics instead of a sentence. */
#garden .garden-streak-focus{
  margin-top:9px!important;
}
#garden .garden-streak-focus span{
  white-space:nowrap!important;
}
#garden .garden-streak-focus b{
  color:#f7f2e7!important;
  font-variant-numeric:tabular-nums!important;
}
#garden .garden-daily-metrics{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  margin-top:6px!important;
}
#garden .garden-daily-metrics>span{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:5px!important;
  background:rgba(255,255,255,.025)!important;
  border:1px solid rgba(255,255,255,.045)!important;
}
#garden .garden-daily-metrics small{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#9eabc0!important;
  line-height:1!important;
}
#garden .garden-daily-metrics b{
  flex:0 0 auto!important;
  color:#ffd172!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
}
#garden .mini-day{
  padding:5px 2px!important;
}
#garden .mini-day small{
  font-size:6.3px!important;
  color:#9faac0!important;
}
#garden .mini-day b{
  font-size:9.5px!important;
}

/* Archive copy is cleaner and less shouty. */
#garden .garden-seg{
  font-family:var(--font-ui)!important;
  letter-spacing:0!important;
}
#garden .garden-chapter-current b{
  font-family:var(--font-ui)!important;
  font-weight:650!important;
}
#garden .garden-chapter-score{
  font-family:var(--font-numeric)!important;
  font-variant-numeric:tabular-nums!important;
}

@media(max-width:390px){
  #garden::before{
    inset:-26px!important;
    background-position:center top!important;
    filter:blur(7px) saturate(.86) brightness(.66)!important;
  }
  
  
  
  
  
  
  
  
  

  #garden .garden-streak-focus{margin-top:7px!important}
  #garden .garden-daily-metrics{margin-top:5px!important}

  #garden .gstat span:not(.gstat-icon){font-size:6.7px!important}
}

/* ==========================================================================
   Consolidated from: 17-garden-v18.css
   ========================================================================== */
/* 17-garden-v18.css
   My Garden mobile cleanup:
   - real page-level garden artwork, no hidden pseudo-background
   - Free Bloom simplified to records + four clean difficulty rows
   - Free / Daily equal-height and aligned
   - typography and archive copy cleaned up
*/

/* The artwork is placed directly on BODY while My Garden is open. This avoids
   pseudo-element stacking/clipping issues on mobile Chrome. */
body.garden-active{
  background:
    linear-gradient(180deg,rgba(5,10,22,.46) 0%,rgba(5,10,22,.66) 46%,rgba(3,8,18,.86) 100%),
    url("../scenes/soft-botanical-home.webp") center top / cover fixed no-repeat!important;
}
#garden{
  background:transparent!important;
  overflow:visible!important;
  isolation:auto!important;
}
#garden::before{
  display:none!important;
}
#garden::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(85% 26% at 50% 4%,rgba(112,144,207,.08),transparent 76%),
    linear-gradient(180deg,rgba(7,14,28,.04),rgba(4,9,20,.30) 72%,rgba(3,8,18,.46) 100%)!important;
}
#garden > .page-card{
  z-index:1!important;
  background:transparent!important;
}

/* Let the page artwork breathe through the surfaces. */
#garden .gstat,
#garden .garden-mini-card,
#garden .garden-archive{
  background:linear-gradient(180deg,rgba(16,30,53,.72),rgba(9,20,39,.78))!important;
  border-color:rgba(232,190,109,.27)!important;
  box-shadow:
    0 14px 30px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.055)!important;
  backdrop-filter:blur(15px) saturate(1.05)!important;
  -webkit-backdrop-filter:blur(15px) saturate(1.05)!important;
}

/* Mini achievements: same height, same rhythm. */
#garden .garden-mini-panels{
  gap:8px!important;
  align-items:stretch!important;
}
#garden .garden-mini-card{
  height:202px!important;
  min-height:202px!important;
  padding:12px!important;
  border-radius:20px!important;
  overflow:hidden!important;
}
#garden .garden-mini-head{
  min-height:26px!important;
  margin:0 0 8px!important;
  align-items:center!important;
}
#garden .garden-mini-kicker{
  font-family:var(--font-ui)!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.10em!important;
  color:#f0e8d8!important;
  white-space:nowrap!important;
}

/* FREE BLOOM -------------------------------------------------------------- */
#garden .garden-free-head{
  display:flex!important;
  justify-content:space-between!important;
}
#garden .garden-free-trophy{
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  display:grid!important;
  place-items:center!important;
  color:#ffc760!important;
  border-radius:9px!important;
  background:rgba(255,199,96,.08)!important;
  border:1px solid rgba(255,199,96,.16)!important;
}
#garden .garden-free-trophy svg{
  width:19px!important;
  height:19px!important;
}
#garden .garden-free-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4px!important;
  margin-bottom:8px!important;
}
#garden .garden-free-summary>span{
  min-width:0!important;
  min-height:39px!important;
  padding:6px 4px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:4px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.030)!important;
  border:1px solid rgba(255,255,255,.050)!important;
}
#garden .garden-free-summary small{
  max-width:100%!important;
  color:#929fb7!important;
  font-size:6.2px!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#garden .garden-free-summary b{
  color:#ffd173!important;
  font-family:var(--font-numeric)!important;
  font-size:9.3px!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
}
#garden .garden-free-mode{
  grid-template-columns:20px minmax(0,1fr) auto!important;
}
#garden .garden-free-mode b{
  white-space:nowrap!important;
}

/* DAILY BLOOM ------------------------------------------------------------- */
#garden .garden-streak-focus{
  min-height:52px!important;
  margin:0 0 7px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.030)!important;
  border:1px solid rgba(255,255,255,.050)!important;
}
#garden .garden-streak-focus span{
  color:#d0d7e4!important;
  font-size:8.6px!important;
}
#garden .garden-streak-focus b{
  font-size:20px!important;
}
#garden .garden-daily-metrics{
  gap:4px!important;
  margin:0 0 8px!important;
}
#garden .garden-daily-metrics>span{
  min-height:29px!important;
  padding:5px 7px!important;
  border-radius:9px!important;
}
#garden .garden-daily-metrics small{
  font-size:6.3px!important;
}
#garden .garden-daily-metrics b{
  font-size:8.8px!important;
}
#garden .garden-mini-days{
  margin-top:auto!important;
  gap:3px!important;
}
#garden .mini-day{
  min-height:45px!important;
  border-radius:10px!important;
}

/* Copy cleanup. */
#garden .garden-archive-title{
  font-family:var(--font-display)!important;
  font-size:15px!important;
  font-weight:700!important;
  letter-spacing:.07em!important;
  text-transform:none!important;
  color:#f0dfbd!important;
}
#garden .garden-archive-title::after{display:none!important}
#garden .garden-seg{
  font-size:8.4px!important;
  font-weight:500!important;
  color:#adb7ca!important;
}
#garden .garden-seg.active{color:#f1e4c8!important}
#garden .garden-chapter-jump{
  font-size:8.4px!important;
  letter-spacing:.06em!important;
  color:#9ea9be!important;
}
#garden .garden-chapter-current b{
  font-size:14px!important;
  color:#f5f1e8!important;
}

@media(max-width:390px){
  body.garden-active{
    background:
      linear-gradient(180deg,rgba(4,9,20,.44) 0%,rgba(4,9,20,.66) 44%,rgba(3,8,18,.88) 100%),
      url("../scenes/soft-botanical-home.webp") center top / auto 100% fixed no-repeat!important;
  }
  #garden .garden-mini-panels{gap:6px!important}
  #garden .garden-mini-card{
    height:194px!important;
    min-height:194px!important;
    padding:10px!important;
    border-radius:17px!important;
  }
  #garden .garden-mini-kicker{font-size:9.2px!important;letter-spacing:.085em!important}
  #garden .garden-free-trophy{width:25px!important;height:25px!important;flex-basis:25px!important}
  #garden .garden-free-trophy svg{width:17px!important;height:17px!important}
  #garden .garden-free-summary{gap:3px!important;margin-bottom:6px!important}
  #garden .garden-free-summary>span{min-height:35px!important;padding:5px 2px!important}
  #garden .garden-free-summary small{font-size:5.5px!important}
  #garden .garden-free-summary b{font-size:8.3px!important}
  #garden .garden-free-mode{
    grid-template-columns:18px minmax(0,1fr) auto!important;
    gap:5px!important;
  }

  #garden .garden-streak-focus{min-height:48px!important;padding:7px 8px!important;margin-bottom:6px!important}
  #garden .garden-streak-focus span{font-size:7.7px!important}
  #garden .garden-streak-focus b{font-size:18px!important}
  #garden .garden-daily-metrics{gap:3px!important;margin-bottom:6px!important}
  #garden .garden-daily-metrics>span{min-height:26px!important;padding:4px 5px!important}
  #garden .garden-daily-metrics small{font-size:5.6px!important}
  #garden .garden-daily-metrics b{font-size:7.8px!important}
  #garden .mini-day{min-height:42px!important;padding:4px 1px!important}
  #garden .mini-day small{font-size:5.6px!important}
  #garden .mini-day b{font-size:8.5px!important}
}

/* ==========================================================================
   Consolidated from: 18-garden-v19.css
   ========================================================================== */
/* 18-garden-v19.css — Free Bloom final compact pass */
#garden .garden-free-modes{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
  margin-top:auto!important;
}
#garden .garden-free-mode{
  min-width:0!important;
  min-height:31px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:6px 9px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.028)!important;
  border:1px solid rgba(255,255,255,.05)!important;
}
#garden .garden-free-mode.done{
  border-color:rgba(255,206,112,.13)!important;
  background:linear-gradient(90deg,rgba(255,203,96,.055),rgba(255,255,255,.022))!important;
}

#garden .garden-free-mode em{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#dce2ed!important;
  font-family:var(--font-ui)!important;
  font-size:8.4px!important;
  font-style:normal!important;
  line-height:1!important;
}
#garden .garden-free-mode b{
  flex:0 0 auto!important;
  color:#ffd173!important;
  font-family:var(--font-numeric)!important;
  font-size:10px!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
}
#garden .garden-free-mode.locked{opacity:1!important;filter:none!important}

@media(max-width:390px){
  #garden .garden-free-modes{gap:4px!important}
  #garden .garden-free-mode{min-height:29px!important;padding:5px 7px!important}
  #garden .garden-free-mode em{font-size:7.8px!important}
  #garden .garden-free-mode b{font-size:9.5px!important}
}

/* ==========================================================================
   Consolidated from: 19-game-v21.css
   ========================================================================== */
/* 19-game-v21.css
   Gameplay polish + mobile performance pass.
   - neutral ink/slate background instead of purple cast
   - palette/control tray pinned to the bottom of the viewport
   - remove costly full-screen blur/backdrop filters
   - reduce per-cell paint work while preserving clear selection states
*/

/* Keep the chapter scenery as a very subtle texture only. No full-screen blur. */
#game::before{
  inset:0;
}

/* No live backdrop blur on the main gameplay surfaces — significantly cheaper
   on mobile browsers while keeping the same soft glass silhouette. */
#game .hud,
:is(#game,#loadoutStage) .board,
#game .dock{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#game .hud{
  border-color:rgba(187,203,229,.12);
}
#game .hud .icon-btn{
  border-color:rgba(198,211,233,.09);
}
#game .hud-timer{
  border-color:rgba(255,211,120,.08);
}

/* Kill the extra blurred halo behind the board. */
:is(#game,#loadoutStage) .board{
  border-color:rgba(197,210,233,.17);
}
:is(#game,#loadoutStage) .cell.c3,:is(#game,#loadoutStage) .cell.c6{border-right-color:rgba(220,228,242,.31)}
:is(#game,#loadoutStage) .cell.r3,:is(#game,#loadoutStage) .cell.r6{border-bottom-color:rgba(220,228,242,.31)}

/* Box completion stays completely invisible. */




/* Keep feedback short/light; avoid multiple glow paints. */
#game .line-sweep{opacity:.24;filter:none!important}

/* Board is width-limited on tall phones, so let the leftover vertical space
   become a deliberate spacer ABOVE the progress/dock. This pins the flower
   palette to the bottom instead of leaving dead space below it. */
#game .hud-strip{
  margin-top:auto!important;
  margin-left:4px;
  margin-right:4px;
  margin-bottom:0;
}
#game .progress-mini{
  border-color:rgba(255,255,255,.025);
}

#game .dock{
  margin-top:0!important;
  margin-bottom:0!important;
  border-color:rgba(187,203,229,.10);
}
#game .tool,
#game .color-btn{
  background:#1b2a42;
  border-color:rgba(190,204,227,.075);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
#game .color-btn:active{
  background:#27364d;
  border-color:rgba(239,190,91,.28);
}
#game .color-btn .flower-token{filter:none!important}

/* Mechanic cells stay distinct without glow/filter work. */

/* On very tall phones the dock should visually sit on the safe-area edge. */
@media (min-height:800px){
  #game .dock{padding-bottom:max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))}
}

/* Reduce motion / paint cost further when the OS requests it. */
@media (prefers-reduced-motion:reduce){
  :is(#game,#loadoutStage) .cell,
  :is(#game,#loadoutStage) .flower-token,
  #game .tool,
  #game .color-btn{transition:none!important;animation:none!important}
  #game .line-sweep{display:none!important}
}

/* ==========================================================================
   Consolidated from: 20-game-v22.css
   ========================================================================== */
/* 20-game-v22.css
   Gameplay art direction: Büyülü & Masalsı.
   Board stays the hero, dock is deliberately compact, flowers use the new
   botanical SVG set. No live blur/backdrop-filter: the look stays lightweight.
*/

#game{
  --fairy-gold:#f2c56c;
  --fairy-violet:#9a78d6;
  --fairy-ink:#07101f;
  --fairy-panel:#111d34;
  --fairy-cell:#1b2a43;
  --fairy-cell-given:#22324d;
  background:#070e1d;
  padding:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) max(4px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px))) max(6px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))) max(4px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)));
}

/* Static scenery + colour grading only. */
#game::before{
  background-image:var(--game-scene-art);
  background-size:cover;
  background-position:center;
  opacity:.28;
  filter:none!important;
  transform:none!important;
}
#game::after{
  background:
    radial-gradient(70% 28% at 50% -2%,rgba(112,75,169,.25),transparent 72%),
    radial-gradient(44% 20% at 10% 72%,rgba(80,41,119,.14),transparent 74%),
    radial-gradient(44% 22% at 92% 76%,rgba(86,53,139,.16),transparent 75%),
    linear-gradient(180deg,rgba(5,11,25,.50) 0%,rgba(7,14,29,.70) 48%,rgba(4,10,21,.90) 100%);
}

/* --- HUD: compact enchanted glass, no expensive live blur --- */
#game .hud{
  min-height:54px;
  padding:6px 7px;
  gap:7px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(28,31,57,.96),rgba(14,24,43,.97));
  border:1px solid rgba(193,158,238,.22);
  box-shadow:0 8px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.055);
}
#game .hud .icon-btn{
  width:40px;height:40px;border-radius:14px;
  background:#15213a;
  border:1px solid rgba(190,155,235,.18);
}
#game .hud .icon-btn svg{stroke:#e8e4f4}
#game .hud-title h2{
  font-size:17px;
  color:#fff8ea;
}
#game .hud-title p{
  margin-top:3px;
  font-size:8.8px;
  color:#a99fc0;
}
#game .hud-timer{
  min-width:55px;
  padding:4px 7px;
  border-radius:12px;
  background:#0c172a;
  border:1px solid rgba(242,197,108,.18);
}
#game .hud-timer span{
  font-size:17px;
  color:#ffd477;
  text-shadow:none;
}

/* --- Flexible stage: board is centred, dock remains at the bottom. --- */


/* --- Board --- */
:is(#game,#loadoutStage) .board{
  padding:4px;
  gap:1px;
  border-radius:22px;
  background:#49526d;
  border:1.5px solid rgba(242,197,108,.76);
  box-shadow:
    0 12px 26px rgba(0,0,0,.24),
    0 0 0 2px rgba(109,80,161,.20),
    inset 0 0 0 1px rgba(255,255,255,.045);
}
:is(#game,#loadoutStage) .cell{
  background:rgba(24,39,63,.97);
  border-radius:2px;
  transition:background-color .07s linear,outline-color .07s linear;
}
:is(#game,#loadoutStage) .cell.given{background:rgba(30,47,73,.98)}
:is(#game,#loadoutStage) .cell.peer{background:rgba(41,53,82,.98)}
:is(#game,#loadoutStage) .cell.same{
  background:rgba(74,55,104,.74);
  box-shadow:inset 0 0 0 1px rgba(174,126,235,.28);
}
:is(#game,#loadoutStage) .cell.selected{
  background:rgba(91,69,90,.96);
  outline:2px solid rgba(248,203,105,.96);
  outline-offset:-2px;
  box-shadow:inset 0 0 0 1px rgba(255,235,174,.20);
}
:is(#game,#loadoutStage) .cell.given-select{box-shadow:inset 0 0 0 1px rgba(242,197,108,.38)}
:is(#game,#loadoutStage) .cell.c3,:is(#game,#loadoutStage) .cell.c6{border-right:2px solid rgba(242,197,108,.56)}
:is(#game,#loadoutStage) .cell.r3,:is(#game,#loadoutStage) .cell.r6{border-bottom:2px solid rgba(242,197,108,.56)}

/* New flowers are slightly larger on the board, but have no CSS filter. */
:is(#game,#loadoutStage) .flower-token.tok-lg{width:80%;height:80%}
:is(#game,#loadoutStage) .flower-token.has-image{filter:none!important}
:is(#game,#loadoutStage) .cell.selected .flower-token,:is(#game,#loadoutStage) .cell.same .flower-token{transform:scale(1.035)}

/* Keep completed boxes completely visually stable. */




/* Special mechanics fit the violet garden language without glow filters. */
:is(#game,#loadoutStage) .cell.spectrum-cell{background:rgba(58,45,84,.96)}
:is(#game,#loadoutStage) .cell.spectrum-cell.peer{background:rgba(69,54,95,.98)}
:is(#game,#loadoutStage) .cell.in-zone{background:rgba(54,48,80,.98)}
:is(#game,#loadoutStage) .cell.in-zone.peer{background:rgba(64,57,91,.98)}
:is(#game,#loadoutStage) .cell.in-fence{background:rgba(29,65,65,.96)}
:is(#game,#loadoutStage) .cell.in-fence.peer{background:rgba(36,76,76,.98)}

/* --- Progress: thin and close to the controls --- */
#game .hud-strip{
  width:calc(100% - 10px);
  height:4px;
  flex:0 0 auto;
}
#game .progress-mini{
  height:3px;
  background:#19243b;
  border:0;
}
#game .progress-mini>i{
  background:linear-gradient(90deg,#aa7bd3,#f2c56c 72%,#ffe49c);
  box-shadow:none;
}
#game .hud-status{display:none!important}

/* --- Compact control/palette tray --- */
#game .dock{
  flex:0 0 auto;
  margin:0!important;
  padding:5px;
  gap:4px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(18,31,52,.98),rgba(9,20,38,.99));
  border:1px solid rgba(158,121,212,.20);
  box-shadow:0 8px 18px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.04);
}
#game .dock-tools,#game .palette{
  width:100%;
  gap:4px;
}
#game .tool{
  min-height:38px;
  padding:3px 2px 3px;
  border-radius:11px;
  background:#15243c;
  border:1px solid rgba(169,143,207,.12);
  box-shadow:none;
}
#game .tool .tool-ico{font-size:15px;color:#c9c5d9}
#game .tool .tool-lbl{font-size:7.8px;color:#aaa7bb}
#game .tool.active{
  background:linear-gradient(180deg,rgba(109,72,124,.72),rgba(53,44,72,.96));
  border-color:rgba(242,197,108,.72);
  box-shadow:inset 0 0 0 1px rgba(255,232,175,.07);
}
#game .tool.active .tool-ico{color:#ffd87e}
#game .tool.active .tool-lbl{color:#fff4da}

#game .color-btn{
  height:clamp(36px,10.2vw,43px);
  min-height:36px;
  padding:2px;
  border-radius:10px;
  background:#14243c;
  border:1px solid rgba(160,136,198,.12);
  box-shadow:none;
}
#game .color-btn .flower-token{
  height:94%;
  max-height:38px;
}
#game .color-btn .remain-badge{
  top:-3px;right:-2px;
  min-width:16px;height:16px;padding:0 3px;
  font-size:8px;
  background:#f2c56c;
  color:#2e210b;
  border:1px solid #0d1830;
  box-shadow:none;
}
#game .clear-btn{font-size:17px;color:#737f9b}

/* Tiny shimmer is limited to a single selected cell; no full-board animation. */
@keyframes fairy-place{
  0%{transform:scale(.72);opacity:.35}
  65%{transform:scale(1.06);opacity:1}
  100%{transform:scale(1);opacity:1}
}
:is(#game,#loadoutStage) .flower-token.just-placed{animation:fairy-place .18s ease-out both}
:is(#game,#loadoutStage) .cell.wave .flower-token{animation:none!important}
:is(#game,#loadoutStage) .cell.wave::after{display:none!important}


@media(max-width:390px){
  #game{padding-left:3px;padding-right:3px}
  #game .game-shell{gap:4px}
  #game .hud{min-height:51px;padding:5px 6px;border-radius:16px}
  #game .hud .icon-btn{width:38px;height:38px;border-radius:12px}
  #game .hud-title h2{font-size:16px}
  #game .hud-title p{font-size:8.2px}
  :is(#game,#loadoutStage) .board{padding:3px;border-radius:19px}
  #game .dock{padding:4px;border-radius:16px}
  #game .tool{min-height:36px}
  #game .tool .tool-lbl{font-size:7.3px}
  #game .color-btn{height:36px;min-height:36px;border-radius:9px}
  #game .color-btn .flower-token{max-height:33px}
}

@media(max-height:720px){
  #game .hud{min-height:47px;padding:4px 5px}
  #game .hud-title p{display:none}
  #game .hud .icon-btn{width:35px;height:35px}
  #game .tool{min-height:34px}
  #game .tool .tool-lbl{display:none}
  #game .color-btn{height:33px;min-height:33px}
  #game .color-btn .flower-token{max-height:30px}
  #game .dock{gap:3px;padding:4px}
  #game .dock-tools,#game .palette{gap:3px}
}

/* ==========================================================================
   Consolidated from: 21-game-v23.css
   ========================================================================== */
/* 21-game-v23.css
   Gameplay layout correction.
   - board gets real Sudoku-style side breathing room
   - board is visually biased upward instead of floating too low
   - compact V22 palette + magical art direction remain unchanged
*/

/* Keep the shell truly centred on wide devices while using almost all of the
   phone width. */

/* The flexible stage still absorbs the leftover height, but the board no
   longer sits at the mathematical middle of that tall empty area. A modest
   top inset gives the familiar Sudoku layout: HUD -> breathing room -> board,
   while the controls remain anchored at the bottom. */
:is(#game,#loadoutStage) .board-stage{
  padding-top:clamp(16px,3.2vh,34px)!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Side breathing room is intentional. The board should never visually touch
   the phone edges, even when height is plentiful. */
:is(#game,#loadoutStage) .board{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Small phones need a little less top air so the dock still fits cleanly. */
@media(max-width:390px){
  :is(#game,#loadoutStage) .board-stage{padding-top:clamp(12px,2.5vh,24px)!important}
}

/* On shorter displays we prioritise fit over the visual offset. */
@media(max-height:720px){
  :is(#game,#loadoutStage) .board-stage{padding-top:8px!important}
}

/* ==========================================================================
   Consolidated from: 22-game-v24.css
   ========================================================================== */
/* 22-game-v24.css
   Gameplay positioning + backdrop correction.
   - board is mathematically centred in the space between HUD and bottom tray
   - direct static game background; no pseudo layer / blur dependency
   - keeps V22/V23 magical theme and lightweight rendering
*/

/* Direct background fixes mobile browsers where the decorative pseudo layer
   was either hidden by stacking or visually lost under the grading overlay. */
#game{
  background-color:#07101f!important;
  background-image:
    linear-gradient(180deg,rgba(5,10,24,.40) 0%,rgba(5,11,25,.52) 42%,rgba(3,8,18,.70) 100%),
    var(--game-scene-art)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
#game::before,
#game::after{
  display:none!important;
  content:none!important;
}

#game .game-shell{
  width:100%!important;
  max-width:590px!important;
  height:100%!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
}

/* The stage owns every spare pixel between the fixed HUD and fixed bottom
   controls. Centering here gives equal visual air above and below the board. */
:is(#game,#loadoutStage) .board-stage{
  flex:1 1 0!important;
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* Sudoku-like horizontal breathing room: equal left/right gutter, never flush
   to the viewport. JS still reduces the square if height is the tighter axis. */
:is(#game,#loadoutStage) .board{
  width:var(--board-size)!important;
  height:var(--board-size)!important;
  max-width:95.5%!important;
  max-height:95.5%!important;
  margin:auto!important;
  flex:0 0 auto!important;
}

/* Keep the progress line visually attached to the bottom tray rather than to
   the board; the remaining stage space is distributed equally around board. */
#game .hud-strip{
  margin:0 5px 3px!important;
}

@media(max-width:390px){
  :is(#game,#loadoutStage) .board{max-width:95%!important;max-height:95%!important}
}

@media(max-height:720px){
  :is(#game,#loadoutStage) .board{max-width:96%!important;max-height:96%!important}
}

/* ==========================================================================
   Consolidated from: 23-daily-v25.css
   ========================================================================== */
/* 23-daily-v25.css
   Daily Bloom cleanup: no back/header block, no explanatory filler text.
   The scene itself carries the identity and the whole page uses the same
   midnight-garden art language as the rest of Petalattice.
*/

#daily{
  min-height:100svh;
  padding:14px 12px calc(92px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  background-image:
    linear-gradient(180deg,rgba(8,14,29,.70) 0%,rgba(8,14,29,.80) 46%,rgba(7,13,26,.94) 100%),
    url("../scenes/soft-botanical-home.webp");
  background-size:cover;
  background-position:center top;
  background-repeat:no-repeat;
}

#daily .page-card{
  margin:0 auto;
  padding:0;
  overflow:visible;
  background:transparent;
  border:0;
  box-shadow:none;
}

/* The old page header/back button is gone from the DOM in v25. */


#daily .daily-hero{
  min-height:0;
  padding:28px 16px 16px;
  margin:0 0 12px;
  border-radius:28px;
  border:1px solid rgba(255,219,139,.18);
  background:
    linear-gradient(180deg,rgba(8,14,30,.08) 0%,rgba(8,14,30,.34) 42%,rgba(7,13,27,.86) 100%),
    url("../scenes/soft-botanical-home.webp") center/cover no-repeat;
  box-shadow:0 18px 38px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);
  isolation:isolate;
}
#daily .daily-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:radial-gradient(60% 42% at 50% 12%,rgba(255,222,141,.08),transparent 72%);
}
#daily .daily-hero::after{display:none!important}

#daily .daily-kicker{
  width:max-content;
  max-width:100%;
  margin:0 auto 8px;
  padding:6px 11px;
  border-radius:999px;
  border:1px solid rgba(255,220,143,.18);
  background:rgba(10,17,33,.38);
  color:#f1d18a;
  font-size:10px;
  line-height:1;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-family:var(--font-ui);
}

#daily .daily-date{
  margin:0;
  font-size:clamp(34px,9vw,46px);
  line-height:1;
  color:#ffe09a;
  text-align:center;
  text-shadow:0 3px 14px rgba(0,0,0,.58);
}
#daily .daily-diff{
  margin-top:8px;
  font-size:12px;
  line-height:1.3;
  color:#e6e9f2;
  text-align:center;
  text-shadow:0 2px 8px rgba(0,0,0,.55);
}

#daily .daily-streak-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin-top:20px;
}
#daily .streak-box{
  min-width:0;
  padding:11px 4px 10px;
  border-radius:16px;
  background:rgba(13,21,40,.70);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:none;
}
#daily .streak-box b{
  display:block;
  margin-bottom:6px;
  color:#ffd06b;
  font-size:23px;
  line-height:1;
}
#daily .streak-box span{
  display:block;
  color:#aeb8cd;
  font-size:8px;
  line-height:1.15;
  letter-spacing:.06em;
  text-transform:uppercase;
}

#daily .week-strip{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:6px;
  margin:0 0 12px;
}
#daily .week-day{
  min-width:0;
  min-height:54px;
  padding:8px 2px 7px;
  border-radius:16px;
  background:rgba(22,31,52,.74);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
#daily .week-day.today{
  background:linear-gradient(180deg,rgba(255,205,103,.12),rgba(24,33,54,.82));
  border-color:rgba(255,207,103,.62);
  box-shadow:0 0 0 1px rgba(255,207,103,.10),inset 0 1px 0 rgba(255,255,255,.05);
}
#daily .week-day.done{
  background:linear-gradient(180deg,rgba(102,220,177,.11),rgba(22,31,52,.78));
  border-color:rgba(102,220,177,.22);
}
#daily .wd-name{
  color:#9ca8c0;
  font-size:8px;
  letter-spacing:.04em;
}
#daily .wd-mark{
  margin-top:5px;
  color:#dce3ef;
  font-size:11px;
}
#daily .week-day.today .wd-name,
#daily .week-day.today .wd-mark{color:#ffd26f}
#daily .week-day.done .wd-mark{color:#72e0b4}

#daily .free-actions{margin:0}
#daily #dailyPlayBtn{
  width:100%;
  min-height:58px;
  border-radius:20px;
  font-size:16px;
  font-weight:800;
  color:#2c2412;
  background:linear-gradient(180deg,#ffd477,#ffb643);
  border:1px solid rgba(255,234,181,.72);
}

/* JS still writes generation/completion state here, but it no longer wastes
   visible screen space. Screen readers can still receive the message. */
#daily .daily-status-sr{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media(max-width:390px){
  #daily{padding-left:9px;padding-right:9px}
  #daily .daily-hero{padding:24px 12px 14px;border-radius:24px}
  #daily .daily-kicker{font-size:9px;margin-bottom:7px}
  #daily .daily-streak-row{gap:5px;margin-top:17px}
  #daily .streak-box{padding:10px 2px 9px;border-radius:14px}
  #daily .streak-box b{font-size:21px}
  #daily .streak-box span{font-size:7px}
  #daily .week-strip{gap:4px}
  #daily .week-day{min-height:50px;border-radius:14px}
  #daily #dailyPlayBtn{min-height:54px;border-radius:18px}
}

/* ==========================================================================
   Consolidated from: 24-daily-v26.css
   ========================================================================== */
/* 24-daily-v26.css
   Daily Bloom monthly garden pass.
   Adds a persistent page background and turns the empty lower half into a
   monthly memory garden that grows with Daily completions.
*/

/* Put the artwork on the real page/body layer so it remains visible through
   the longer monthly-garden screen on mobile browsers. */
body.daily-active{
  background:
    linear-gradient(180deg,rgba(7,12,25,.34) 0%,rgba(7,12,25,.52) 38%,rgba(6,11,23,.76) 100%),
    url("../scenes/soft-botanical-home.webp") center top / cover no-repeat fixed;
}
body.daily-active #daily{
  background:
    radial-gradient(72% 24% at 50% 4%,rgba(127,100,225,.10),transparent 70%),
    linear-gradient(180deg,rgba(7,12,25,.10),rgba(7,12,25,.26) 44%,rgba(7,12,25,.46) 100%);
}

#daily .page-card{
  width:min(100%,500px);
}

/* Hero slightly tighter so the monthly garden enters the viewport earlier. */
#daily .daily-hero{
  margin-bottom:11px;
  padding-bottom:14px;
}
#daily .week-strip{margin-bottom:11px}

/* The button remains the primary CTA but no longer visually ends the page. */
#daily #dailyPlayBtn{
  box-shadow:
    0 12px 28px rgba(255,176,56,.16),
    0 0 24px rgba(255,194,84,.06),
    inset 0 1px 0 rgba(255,255,255,.34);
}

#daily .daily-garden-note{
  min-height:22px;
  margin:10px 4px 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#7be4b7;
  font-size:10px;
  line-height:1.35;
  text-align:center;
  text-shadow:0 2px 8px rgba(0,0,0,.45);
}
#daily .daily-garden-note::before{
  content:"✦";
  color:#e8c36e;
  font-size:9px;
}
#daily .daily-garden-note.pending{
  color:#b8c2d8;
}

/* ---- Monthly Garden ---- */
#daily .monthly-garden{
  position:relative;
  overflow:hidden;
  margin:0 0 4px;
  padding:16px 14px 15px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(16,24,46,.82),rgba(9,17,34,.90));
  border:1px solid rgba(255,215,130,.18);
  box-shadow:
    0 18px 42px rgba(0,0,0,.23),
    inset 0 1px 0 rgba(255,255,255,.055);
}
#daily .monthly-garden::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(60% 24% at 50% 0%,rgba(255,213,126,.07),transparent 70%),
    radial-gradient(55% 35% at 88% 100%,rgba(121,93,214,.08),transparent 74%);
}
#daily .monthly-garden > *{position:relative;z-index:1}

#daily .monthly-garden-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin:0 2px 11px;
}
#daily .monthly-kicker{
  display:block;
  margin-bottom:2px;
  color:#9eabc3;
  font-size:8px;
  line-height:1;
  letter-spacing:.15em;
  text-transform:uppercase;
}
#daily .monthly-garden-head h3{
  margin:0;
  color:#f3d38a;
  font-size:20px;
  line-height:1;
  font-weight:700;
  letter-spacing:.035em;
}
#daily .monthly-count{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  color:#f7e7bd;
  font-size:10px;
  line-height:1;
  font-variant-numeric:tabular-nums;
  background:rgba(8,14,29,.48);
  border:1px solid rgba(255,218,139,.16);
}

#daily .monthly-scene{
  position:relative;
  height:190px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.09);
  background:
    linear-gradient(180deg,rgba(5,10,23,.14),rgba(5,10,23,.28) 54%,rgba(5,10,23,.58) 100%),
    url("../scenes/soft-botanical-home.webp") center 58% / cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 -35px 50px rgba(3,8,18,.25);
}
#daily .monthly-scene-shade{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(42% 52% at 50% 100%,rgba(255,207,106,.05),transparent 72%),
    linear-gradient(90deg,rgba(7,12,24,.08),transparent 25%,transparent 75%,rgba(7,12,24,.08));
}

#daily .monthly-plants{
  position:absolute;
  left:6%;right:6%;bottom:13px;
  height:70px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  align-items:end;
  gap:5px;
}
#daily .month-plant{
  position:relative;
  min-width:0;
  height:64px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  opacity:.42;
  transition:none;
}
#daily .month-plant::before{
  content:"";
  position:absolute;
  bottom:1px;
  width:38px;
  height:46px;
  border:1px dashed rgba(216,226,242,.20);
  border-radius:55% 55% 48% 48%;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.005));
}
#daily .month-plant i{
  position:relative;
  z-index:2;
  display:block;
  width:48px;
  height:48px;
  background-size:contain;
  background-position:center;
  background-repeat:no-repeat;
  opacity:0;
  transform:translateY(3px) scale(.82);
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.32));
}
#daily .month-plant.unlocked{
  opacity:1;
}
#daily .month-plant.unlocked::before{
  border-style:solid;
  border-color:rgba(255,207,107,.14);
  background:radial-gradient(circle at 50% 74%,rgba(255,196,78,.10),transparent 65%);
}
#daily .month-plant.unlocked i{
  opacity:1;
  transform:none;
}
#daily .month-plant.current i{
  filter:drop-shadow(0 0 8px rgba(255,207,107,.30)) drop-shadow(0 5px 8px rgba(0,0,0,.28));
}

#daily .monthly-milestones{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:4px;
  margin-top:12px;
  position:relative;
}
#daily .monthly-milestones::before{
  content:"";
  position:absolute;
  top:7px;
  left:7%;right:7%;
  height:1px;
  background:linear-gradient(90deg,rgba(255,211,119,.18),rgba(255,211,119,.52),rgba(255,211,119,.18));
}
#daily .monthly-milestone{
  position:relative;
  z-index:1;
  min-width:0;
  text-align:center;
  color:#8794ad;
}
#daily .monthly-milestone i{
  width:15px;
  height:15px;
  margin:0 auto 5px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#121d34;
  border:1px solid rgba(255,214,128,.34);
  box-shadow:0 0 0 3px rgba(12,19,35,.85);
  color:transparent;
  font-style:normal;
}
#daily .monthly-milestone span{
  display:block;
  font-size:7.5px;
  line-height:1.15;
  white-space:nowrap;
}
#daily .monthly-milestone.done{
  color:#d9c58f;
}
#daily .monthly-milestone.done i{
  background:#f0c15d;
  border-color:#ffe09b;
  color:#30240d;
}
#daily .monthly-milestone.done i::after{
  content:"✓";
  font-size:8px;
  font-weight:900;
}

@media(max-width:390px){
  #daily .daily-garden-note{margin-top:8px;margin-bottom:10px;font-size:9px}
  #daily .monthly-garden{padding:14px 11px 13px;border-radius:24px}
  #daily .monthly-garden-head{margin-bottom:9px}
  #daily .monthly-garden-head h3{font-size:18px}
  #daily .monthly-count{font-size:9px;padding:5px 8px}
  #daily .monthly-scene{height:165px;border-radius:19px}
  #daily .monthly-plants{left:5%;right:5%;height:62px;bottom:10px}
  #daily .month-plant{height:58px}
  #daily .month-plant::before{width:32px;height:40px}
  #daily .month-plant i{width:42px;height:42px}
  #daily .monthly-milestones{margin-top:10px;gap:2px}
  #daily .monthly-milestone span{font-size:6.8px}
}

/* ==========================================================================
   Consolidated from: 25-free-v27.css
   ========================================================================== */
/* 25-free-v27.css
   Free Bloom full redesign.
   - no back button / intro copy / bottom status box
   - one cinematic difficulty card per mode
   - selected mode is communicated by the card itself
   - real scene artwork on the page background
*/

body.free-active{
  background:
    linear-gradient(180deg,rgba(5,10,23,.34) 0%,rgba(5,10,23,.55) 44%,rgba(4,9,20,.82) 100%),
    url("../scenes/chapter-prism.webp") center top / cover no-repeat fixed;
}
body.free-active #free{
  background:
    radial-gradient(68% 24% at 50% 0%,rgba(131,92,218,.10),transparent 72%),
    linear-gradient(180deg,rgba(5,10,23,.08),rgba(5,10,23,.22) 52%,rgba(5,10,23,.42) 100%);
}

#free{
  /* v12.2: reserve the fixed tab bar + phone safe-area so New Bloom is never obscured. */
  padding:14px 11px calc(108px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  scroll-padding-bottom:calc(108px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
}
#free .free-page-shell{
  width:min(100%,500px);
  margin:0 auto;
  padding:4px 0 18px;
  background:transparent;
  border:0;
  box-shadow:none;
}

/* Hero title replaces the old page header + explanation cards. */
#free .free-hero-head{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:116px;
  margin:0 8px 13px;
  text-align:center;
}
#free .free-hero-head::before{
  content:"";
  position:absolute;
  inset:4px 12% 0;
  border-radius:42px;
  background:radial-gradient(ellipse at center,rgba(9,16,34,.44),transparent 70%);
  pointer-events:none;
}
#free .free-hero-head > *{position:relative;z-index:1}
#free .free-hero-mark{
  display:grid;
  place-items:center;
  width:34px;
  height:24px;
  margin-bottom:2px;
  color:#ffd479;
  font-size:17px;
  text-shadow:0 0 16px rgba(255,201,94,.28);
}
#free .free-hero-head h2{
  margin:0;
  font-size:clamp(34px,9vw,45px);
  line-height:.96;
  color:#f7f0e3;
  letter-spacing:-.025em;
  text-shadow:0 4px 18px rgba(0,0,0,.52);
}
#free .free-hero-rule{
  width:118px;
  height:1px;
  margin-top:13px;
  background:linear-gradient(90deg,transparent,rgba(255,210,116,.75),transparent);
  box-shadow:0 0 8px rgba(255,202,96,.18);
}

#free .difficulty-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin:0 0 13px;
}

/* Cinematic difficulty cards. */
#free .diff-card{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:62px minmax(0,1fr) 42px;
  align-items:center;
  gap:13px;
  min-height:124px;
  width:100%;
  padding:14px 14px 14px 15px;
  overflow:hidden;
  border-radius:25px;
  border:1px solid rgba(255,255,255,.13);
  background-image:var(--diff-art);
  background-size:cover;
  background-position:center;
  color:#f7f4ed;
  text-align:left;
  box-shadow:
    0 14px 30px rgba(0,0,0,.23),
    inset 0 1px 0 rgba(255,255,255,.055);
  text-shadow:0 2px 9px rgba(0,0,0,.68);
  transform:none;
}
#free .diff-card::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(90deg,rgba(5,11,24,.91) 0%,rgba(6,12,25,.74) 48%,rgba(6,12,25,.26) 100%);
}
#free .diff-card::after{display:none!important}
#free .diff-card:active{transform:scale(.992)}

#free .diff-flower{
  width:58px;
  height:58px;
  border-radius:50%;
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:78%;
  background-color:rgba(8,15,30,.45);
  border:1px solid rgba(255,229,174,.35);
  box-shadow:
    0 8px 18px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.08);
}
#free .diff-copy{min-width:0}
#free .diff-card h4{
  margin:0 0 6px;
  font-size:clamp(24px,6.2vw,31px);
  line-height:1;
  color:#f8f2e8;
  white-space:nowrap;
}
#free .diff-meta{
  display:block;
  margin:0;
  color:#dce2ee;
  font-size:11px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#free .diff-solved{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  margin-top:10px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(7,13,27,.46);
  border:1px solid rgba(255,255,255,.13);
  color:#cbd3e1;
  font-size:9.5px;
  line-height:1;
  font-weight:700;
  text-shadow:none;
}
#free .diff-go{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  justify-self:end;
  background:rgba(8,14,28,.52);
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:22px;
  line-height:1;
  text-shadow:none;
  box-shadow:0 8px 16px rgba(0,0,0,.16);
}

/* Individual environments keep their color identity but stay in the same UI family. */
#free .diff-relax::before{
  background:linear-gradient(90deg,rgba(5,20,27,.92),rgba(6,30,35,.68) 52%,rgba(6,18,26,.22));
}
#free .diff-normal::before{
  background:linear-gradient(90deg,rgba(6,21,23,.93),rgba(10,37,31,.66) 52%,rgba(7,20,20,.20));
}
#free .diff-hard::before{
  background:linear-gradient(90deg,rgba(31,10,16,.94),rgba(64,23,21,.68) 52%,rgba(31,10,16,.20));
}
#free .diff-expert::before{
  background:linear-gradient(90deg,rgba(21,9,39,.95),rgba(48,23,72,.68) 52%,rgba(21,9,39,.18));
}

#free .diff-card.active{
  border-color:rgba(255,205,102,.96);
  box-shadow:
    0 0 0 1px rgba(255,205,102,.46),
    0 0 26px rgba(255,187,61,.14),
    0 16px 34px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.08);
}
#free .diff-card.active h4,
#free .diff-card.active .diff-solved{color:#ffd272}
#free .diff-card.active .diff-flower{
  border-color:rgba(255,210,116,.62);
  background-color:rgba(39,28,14,.38);
}
#free .diff-card.active .diff-go{
  background:linear-gradient(180deg,#ffd36f,#ffbc3d);
  border-color:#ffe5a7;
  color:#211809;
  font-size:17px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(255,180,50,.22),inset 0 1px 0 rgba(255,255,255,.48);
}

#free .free-actions{
  margin:13px 0 0;
}
#free #newBloomBtn{
  width:100%;
  min-height:62px;
  border-radius:23px;
  border:1px solid rgba(255,229,169,.72);
  background:linear-gradient(180deg,#ffd477 0%,#ffb437 100%);
  color:#241a09;
  font-size:18px;
  font-weight:800;
  box-shadow:
    0 14px 30px rgba(255,169,44,.20),
    0 0 22px rgba(255,197,91,.08),
    inset 0 1px 0 rgba(255,255,255,.52);
}
#free #newBloomBtn:active{transform:scale(.992)}

/* Keep generation/error text available to screen readers without adding another UI box. */
#free .free-status-sr{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media(max-width:520px){
  #free .free-actions{
    position:sticky;
    bottom:calc(74px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
    z-index:35;
    padding-top:7px;
    background:linear-gradient(180deg,transparent,rgba(5,10,23,.88) 34%,rgba(5,10,23,.96));
  }
}

@media(max-width:390px){
  #free{padding-left:8px;padding-right:8px}
  #free .free-hero-head{min-height:100px;margin-bottom:10px}
  #free .diff-card{
    grid-template-columns:54px minmax(0,1fr) 38px;
    gap:10px;
    min-height:112px;
    padding:12px 12px 12px 13px;
    border-radius:22px;
  }
  #free .diff-flower{width:50px;height:50px}
  #free .diff-card h4{font-size:24px}
  #free .diff-meta{font-size:10px}
  #free .diff-go{width:35px;height:35px}
  #free #newBloomBtn{min-height:58px;border-radius:20px}
}

/* Status stays non-visual even while JS updates its state/class. */
#free #freeStatus{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
#free #newBloomBtn:disabled{opacity:.78;cursor:wait}

/* ==================================================================
   RTP v03 — RETENTION / MASTERY / RESULT CARD
   ================================================================== */

/* Live timer is opt-in. Time is still recorded for results/records. */
.hud-timer{display:none!important}
body.timer-on .hud-timer{display:block!important}

/* ---------- Home mission hub ---------- */
.mission-hub{
  margin:12px 0 0;padding:13px;border:1px solid rgba(238,196,105,.24);
  border-radius:20px;background:linear-gradient(145deg,rgba(19,28,49,.88),rgba(11,18,34,.82));
  box-shadow:0 12px 30px rgba(0,0,0,.18);position:relative;overflow:hidden
}
.mission-hub:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 0,rgba(239,194,92,.11),transparent 35%)}
.mission-hub-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;position:relative}
.mission-hub-head h3{margin:1px 0 0;font-size:15px;color:#f5f0e5}
.mission-kicker{display:block;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#cda85c;font-weight:800}
.mission-reward-count{font-size:10px;font-weight:800;color:#f0cb78;border:1px solid rgba(240,203,120,.2);background:rgba(255,255,255,.04);border-radius:99px;padding:5px 8px;white-space:nowrap}
.mission-grid{display:grid;grid-template-columns:1fr;gap:9px;position:relative}
.mission-block{padding:9px;border-radius:15px;background:rgba(6,12,25,.38);border:1px solid rgba(255,255,255,.055)}
.mission-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.mission-block-head b{font-size:11px;color:#f1eee7}
.mission-block-head span{font-size:8.5px;color:#bfc8d8;white-space:nowrap}
.mission-list{display:grid;gap:5px}
.mission-item{display:grid;grid-template-columns:18px 1fr auto;gap:7px;align-items:center;min-height:30px;color:#c8d0df;font-size:9.5px}
.mission-check{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.15);font-size:10px;color:#12231a;background:rgba(255,255,255,.03)}
.mission-item.done .mission-check{border-color:rgba(126,220,168,.7);background:#8ed9ad;color:#0e291c;font-weight:900}
.mission-item.done .mission-copy{color:#eef6f1}
.mission-copy{min-width:0;line-height:1.2}
.mission-copy i{display:block;height:2px;margin-top:4px;background:rgba(255,255,255,.07);border-radius:4px;overflow:hidden}
.mission-copy i em{display:block;height:100%;background:linear-gradient(90deg,#c99b50,#f0d28b);border-radius:4px}
.mission-item.done .mission-copy i em{background:#79c99b}
.mission-item>b{font-size:8.5px;color:#95a3ba;font-variant-numeric:tabular-nums}
@media(min-width:620px){.mission-grid{grid-template-columns:1fr 1fr}}

/* ---------- Journey stars / mastery ---------- */
.journey-star-score{display:block;margin-top:2px;color:#e6c773;font-size:9px;font-weight:800;letter-spacing:.02em}
.lvl-stars{display:block!important;margin-top:2px!important;line-height:1!important;font-size:9px!important;letter-spacing:1px!important;white-space:nowrap!important}
.star-on{color:#f3cb63}.star-off{color:rgba(255,255,255,.13)}
.bloom-stars{font-size:11px;letter-spacing:1px;margin-top:4px}
.garden-chapter-flower.mastered{filter:drop-shadow(0 0 7px rgba(255,211,105,.58));outline:1px solid rgba(255,211,105,.55);outline-offset:3px;border-radius:50%}

/* Four archive tabs must remain usable on narrow phones. */
#garden .garden-segments{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#garden .garden-seg{padding-left:5px!important;padding-right:5px!important;font-size:9px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Monthly mission rewards ---------- */
.monthly-reward-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:inherit}
.month-seed,.month-lantern,.month-centerpiece{position:absolute;display:block}
.month-seed{width:8px;height:12px;border-radius:70% 20% 70% 20%;background:linear-gradient(145deg,#b8dc78,#4d915c);box-shadow:0 0 7px rgba(135,216,142,.24);bottom:12%}
.month-seed.s0{left:17%}.month-seed.s1{left:24%;bottom:17%;transform:rotate(24deg)}.month-seed.s2{left:39%;bottom:9%;transform:rotate(-18deg)}
.month-seed.s3{right:34%;bottom:14%;transform:rotate(36deg)}.month-seed.s4{right:21%;bottom:8%}.month-seed.s5{right:12%;bottom:19%;transform:rotate(-28deg)}
.month-lantern{width:10px;height:14px;border:1px solid rgba(255,211,117,.85);border-radius:4px;background:radial-gradient(circle,#ffe2a0 0 20%,rgba(236,170,69,.65) 22% 48%,rgba(90,54,27,.2) 55%);box-shadow:0 0 12px rgba(255,203,95,.38);top:19%}
.month-lantern:before{content:"";position:absolute;width:1px;height:22px;background:rgba(234,210,149,.45);left:50%;bottom:100%}
.month-lantern.l0{left:12%}.month-lantern.l1{left:33%;top:12%}.month-lantern.l2{left:51%;top:21%}.month-lantern.l3{right:25%;top:13%}.month-lantern.l4{right:10%;top:23%}
.month-centerpiece{left:50%;top:43%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#ffe8a9;font-size:20px;border:1px solid rgba(255,222,146,.55);background:radial-gradient(circle,rgba(252,212,119,.35),rgba(83,62,125,.18) 60%,transparent 70%);box-shadow:0 0 24px rgba(255,211,101,.22)}
.monthly-reward-summary{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.monthly-reward-summary span{font-size:9px;color:#c8d2e2;border:1px solid rgba(255,255,255,.08);background:rgba(7,13,27,.42);padding:5px 8px;border-radius:99px}

/* ---------- Achievement book ---------- */
.retention-records{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px}
.retention-records article{padding:10px 7px;border-radius:13px;text-align:center;border:1px solid rgba(255,255,255,.065);background:rgba(5,11,24,.38)}
.retention-records small{display:block;color:#8f9bb0;font-size:8px;line-height:1.25;min-height:20px}
.retention-records b{display:block;margin-top:3px;color:#f0d283;font-size:14px;font-variant-numeric:tabular-nums}
.achievement-section{margin-top:13px}.achievement-section>h4,.monthly-archive>h4{margin:0 0 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#d9bd78}
.star-path{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.star-path-node{min-height:74px;padding:8px 5px;border-radius:13px;text-align:center;background:rgba(5,11,24,.38);border:1px solid rgba(255,255,255,.055);opacity:.56}
.star-path-node.done{opacity:1;border-color:rgba(226,190,105,.28);background:linear-gradient(155deg,rgba(58,44,31,.44),rgba(12,19,34,.5))}
.star-path-node i{display:grid;place-items:center;width:18px;height:18px;margin:0 auto 3px;border-radius:50%;border:1px solid rgba(255,255,255,.13);color:#f2cc6e;font-style:normal}
.star-path-node b{display:block;color:#efcf80;font-size:11px}.star-path-node span{display:block;color:#e6e9ef;font-size:8px;line-height:1.2;margin-top:2px}.star-path-node em{display:block;color:#83caa3;font-size:7.5px;font-style:normal;margin-top:3px}
.badge-grid{display:grid;gap:7px}
.badge-card{display:grid;grid-template-columns:36px 1fr auto;gap:9px;align-items:center;padding:9px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:rgba(5,11,24,.4)}
.badge-medal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);color:#7f8ba0;background:rgba(255,255,255,.035)}
.badge-card.tier-1 .badge-medal{color:#c18b62;border-color:#b77851}.badge-card.tier-2 .badge-medal{color:#dce5ef;border-color:#aab8c5}.badge-card.tier-3 .badge-medal{color:#f2ce6f;border-color:#d9af4c}.badge-card.tier-4 .badge-medal{color:#f2dcff;border-color:#b68ce5;box-shadow:0 0 12px rgba(169,115,221,.25)}
.badge-copy{min-width:0}.badge-copy small{display:block;color:#9ca8bb;font-size:7.5px}.badge-copy b{display:block;color:#f1f1ee;font-size:10.5px}.badge-copy span{display:block;color:#8795aa;font-size:7.5px;margin-top:2px}
.badge-copy i{display:block;height:3px;margin-top:5px;background:rgba(255,255,255,.07);border-radius:5px;overflow:hidden}.badge-copy i em{display:block;height:100%;background:linear-gradient(90deg,#b3874d,#e4c577)}
.badge-card>strong{font-size:11px;color:#d3b96f;font-variant-numeric:tabular-nums}
.mastery-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.mastery-card{display:grid;grid-template-columns:36px 1fr;gap:7px;align-items:center;padding:8px;border-radius:14px;background:rgba(5,11,24,.38);border:1px solid rgba(255,255,255,.055);position:relative;min-width:0}
.mastery-card.mastered{border-color:rgba(235,198,105,.34);background:linear-gradient(145deg,rgba(58,43,26,.42),rgba(9,16,31,.46))}
.mastery-flower{width:34px;height:34px;background-size:contain;background-repeat:no-repeat;background-position:center;filter:saturate(.55);opacity:.7}.mastery-card.mastered .mastery-flower{filter:none;opacity:1;filter:drop-shadow(0 0 5px rgba(244,208,112,.35))}
.mastery-card div{min-width:0}.mastery-card small{display:block;color:#8996aa;font-size:7px}.mastery-card b{display:block;color:#f1eee7;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mastery-card div span{display:block;color:#dfc474;font-size:8px;margin-top:2px}
.mastery-card>em{grid-column:1/-1;font-size:7px;text-align:center;color:#8c99ad;font-style:normal;border-top:1px solid rgba(255,255,255,.055);padding-top:4px}.mastery-card.mastered>em{color:#f0cd72;letter-spacing:.12em;font-weight:800}

/* ---------- Monthly archive ---------- */
.monthly-archive{margin-top:14px}
.monthly-archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.monthly-archive-card{padding:9px;border-radius:13px;background:rgba(5,11,24,.38);border:1px solid rgba(255,255,255,.055)}
.monthly-archive-card.complete{border-color:rgba(222,188,101,.3)}
.monthly-archive-card div{display:flex;justify-content:space-between;gap:6px;align-items:baseline}.monthly-archive-card small{font-size:7.5px;color:#a4afc0;text-transform:capitalize}.monthly-archive-card b{font-size:9px;color:#efd07e}.monthly-archive-card>span{display:block;font-size:8px;color:#c8d0dd;margin-top:5px}.monthly-archive-card em{display:block;font-style:normal;font-size:7px;color:#7f8ca2;margin-top:2px}.monthly-archive-card.complete em{color:#7fc49b}

/* ---------- New completion / reward card ---------- */
.finish{overflow:auto;padding:calc(18px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) 14px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
.result-card{width:min(94vw,410px)!important;max-height:none!important;padding:22px 17px 17px!important;border:1px solid rgba(240,201,111,.28)!important;background:linear-gradient(165deg,rgba(24,32,53,.98),rgba(9,15,29,.99))!important;box-shadow:0 25px 80px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.05)!important}
.result-card .finish-flower{margin-bottom:5px!important}
.result-kicker{display:block;text-align:center;font-size:8px;letter-spacing:.2em;color:#c7a95f;font-weight:900;margin-bottom:4px}
.result-card h2{font-size:20px!important;margin:0 0 2px!important;color:#fff8e8!important;text-align:center}
.result-subtitle{margin:0 auto 8px!important;font-size:9px!important;color:#8f9bb0!important;text-align:center}
.result-stars{text-align:center;font-size:30px;letter-spacing:3px;line-height:1;margin:7px 0 9px;text-shadow:0 0 12px rgba(241,199,92,.15)}
.result-chips{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.result-chips span{padding:5px 8px;border-radius:99px;font-size:8.5px;color:#b7c1d1;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.result-chips span.good{color:#9edbb8;border-color:rgba(117,207,157,.22);background:rgba(68,155,107,.08)}
.result-time-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:12px;background:rgba(4,9,20,.38);border:1px solid rgba(255,255,255,.055);margin-bottom:7px}
.result-time-row span{font-size:8px;color:#8f9ab0}.result-time-row b{font-size:13px;color:#f1d07a;font-variant-numeric:tabular-nums}
.result-rewards{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;margin:8px 0}
.result-rewards span{font-size:8px;font-weight:800;color:#f1d48a;padding:5px 7px;background:rgba(217,175,78,.08);border:1px solid rgba(226,188,92,.17);border-radius:8px}
.result-unlock{display:grid;gap:4px;margin:8px 0;padding:8px 9px;border-radius:12px;background:linear-gradient(135deg,rgba(88,58,22,.24),rgba(75,45,101,.16));border:1px solid rgba(236,196,104,.22)}
.result-unlock span{font-size:8.5px;color:#f0d794;text-align:left}
.share-preview{min-height:92px;margin:9px 0 7px;padding:10px;border-radius:15px;border:1px solid rgba(210,181,112,.2);background:radial-gradient(circle at 80% 5%,rgba(141,85,169,.2),transparent 38%),linear-gradient(145deg,#141d34,#0d1426);display:grid;grid-template-columns:68px 1fr;grid-template-rows:auto auto auto auto;column-gap:10px;align-items:center;overflow:hidden}
.share-preview-brand{grid-column:1/-1;font-size:7px;letter-spacing:.18em;color:#d6b76d;font-weight:900;margin-bottom:4px}
.share-flower-mark{grid-row:2/6;width:62px;height:62px;background-size:contain;background-repeat:no-repeat;background-position:center;filter:drop-shadow(0 0 7px rgba(255,215,130,.15))}
.share-daily-pattern{grid-row:2/6;width:62px;height:62px;display:grid;grid-template-columns:repeat(5,1fr);gap:2px}.share-daily-pattern i{display:block;border-radius:50%;background:var(--share-c);box-shadow:0 0 3px color-mix(in srgb,var(--share-c),transparent 60%)}
.share-preview>b{font-size:9.5px;color:#eef0f5;text-align:left}.share-preview-stars{font-size:13px;color:#f0cb68;letter-spacing:1px;text-align:left}.share-preview>small{font-size:7.5px;color:#9aa6ba;text-align:left}
.share-btn{width:100%;min-height:37px!important;margin:0 0 5px;border-color:rgba(226,190,102,.18)!important;color:#e9d39a!important}.share-btn span:first-child{font-size:14px;margin-right:5px}
.finish-share-status{min-height:12px;text-align:center;font-size:7.5px;color:#8fc8a9;margin-bottom:3px}
.result-card .finish-actions{margin-top:5px}

@media(max-width:360px){
  .retention-records{grid-template-columns:repeat(2,1fr)}
  .mastery-grid,.monthly-archive-grid{grid-template-columns:1fr}
  .star-path{grid-template-columns:repeat(2,1fr)}
  .result-stars{font-size:26px}
}


/* ==================================================================
   RTP v04 — lighter home surface + collapsible Gardener's Journal
   ================================================================== */

/* Home is intentionally lighter now: the progress panel moved out so the hero
   does not feel stacked with three consecutive cards. */
#home .goals{display:none!important}

#home .mission-hub{
  position:relative;z-index:3;
  margin-top:12px;
  padding:0;
  border-radius:22px;
  overflow:hidden;
}
#home .mission-hub-toggle{
  width:100%;
  appearance:none;
  border:0;
  background:transparent;
  color:inherit;
  padding:13px;
  cursor:pointer;
  text-align:left;
}
#home .mission-hub-head{margin:0;align-items:center}
#home .mission-head-right{display:flex;align-items:center;gap:8px;flex-shrink:0}
#home .mission-chevron{
  display:grid;place-items:center;
  width:28px;height:28px;border-radius:50%;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  color:#f0cf7c;font-size:16px;line-height:1;
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
#home .mission-hub.is-open .mission-chevron{
  transform:rotate(180deg);
  background:rgba(240,203,120,.09);
  border-color:rgba(240,203,120,.24);
}
#home .mission-hub-body{
  padding:0 13px 13px;
}
#home .mission-hub:not(.is-open) .mission-hub-body{display:none}
#home .mission-hub:not(.is-open)::after{
  content:"";
  position:absolute;left:13px;right:13px;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
}
#home .mission-hub.is-open::after{display:none}
#home .mission-grid{padding-top:2px}

@media(max-width:420px){
    #home .mission-hub-toggle{padding:12px}
  #home .mission-hub-body{padding:0 12px 12px}
}


/* ==================================================================
   RTP v04 FINAL — home rhythm / dock polish
   ================================================================== */

/* With the old progress card removed, keep the home page breathing instead of
   stretching each remaining block. */
#home .home-hero-brand{padding-top:18px!important;padding-bottom:4px!important}
#home .quick-rail{margin-bottom:1px!important}
#home .mission-hub{margin-top:10px!important}
#home .mission-hub-toggle{min-height:68px!important}
#home .mission-hub-head h3{font-size:14px!important;line-height:1.15!important}
#home .mission-kicker{font-size:8.5px!important;letter-spacing:.15em!important}
#home .mission-reward-count{padding:5px 8px!important;background:rgba(255,255,255,.035)!important}
#home .home-resume-card{margin-top:10px!important}

/* Gameplay tray: keep the board mathematically centred, but make the lower tray
   read as one compact object. This changes only tray rhythm, not board position. */
#game .hud-strip{width:calc(100% - 18px)!important;margin:0 9px 2px!important}
#game .dock{gap:3px!important;padding:5px!important;border-radius:17px!important}
#game .dock-tools,#game .palette{gap:3px!important}
#game .tool{min-height:37px!important}
#game .color-btn{height:clamp(37px,10vw,42px)!important;min-height:37px!important}
#game .color-btn .remain-badge{top:-2px!important;right:-1px!important}

@media(max-width:390px){
  #home .mission-hub-toggle{min-height:62px!important}
  #game .hud-strip{width:calc(100% - 14px)!important;margin-left:7px!important;margin-right:7px!important}
  #game .dock{padding:4px!important}
  #game .tool{min-height:36px!important}
  #game .color-btn{height:36px!important;min-height:36px!important}
}


/* RTP v05 — Twin Flower interaction feedback */
.color-btn.rule-disabled{opacity:.22;filter:saturate(.35);transform:scale(.96)}
.color-btn.rule-disabled:active{transform:scale(.96)}
.cell.peer .twin-tag{filter:brightness(1.08);box-shadow:0 0 0 2px rgba(242,199,92,.22),0 2px 5px rgba(0,0,0,.25)}


/* RTP v05 — first-use explanation for the replacement Twin Flower mechanic. */
.mechanic-toast{
  position:absolute;z-index:80;top:84px;left:50%;transform:translateX(-50%);
  width:min(calc(100% - 28px),430px);display:grid;grid-template-columns:auto 1fr auto;
  gap:10px;align-items:center;padding:10px 10px 10px 12px;border-radius:16px;
  background:linear-gradient(145deg,rgba(18,27,48,.97),rgba(9,16,31,.96));
  border:1px solid rgba(239,199,103,.42);box-shadow:0 14px 35px rgba(0,0,0,.34);
}
.mechanic-toast.hidden{display:none}
.twin-demo{display:flex;align-items:center;gap:4px;color:#e8c66f;font-size:11px;font-weight:900}
.twin-demo i{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-style:normal;color:#291c09;background:linear-gradient(180deg,#ffe69c,#e7b74b);border:1px solid rgba(255,241,191,.72)}
.twin-demo span{color:#f5e4b1}
.mechanic-toast-copy{min-width:0}.mechanic-toast-copy b{display:block;color:#fff5dc;font-size:11px}.mechanic-toast-copy span{display:block;color:#c2ccdc;font-size:8.5px;line-height:1.3;margin-top:2px}
.mechanic-toast-close{appearance:none;border:0;background:transparent;color:#9eabc0;width:28px;height:28px;font-size:18px;cursor:pointer}

/* ==================================================================
   RTP v08 — FINAL POLISH / PRISM ICON LANGUAGE / SPLASH
   ================================================================== */
.app-splash{position:fixed;inset:0;z-index:99999;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 78%,rgba(255,186,120,.18),transparent 22%),linear-gradient(180deg,#050b1a 0%,#0c1431 42%,#17173b 70%,#2f2350 100%);opacity:1;visibility:visible;transition:opacity .55s ease,visibility .55s step-end;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}
.app-splash.is-hidden{opacity:0;visibility:hidden}
.app-splash *{box-sizing:border-box}
.app-splash-backdrop,.app-splash-garden,.app-splash-petals,.app-splash-center,.app-splash-brand,.app-splash-skip{position:absolute}
.app-splash-backdrop{inset:0;background:
  radial-gradient(circle at 50% 18%,rgba(109,136,255,.14),transparent 28%),
  radial-gradient(circle at 50% 86%,rgba(255,166,110,.06),transparent 18%),
  linear-gradient(180deg,rgba(5,10,28,.08),rgba(5,10,28,.0));animation:splashSky 4s ease forwards}
.app-splash-backdrop::before,.app-splash-backdrop::after{content:"";position:absolute;inset:-8%;background-repeat:no-repeat;pointer-events:none}
.app-splash-backdrop::before{background-image:
  radial-gradient(circle at 18% 32%,rgba(255,170,210,.08) 0 2px,transparent 2px),
  radial-gradient(circle at 74% 26%,rgba(155,208,255,.08) 0 2px,transparent 2px),
  radial-gradient(circle at 62% 46%,rgba(255,220,160,.06) 0 1.5px,transparent 1.5px),
  radial-gradient(circle at 39% 22%,rgba(255,170,210,.08) 0 1.5px,transparent 1.5px),
  radial-gradient(circle at 52% 12%,rgba(255,240,200,.11) 0 1.5px,transparent 1.5px);
opacity:.75;filter:blur(.2px)}
.app-splash-backdrop::after{background:
 radial-gradient(ellipse at 50% 92%,rgba(255,202,130,.14),transparent 34%),
 radial-gradient(circle at 50% 60%,rgba(151,89,229,.12),transparent 22%);
animation:splashDawnGlow 4s ease forwards}
.app-splash-garden{inset:auto 0 0 0;height:56%;opacity:0;animation:splashGarden 4s ease forwards}
.app-splash-garden::before{content:"";position:absolute;inset:0;background:
 linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(8,10,22,.05) 12%,rgba(10,11,24,.55) 86%,rgba(7,8,19,.92) 100%),
 radial-gradient(circle at 8% 100%,rgba(104,56,152,.95),transparent 24%),
 radial-gradient(circle at 20% 100%,rgba(77,120,98,.9),transparent 18%),
 radial-gradient(circle at 32% 100%,rgba(82,63,144,.9),transparent 22%),
 radial-gradient(circle at 67% 100%,rgba(64,103,91,.88),transparent 17%),
 radial-gradient(circle at 83% 100%,rgba(108,64,150,.94),transparent 24%),
 radial-gradient(circle at 93% 100%,rgba(80,118,96,.88),transparent 18%)}
.app-splash-garden::after{content:"";position:absolute;left:50%;bottom:-10%;transform:translateX(-50%);width:min(54vw,340px);height:72%;border-radius:46% 46% 0 0;background:
 radial-gradient(ellipse at 50% 8%,rgba(255,214,153,.28),transparent 25%),
 linear-gradient(180deg,rgba(241,167,115,.0),rgba(70,51,105,.18) 28%,rgba(29,26,53,.82) 100%);
 clip-path:polygon(48% 0,55% 0,100% 100%,0 100%)}
.app-splash-path{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(60vw,400px);height:44%;opacity:0;filter:drop-shadow(0 0 18px rgba(255,170,120,.11));animation:splashPath 4s ease forwards}
.app-splash-path::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.0));clip-path:polygon(46% 0,54% 0,100% 100%,0 100%)}
.app-splash-path::after{content:"";position:absolute;left:50%;bottom:8%;transform:translateX(-50%);width:100%;height:92%;background:
 radial-gradient(circle at 50% 0,rgba(255,226,164,.16),transparent 22%),
 linear-gradient(180deg,rgba(244,186,125,.06),rgba(246,193,132,.02));
 clip-path:polygon(47% 0,53% 0,86% 100%,14% 100%)}
.app-splash-petals{inset:0;pointer-events:none;overflow:hidden}
.app-splash-petals span{position:absolute;width:18px;height:28px;background:radial-gradient(circle at 45% 30%,rgba(255,210,232,.96),rgba(238,120,196,.82) 62%,rgba(123,74,170,.78) 100%);border-radius:70% 70% 70% 70%/82% 82% 46% 46%;opacity:0;filter:drop-shadow(0 0 9px rgba(255,161,220,.18));animation:splashPetal var(--dur,4s) linear var(--delay,0s) infinite}
.app-splash-petals span:nth-child(1){left:14%;top:18%;--dur:4.6s;--delay:.2s}
.app-splash-petals span:nth-child(2){left:26%;top:8%;--dur:5.1s;--delay:1.1s}
.app-splash-petals span:nth-child(3){left:71%;top:13%;--dur:4.8s;--delay:.6s}
.app-splash-petals span:nth-child(4){left:82%;top:26%;--dur:5.4s;--delay:1.5s}
.app-splash-petals span:nth-child(5){left:8%;top:52%;--dur:4.3s;--delay:1.8s}
.app-splash-petals span:nth-child(6){left:88%;top:58%;--dur:4.9s;--delay:2.2s}
.app-splash-petals span:nth-child(7){left:38%;top:12%;--dur:5.3s;--delay:2.8s}
.app-splash-petals span:nth-child(8){left:61%;top:5%;--dur:4.7s;--delay:3.1s}
.app-splash-center{left:50%;top:50%;width:min(44vw,260px);height:min(44vw,260px);transform:translate(-50%,-54%);pointer-events:none}
.app-splash-glow{position:absolute;inset:18% 18% 18% 18%;border-radius:50%;background:radial-gradient(circle,rgba(255,182,130,.5) 0%,rgba(255,133,204,.22) 32%,rgba(142,100,255,.08) 58%,transparent 72%);opacity:.18;animation:splashCoreGlow 4s ease forwards}
.app-splash-bud{position:absolute;left:50%;top:52%;width:min(16vw,86px);height:min(22vw,116px);transform:translate(-50%,-50%);opacity:0;animation:splashBud 4s ease forwards}
.app-splash-bud::before{content:"";position:absolute;inset:0;border-radius:68% 68% 50% 50%/82% 82% 32% 32%;background:radial-gradient(circle at 50% 18%,rgba(255,236,248,.92),rgba(255,151,210,.88) 33%,rgba(201,105,208,.92) 64%,rgba(106,72,180,.94) 100%);box-shadow:0 0 32px rgba(255,133,206,.22),inset 0 -10px 18px rgba(113,69,171,.34)}
.app-splash-bud::after{content:"";position:absolute;left:50%;bottom:-10%;width:28%;height:26%;transform:translateX(-50%);border-radius:0 0 999px 999px;background:linear-gradient(180deg,rgba(201,248,180,.95),rgba(88,170,106,.95));box-shadow:0 0 10px rgba(103,196,120,.16)}
.app-splash-blossom{position:absolute;left:50%;top:51%;width:min(28vw,170px);height:min(28vw,170px);transform:translate(-50%,-50%) scale(.55);opacity:0;animation:splashBlossom 4s ease forwards}
.app-splash-blossom .petal{position:absolute;left:50%;top:50%;width:38%;height:56%;margin:-44% 0 0 -19%;transform-origin:50% 92%;border-radius:70% 70% 48% 48%/82% 82% 28% 28%;background:radial-gradient(circle at 50% 18%,rgba(255,242,248,.96),rgba(255,168,218,.95) 34%,rgba(245,121,193,.90) 58%,rgba(124,94,205,.86) 100%);box-shadow:0 0 16px rgba(255,188,231,.18),inset 0 -10px 12px rgba(115,88,198,.20)}
.app-splash-blossom .petal:nth-child(1){transform:rotate(0deg) translateY(-46%)}
.app-splash-blossom .petal:nth-child(2){transform:rotate(72deg) translateY(-46%)}
.app-splash-blossom .petal:nth-child(3){transform:rotate(144deg) translateY(-46%)}
.app-splash-blossom .petal:nth-child(4){transform:rotate(216deg) translateY(-46%)}
.app-splash-blossom .petal:nth-child(5){transform:rotate(288deg) translateY(-46%)}
.app-splash-blossom .core{position:absolute;left:50%;top:50%;width:26%;height:26%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,251,222,.98) 0%,rgba(255,221,130,.98) 54%,rgba(255,165,83,.92) 78%,rgba(204,102,112,.56) 100%);box-shadow:0 0 18px rgba(255,226,145,.32),0 0 40px rgba(255,160,120,.18)}
.app-splash-sparks{position:absolute;inset:12%}
.app-splash-sparks span{position:absolute;width:6px;height:6px;border-radius:50%;background:rgba(255,227,168,.95);box-shadow:0 0 10px rgba(255,213,125,.35);opacity:0;animation:splashSpark 4s ease infinite}
.app-splash-sparks span:nth-child(1){left:20%;top:38%;animation-delay:.7s}
.app-splash-sparks span:nth-child(2){left:71%;top:28%;animation-delay:1.1s}
.app-splash-sparks span:nth-child(3){left:36%;top:14%;animation-delay:1.5s}
.app-splash-sparks span:nth-child(4){left:58%;top:62%;animation-delay:1.85s}
.app-splash-sparks span:nth-child(5){left:82%;top:53%;animation-delay:2.1s}
.app-splash-lattice{position:absolute;left:50%;top:50%;width:min(36vw,220px);height:min(36vw,220px);transform:translate(-50%,-50%) scale(.72);opacity:0;animation:splashLattice 4s ease forwards}
.app-splash-lattice,.app-splash-lattice::before,.app-splash-lattice::after{border-radius:50%}
.app-splash-lattice::before,.app-splash-lattice::after{content:"";position:absolute;inset:0;border:1.3px solid rgba(245,208,124,.42);box-shadow:0 0 14px rgba(253,196,97,.06),inset 0 0 22px rgba(255,206,125,.02)}
.app-splash-lattice::after{inset:14%;border-color:rgba(144,209,255,.32)}
.app-splash-lattice .ring{position:absolute;inset:7%;border:1.2px solid rgba(216,154,250,.36);border-radius:50%;transform:rotate(28deg)}
.app-splash-lattice .cross,.app-splash-lattice .cross::before{position:absolute;left:50%;top:50%;width:74%;height:1.4px;background:linear-gradient(90deg,transparent,rgba(245,208,124,.45),transparent);transform-origin:50% 50%}
.app-splash-lattice .cross{transform:translate(-50%,-50%) rotate(0deg)}
.app-splash-lattice .cross::before{content:"";transform:rotate(90deg)}
.app-splash-lattice .orbit{position:absolute;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:radial-gradient(circle,rgba(255,247,235,.96) 0 22%,rgba(255,177,215,.92) 23% 48%,rgba(109,182,255,.95) 49% 100%);box-shadow:0 0 14px rgba(255,207,120,.18)}
.app-splash-lattice .orbit.o1{transform:translate(-50%,-50%) rotate(0deg) translateY(-108px)}
.app-splash-lattice .orbit.o2{transform:translate(-50%,-50%) rotate(72deg) translateY(-108px)}
.app-splash-lattice .orbit.o3{transform:translate(-50%,-50%) rotate(144deg) translateY(-108px)}
.app-splash-lattice .orbit.o4{transform:translate(-50%,-50%) rotate(216deg) translateY(-108px)}
.app-splash-lattice .orbit.o5{transform:translate(-50%,-50%) rotate(288deg) translateY(-108px)}
.app-splash-brand{left:50%;top:18%;width:min(92vw,820px);transform:translateX(-50%);text-align:center;padding:0 18px;opacity:0;animation:splashBrand 4s ease forwards;pointer-events:none}
.app-splash-brand-mark{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:10px}
.app-splash-brand-mark .mini-flower{position:relative;width:40px;height:40px;filter:drop-shadow(0 0 10px rgba(255,186,218,.24))}
.app-splash-brand-mark .mini-flower span{position:absolute;left:50%;top:50%;width:44%;height:64%;margin:-31% 0 0 -22%;transform-origin:50% 92%;border-radius:70% 70% 48% 48%/82% 82% 28% 28%;background:radial-gradient(circle at 50% 18%,rgba(255,244,250,.96),rgba(255,178,225,.95) 34%,rgba(240,133,207,.92) 58%,rgba(136,111,220,.88) 100%)}
.app-splash-brand-mark .mini-flower span:nth-child(1){transform:rotate(0deg) translateY(-42%)}
.app-splash-brand-mark .mini-flower span:nth-child(2){transform:rotate(72deg) translateY(-42%)}
.app-splash-brand-mark .mini-flower span:nth-child(3){transform:rotate(144deg) translateY(-42%)}
.app-splash-brand-mark .mini-flower span:nth-child(4){transform:rotate(216deg) translateY(-42%)}
.app-splash-brand-mark .mini-flower span:nth-child(5){transform:rotate(288deg) translateY(-42%)}
.app-splash-brand-mark .mini-flower i{position:absolute;left:50%;top:50%;width:26%;height:26%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,251,226,.98),rgba(255,216,123,.98) 62%,rgba(255,161,106,.92) 100%)}
.app-splash-title{font-size:clamp(42px,9vw,100px);line-height:.92;letter-spacing:.12em;text-transform:uppercase;font-weight:300;background:linear-gradient(90deg,#f7b0de 0%,#f6d0ea 24%,#a6d8ff 54%,#f2d17b 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 20px rgba(30,20,52,.35)}
.app-splash-sub{display:inline-flex;align-items:center;gap:14px;margin-top:10px;font-size:clamp(16px,2.7vw,34px);letter-spacing:.28em;text-transform:uppercase;color:#efcc83}
.app-splash-sub::before,.app-splash-sub::after{content:"";width:min(14vw,110px);height:1px;background:linear-gradient(90deg,transparent,rgba(241,207,121,.8),transparent)}
.app-splash-skip{left:50%;bottom:max(14px,env(safe-area-inset-bottom,0px) + 14px);transform:translateX(-50%);padding:9px 14px;border-radius:999px;font-size:13px;line-height:1.2;letter-spacing:.04em;color:rgba(247,239,255,.9);background:rgba(10,16,32,.36);border:1px solid rgba(255,220,171,.18);backdrop-filter:blur(6px);box-shadow:0 8px 28px rgba(0,0,0,.18);opacity:0;animation:splashSkip 4s ease forwards}
.app-splash-skip b{color:#ffd99d;font-weight:600}
.app-splash-brand::before{content:"";position:absolute;left:50%;top:52%;width:min(82vw,720px);height:140px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,210,140,.09),transparent 60%);filter:blur(18px);opacity:0;animation:splashBrandHalo 4s ease forwards}
.app-splash-brand-shine{position:absolute;left:50%;top:52%;width:min(88vw,760px);height:150px;transform:translate(-50%,-50%) rotate(-10deg);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0) 28%,rgba(255,247,229,.08) 42%,rgba(255,237,185,.34) 49%,rgba(255,247,229,.08) 56%,rgba(255,255,255,0) 72%,transparent 100%);filter:blur(1px);opacity:0;mix-blend-mode:screen;animation:splashBrandShine 4s ease forwards}
body.intro-home-enter #home .quick-rail .quick-card,
body.intro-home-enter #home .cta-zone,
body.intro-home-enter #home .mission-hub,
body.intro-home-enter #home .home-bar,
body.intro-home-enter #home .home-hero-brand{animation:introHomeRise .7s cubic-bezier(.22,1,.36,1) both}
body.intro-home-enter #home .home-bar{animation-delay:.02s}
body.intro-home-enter #home .home-hero-brand{animation-delay:.07s}
body.intro-home-enter #home .quick-rail .quick-card:nth-child(1){animation-delay:.12s}
body.intro-home-enter #home .quick-rail .quick-card:nth-child(2){animation-delay:.18s}
body.intro-home-enter #home .quick-rail .quick-card:nth-child(3){animation-delay:.24s}
body.intro-home-enter #home .mission-hub{animation-delay:.29s}
body.intro-home-enter #home .cta-zone{animation-delay:.36s}
body.intro-home-enter #home .cta-main,
body.intro-home-enter #home .cta-discard{animation:introHomeButtonGlow .82s cubic-bezier(.22,1,.36,1) both}
body.intro-home-enter #home .cta-main{animation-delay:.4s}
body.intro-home-enter #home .cta-discard{animation-delay:.44s}
@keyframes splashBrandHalo{0%,52%{opacity:0;transform:translate(-50%,-50%) scale(.86)}66%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:.26;transform:translate(-50%,-50%) scale(1.02)}}
@keyframes splashBrandShine{0%,58%{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) translateX(-28%)}68%{opacity:1}82%{opacity:1;transform:translate(-50%,-50%) rotate(-10deg) translateX(24%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) translateX(34%)}}
@keyframes introHomeRise{0%{opacity:0;transform:translateY(10px) scale(.992)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes introHomeButtonGlow{0%{opacity:0;transform:translateY(10px) scale(.988);filter:brightness(.96)}55%{opacity:1;transform:translateY(0) scale(1.006);filter:brightness(1.02)}100%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}
@keyframes splashSky{0%{transform:scale(1.03);filter:brightness(.9)}70%{transform:scale(1.02);filter:brightness(1)}100%{transform:scale(1);filter:brightness(1.08)}}
@keyframes splashDawnGlow{0%,58%{opacity:.2}82%{opacity:.65}100%{opacity:.9}}
@keyframes splashBud{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}8%{opacity:1}24%{opacity:1;transform:translate(-50%,-50%) scale(1)}36%{opacity:.82}48%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes splashBlossom{0%,18%{opacity:0;transform:translate(-50%,-50%) scale(.55)}28%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}42%{opacity:1;transform:translate(-50%,-50%) scale(1)}72%{opacity:.96}100%{opacity:.72;transform:translate(-50%,-50%) scale(.98)}}
@keyframes splashCoreGlow{0%,15%{opacity:.12;transform:scale(.7)}32%{opacity:.42;transform:scale(1)}72%{opacity:.3}100%{opacity:.12;transform:scale(1.16)}}
@keyframes splashSpark{0%,14%{opacity:0;transform:scale(.35)}22%,52%{opacity:1;transform:scale(1)}66%{opacity:.35;transform:scale(.75)}100%{opacity:0;transform:translateY(-18px) scale(.2)}}
@keyframes splashLattice{0%,28%{opacity:0;transform:translate(-50%,-50%) scale(.72)}42%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}60%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:.75}100%{opacity:.32;transform:translate(-50%,-50%) scale(1.04)}}
@keyframes splashGarden{0%,58%{opacity:0;transform:scale(1.02)}78%{opacity:1;transform:scale(1.01)}100%{opacity:1;transform:scale(1)}}
@keyframes splashPath{0%,62%{opacity:0;transform:translateX(-50%) scale(.95)}82%{opacity:1;transform:translateX(-50%) scale(1)}100%{opacity:1;transform:translateX(-50%) scale(1)}}
@keyframes splashBrand{0%,48%{opacity:0;transform:translateX(-50%) translateY(12px) scale(.98)}64%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashSkip{0%,68%{opacity:0}84%,100%{opacity:1}}
@keyframes splashPetal{0%{opacity:0;transform:translate3d(0,-8px,0) rotate(-14deg) scale(.72)}12%{opacity:.9}100%{opacity:0;transform:translate3d(-34px,82px,0) rotate(22deg) scale(1)}}
@media (max-width:680px){
  .app-splash-brand{top:13%}
  .app-splash-center{top:48%;width:min(58vw,240px);height:min(58vw,240px)}
  .app-splash-lattice .orbit.o1,.app-splash-lattice .orbit.o2,.app-splash-lattice .orbit.o3,.app-splash-lattice .orbit.o4,.app-splash-lattice .orbit.o5{transform-origin:center center}
  .app-splash-lattice .orbit.o1{transform:translate(-50%,-50%) rotate(0deg) translateY(-82px)}
  .app-splash-lattice .orbit.o2{transform:translate(-50%,-50%) rotate(72deg) translateY(-82px)}
  .app-splash-lattice .orbit.o3{transform:translate(-50%,-50%) rotate(144deg) translateY(-82px)}
  .app-splash-lattice .orbit.o4{transform:translate(-50%,-50%) rotate(216deg) translateY(-82px)}
  .app-splash-lattice .orbit.o5{transform:translate(-50%,-50%) rotate(288deg) translateY(-82px)}
  .app-splash-title{font-size:clamp(36px,11vw,70px);letter-spacing:.1em}
  .app-splash-sub{gap:10px;font-size:clamp(13px,3.7vw,19px);letter-spacing:.18em}
  .app-splash-sub::before,.app-splash-sub::after{width:min(10vw,46px)}
  .app-splash-skip{font-size:12px;padding:8px 12px}
}
@media(prefers-reduced-motion:reduce){
  .app-splash{transition:none}
  .app-splash-backdrop,.app-splash-backdrop::after,.app-splash-garden,.app-splash-path,.app-splash-bud,.app-splash-blossom,.app-splash-glow,.app-splash-lattice,.app-splash-brand,.app-splash-skip,.app-splash-petals span,.app-splash-sparks span,.app-splash-brand::before,.app-splash-brand-shine{animation:none!important}
  .app-splash-bud{display:none}
  .app-splash-blossom,.app-splash-brand,.app-splash-garden,.app-splash-path,.app-splash-lattice,.app-splash-skip{opacity:1}
  .app-splash-lattice{opacity:.28}
}

#home .home-prism-mark{width:48px;height:48px;margin-bottom:8px;filter:drop-shadow(0 0 7px rgba(248,198,100,.38)) drop-shadow(0 6px 12px rgba(0,0,0,.32))}
#home .home-prism-mark .pg-logo-petal{stroke:rgba(255,226,170,.72);stroke-width:1.15}
#home .pg-logo-red{fill:#ff6596}#home .pg-logo-orange{fill:#ff9c45}#home .pg-logo-green{fill:#56d18e}#home .pg-logo-blue{fill:#4ec7df}#home .pg-logo-violet{fill:#8d7cff}#home .pg-logo-pink{fill:#d85de6}
#home .pg-logo-core{fill:#ffe39a;stroke:#fff2c8;stroke-width:1.1}#home .pg-logo-glint{fill:#fff}
#home .qc-ico{width:46px;height:46px;border-radius:15px;color:#fff6df;background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.20),transparent 27%),linear-gradient(145deg,rgba(255,213,123,.16),rgba(78,48,125,.18));border:1px solid rgba(255,225,166,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 0 16px rgba(243,192,98,.13),0 7px 13px rgba(0,0,0,.18);filter:none}
#home .qc-ico svg{width:31px;height:31px;stroke:#fff7e6;filter:drop-shadow(0 0 4px rgba(255,215,138,.44))}
#home .qc-infinity svg{width:34px;height:34px}#home .qc-sprout svg{width:32px;height:32px}
#home .qc-daily .qc-ico{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.23),transparent 27%),linear-gradient(145deg,rgba(106,166,255,.30),rgba(39,74,142,.26))}
#home .qc-free .qc-ico{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.23),transparent 27%),linear-gradient(145deg,rgba(202,122,255,.32),rgba(101,54,163,.30))}
#home .qc-garden .qc-ico{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.23),transparent 27%),linear-gradient(145deg,rgba(105,229,175,.30),rgba(34,129,92,.27))}

.icon-btn{color:#f6f0ff;border-color:rgba(235,205,143,.24)!important;background:linear-gradient(160deg,rgba(36,45,75,.96),rgba(14,24,43,.98))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 5px 14px rgba(0,0,0,.20),0 0 12px rgba(168,120,226,.08)!important}
.icon-btn svg{stroke:#f5edff!important;filter:drop-shadow(0 0 3px rgba(190,142,238,.25))}
.icon-btn:active{box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 2px 8px rgba(0,0,0,.22)!important}

.tabbar{backdrop-filter:none!important;background:linear-gradient(180deg,rgba(12,20,38,.97),rgba(6,12,26,.995))!important}
.tab{gap:3px;color:#8996ae!important}
.tab .tab-ico{width:31px;height:31px;border-radius:11px;display:grid;place-items:center;color:#9aabc6;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.tab .tab-ico svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tab.active{color:#f0cf7b!important}.tab.active .tab-ico{color:#ffe29a;border-color:rgba(242,199,104,.46);background:radial-gradient(circle at 35% 26%,rgba(255,245,207,.18),transparent 30%),linear-gradient(145deg,rgba(107,72,140,.46),rgba(28,34,61,.88));box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 0 14px rgba(219,167,76,.17)}
.tab.active .tab-ico svg{filter:drop-shadow(0 0 3px rgba(255,212,117,.35))}.tab .tab-spark{fill:currentColor;stroke:none}

#game .tool{overflow:visible}
#game .tool .tool-ico{width:25px;height:25px;border-radius:9px;display:grid;place-items:center;margin:0 auto 1px;color:#c8c3d9;background:linear-gradient(145deg,rgba(103,78,137,.13),rgba(16,28,48,.20));border:1px solid rgba(195,166,226,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.035);font-size:0!important}
#game .tool .tool-ico svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#game .tool-ico-place svg path:first-child{fill:rgba(255,218,132,.13);stroke:currentColor}#game .tool-ico-place svg circle{fill:#ffd575;stroke:#fff0bd}
#game .tool-ico-hint{color:#ffd978!important;background:radial-gradient(circle at 45% 35%,rgba(255,232,157,.22),transparent 34%),rgba(112,79,28,.12)!important;border-color:rgba(242,197,108,.19)!important;box-shadow:0 0 10px rgba(242,197,108,.08),inset 0 1px 0 rgba(255,255,255,.05)!important}
#game .tool.active .tool-ico{color:#ffe19a!important;background:radial-gradient(circle at 38% 28%,rgba(255,255,255,.18),transparent 30%),linear-gradient(145deg,rgba(126,78,148,.65),rgba(57,42,77,.82));border-color:rgba(246,205,113,.50);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 12px rgba(235,184,92,.15)}
#game .tool.active .tool-ico svg{filter:drop-shadow(0 0 2px rgba(255,218,132,.28))}#game .tool:disabled .tool-ico{filter:none;box-shadow:none;background:rgba(255,255,255,.018)}

.sr-ico{color:#f8d887!important;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.13),transparent 31%),linear-gradient(145deg,rgba(100,67,136,.32),rgba(24,32,56,.72))!important;border-color:rgba(239,198,108,.22)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 11px rgba(213,161,81,.07)}
.sr-ico svg{filter:drop-shadow(0 0 2px rgba(244,204,117,.18))}

#free .free-hero-mark{width:38px;height:38px;margin-bottom:4px;border-radius:14px;color:#ffd676;background:radial-gradient(circle at 50% 45%,rgba(255,230,154,.22),transparent 50%),linear-gradient(145deg,rgba(109,64,145,.34),rgba(22,30,54,.60));border:1px solid rgba(241,197,104,.23);box-shadow:0 0 16px rgba(219,160,82,.10),inset 0 1px 0 rgba(255,255,255,.08);text-shadow:none}
#free .free-hero-mark svg{width:25px;height:25px;fill:rgba(229,127,226,.32);stroke:currentColor;stroke-width:1.5;filter:drop-shadow(0 0 3px rgba(255,213,118,.23))}

#garden .garden-scene{position:relative}
#garden .garden-scene-copy{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;display:flex;flex-direction:column;align-items:flex-start;text-shadow:0 2px 10px rgba(0,0,0,.76);pointer-events:none}
#garden .garden-scene-copy span{font-size:7.5px;letter-spacing:.18em;font-weight:900;color:#e3bd68}#garden .garden-scene-copy strong{margin-top:2px;font-family:var(--font-display);font-size:20px;line-height:1;color:#fff4dc}#garden .garden-scene-copy small{margin-top:5px;max-width:78%;font-size:8.5px;line-height:1.25;color:#d0d8e6}
#garden .garden-scene::after{background:linear-gradient(180deg,rgba(5,10,22,.02) 20%,rgba(5,10,22,.20) 56%,rgba(4,9,20,.72) 100%)!important}
#garden .gstat-icon{border-radius:10px;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.15),transparent 32%),rgba(109,72,142,.13);border:1px solid rgba(232,194,112,.13);box-shadow:0 0 10px rgba(194,139,230,.06)}
#garden .gstat-icon svg{filter:drop-shadow(0 0 2px rgba(224,185,114,.15))}
.share-btn>span:first-child{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:9px;background:linear-gradient(145deg,rgba(210,132,241,.32),rgba(71,49,118,.35));border:1px solid rgba(244,205,117,.24);color:#ffe09a;box-shadow:0 0 10px rgba(198,126,235,.10)}
button:focus-visible,select:focus-visible{outline:2px solid rgba(255,212,117,.88);outline-offset:2px}
@media(max-width:390px){.tab{font-size:8.2px!important}.tab .tab-ico{width:28px;height:28px}#garden .garden-scene-copy strong{font-size:17px}#garden .garden-scene-copy small{font-size:7.7px;max-width:88%}}

/* Final small-icon consistency pass. */
.home-bar .icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rotate-hint .rot-ico svg{width:38px;height:38px;fill:none;stroke:#f0cf7b;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(239,195,101,.22))}
.onboard-prism-mark{width:82px!important;height:82px!important;margin:0 auto 10px!important;border-radius:23px;overflow:hidden;box-shadow:0 0 22px rgba(205,139,245,.18),0 12px 28px rgba(0,0,0,.28);border:1px solid rgba(244,207,123,.30)}
.onboard-prism-mark img{display:block;width:100%;height:100%;object-fit:cover}
.tab>span:last-child{white-space:nowrap}

/* ========================================================================
   RTP v10 — Monetization architecture UI
   Rewarded Ads · Premium / No Ads · Cosmetic Boutique · Garden Pass
   ======================================================================== */
.garden-boutique-btn{
  margin-top:10px;align-self:flex-start;display:inline-flex;align-items:center;gap:7px;
  border:1px solid rgba(255,210,116,.42);border-radius:999px;padding:7px 12px;
  background:rgba(7,14,28,.56);color:#f5d786;font-weight:800;font-size:11px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 18px rgba(0,0,0,.22)
}
.garden-boutique-btn span:first-child{filter:drop-shadow(0 0 7px rgba(255,205,91,.8))}
.boutique-settings-btn{color:#f4d27d}
.monetization-sheet{z-index:140;background:rgba(2,7,17,.82)}
.monetization-panel{max-width:620px;max-height:94dvh;padding-bottom:calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))}
.monetization-panel .sheet-head>div:first-child{min-width:0}
.shop-kicker,.shop-section-head span:first-child{
  display:block;color:#e3bb63;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase
}
.shop-body{display:grid;gap:12px;padding-bottom:8px}
.shop-wallet{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.shop-wallet span{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(11,20,38,.74)}
.shop-wallet small{font-size:9px;color:#94a1b9;text-transform:uppercase;letter-spacing:.08em}.shop-wallet b{font-size:13px;color:#f6d37e}
.shop-section{padding:14px;border:1px solid rgba(255,255,255,.085);border-radius:20px;background:linear-gradient(180deg,rgba(27,39,66,.72),rgba(13,23,42,.84));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.shop-premium{border-color:rgba(255,205,100,.28);background:linear-gradient(145deg,rgba(76,55,92,.42),rgba(17,29,49,.9))}
.shop-pass{border-color:rgba(170,137,255,.23)}
.shop-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.shop-section-head h4{margin:2px 0 0;font-family:var(--font-display);font-size:20px;color:#f6f1e8}.shop-section>p{margin:0 0 12px;color:#aeb9ce;font-size:11.5px;line-height:1.5}
.shop-badge{flex:0 0 auto;padding:6px 9px;border:1px solid rgba(255,211,119,.24);border-radius:999px;color:#f1cf78;background:rgba(255,208,103,.06);font-size:10px;font-weight:900}
.shop-product-row{display:grid;grid-template-columns:1.25fr 1fr;gap:8px}.shop-product-btn,.shop-pass-buy,.rewarded-btn{min-height:42px}
.shop-restore{margin-top:9px;padding:0;border:0;background:none;color:#93a1bb;text-decoration:underline;text-underline-offset:3px;font-size:10px}
.pass-progress{margin:10px 0 12px}.pass-progress>div{display:flex;justify-content:space-between;margin-bottom:6px;color:#e8d9ff;font-size:10px}.pass-progress i{display:block;height:6px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}.pass-progress em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9f70f0,#f6c967);box-shadow:0 0 12px rgba(199,148,255,.35)}
.pass-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(98px,1fr);gap:7px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:none}.pass-track::-webkit-scrollbar{display:none}.pass-tier{display:grid;gap:5px;padding:8px;border-radius:15px;border:1px solid rgba(255,255,255,.075);background:rgba(7,14,28,.48)}.pass-tier.locked{opacity:.48}.pass-tier header{display:flex;justify-content:space-between;align-items:center;color:#aab5ca;font-size:9px}.pass-tier header b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.06);color:#f2d67f}.pass-tier button{display:grid;gap:2px;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:7px;background:rgba(255,255,255,.035);color:#dce4f4;text-align:left}.pass-tier button small{font-size:7px;letter-spacing:.08em;text-transform:uppercase;color:#8f9cb4}.pass-tier button strong{font-size:9px}.pass-tier .premium-lane{border-color:rgba(182,132,255,.22);background:rgba(144,91,209,.08)}.pass-tier button:disabled{opacity:.58}
.shop-pass-buy{width:100%;margin-top:3px}.shop-subscription-note{display:block;margin:8px 2px 0;color:var(--muted);font-size:11px;line-height:1.45}.shop-rewarded{background:linear-gradient(145deg,rgba(29,68,63,.34),rgba(13,25,43,.88));border-color:rgba(91,211,164,.22)}.rewarded-btn{width:100%;border-color:rgba(98,218,169,.3)!important;color:#b5f3d8!important;background:rgba(69,186,141,.08)!important}
.shop-cosmetic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-cosmetic-card{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;gap:8px;padding:9px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:rgba(7,15,29,.5)}.shop-cosmetic-card>div:nth-child(2){min-width:0}.shop-cosmetic-card b{display:block;color:#ecf0f7;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-cosmetic-card small{display:block;margin-top:2px;color:#8896ae;font-size:8px}.shop-cosmetic-card button{grid-column:1/-1;border:1px solid rgba(255,207,103,.2);border-radius:10px;padding:7px;background:rgba(255,203,91,.06);color:#e8ca7a;font-size:9px;font-weight:800}.shop-cosmetic-card.equipped{border-color:rgba(255,209,107,.42);box-shadow:inset 0 0 0 1px rgba(255,204,91,.08)}
.cosmetic-preview{grid-row:1;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#172844,#0b1426);color:#f4d178;font-size:18px}.cosmetic-preview[data-preview="moon-gilt"]{background:radial-gradient(circle at 72% 26%,#f6dc91 0 7%,transparent 8%),linear-gradient(135deg,#27305c,#10172d);box-shadow:inset 0 0 0 2px rgba(240,193,84,.45)}.cosmetic-preview[data-preview="sakura"]{background:radial-gradient(circle,#f8a5cf 0 10%,transparent 11%),linear-gradient(135deg,#6f3d72,#182040)}.cosmetic-preview[data-preview="emerald"]{background:radial-gradient(circle,#7ae4a9 0 10%,transparent 11%),linear-gradient(135deg,#174f45,#0b1f29)}.cosmetic-preview[data-preview="lantern"]{background:radial-gradient(circle,#ffd56c 0 13%,rgba(255,184,53,.25) 14% 27%,transparent 28%),linear-gradient(135deg,#30253b,#101728)}.cosmetic-preview[data-preview="prism"]{background:conic-gradient(from 45deg,#ef7198,#f6b151,#eada65,#6ed5a3,#62bde7,#9d7de8,#ef7198)}
.shop-legal{margin:2px 2px 0;color:#707f9a;font-size:8.5px;line-height:1.45;text-align:center}
.shop-pass-billing{margin:9px 0 8px;color:#8f9bb0;font-size:8.5px;line-height:1.45}.shop-pass-links{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:-2px 0 9px}.shop-pass-link{border:0;padding:0;background:none;color:#d9bd72;font:inherit;font-size:8.5px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}

/* Equipped cosmetics are purely visual; none changes puzzle rules. */
:root[data-board-skin="moon-gilt"] :is(#game,#loadoutStage) .board{box-shadow:0 0 0 2px rgba(238,192,80,.42),0 18px 38px rgba(0,0,0,.42),0 0 28px rgba(245,204,106,.12)}
:root[data-board-skin="sakura"] :is(#game,#loadoutStage) .board{box-shadow:0 0 0 2px rgba(242,137,191,.38),0 18px 38px rgba(0,0,0,.42),0 0 26px rgba(240,118,186,.1)}
:root[data-board-skin="emerald"] :is(#game,#loadoutStage) .board{box-shadow:0 0 0 2px rgba(89,211,151,.34),0 18px 38px rgba(0,0,0,.42),0 0 26px rgba(57,192,133,.1)}
:root[data-finish-skin="lantern"] #finish .result-card{border-color:rgba(255,194,80,.45);box-shadow:0 0 40px rgba(255,170,53,.12),0 24px 70px rgba(0,0,0,.55)}
:root[data-finish-skin="prism"] #finish .result-card{border-color:rgba(183,139,255,.5);box-shadow:0 0 44px rgba(170,112,245,.15),0 24px 70px rgba(0,0,0,.55)}
:root[data-finish-skin="sakura"] #finish .result-card{border-color:rgba(242,141,194,.46);box-shadow:0 0 40px rgba(239,123,185,.13),0 24px 70px rgba(0,0,0,.55)}

@media(max-width:390px){.shop-cosmetic-grid{grid-template-columns:1fr}.shop-product-row{grid-template-columns:1fr}.shop-wallet{grid-template-columns:1fr 1fr}.monetization-panel{padding-left:14px;padding-right:14px}}

/* RTP v09 regional chapter identity preserved in v10 */
.journey-region{display:block;margin-top:3px;color:#b9c4dc;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.garden-chapter-region{grid-column:1/-1;color:#c2cbe0!important;font-size:9px!important;letter-spacing:.06em;text-transform:uppercase}
.garden-chapter-story{grid-column:1/-1;color:#aeb9cf;font-size:10px;line-height:1.45;font-style:normal;margin-top:3px}

/* ========================================================================
   RTP v11 — Release Candidate systems
   Tutorials, chapter storytelling, Free/Daily mechanics, album QA
   ======================================================================== */
.free-mechanic-picker{margin:14px 0 4px;padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:linear-gradient(180deg,rgba(21,31,53,.72),rgba(12,21,39,.78))}
.free-mechanic-head span{display:block;color:#d5b665;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.free-mechanic-head h3{margin:3px 0 10px;font-size:15px;color:#f5f0e6}
.free-mechanic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.free-mechanic-card{position:relative;min-width:0;padding:9px 5px 8px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.035);color:#c6cfdf;text-align:center;cursor:pointer}
.free-mechanic-card b{display:block;margin-top:5px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.free-mechanic-card i{display:grid;place-items:center;width:30px;height:30px;margin:auto;border-radius:50%;background:rgba(255,207,103,.08);border:1px solid rgba(255,207,103,.16);font-style:normal;color:#efd080;font-size:15px}.free-mechanic-card.active{border-color:rgba(255,205,102,.55);background:rgba(237,190,86,.11);box-shadow:0 0 0 1px rgba(255,206,105,.09),0 8px 18px rgba(0,0,0,.12)}.free-mechanic-card.locked{opacity:.42;cursor:not-allowed}.free-mechanic-card.locked::after{content:"🔒";position:absolute;right:4px;top:3px;font-size:8px}.free-mechanic-card small{display:none}
@media(max-width:390px){.free-mechanic-grid{gap:5px}.free-mechanic-card{padding:8px 3px}.free-mechanic-card b{font-size:8px}}

.story-overlay{position:fixed;z-index:1300;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,7,16,.82);backdrop-filter:blur(7px)}
.story-overlay.hidden{display:none}.story-card{width:min(440px,100%);max-height:min(760px,92dvh);overflow:auto;border:1px solid rgba(255,214,128,.22);border-radius:28px;background:linear-gradient(180deg,#17213a 0%,#0d172b 100%);box-shadow:0 30px 90px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.06)}
.story-scene{height:210px;background-image:var(--story-art);background-size:cover;background-position:center;position:relative}.story-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(12,21,39,.9) 100%)}
.story-content{padding:0 19px 20px;margin-top:-24px;position:relative;z-index:2}.story-kicker{display:inline-block;padding:6px 10px;border-radius:999px;background:rgba(8,14,29,.82);border:1px solid rgba(255,213,116,.23);color:#e6c573;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.story-content h2{margin:10px 0 3px;color:#fff6e5;font-size:25px;line-height:1.05}.story-region{display:block;color:#b7c3db;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.story-content p{margin:12px 0;color:#d2d9e8;font-size:12px;line-height:1.55}.story-flowers{display:grid;grid-template-columns:repeat(9,1fr);gap:5px;margin:14px 0}.story-flowers i{display:block;aspect-ratio:1;background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 4px 5px rgba(0,0,0,.3))}.story-reward-note,.chapter-complete-rewards{margin:10px 0;padding:10px 12px;border-radius:15px;background:rgba(241,194,84,.07);border:1px solid rgba(241,194,84,.15);color:#e5cf96;font-size:10px;line-height:1.45}.story-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:9px;margin-top:13px}.chapter-complete-score{display:flex;justify-content:space-between;gap:8px;margin:14px 0;padding:12px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07)}.chapter-complete-score span{display:block;text-align:center;flex:1}.chapter-complete-score b{display:block;color:#f5d579;font-size:18px}.chapter-complete-score small{color:#9eabc3;font-size:9px}.chapter-complete-flowers i.locked{filter:brightness(.18) saturate(.3);opacity:.58}

.mechanic-coach{position:fixed;z-index:1450;left:0;right:0;bottom:0;padding:12px 12px calc(12px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));pointer-events:none}.mechanic-coach.hidden{display:none}.mechanic-coach-card{width:min(480px,100%);margin:auto;padding:14px;border:1px solid rgba(255,206,103,.26);border-radius:22px;background:linear-gradient(180deg,rgba(24,34,59,.97),rgba(10,18,34,.99));box-shadow:0 -18px 42px rgba(0,0,0,.42);pointer-events:auto}.mechanic-coach-kicker{color:#d7b45e;font-size:8px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.mechanic-coach-card h3{margin:4px 0;color:#fff4de;font-size:17px}.mechanic-coach-card p{margin:6px 0 10px;color:#d2d9e6;font-size:11px;line-height:1.45}.mechanic-coach-progress{display:flex;gap:5px;margin-bottom:10px}.mechanic-coach-progress i{display:block;width:20px;height:3px;border-radius:3px;background:rgba(255,255,255,.12)}.mechanic-coach-progress i.on{background:#e8c76b}.mechanic-coach-actions{display:flex;justify-content:flex-end;gap:7px}.mechanic-coach-actions .btn{min-height:34px;padding:7px 12px;font-size:10px}.cell.coach-mechanic{position:relative;z-index:19!important;box-shadow:inset 0 0 0 2px #f1ce72,0 0 13px rgba(242,204,111,.45)!important}.vine-segment.coach-mechanic,.zone-mark.coach-mechanic{filter:brightness(1.35) drop-shadow(0 0 6px rgba(255,213,116,.5))}

.flower-qa-panel{max-width:720px!important;max-height:94dvh!important}.flower-qa-note{margin:0 0 12px;color:#aab5ca;font-size:10px;line-height:1.45}.flower-qa-grid{display:grid;gap:16px;padding-bottom:20px}.flower-qa-chapter{padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.025)}.flower-qa-chapter header{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:8px}.flower-qa-chapter header b{font-size:12px;color:#f5eddc}.flower-qa-chapter header span{font-size:8px;color:#9ba8c0}.flower-qa-row{display:grid;grid-template-columns:repeat(9,1fr);gap:5px}.flower-qa-token{min-width:0;text-align:center}.flower-qa-token i{display:block;width:42px;max-width:100%;aspect-ratio:1;margin:auto;background-size:contain;background-position:center;background-repeat:no-repeat}.flower-qa-token small{display:block;margin-top:3px;font-size:6.5px;color:#8f9cb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 189-flower album */
.collection-album-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:8px 0 11px}.collection-album-head div span{display:block;color:#d3ae5f;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.collection-album-head div b{display:block;color:#f4ecdd;font-size:15px}.collection-album-head>strong{color:#f0cb71;font-size:13px}.flower-album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.album-flower-card{position:relative;min-width:0;padding:9px 6px;border-radius:15px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.027);text-align:center}.album-flower-art{display:block;width:54px;height:54px;margin:auto;background-size:contain;background-repeat:no-repeat;background-position:center;filter:drop-shadow(0 5px 7px rgba(0,0,0,.34))}.album-flower-card.locked .album-flower-art{filter:brightness(.13) saturate(.25);opacity:.62}.album-flower-card.locked::after{content:"?";position:absolute;left:50%;top:35px;transform:translate(-50%,-50%);color:#e1c476;font-size:11px;font-weight:900}.album-flower-card b{display:block;margin-top:5px;color:#dce3f0;font-size:8px;line-height:1.2}.album-flower-card.locked b{color:#6f7b91}.album-mastery-reward{grid-column:1/-1;display:flex;align-items:center;gap:10px;margin-top:4px;padding:10px;border:1px solid rgba(238,193,85,.16);border-radius:15px;background:rgba(238,193,85,.045)}.album-mastery-reward .mastery-aura-preview{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,var(--mastery-color,#e4c266),transparent 68%);border:1px solid color-mix(in srgb,var(--mastery-color,#e4c266) 45%,transparent)}.album-mastery-reward div{flex:1;min-width:0}.album-mastery-reward small{display:block;color:#a3aec1;font-size:8px}.album-mastery-reward b{display:block;color:#eed38a;font-size:10px}.album-mastery-reward button{border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.04);color:#dce3ef;padding:7px 9px;font-size:8px}.album-mastery-reward.locked{opacity:.46}

/* Earn-only mastery aura: paid board / finish cosmetics remain separate. */
:root[data-aura-skin]:not([data-aura-skin="default"]) :is(#game,#loadoutStage) .board{box-shadow:0 0 0 1px var(--mastery-aura,rgba(235,201,105,.34)),0 0 26px color-mix(in srgb,var(--mastery-aura,#e8ca72) 24%,transparent),0 18px 38px rgba(0,0,0,.42)}
:root[data-aura-skin]:not([data-aura-skin="default"]) .result-card::after{content:"";position:absolute;pointer-events:none;inset:6px;border-radius:inherit;border:1px solid color-mix(in srgb,var(--mastery-aura,#e8ca72) 40%,transparent);box-shadow:inset 0 0 28px color-mix(in srgb,var(--mastery-aura,#e8ca72) 10%,transparent)}

/* local playtest status chips */
.playtest-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:rgba(98,185,144,.08);border:1px solid rgba(98,185,144,.16);color:#9ed5ba;font-size:8px}


/* RTP v12 — mobile boutique overflow + gameplay performance hotfix */
#shopSheet{
  padding-inline:max(8px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px))) max(8px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)));
  overflow:hidden;
}
#shopSheet .sheet-panel,.monetization-panel,.shop-body,.shop-section,.shop-wallet,.shop-product-row,.pass-progress,.pass-track,.shop-cosmetic-grid,.shop-cosmetic-card{
  min-width:0;
  max-width:100%;
}
#shopSheet .sheet-panel,.monetization-panel{
  width:min(100%,620px)!important;
  max-height:calc(100dvh - 14px);
  overflow-x:hidden;
  overscroll-behavior:contain;
}
.shop-section-head>div,.shop-wallet span,.shop-cosmetic-card>div:nth-child(2){min-width:0}
.shop-section-head h4,.shop-section>p,.shop-cosmetic-card b,.shop-cosmetic-card small{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.shop-product-btn,.shop-pass-buy,.rewarded-btn,.shop-cosmetic-card button{
  width:100%;
  max-width:100%;
  white-space:normal;
  text-align:center;
  line-height:1.25;
}
.pass-track{
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  grid-auto-columns:minmax(124px,142px);
}
#game .tool.hint-ad-mode{
  border-color:rgba(255,199,90,.45);
  background:linear-gradient(180deg,rgba(86,61,113,.72),rgba(38,33,57,.96));
}
#game .tool.hint-ad-mode .tool-ico,#game .tool.hint-ad-mode .tool-lbl{color:#ffd87e}
#game .tool.hint-bonus-mode{
  border-color:rgba(94,213,163,.35);
  background:linear-gradient(180deg,rgba(40,83,76,.62),rgba(18,35,48,.96));
}
#game .tool.hint-bonus-mode .tool-ico,#game .tool.hint-bonus-mode .tool-lbl{color:#baf1d8}
@media(max-width:430px){
  .monetization-panel{
    padding:14px 12px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    border-radius:24px 24px 0 0;
  }
  .shop-wallet,.shop-product-row,.shop-cosmetic-grid{grid-template-columns:1fr!important}
  .shop-section{padding:12px}
  .shop-section-head h4{font-size:18px}
  .pass-track{grid-auto-columns:136px}
  #home>*,.quick-rail .quick-card,.brand p{animation:none!important}
  .btn,.quick-card,.tab,.tool,.color-btn{transition:none!important}
}



/* ========================================================================
   RTP v12.2.1 — broad bugfix / interaction clarity pass
   ======================================================================== */
/* Cosmetic cards used to receive the raw category class `finish`, which
   collided with the full-screen result overlay `.finish` and teleported
   previews to the top-left of the Boutique. Keep previews strictly local. */
#shopSheet .cosmetic-preview{
  position:relative!important;inset:auto!important;z-index:auto!important;
}

/* Matching-flower feedback: preserve the quiet peer tint, but make exact
   matches unmistakable without expensive glow filters. This override comes
   after Vine/Zone/Fence backgrounds so special-mechanic cells stay readable. */
:is(#game,#loadoutStage) .cell.same:not(.selected){
  background:linear-gradient(145deg,rgba(112,78,121,.96),rgba(73,54,104,.98))!important;
  box-shadow:inset 0 0 0 2px rgba(249,207,111,.78),inset 0 0 18px rgba(164,111,220,.15)!important;
}
:is(#game,#loadoutStage) .cell.same:not(.selected) .flower-token{
  transform:scale(1.115)!important;
}
:is(#game,#loadoutStage) .cell.peer:not(.same):not(.selected) .flower-token{
  opacity:.82;
}
:is(#game,#loadoutStage) .cell.selected{
  box-shadow:inset 0 0 0 2px rgba(255,238,181,.34),0 0 0 1px rgba(248,203,105,.22)!important;
}


/* RTP v12.2.4 — touch target hardening. Keep the compact visual language but
   ensure primary puzzle controls meet a comfortable ~44px mobile hit area. */
@media (pointer:coarse), (max-width:600px){
  #game .tool{min-height:44px!important;}
  #game .color-btn{min-height:44px!important;}
  #game .mode-btn,#game button.icon-btn,.sheet button,.bottom-nav button{min-height:44px;}
  #game .color-btn .flower-token{max-height:34px;}
}


/* v12.2.2 mobile hardening */
#shopSheet::before{transform:none;}
#shopSheet .shop-body{overflow-x:clip;min-width:0;max-width:100%;}
#shopSheet .pass-track{width:100%;max-width:100%;contain:inline-size;}
@media (pointer:coarse){
  #game .tool{min-height:44px!important;height:44px!important;}
  #game .color-btn{min-height:44px!important;height:44px!important;}
  #game .hud .icon-btn{min-width:44px!important;min-height:44px!important;}
  .sheet-actions .btn,.story-actions .btn,.mechanic-coach-actions .btn{min-height:44px;}
  .free-mechanic-card{min-height:58px;}
}

/* ===== source: intro-v34-overrides ===== */
/* v12.3.4 intro composition cleanup */
.app-splash{background:#050b1a}
.app-splash-backdrop{background:
  radial-gradient(circle at 50% 18%,rgba(112,142,255,.12),transparent 30%),
  radial-gradient(circle at 50% 78%,rgba(255,176,120,.08),transparent 20%),
  linear-gradient(180deg,rgba(4,8,20,.58) 0%,rgba(6,10,24,.18) 44%,rgba(5,9,20,.24) 100%)!important}
.app-splash-garden{inset:0!important;height:auto!important;opacity:1!important;
  background-image:url("../scenes/soft-botanical-home.webp")!important;
  background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important;
  filter:brightness(.34) saturate(.92) blur(.2px);animation:splashGardenV4 4.05s ease forwards!important}
.app-splash-garden::before{content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(4,8,20,.64) 0%,rgba(5,9,23,.40) 34%,rgba(5,9,23,.18) 56%,rgba(4,8,20,.46) 100%),
    radial-gradient(circle at 50% 66%,rgba(247,177,120,.15),transparent 20%),
    radial-gradient(circle at 50% 38%,rgba(132,109,247,.08),transparent 25%)!important}
.app-splash-garden::after{display:none!important}
.app-splash-path{left:50%;bottom:0;width:min(44vw,250px);height:28%;opacity:0;z-index:3;filter:blur(.1px) drop-shadow(0 0 12px rgba(255,182,120,.11));animation:splashPathV4 4.05s ease forwards!important}
.app-splash-path::after{clip-path:polygon(48% 0,52% 0,72% 100%,28% 100%);background:linear-gradient(180deg,rgba(255,211,162,.10),rgba(255,211,162,.02))!important}
.app-splash-center{top:41%!important;width:min(30vw,144px)!important;height:min(30vw,144px)!important;transform:translate(-50%,-50%)!important;z-index:6;animation:splashCenterV4 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-glow{inset:10%!important;animation:splashCoreGlowV4 4.05s ease forwards!important}
.app-splash-bud{width:min(13vw,58px)!important;height:min(18vw,82px)!important;top:50%!important;animation:splashBudV4 4.05s ease forwards!important}
.app-splash-blossom{width:min(22vw,108px)!important;height:min(22vw,108px)!important;top:50%!important;animation:splashBlossomV4 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-blossom .petal{width:34%!important;height:54%!important;margin:-42% 0 0 -17%!important;clip-path:ellipse(48% 50% at 50% 50%)!important;border-radius:68% 68% 46% 46%/84% 84% 28% 28%!important;box-shadow:0 0 12px rgba(255,188,229,.14), inset 0 -8px 10px rgba(88,59,151,.18)!important}
.app-splash-blossom .core{width:24%!important;height:24%!important}
.app-splash-lattice{width:min(29vw,132px)!important;height:min(29vw,132px)!important;top:50%!important;animation:splashLatticeV4 4.05s cubic-bezier(.22,1,.36,1) forwards!important;opacity:0}
.app-splash-lattice::before{border-color:rgba(244,211,136,.26)!important;box-shadow:none!important}

.app-splash-lattice .ring{inset:12%!important;border-color:rgba(212,167,245,.18)!important}
.app-splash-lattice .cross,.app-splash-lattice .cross::before{width:64%!important;opacity:.55}
.app-splash-lattice .orbit{width:7px!important;height:7px!important;margin:-3.5px 0 0 -3.5px!important;background:rgba(248,219,144,.92)!important;box-shadow:0 0 8px rgba(255,219,140,.28)!important}
.app-splash-lattice .orbit.o1{transform:translate(-50%,-50%) rotate(0deg) translateY(-54px)!important}
.app-splash-lattice .orbit.o2{transform:translate(-50%,-50%) rotate(72deg) translateY(-54px)!important}
.app-splash-lattice .orbit.o3{transform:translate(-50%,-50%) rotate(144deg) translateY(-54px)!important}
.app-splash-lattice .orbit.o4{transform:translate(-50%,-50%) rotate(216deg) translateY(-54px)!important}
.app-splash-lattice .orbit.o5{transform:translate(-50%,-50%) rotate(288deg) translateY(-54px)!important}
.app-splash-brand{top:22%!important;width:min(92vw,660px)!important;z-index:8;animation:splashBrandV4 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{margin-bottom:6px!important}
.app-splash-brand-mark .mini-flower{width:28px!important;height:28px!important;opacity:.92}
.app-splash-title{font-size:clamp(34px,8.8vw,76px)!important;letter-spacing:.075em!important;text-shadow:0 2px 16px rgba(15,10,35,.36)!important}
.app-splash-sub{margin-top:8px!important;font-size:clamp(13px,2.7vw,22px)!important;letter-spacing:.23em!important}
.app-splash-brand::before{width:min(68vw,460px)!important;height:84px!important;animation:splashBrandHaloV4 4.05s ease forwards!important}
.app-splash-brand-shine{width:min(76vw,520px)!important;height:96px!important;animation:splashBrandShineV4 4.05s ease forwards!important}
.app-splash-petals span{width:13px!important;height:21px!important;opacity:.8}
.app-splash-skip{z-index:10}
@keyframes splashGardenV4{0%{filter:brightness(.18) saturate(.88);transform:scale(1.05)}38%{filter:brightness(.23) saturate(.9)}68%{filter:brightness(.30) saturate(.92)}100%{filter:brightness(.38) saturate(.95);transform:scale(1)}}
@keyframes splashPathV4{0%,48%{opacity:0}72%{opacity:.7}100%{opacity:.95}}
@keyframes splashCenterV4{0%{opacity:0;transform:translate(-50%,-48%) scale(.72)}12%{opacity:1}34%{opacity:1;transform:translate(-50%,-50%) scale(1)}52%{opacity:1;transform:translate(-50%,-74%) scale(.74)}66%{opacity:.22;transform:translate(-50%,-84%) scale(.54)}100%{opacity:0;transform:translate(-50%,-88%) scale(.46)}}
@keyframes splashBudV4{0%{opacity:0;transform:translate(-50%,-50%) scale(.62)}8%{opacity:1}20%{opacity:1;transform:translate(-50%,-50%) scale(1)}28%{opacity:.2}100%{opacity:0;transform:translate(-50%,-50%) scale(1.04)}}
@keyframes splashBlossomV4{0%,14%{opacity:0;transform:translate(-50%,-50%) scale(.58)}26%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}40%{opacity:1;transform:translate(-50%,-50%) scale(.98)}54%{opacity:.92;transform:translate(-50%,-50%) scale(.90)}64%{opacity:.18;transform:translate(-50%,-50%) scale(.72)}100%{opacity:0;transform:translate(-50%,-50%) scale(.62)}}
@keyframes splashLatticeV4{0%,26%{opacity:0;transform:translate(-50%,-50%) scale(.72)}40%{opacity:.85;transform:translate(-50%,-50%) scale(1)}54%{opacity:.72;transform:translate(-50%,-50%) scale(.92)}66%{opacity:.14;transform:translate(-50%,-50%) scale(.76)}100%{opacity:0;transform:translate(-50%,-50%) scale(.66)}}
@keyframes splashCoreGlowV4{0%,12%{opacity:.08;transform:scale(.7)}26%{opacity:.34;transform:scale(1)}52%{opacity:.22;transform:scale(.9)}100%{opacity:0;transform:scale(.7)}}
@keyframes splashBrandV4{0%,42%{opacity:0;transform:translateX(-50%) translateY(16px) scale(.985)}58%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloV4{0%,48%{opacity:0}58%{opacity:.66}100%{opacity:.18}}
@keyframes splashBrandShineV4{0%,56%{opacity:0;transform:translate(-50%,-50%) rotate(-9deg) translateX(-34%)}64%{opacity:1}76%{opacity:1;transform:translate(-50%,-50%) rotate(-9deg) translateX(22%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-9deg) translateX(30%)}}
@media (max-width:680px){
  .app-splash-brand{top:20%!important;width:94vw!important}
  .app-splash-title{font-size:clamp(32px,9.6vw,56px)!important;letter-spacing:.058em!important}
  .app-splash-sub{font-size:clamp(12px,3.35vw,16px)!important;letter-spacing:.16em!important;gap:7px!important}
  .app-splash-sub::before,.app-splash-sub::after{width:min(7vw,28px)!important}
  .app-splash-center{top:40%!important;width:min(34vw,138px)!important;height:min(34vw,138px)!important}
  .app-splash-blossom{width:min(24vw,96px)!important;height:min(24vw,96px)!important}
  .app-splash-lattice{width:min(33vw,128px)!important;height:min(33vw,128px)!important}
  .app-splash-path{width:min(48vw,230px)!important;height:26%!important}
}
@media (max-height:700px){
  .app-splash-brand{top:18%!important}
  .app-splash-center{top:39%!important}
}
@media(prefers-reduced-motion:reduce){
  .app-splash-garden{filter:brightness(.36) saturate(.94)!important}
  
  .app-splash-brand{top:22%!important;opacity:1!important;transform:translateX(-50%)!important}
}

/* ===== source: intro-v35-overrides ===== */
/* v12.3.5 intro alignment fix */
.app-splash-brand{top:18%!important;width:min(90vw,620px)!important;animation:splashBrandV5 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{margin-bottom:5px!important}
.app-splash-brand-mark .mini-flower{width:24px!important;height:24px!important;opacity:.9!important}
.app-splash-title{font-size:clamp(31px,8.2vw,68px)!important;letter-spacing:.068em!important}
.app-splash-sub{margin-top:7px!important;letter-spacing:.20em!important}
.app-splash-center{top:50%!important;width:min(22vw,102px)!important;height:min(22vw,102px)!important;animation:splashCenterV5 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-blossom{width:min(17vw,78px)!important;height:min(17vw,78px)!important;animation:splashBlossomV5 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-bud{width:min(10vw,44px)!important;height:min(14vw,62px)!important;animation:splashBudV5 4.05s ease forwards!important}
.app-splash-lattice{width:min(24vw,106px)!important;height:min(24vw,106px)!important;animation:splashLatticeV5 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-glow{animation:splashCoreGlowV5 4.05s ease forwards!important}
.app-splash-brand::before{animation:splashBrandHaloV5 4.05s ease forwards!important}
.app-splash-brand-shine{animation:splashBrandShineV5 4.05s ease forwards!important}
.app-splash-petals{z-index:2!important}
.app-splash-petals span:nth-child(1),.app-splash-petals span:nth-child(2),.app-splash-petals span:nth-child(3),.app-splash-petals span:nth-child(4){opacity:.45!important}
@keyframes splashCenterV5{0%{opacity:0;transform:translate(-50%,-50%) scale(.68)}12%{opacity:1;transform:translate(-50%,-50%) scale(.92)}24%{opacity:1;transform:translate(-50%,-50%) scale(1)}38%{opacity:.96;transform:translate(-50%,-50%) scale(.96)}50%{opacity:.50;transform:translate(-50%,-50%) scale(.86)}58%{opacity:0;transform:translate(-50%,-50%) scale(.72)}100%{opacity:0;transform:translate(-50%,-50%) scale(.64)}}
@keyframes splashBudV5{0%{opacity:0;transform:translate(-50%,-50%) scale(.62)}8%{opacity:1}18%{opacity:1;transform:translate(-50%,-50%) scale(.96)}24%{opacity:.15}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes splashBlossomV5{0%,14%{opacity:0;transform:translate(-50%,-50%) scale(.56)}24%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}36%{opacity:1;transform:translate(-50%,-50%) scale(.98)}48%{opacity:.72;transform:translate(-50%,-50%) scale(.90)}58%{opacity:0;transform:translate(-50%,-50%) scale(.76)}100%{opacity:0;transform:translate(-50%,-50%) scale(.68)}}
@keyframes splashLatticeV5{0%,22%{opacity:0;transform:translate(-50%,-50%) scale(.78)}34%{opacity:.75;transform:translate(-50%,-50%) scale(1)}46%{opacity:.62;transform:translate(-50%,-50%) scale(.96)}56%{opacity:0;transform:translate(-50%,-50%) scale(.82)}100%{opacity:0;transform:translate(-50%,-50%) scale(.74)}}
@keyframes splashCoreGlowV5{0%,12%{opacity:.06;transform:scale(.7)}24%{opacity:.28;transform:scale(1)}46%{opacity:.14;transform:scale(.92)}58%{opacity:0;transform:scale(.82)}100%{opacity:0;transform:scale(.7)}}
@keyframes splashBrandV5{0%,48%{opacity:0;transform:translateX(-50%) translateY(18px) scale(.985)}62%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloV5{0%,56%{opacity:0}66%{opacity:.52}100%{opacity:.14}}
@keyframes splashBrandShineV5{0%,63%{opacity:0;transform:translate(-50%,-50%) rotate(-9deg) translateX(-28%)}72%{opacity:1}82%{opacity:1;transform:translate(-50%,-50%) rotate(-9deg) translateX(16%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-9deg) translateX(24%)}}
@media (max-width:680px){
  .app-splash-brand{top:16%!important;width:92vw!important}
  .app-splash-title{font-size:clamp(30px,8.9vw,50px)!important;letter-spacing:.05em!important}
  .app-splash-sub{font-size:clamp(11px,3.0vw,15px)!important;letter-spacing:.13em!important;gap:6px!important}
  .app-splash-sub::before,.app-splash-sub::after{width:min(6vw,24px)!important}
  .app-splash-center{top:49%!important;width:min(24vw,96px)!important;height:min(24vw,96px)!important}
  .app-splash-blossom{width:min(18vw,72px)!important;height:min(18vw,72px)!important}
  .app-splash-lattice{width:min(26vw,102px)!important;height:min(26vw,102px)!important}
}
@media (max-height:700px){
  .app-splash-brand{top:15%!important}
  .app-splash-center{top:47%!important}
}
@media(prefers-reduced-motion:reduce){
  
  .app-splash-brand{top:18%!important}
}

/* ===== source: intro-v36-overrides ===== */
/* v12.3.6 full intro cleanup */
.app-splash-petals span{opacity:.52!important;filter:drop-shadow(0 0 5px rgba(255,161,220,.12))!important}
.app-splash-petals span:nth-child(1),.app-splash-petals span:nth-child(2),.app-splash-petals span:nth-child(3),.app-splash-petals span:nth-child(4){opacity:.28!important}
.app-splash-sparks span{opacity:.55!important}
.app-splash-brand{top:17.2%!important;width:min(90vw,600px)!important;padding:0 8px!important;animation:splashBrandV6 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{margin-bottom:12px!important}
.app-splash-brand-mark .mini-flower{width:19px!important;height:19px!important;opacity:.92!important;filter:drop-shadow(0 0 7px rgba(255,186,218,.18))!important}
.app-splash-brand-mark .mini-flower span{width:42%!important;height:60%!important;margin:-30% 0 0 -21%!important}
.app-splash-brand-mark .mini-flower i{width:22%!important;height:22%!important}
.app-splash-title{font-size:clamp(29px,8vw,64px)!important;letter-spacing:.058em!important;line-height:1.02!important;text-shadow:0 2px 12px rgba(0,0,0,.24)!important}
.app-splash-sub{margin-top:6px!important;font-size:clamp(11px,2.8vw,18px)!important;letter-spacing:.18em!important;opacity:.92!important}
.app-splash-sub::before,.app-splash-sub::after{width:min(8vw,34px)!important;opacity:.8!important}
.app-splash-brand::before{width:min(58vw,360px)!important;height:72px!important;animation:splashBrandHaloV6 4.05s ease forwards!important}
.app-splash-brand-shine{width:min(68vw,420px)!important;height:80px!important;animation:splashBrandShineV6 4.05s ease forwards!important}
.app-splash-center{top:53%!important;width:min(19vw,86px)!important;height:min(19vw,86px)!important;animation:splashCenterV6 4.05s cubic-bezier(.22,1,.36,1) forwards!important;z-index:5!important}
.app-splash-bud{width:min(9vw,38px)!important;height:min(13vw,56px)!important;animation:splashBudV6 4.05s ease forwards!important}
.app-splash-blossom{width:min(15vw,66px)!important;height:min(15vw,66px)!important;animation:splashBlossomV6 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-blossom .petal{width:32%!important;height:52%!important;margin:-40% 0 0 -16%!important;opacity:.95!important}
.app-splash-blossom .core{width:22%!important;height:22%!important;box-shadow:0 0 12px rgba(255,226,145,.18)!important}
.app-splash-lattice{width:min(21vw,94px)!important;height:min(21vw,94px)!important;animation:splashLatticeV6 4.05s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-lattice::before{border-color:rgba(244,211,136,.18)!important}
.app-splash-lattice::after{display:none!important}
.app-splash-lattice .ring{display:none!important}
.app-splash-lattice .cross,.app-splash-lattice .cross::before{width:54%!important;background:linear-gradient(90deg,transparent,rgba(245,210,132,.14),transparent)!important;opacity:.5!important}
.app-splash-lattice .orbit{display:none!important}
.app-splash-garden{filter:brightness(.33) saturate(.92)!important}
.app-splash-path{width:min(42vw,200px)!important;height:24%!important;animation:splashPathV6 4.05s ease forwards!important}
.app-splash-skip{background:rgba(8,12,26,.28)!important;border-color:rgba(255,220,171,.12)!important}
@keyframes splashCenterV6{0%{opacity:0;transform:translate(-50%,-50%) scale(.66)}12%{opacity:1;transform:translate(-50%,-50%) scale(.94)}24%{opacity:1;transform:translate(-50%,-50%) scale(1)}36%{opacity:.88;transform:translate(-50%,-50%) scale(.96)}46%{opacity:.36;transform:translate(-50%,-50%) scale(.82)}54%{opacity:0;transform:translate(-50%,-50%) scale(.70)}100%{opacity:0;transform:translate(-50%,-50%) scale(.62)}}
@keyframes splashBudV6{0%{opacity:0;transform:translate(-50%,-50%) scale(.58)}8%{opacity:1}16%{opacity:1;transform:translate(-50%,-50%) scale(.96)}22%{opacity:.08}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes splashBlossomV6{0%,14%{opacity:0;transform:translate(-50%,-50%) scale(.54)}22%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}32%{opacity:1;transform:translate(-50%,-50%) scale(.98)}42%{opacity:.70;transform:translate(-50%,-50%) scale(.92)}50%{opacity:0;transform:translate(-50%,-50%) scale(.80)}100%{opacity:0;transform:translate(-50%,-50%) scale(.72)}}
@keyframes splashLatticeV6{0%,20%{opacity:0;transform:translate(-50%,-50%) scale(.78)}30%{opacity:.56;transform:translate(-50%,-50%) scale(1)}40%{opacity:.44;transform:translate(-50%,-50%) scale(.96)}50%{opacity:0;transform:translate(-50%,-50%) scale(.84)}100%{opacity:0;transform:translate(-50%,-50%) scale(.76)}}
@keyframes splashPathV6{0%,58%{opacity:0}76%{opacity:.5}100%{opacity:.72}}
@keyframes splashBrandV6{0%,52%{opacity:0;transform:translateX(-50%) translateY(14px) scale(.988)}66%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloV6{0%,60%{opacity:0}70%{opacity:.42}100%{opacity:.10}}
@keyframes splashBrandShineV6{0%,68%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(-20%)}76%{opacity:1}84%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) translateX(10%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(16%)}}
@media (max-width:680px){
  .app-splash-brand{top:15.8%!important;width:92vw!important;padding:0 4px!important}
  .app-splash-brand-mark{margin-bottom:10px!important}
  .app-splash-brand-mark .mini-flower{width:17px!important;height:17px!important}
  .app-splash-title{font-size:clamp(28px,8.4vw,44px)!important;letter-spacing:.04em!important}
  .app-splash-sub{font-size:clamp(10.5px,2.9vw,14px)!important;letter-spacing:.11em!important;gap:6px!important}
  .app-splash-sub::before,.app-splash-sub::after{width:min(5vw,18px)!important}
  .app-splash-center{top:51%!important;width:min(20vw,82px)!important;height:min(20vw,82px)!important}
  .app-splash-blossom{width:min(16vw,62px)!important;height:min(16vw,62px)!important}
  .app-splash-lattice{width:min(22vw,88px)!important;height:min(22vw,88px)!important}
  .app-splash-petals span{width:11px!important;height:18px!important}
}
@media (max-height:700px){
  .app-splash-brand{top:14.4%!important}
  .app-splash-center{top:49%!important}
}
/* ===== source: intro-v40-overrides ===== */
/* v12.4.0 final intro pass */

.app-splash-garden{filter:brightness(.30) saturate(.90)!important;animation:splashGardenVFinal 3.35s ease forwards!important}
.app-splash-backdrop{background:
  radial-gradient(circle at 50% 17%,rgba(110,145,255,.10),transparent 28%),
  linear-gradient(180deg,rgba(4,8,19,.60) 0%,rgba(5,9,21,.32) 42%,rgba(5,9,20,.40) 100%)!important}
.app-splash-path{width:min(38vw,180px)!important;height:22%!important;animation:splashPathVFinal 3.35s ease forwards!important}
.app-splash-petals span{width:10px!important;height:16px!important;opacity:.22!important;filter:drop-shadow(0 0 4px rgba(255,161,220,.10))!important}
.app-splash-petals span:nth-child(1),.app-splash-petals span:nth-child(2),.app-splash-petals span:nth-child(3),.app-splash-petals span:nth-child(4){opacity:0!important}
.app-splash-petals span:nth-child(5),.app-splash-petals span:nth-child(6){opacity:.18!important}
.app-splash-sparks span{opacity:.34!important}
.app-splash-center{top:53%!important;width:min(16vw,70px)!important;height:min(16vw,70px)!important;animation:splashCenterVFinal 3.35s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-bud{width:min(7.5vw,28px)!important;height:min(10.5vw,42px)!important;animation:splashBudVFinal 3.35s ease forwards!important}
.app-splash-blossom{width:min(12vw,54px)!important;height:min(12vw,54px)!important;animation:splashBlossomVFinal 3.35s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-blossom .petal{width:31%!important;height:50%!important;margin:-39% 0 0 -15.5%!important;opacity:.92!important}
.app-splash-lattice{width:min(18vw,78px)!important;height:min(18vw,78px)!important;animation:splashLatticeVFinal 3.35s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-lattice::before{border-color:rgba(244,211,136,.13)!important}
.app-splash-lattice .cross,.app-splash-lattice .cross::before{width:50%!important;opacity:.34!important;background:linear-gradient(90deg,transparent,rgba(245,210,132,.12),transparent)!important}
.app-splash-brand{top:18.4%!important;width:min(88vw,560px)!important;padding:0 6px!important;animation:splashBrandVFinal 3.35s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{margin-bottom:15px!important}
.app-splash-brand-mark .mini-flower{width:14px!important;height:14px!important;opacity:.88!important;filter:drop-shadow(0 0 5px rgba(255,186,218,.14))!important}
.app-splash-brand-mark .mini-flower span{width:40%!important;height:58%!important;margin:-29% 0 0 -20%!important}
.app-splash-brand-mark .mini-flower i{width:20%!important;height:20%!important}
.app-splash-title{font-size:clamp(28px,7.6vw,58px)!important;letter-spacing:.05em!important;line-height:1!important;text-shadow:0 2px 10px rgba(0,0,0,.22)!important}
.app-splash-sub{margin-top:7px!important;font-size:clamp(10.5px,2.6vw,16px)!important;letter-spacing:.14em!important;opacity:.90!important;gap:8px!important}
.app-splash-sub::before,.app-splash-sub::after{width:min(5vw,18px)!important;opacity:.58!important}
.app-splash-brand::before{width:min(54vw,310px)!important;height:58px!important;animation:splashBrandHaloVFinal 3.35s ease forwards!important}
.app-splash-brand-shine{width:min(58vw,330px)!important;height:68px!important;animation:splashBrandShineVFinal 3.35s ease forwards!important}
.app-splash-skip{opacity:.58!important;font-size:11px!important;padding:7px 11px!important;background:rgba(8,12,26,.20)!important;border-color:rgba(255,220,171,.08)!important}
@keyframes splashGardenVFinal{0%{filter:brightness(.18) saturate(.86);transform:scale(1.04)}40%{filter:brightness(.22) saturate(.88)}100%{filter:brightness(.32) saturate(.92);transform:scale(1)}}
@keyframes splashPathVFinal{0%,62%{opacity:0}82%{opacity:.34}100%{opacity:.52}}
@keyframes splashCenterVFinal{0%{opacity:0;transform:translate(-50%,-50%) scale(.58)}10%{opacity:1;transform:translate(-50%,-50%) scale(.90)}20%{opacity:1;transform:translate(-50%,-50%) scale(1)}28%{opacity:.86;transform:translate(-50%,-50%) scale(.96)}38%{opacity:.24;transform:translate(-50%,-50%) scale(.82)}44%{opacity:0;transform:translate(-50%,-50%) scale(.72)}100%{opacity:0;transform:translate(-50%,-50%) scale(.66)}}
@keyframes splashBudVFinal{0%{opacity:0;transform:translate(-50%,-50%) scale(.56)}7%{opacity:1}14%{opacity:1;transform:translate(-50%,-50%) scale(.94)}18%{opacity:.05}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes splashBlossomVFinal{0%,12%{opacity:0;transform:translate(-50%,-50%) scale(.52)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}26%{opacity:1;transform:translate(-50%,-50%) scale(.98)}34%{opacity:.66;transform:translate(-50%,-50%) scale(.92)}42%{opacity:0;transform:translate(-50%,-50%) scale(.82)}100%{opacity:0;transform:translate(-50%,-50%) scale(.76)}}
@keyframes splashLatticeVFinal{0%,16%{opacity:0;transform:translate(-50%,-50%) scale(.76)}24%{opacity:.42;transform:translate(-50%,-50%) scale(1)}32%{opacity:.28;transform:translate(-50%,-50%) scale(.96)}40%{opacity:0;transform:translate(-50%,-50%) scale(.86)}100%{opacity:0;transform:translate(-50%,-50%) scale(.80)}}
@keyframes splashBrandVFinal{0%,44%{opacity:0;transform:translateX(-50%) translateY(10px) scale(.99)}58%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloVFinal{0%,54%{opacity:0}64%{opacity:.28}100%{opacity:.06}}
@keyframes splashBrandShineVFinal{0%,63%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(-16%)}71%{opacity:1}79%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) translateX(6%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(10%)}}
@media (max-width:680px){
  .app-splash-brand{top:17.2%!important;width:90vw!important}
  .app-splash-brand-mark{margin-bottom:13px!important}
  .app-splash-brand-mark .mini-flower{width:13px!important;height:13px!important}
  .app-splash-title{font-size:clamp(27px,7.8vw,40px)!important;letter-spacing:.034em!important}
  .app-splash-sub{font-size:clamp(10px,2.8vw,13px)!important;letter-spacing:.10em!important;gap:5px!important}
  .app-splash-sub::before,.app-splash-sub::after{width:min(4vw,14px)!important}
  .app-splash-center{top:52%!important;width:min(17vw,66px)!important;height:min(17vw,66px)!important}
  .app-splash-blossom{width:min(13vw,50px)!important;height:min(13vw,50px)!important}
  .app-splash-lattice{width:min(19vw,74px)!important;height:min(19vw,74px)!important}
}
@media (max-height:700px){
  
  .app-splash-center{top:50%!important}
}
@media(prefers-reduced-motion:reduce){
  
  
  .app-splash-petals span{opacity:.12!important}
}

/* ===== source: intro-v0111-overrides ===== */
/* v0.1.1 intro final cleanup */

.app-splash-garden{filter:brightness(.31) saturate(.9)!important;animation:splashGardenV0111 2.95s ease forwards!important}
.app-splash-backdrop{background:
  radial-gradient(circle at 50% 16%,rgba(105,142,255,.08),transparent 26%),
  linear-gradient(180deg,rgba(4,8,18,.64) 0%,rgba(5,9,20,.38) 42%,rgba(5,9,20,.44) 100%)!important}
.app-splash-path{width:min(34vw,160px)!important;height:21%!important;animation:splashPathV0111 2.95s ease forwards!important}
.app-splash-petals span{width:9px!important;height:15px!important;opacity:.15!important;filter:drop-shadow(0 0 3px rgba(255,161,220,.08))!important}
.app-splash-petals span:nth-child(1),.app-splash-petals span:nth-child(2),.app-splash-petals span:nth-child(3),.app-splash-petals span:nth-child(4),.app-splash-petals span:nth-child(5){opacity:0!important}
.app-splash-sparks{display:none!important}
.app-splash-center{top:54.5%!important;width:min(11vw,48px)!important;height:min(11vw,48px)!important;animation:splashCenterV0111 2.95s cubic-bezier(.22,1,.36,1) forwards!important;z-index:5!important}
.app-splash-glow{inset:4%!important;background:radial-gradient(circle,rgba(255,206,232,.16) 0%,rgba(223,160,210,.08) 36%,transparent 72%)!important;animation:splashCoreGlowV0111 2.95s ease forwards!important}
.app-splash-bud{display:none!important}
.app-splash-blossom{width:min(9vw,38px)!important;height:min(9vw,38px)!important;animation:splashBlossomV0111 2.95s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-blossom .petal{width:30%!important;height:48%!important;margin:-38% 0 0 -15%!important;clip-path:ellipse(48% 50% at 50% 50%)!important;border-radius:70% 70% 42% 42%/84% 84% 26% 26%!important;background:radial-gradient(circle at 50% 18%,rgba(255,243,249,.94),rgba(245,182,223,.90) 36%,rgba(217,122,193,.78) 64%,rgba(118,89,183,.70) 100%)!important;box-shadow:0 0 8px rgba(255,188,229,.10), inset 0 -5px 8px rgba(88,59,151,.12)!important}
.app-splash-blossom .core{width:18%!important;height:18%!important;background:radial-gradient(circle,rgba(255,250,252,.98) 0%,rgba(255,226,238,.94) 56%,rgba(230,182,205,.82) 100%)!important;box-shadow:0 0 8px rgba(255,214,233,.16)!important}
.app-splash-lattice{display:none!important}
.app-splash-brand{top:18.2%!important;width:min(86vw,520px)!important;padding:0 6px!important;animation:splashBrandV0111 2.95s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{margin-bottom:18px!important}
.app-splash-brand-mark .mini-flower{width:12px!important;height:12px!important;opacity:.82!important;filter:drop-shadow(0 0 4px rgba(255,186,218,.10))!important}
.app-splash-brand-mark .mini-flower span{width:39%!important;height:56%!important;margin:-28% 0 0 -19.5%!important;background:radial-gradient(circle at 50% 18%,rgba(255,244,250,.94),rgba(244,185,224,.88) 34%,rgba(221,134,201,.76) 58%,rgba(130,103,202,.70) 100%)!important}
.app-splash-brand-mark .mini-flower i{width:16%!important;height:16%!important;background:radial-gradient(circle,rgba(255,251,252,.98),rgba(255,228,238,.94) 66%,rgba(232,191,211,.84) 100%)!important}
.app-splash-title{font-size:clamp(27px,7.4vw,54px)!important;letter-spacing:.034em!important;line-height:1!important;text-shadow:0 2px 8px rgba(0,0,0,.20)!important}


.app-splash-brand::before{width:min(48vw,240px)!important;height:46px!important;background:radial-gradient(circle,rgba(255,214,232,.07),transparent 68%)!important;animation:splashBrandHaloV0111 2.95s ease forwards!important}
.app-splash-brand-shine{width:min(54vw,260px)!important;height:56px!important;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0) 35%,rgba(255,246,250,.06) 46%,rgba(255,236,244,.18) 50%,rgba(255,246,250,.06) 54%,rgba(255,255,255,0) 65%,transparent 100%)!important;animation:splashBrandShineV0111 2.95s ease forwards!important}
.app-splash-skip{opacity:.46!important;font-size:10px!important;padding:6px 10px!important;background:rgba(8,12,26,.16)!important;border-color:rgba(255,220,171,.06)!important}
@keyframes splashGardenV0111{0%{filter:brightness(.18) saturate(.86);transform:scale(1.03)}40%{filter:brightness(.22) saturate(.88)}100%{filter:brightness(.31) saturate(.90);transform:scale(1)}}
@keyframes splashPathV0111{0%,68%{opacity:0}84%{opacity:.26}100%{opacity:.4}}
@keyframes splashCenterV0111{0%{opacity:0;transform:translate(-50%,-50%) scale(.54)}12%{opacity:1;transform:translate(-50%,-50%) scale(.92)}22%{opacity:1;transform:translate(-50%,-50%) scale(1)}30%{opacity:.58;transform:translate(-50%,-50%) scale(.90)}38%{opacity:0;transform:translate(-50%,-50%) scale(.76)}100%{opacity:0;transform:translate(-50%,-50%) scale(.72)}}
@keyframes splashBlossomV0111{0%,10%{opacity:0;transform:translate(-50%,-50%) scale(.46)}16%{opacity:1;transform:translate(-50%,-50%) scale(1)}24%{opacity:1;transform:translate(-50%,-50%) scale(.98)}32%{opacity:.46;transform:translate(-50%,-50%) scale(.88)}38%{opacity:0;transform:translate(-50%,-50%) scale(.80)}100%{opacity:0;transform:translate(-50%,-50%) scale(.76)}}
@keyframes splashCoreGlowV0111{0%,10%{opacity:0;transform:scale(.66)}18%{opacity:.18;transform:scale(1)}30%{opacity:.10;transform:scale(.92)}38%{opacity:0;transform:scale(.82)}100%{opacity:0;transform:scale(.8)}}
@keyframes splashBrandV0111{0%,38%{opacity:0;transform:translateX(-50%) translateY(10px) scale(.992)}54%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandHaloV0111{0%,54%{opacity:0}64%{opacity:.22}100%{opacity:.05}}
@keyframes splashBrandShineV0111{0%,62%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(-12%)}70%{opacity:1}78%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) translateX(5%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(8%)}}
@media (max-width:680px){
  
  .app-splash-brand-mark{margin-bottom:16px!important}
  .app-splash-brand-mark .mini-flower{width:11px!important;height:11px!important}
  .app-splash-title{font-size:clamp(26px,7.6vw,38px)!important;letter-spacing:.026em!important}
  
  
  .app-splash-center{top:53.5%!important;width:min(12vw,46px)!important;height:min(12vw,46px)!important}
  .app-splash-blossom{width:min(10vw,36px)!important;height:min(10vw,36px)!important}
}
@media (max-height:700px){
  .app-splash-brand{top:15.6%!important}
  .app-splash-center{top:51.5%!important}
}
/* ===== source: gameplay-core-flower-polish-v012 ===== */
/* v0.1.2 — soft 3D core flowers inside the existing night-garden theme */
:is(#game,#loadoutStage) .board{
  border:1px solid rgba(238,194,103,.58)!important;
  border-radius:18px!important;
  background:rgba(8,20,38,.64)!important;
  box-shadow:inset 0 0 0 1px rgba(255,240,196,.035),inset 0 0 28px rgba(0,0,0,.12)!important;
}
:is(#game,#loadoutStage) .flower-token.tok-lg{width:82%!important;height:82%!important}
:is(#game,#loadoutStage) .flower-token.has-image{
  background-size:contain!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.28)) saturate(.96)!important;
  transform-origin:center;
  transition:transform .14s cubic-bezier(.22,1,.36,1),filter .16s ease,opacity .16s ease!important;
}
:is(#game,#loadoutStage) .cell.given .flower-token.has-image{filter:drop-shadow(0 2px 3px rgba(0,0,0,.24)) saturate(.92)!important}
:is(#game,#loadoutStage) .cell.peer .flower-token.has-image{opacity:.82!important}
:is(#game,#loadoutStage) .cell.same .flower-token.has-image{
  opacity:1!important;
  transform:scale(1.075)!important;
  filter:drop-shadow(0 0 7px rgba(245,205,126,.28)) drop-shadow(0 2px 3px rgba(0,0,0,.24)) saturate(.98)!important;
}
:is(#game,#loadoutStage) .cell.selected .flower-token.has-image{
  opacity:1!important;
  transform:scale(1.10)!important;
  filter:drop-shadow(0 0 9px rgba(255,212,130,.34)) drop-shadow(0 2px 3px rgba(0,0,0,.24)) saturate(1)!important;
}
:is(#game,#loadoutStage) .cell.same{background:linear-gradient(180deg,rgba(105,80,153,.22),rgba(34,55,84,.28))!important;box-shadow:inset 0 0 0 1px rgba(239,199,103,.38)!important}
:is(#game,#loadoutStage) .cell.selected{background:linear-gradient(180deg,rgba(239,199,103,.22),rgba(83,62,112,.26))!important;outline:2px solid rgba(245,205,126,.84)!important}
#game .dock{
  background:linear-gradient(180deg,rgba(18,31,52,.975),rgba(8,18,35,.99))!important;
  border-color:rgba(220,181,105,.20)!important;
  box-shadow:0 9px 22px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
#game .color-btn{
  background:linear-gradient(180deg,rgba(24,42,68,.94),rgba(16,31,54,.96))!important;
  border-color:rgba(162,143,194,.13)!important;
}
#game .color-btn .flower-token.has-image{
  height:92%!important;max-height:38px!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.22)) saturate(.95)!important;
}
#game .color-btn:not(.exhausted):active .flower-token.has-image{transform:scale(.94)!important}
#game .color-btn .remain-badge{
  background:#edc66f!important;color:#30220b!important;border-color:#101c31!important;
  box-shadow:0 1px 4px rgba(0,0,0,.18)!important;
}
#game .progress-mini{background:rgba(255,255,255,.045)!important}
#game .progress-mini>i{background:linear-gradient(90deg,#b783e7 0%,#e5a9d5 38%,#f0c36d 78%,#ffd98c 100%)!important;box-shadow:0 0 8px rgba(242,197,108,.16)!important}
@media(max-width:390px){
 :is(#game,#loadoutStage) .flower-token.tok-lg{width:80%!important;height:80%!important}
 #game .color-btn .flower-token.has-image{max-height:36px!important}
}

/* ===== source: v013-intro-mechanic-polish ===== */
/* v0.1.3 intro + mechanic polish */
.free-mechanic-grid{gap:8px!important}
.free-mechanic-card{min-width:0;min-height:74px!important;padding:8px 4px 10px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important}
.free-mechanic-card i{width:28px!important;height:28px!important;font-size:14px!important;flex:0 0 auto!important}
.free-mechanic-card b{display:flex!important;align-items:flex-start!important;justify-content:center!important;min-height:18px!important;margin-top:0!important;font-size:8.2px!important;line-height:1.12!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-align:center!important;word-break:keep-all!important;overflow-wrap:anywhere!important}
.free-mechanic-card small{display:none!important}
@media(max-width:390px){.free-mechanic-grid{gap:6px!important}.free-mechanic-card{min-height:76px!important;padding:8px 3px 10px!important}.free-mechanic-card i{width:27px!important;height:27px!important;font-size:13px!important}.free-mechanic-card b{font-size:7.7px!important;line-height:1.1!important;min-height:18px!important}}

.app-splash{background:#040915!important}
.app-splash-petals span{opacity:.12!important;width:9px!important;height:15px!important;filter:drop-shadow(0 0 3px rgba(255,177,212,.07))!important}
.app-splash-petals span:nth-child(1),.app-splash-petals span:nth-child(2),.app-splash-petals span:nth-child(4),.app-splash-petals span:nth-child(5),.app-splash-petals span:nth-child(7){opacity:0!important}
.app-splash-center{top:53.2%!important;width:min(12vw,56px)!important;height:min(12vw,56px)!important;transform:translate(-50%,-50%)!important;animation:splashCenterAssetV013 2.85s cubic-bezier(.22,1,.36,1) forwards!important;z-index:5!important}
.app-splash-center::before{content:"";position:absolute;inset:0;background:url('../core-flowers/core-01-red-rose.webp') center/contain no-repeat;filter:drop-shadow(0 0 12px rgba(255,145,170,.12)) drop-shadow(0 0 28px rgba(255,188,205,.10));opacity:0;animation:splashCenterFlowerV013 2.85s cubic-bezier(.22,1,.36,1) forwards}
.app-splash-glow{inset:-2%!important;background:radial-gradient(circle,rgba(255,204,222,.16) 0%,rgba(248,173,198,.08) 34%,transparent 72%)!important;animation:splashCoreGlowV013 2.85s ease forwards!important}
.app-splash-bud,.app-splash-blossom,.app-splash-lattice,.app-splash-sparks{display:none!important}
.app-splash-brand{top:18.1%!important;width:min(86vw,520px)!important;animation:splashBrandAssetV013 2.85s cubic-bezier(.22,1,.36,1) forwards!important}
.app-splash-brand-mark{position:relative!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:0!important;margin-bottom:20px!important;min-height:18px!important}
.app-splash-brand-mark::before{content:"";display:block;width:18px;height:18px;background:url('../core-flowers/core-09-pink-blossom.webp') center/contain no-repeat;filter:drop-shadow(0 0 6px rgba(255,180,213,.12));opacity:0;animation:splashBrandMarkV013 2.85s ease forwards}
.app-splash-brand-mark .mini-flower{display:none!important}
.app-splash-title{font-size:clamp(27px,7.35vw,54px)!important;letter-spacing:.036em!important;line-height:1!important;text-shadow:0 2px 8px rgba(0,0,0,.20)!important}
.app-splash-sub{margin-top:8px!important;font-size:clamp(10px,2.45vw,15px)!important;letter-spacing:.10em!important;opacity:.88!important;gap:6px!important}
.app-splash-sub::before,.app-splash-sub::after{width:min(4vw,14px)!important;opacity:.42!important}
.app-splash-brand::before{width:min(46vw,228px)!important;height:44px!important;background:radial-gradient(circle,rgba(255,214,232,.06),transparent 70%)!important;animation:splashBrandHaloV013 2.85s ease forwards!important}
.app-splash-brand-shine{width:min(50vw,248px)!important;height:52px!important;animation:splashBrandShineV013 2.85s ease forwards!important}
.app-splash-skip{opacity:.45!important;font-size:10px!important;padding:6px 10px!important}
@keyframes splashCenterAssetV013{0%{opacity:0;transform:translate(-50%,-50%) scale(.56)}12%{opacity:1;transform:translate(-50%,-50%) scale(.92)}22%{opacity:1;transform:translate(-50%,-50%) scale(1)}30%{opacity:.5;transform:translate(-50%,-50%) scale(.92)}38%{opacity:0;transform:translate(-50%,-50%) scale(.8)}100%{opacity:0;transform:translate(-50%,-50%) scale(.76)}}
@keyframes splashCenterFlowerV013{0%,10%{opacity:0;transform:scale(.66)}18%{opacity:1;transform:scale(1)}26%{opacity:1;transform:scale(.98)}32%{opacity:.44;transform:scale(.90)}38%{opacity:0;transform:scale(.82)}100%{opacity:0;transform:scale(.78)}}
@keyframes splashCoreGlowV013{0%,10%{opacity:0;transform:scale(.6)}18%{opacity:.16;transform:scale(1)}30%{opacity:.08;transform:scale(.92)}38%{opacity:0;transform:scale(.82)}100%{opacity:0;transform:scale(.8)}}
@keyframes splashBrandAssetV013{0%,36%{opacity:0;transform:translateX(-50%) translateY(10px) scale(.992)}52%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes splashBrandMarkV013{0%,46%{opacity:0;transform:translateY(4px) scale(.88)}60%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes splashBrandHaloV013{0%,54%{opacity:0}64%{opacity:.18}100%{opacity:.04}}
@keyframes splashBrandShineV013{0%,62%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(-12%)}70%{opacity:1}78%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) translateX(5%)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) translateX(8%)}}
@media(max-width:680px){.app-splash-brand{top:17.1%!important;width:88vw!important}.app-splash-brand-mark{margin-bottom:18px!important}.app-splash-brand-mark::before{width:17px!important;height:17px!important}.app-splash-title{font-size:clamp(26px,7.6vw,38px)!important;letter-spacing:.028em!important}.app-splash-sub{font-size:clamp(9.5px,2.55vw,12.5px)!important;letter-spacing:.07em!important;gap:4px!important}.app-splash-sub::before,.app-splash-sub::after{width:min(3vw,10px)!important}.app-splash-center{top:52.6%!important;width:min(13vw,52px)!important;height:min(13vw,52px)!important}}
@media(max-height:700px){.app-splash-brand{top:15.8%!important}.app-splash-center{top:50.8%!important}}
@media(prefers-reduced-motion:reduce){.app-splash-center{display:none!important}.app-splash-brand{top:18%!important;opacity:1!important;transform:translateX(-50%)!important}}

/* ===== source: v014-ui-fx-polish ===== */
/* v0.1.4 twin icon + journey/collection bouquet + lightweight gameplay fx */
.free-mechanic-card .free-icon{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;margin:0 auto!important;border-radius:50%!important;background:rgba(255,207,103,.08)!important;border:1px solid rgba(255,207,103,.16)!important;color:#efd080!important;font-style:normal!important;position:relative!important;overflow:hidden!important}
.free-mechanic-card .free-icon-twin{font-size:0!important;background:radial-gradient(circle at 50% 50%,rgba(255,220,149,.10),rgba(255,207,103,.05))!important}
.free-mechanic-card .free-icon-twin .twin-dot{position:absolute;width:9px;height:9px;border-radius:50%;top:50%;transform:translateY(-50%);background:radial-gradient(circle at 40% 35%,#fff9ef 0%,#f7c5d9 36%,#e893bb 72%,#ad77d1 100%);box-shadow:0 0 5px rgba(255,198,213,.14)}
.free-mechanic-card .free-icon-twin .twin-left{left:6px}.free-mechanic-card .free-icon-twin .twin-right{right:6px}
.free-mechanic-card .free-icon-twin .twin-link{position:absolute;left:8px;right:8px;top:50%;height:1.6px;transform:translateY(-50%);background:linear-gradient(90deg,rgba(255,219,138,.2),rgba(255,219,138,.95),rgba(255,219,138,.2))}
.free-mechanic-card .free-icon-twin .twin-link::before,.free-mechanic-card .free-icon-twin .twin-link::after{content:"";position:absolute;top:50%;width:5px;height:5px;border-top:1.4px solid rgba(255,219,138,.95);border-right:1.4px solid rgba(255,219,138,.95)}
.free-mechanic-card .free-icon-twin .twin-link::before{left:1px;transform:translateY(-50%) rotate(-135deg)}
.free-mechanic-card .free-icon-twin .twin-link::after{right:1px;transform:translateY(-50%) rotate(45deg)}

.mixed-bloom{display:inline-block;position:relative;min-width:56px;height:34px;vertical-align:middle;isolation:isolate}
.mixed-bloom i{position:absolute;width:26px;height:26px;background-size:contain;background-repeat:no-repeat;background-position:center;filter:drop-shadow(0 4px 6px rgba(0,0,0,.30));transform-origin:center center}
.mixed-bloom .bloom-1{left:0;top:6px;transform:rotate(-9deg)}
.mixed-bloom .bloom-2{left:14px;top:0;transform:scale(1.02)}
.mixed-bloom .bloom-3{left:28px;top:6px;transform:rotate(10deg)}
.mixed-bloom .bloom-4{left:18px;top:11px;width:22px;height:22px;opacity:.95}
#journey .journey-head-copy .journey-bloom-mix{display:block;margin:4px auto 0;width:54px;height:28px}
#garden .garden-bloom-mix{display:block;margin-top:8px;width:68px;height:36px}
.collection-album-head .album-bloom-mix{display:block;margin-top:7px;width:66px;height:34px}
@media(max-width:390px){#journey .journey-head-copy .journey-bloom-mix{width:50px;height:26px;transform:none;transform-origin:center center}#garden .garden-bloom-mix,.collection-album-head .album-bloom-mix{transform:scale(.92);transform-origin:left top}}

#board{position:relative;overflow:visible}
:is(#game,#loadoutStage) .cell{overflow:visible}
:is(#game,#loadoutStage) .cell.select-pop{animation:cellSelectPopV014 .22s ease-out}
:is(#game,#loadoutStage) .cell.place-pop{animation:cellPlacePopV014 .28s ease-out}
:is(#game,#loadoutStage) .cell.hint-pop{animation:cellHintPopV014 .34s ease-out}
:is(#game,#loadoutStage) .cell.complete-pop{animation:cellCompletePopV014 .42s ease-out}
:is(#game,#loadoutStage) .cell-spark{position:absolute;width:8px;height:8px;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;background:radial-gradient(circle,#fff7d4 0%,#ffd779 45%,rgba(255,216,121,0) 72%);box-shadow:0 0 8px rgba(255,214,120,.28);animation:cellSparkFloatV014 .62s ease-out forwards;z-index:9}
:is(#game,#loadoutStage) .cell-spark::before,:is(#game,#loadoutStage) .cell-spark::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:1.2px;background:rgba(255,228,174,.95);transform:translate(-50%,-50%)}
:is(#game,#loadoutStage) .cell-spark::after{transform:translate(-50%,-50%) rotate(90deg)}
:is(#game,#loadoutStage) .cell-spark.fx-hint{width:10px;height:10px;box-shadow:0 0 10px rgba(255,214,120,.34)}
:is(#game,#loadoutStage) .cell-spark.fx-complete{width:9px;height:9px;box-shadow:0 0 11px rgba(255,214,120,.30)}
#board.board-fx-place::after,#board.board-fx-complete::after,#board.board-fx-hint::after{content:"";position:absolute;inset:-6px;border-radius:24px;pointer-events:none;z-index:1}
#board.board-fx-place::after{animation:boardAuraPlaceV014 .30s ease-out;background:radial-gradient(circle at 50% 50%,rgba(255,197,112,.10),transparent 62%)}
#board.board-fx-hint::after{animation:boardAuraHintV014 .34s ease-out;background:radial-gradient(circle at 50% 50%,rgba(255,222,150,.14),transparent 66%)}
#board.board-fx-complete::after{animation:boardAuraCompleteV014 .42s ease-out;background:radial-gradient(circle at 50% 50%,rgba(255,211,116,.16),transparent 70%)}
@keyframes cellSparkFloatV014{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}18%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,-14px))) scale(1.18)}}
@keyframes cellSelectPopV014{0%{transform:scale(1)}50%{transform:scale(1.035)}100%{transform:scale(1)}}
@keyframes cellPlacePopV014{0%{transform:scale(1)}48%{transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes cellHintPopV014{0%{transform:scale(1)}38%{transform:scale(1.05)}100%{transform:scale(1)}}
@keyframes cellCompletePopV014{0%{transform:scale(1)}40%{transform:scale(1.07)}100%{transform:scale(1)}}
@keyframes boardAuraPlaceV014{0%{opacity:0;transform:scale(.98)}30%{opacity:1}100%{opacity:0;transform:scale(1.01)}}
@keyframes boardAuraHintV014{0%{opacity:0;transform:scale(.98)}32%{opacity:1}100%{opacity:0;transform:scale(1.012)}}
@keyframes boardAuraCompleteV014{0%{opacity:0;transform:scale(.97)}38%{opacity:1}100%{opacity:0;transform:scale(1.018)}}
@media(prefers-reduced-motion:reduce){:is(#game,#loadoutStage) .cell-spark,#board.board-fx-place::after,#board.board-fx-complete::after,#board.board-fx-hint::after{display:none!important}}

/* ===== source: v015-premium-microfx ===== */
/* v0.1.5 — final event-driven premium micro FX. No persistent particle loops. */
:is(#game,#loadoutStage) .cell.select-pop::after,:is(#game,#loadoutStage) .cell.place-pop::after,:is(#game,#loadoutStage) .cell.hint-pop::after,:is(#game,#loadoutStage) .cell.complete-pop::after,:is(#game,#loadoutStage) .cell.error-pop::after{content:"";position:absolute;inset:3px;border-radius:10px;pointer-events:none;z-index:8}
:is(#game,#loadoutStage) .cell.select-pop::after{border:1px solid rgba(255,221,148,.58);box-shadow:0 0 0 1px rgba(190,143,225,.10),0 0 12px rgba(240,202,116,.18);animation:focusRingV015 .22s ease-out forwards}
:is(#game,#loadoutStage) .cell.place-pop::after{border:1px solid rgba(255,216,136,.48);box-shadow:0 0 12px rgba(255,198,114,.16);animation:pollenRingV015 .28s ease-out forwards}
:is(#game,#loadoutStage) .cell.hint-pop::after{border:1px solid rgba(255,229,159,.56);box-shadow:0 0 15px rgba(255,221,151,.20);animation:hintRingV015 .34s ease-out forwards}
:is(#game,#loadoutStage) .cell.complete-pop::after{border:1px solid rgba(255,220,134,.62);box-shadow:0 0 18px rgba(255,203,114,.22);animation:completeRingV015 .42s ease-out forwards}
:is(#game,#loadoutStage) .cell.error-pop{animation:errorNudgeV015 .24s ease-out!important}
:is(#game,#loadoutStage) .cell.error-pop::after{border:1px solid rgba(244,130,132,.62);box-shadow:0 0 12px rgba(231,101,114,.15);animation:errorRingV015 .24s ease-out forwards}

#game .color-btn.palette-pop{animation:paletteBloomV015 .25s cubic-bezier(.22,1,.36,1)!important}
#game .color-btn.palette-pop .flower-token.has-image{animation:paletteFlowerV015 .25s cubic-bezier(.22,1,.36,1)!important}
#game .color-btn.palette-pop .remain-badge{animation:badgePulseV015 .25s ease-out!important}

#board.board-fx-complete::before{content:"";position:absolute;inset:2px;overflow:hidden;border-radius:20px;pointer-events:none;z-index:2;background:linear-gradient(105deg,transparent 0 34%,rgba(255,230,167,0) 38%,rgba(255,230,167,.15) 49%,rgba(255,230,167,0) 60%,transparent 64% 100%);transform:translateX(-110%);animation:boardSweepV015 .46s cubic-bezier(.22,1,.36,1) forwards}

:is(#game,#loadoutStage) .cell.same:not(.selected) .flower-token.has-image{filter:drop-shadow(0 2px 2px rgba(0,0,0,.20)) drop-shadow(0 0 5px rgba(212,173,232,.12)) saturate(.96)!important}
:is(#game,#loadoutStage) .cell.selected .flower-token.has-image{filter:drop-shadow(0 2px 2px rgba(0,0,0,.20)) drop-shadow(0 0 7px rgba(248,207,126,.18)) saturate(.98)!important}

@keyframes focusRingV015{0%{opacity:0;transform:scale(.90)}42%{opacity:1}100%{opacity:0;transform:scale(1.04)}}
@keyframes pollenRingV015{0%{opacity:0;transform:scale(.78)}36%{opacity:1}100%{opacity:0;transform:scale(1.10)}}
@keyframes hintRingV015{0%{opacity:0;transform:scale(.82)}35%{opacity:1}100%{opacity:0;transform:scale(1.12)}}
@keyframes completeRingV015{0%{opacity:0;transform:scale(.80)}34%{opacity:1}100%{opacity:0;transform:scale(1.14)}}
@keyframes errorRingV015{0%{opacity:0;transform:scale(.92)}35%{opacity:1}100%{opacity:0;transform:scale(1.02)}}
@keyframes errorNudgeV015{0%,100%{transform:translateX(0)}28%{transform:translateX(-2px)}58%{transform:translateX(2px)}78%{transform:translateX(-1px)}}
@keyframes paletteBloomV015{0%{transform:scale(1)}45%{transform:scale(.955)}100%{transform:scale(1)}}
@keyframes paletteFlowerV015{0%{transform:scale(1)}48%{transform:scale(1.07)}100%{transform:scale(1)}}
@keyframes badgePulseV015{0%{transform:scale(1)}45%{transform:scale(1.10)}100%{transform:scale(1)}}
@keyframes boardSweepV015{0%{opacity:0;transform:translateX(-110%)}18%{opacity:1}100%{opacity:0;transform:translateX(110%)}}

@media(prefers-reduced-motion:reduce){:is(#game,#loadoutStage) .cell.select-pop::after,:is(#game,#loadoutStage) .cell.place-pop::after,:is(#game,#loadoutStage) .cell.hint-pop::after,:is(#game,#loadoutStage) .cell.complete-pop::after,:is(#game,#loadoutStage) .cell.error-pop::after,#board.board-fx-complete::before{display:none!important}#game .color-btn.palette-pop,#game .color-btn.palette-pop .flower-token.has-image,#game .color-btn.palette-pop .remain-badge{animation:none!important}}

/* ===== source: v016-mistakes-core3d-layout ===== */
/* v0.1.6: three-mistake guard + 3D Journey/Garden flowers + overlap cleanup */
.hud-feedback-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.hud-feedback-row .hud-status{flex:1;min-width:0}
.mistake-meter{flex:0 0 auto;display:flex;align-items:center;gap:5px;min-height:23px;padding:3px 7px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(7,16,31,.46);color:#9aa8bf;font-size:7.5px;font-weight:800;letter-spacing:.03em}
.mistake-meter>b{color:#e9d9bd;font-size:8px}.mistake-meter>em{display:flex;gap:3px;font-style:normal}.mistake-meter>em i{display:block;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.mistake-meter>em i.used{background:#e68378;box-shadow:0 0 5px rgba(230,131,120,.22)}
.mistake-meter.danger{border-color:rgba(238,170,98,.20);color:#e6bd82}.mistake-meter.failed{border-color:rgba(232,111,102,.34);background:rgba(74,25,34,.30);color:#f0aaa2}
.mistake-fail-card{max-width:390px!important;text-align:center}.mistake-fail-mark{width:58px;height:58px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;font-size:36px;font-weight:300;color:#ffd2c8;border:1px solid rgba(238,129,116,.28);background:radial-gradient(circle,rgba(215,95,100,.20),rgba(91,35,55,.08) 60%,transparent 70%);box-shadow:0 0 28px rgba(205,78,95,.10)}
.mistake-fail-pips{display:flex;justify-content:center;gap:8px;margin:4px 0 16px}.mistake-fail-pips i{width:9px;height:9px;border-radius:50%;background:#db776f;box-shadow:0 0 8px rgba(219,119,111,.22)}

/* Garden: remove the bouquet-within-bouquet layout and give every area its own space. */
#garden .garden-chapter-browser{grid-template-columns:44px 48px minmax(0,1fr) auto 44px!important;gap:10px!important;padding:11px 12px!important;align-items:center!important}
#garden .garden-chapter-current{gap:4px!important;overflow:hidden!important}
#garden .garden-chapter-current .garden-bloom-mix{display:none!important}
#garden .collection-album-head .album-bloom-mix{display:none!important}
#garden .garden-chapter-story{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;line-height:1.35!important}
#garden .garden-chapter-flower{width:46px!important;height:46px!important;background-size:94%!important;background-color:rgba(11,21,39,.44)!important;border-color:rgba(242,203,126,.28)!important;filter:drop-shadow(0 5px 8px rgba(0,0,0,.24))}
#garden .album-flower-card{min-height:126px!important;padding:12px 7px 10px!important;display:flex;flex-direction:column;justify-content:center}
#garden .album-flower-art{width:68px!important;height:68px!important;margin:0 auto 7px!important;background-size:contain!important;filter:drop-shadow(0 7px 9px rgba(0,0,0,.25))!important}
#garden .album-flower-card.locked .album-flower-art{filter:brightness(.11) saturate(.22) drop-shadow(0 5px 7px rgba(0,0,0,.22))!important;opacity:.70!important}
#garden .album-flower-card.locked::after{top:48px!important}
#garden .garden-mode-flower{background-size:contain!important;filter:drop-shadow(0 5px 7px rgba(0,0,0,.22))!important}

/* Journey nodes use the same 3D core set as the puzzle board.
   v0.1.6 Journey flower-layer hotfix:
   the old opaque radial node fill sat above the flower artwork and made every
   bloom look buried/dim. The node is now a transparent foreground ring; the
   flower stays fully visible while the level badge/check remain on top. */
#journey .lvl-num,#journey .lvl-row:nth-child(even) .lvl-num{
  z-index:8!important;
  background:transparent!important;
  border-color:rgba(214,188,127,.44)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24),0 0 0 4px rgba(214,188,127,.025),inset 0 1px 0 rgba(255,255,255,.07)!important;
  overflow:visible!important;
}
#journey .lvl-row.done .lvl-num{background:transparent!important;border-color:rgba(98,220,176,.82)!important}
#journey .lvl-row.current .lvl-num{background:transparent!important;border-color:#f1c86f!important}
#journey .lvl-art,#journey .lvl-row:nth-child(even) .lvl-art{
  z-index:7!important;
  width:52px!important;
  height:52px!important;
  top:19px!important;
  left:calc(23% - 26px)!important;
  background-size:98%!important;
  opacity:1!important;
  filter:drop-shadow(0 7px 9px rgba(0,0,0,.27)) saturate(1.04) brightness(1.04)!important;
  pointer-events:none!important;
}
#journey .lvl-row:nth-child(even) .lvl-art{left:calc(77% - 26px)!important}
#journey .lvl-num::after{z-index:12!important}
#journey .lvl-check{z-index:13!important}
#journey .journey-bloom-mix{height:39px!important;margin-top:11px!important}
#journey .journey-bloom-mix i{filter:drop-shadow(0 5px 7px rgba(0,0,0,.24))!important}
#journey .lvl-body b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:390px){
 .mistake-meter{padding:3px 6px;gap:4px}.mistake-meter>span{display:none}
 #garden .garden-chapter-browser{grid-template-columns:38px 42px minmax(0,1fr) auto 38px!important;gap:6px!important;padding:9px 8px!important}
 #garden .garden-chapter-flower{width:40px!important;height:40px!important}
 #garden .album-flower-art{width:60px!important;height:60px!important}
 #garden .album-flower-card{min-height:114px!important}
 #journey .lvl-art,#journey .lvl-row:nth-child(even) .lvl-art{width:48px!important;height:48px!important;top:20px!important;left:calc(23% - 24px)!important}
 #journey .lvl-row:nth-child(even) .lvl-art{left:calc(77% - 24px)!important}
}

/* v0.1.6 bugfix: the legacy compact-game CSS collapsed/removed hud-strip on
   short phones. The mistake row is now real layout content on every portrait
   height instead of overflowing a 4px strip or disappearing below 650px. */
#game .hud-strip{
  display:flex!important;
  flex-direction:column!important;
  width:calc(100% - 18px)!important;
  height:auto!important;
  min-height:29px!important;
  margin:0 9px 3px!important;
  gap:3px!important;
  overflow:visible!important;
}
#game .hud-strip .progress-mini{width:100%!important;height:3px!important;min-height:3px!important;flex:0 0 3px!important}
#game .hud-feedback-row{min-height:23px!important;justify-content:flex-start!important}
@media(max-height:650px){
  #game .hud-strip{display:flex!important;min-height:25px!important;margin-bottom:1px!important;gap:2px!important}
  #game .hud-strip .progress-mini{height:2px!important;min-height:2px!important;flex-basis:2px!important}
  #game .hud-feedback-row{min-height:21px!important}
  #game .mistake-meter{min-height:21px!important;padding-top:2px!important;padding-bottom:2px!important}
}

/* v0.1.6 Free Bloom + mistake visibility hotfix */
#game .mistake-meter{
  min-height:30px!important;
  padding:5px 10px!important;
  gap:6px!important;
  font-size:10.5px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  color:#c6d0e0!important;
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(7,16,31,.72)!important;
}
#game .mistake-meter>span{display:inline!important}
#game .mistake-meter>b{font-size:12.5px!important;color:#fff0d4!important}
#game .mistake-meter>em{gap:4px!important}
#game .mistake-meter>em i{width:7px!important;height:7px!important}
#game .mistake-meter>em i.used{background:#f08b7e!important;box-shadow:0 0 8px rgba(240,139,126,.38)!important}
#game .mistake-meter.danger{border-color:rgba(240,178,92,.48)!important;background:rgba(79,53,22,.62)!important;color:#ffd69d!important}
#game .mistake-meter.failed{border-color:rgba(238,112,103,.56)!important;background:rgba(91,31,38,.72)!important;color:#ffd0c9!important}
/* Wrong-move text used to be hidden by the compact gameplay CSS. Show only
   negative feedback as a large temporary toast so testers cannot miss it. */
#game .hud-status.bad{
  display:flex!important;
  position:fixed!important;
  z-index:1200!important;
  top:calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 70px)!important;
  left:50%!important;
  width:min(calc(100vw - 28px),430px)!important;
  height:auto!important;
  min-height:44px!important;
  margin:0!important;
  padding:10px 14px!important;
  transform:translateX(-50%)!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:15px!important;
  border:1px solid rgba(244,133,124,.52)!important;
  background:rgba(84,28,37,.94)!important;
  color:#ffe3de!important;
  box-shadow:0 12px 30px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.03) inset!important;
  font-size:13.5px!important;
  font-weight:850!important;
  line-height:1.3!important;
  overflow:visible!important;
  pointer-events:none!important;
}
@media(max-width:390px){
  #game .mistake-meter{min-height:29px!important;padding:4px 8px!important;font-size:10px!important}
  #game .mistake-meter>b{font-size:12px!important}
  #game .mistake-meter>em i{width:6.5px!important;height:6.5px!important}
  #game .hud-status.bad{top:calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 64px)!important;font-size:12.5px!important;min-height:42px!important;padding:9px 12px!important}
}


/* ==========================================================================\n   v0.1.6 beta tester feedback + persistent save UX\n   ========================================================================== */
.beta-feedback-card{
  width:calc(100% - 24px);margin:10px 12px 4px;padding:0;border:0;background:transparent;text-align:left;
}
.beta-feedback-card-inner{
  display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;
  min-height:66px;padding:10px 12px;border-radius:19px;
  border:1px solid rgba(242,202,117,.19);
  background:linear-gradient(135deg,rgba(28,38,61,.86),rgba(13,24,44,.92));
  box-shadow:0 12px 28px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.05);
}
.beta-feedback-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#f5ce78;background:rgba(237,190,91,.09);border:1px solid rgba(237,190,91,.16);font-size:20px}
.beta-feedback-copy{min-width:0}.beta-feedback-copy small{display:block;color:#d0aa5f;font-size:8px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin-bottom:2px}.beta-feedback-copy b{display:block;color:#f8f2e7;font-size:13px;line-height:1.15}.beta-feedback-copy span{display:block;margin-top:3px;color:#9da9bd;font-size:9px;line-height:1.3}.beta-feedback-arrow{color:#d2b873;font-size:21px;opacity:.82}
.beta-feedback-card:active .beta-feedback-card-inner{transform:scale(.99)}

.feedback-panel{max-width:520px!important;max-height:min(92dvh,760px)!important;overflow:auto!important}
.feedback-intro{margin:-2px 0 12px;color:#aab6ca;font-size:10.5px;line-height:1.5}
.feedback-save-card{padding:11px 12px;margin-bottom:12px;border-radius:17px;background:rgba(84,118,166,.075);border:1px solid rgba(153,184,225,.12)}
.feedback-save-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.feedback-save-head b{color:#f7efdf;font-size:11px}.feedback-cloud-state{display:inline-flex;align-items:center;gap:5px;color:#9fb0c9;font-size:8.5px}.feedback-cloud-state.ok{color:#7edbb6}.feedback-cloud-state.warn{color:#e3bd76}.feedback-cloud-state.bad{color:#ef9b92}
.feedback-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.feedback-code{min-width:0;padding:9px 10px;border-radius:12px;background:rgba(7,15,29,.52);border:1px solid rgba(255,255,255,.07);color:#f4d482;font:800 12px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedback-mini-btn{min-height:36px!important;padding:0 11px!important;font-size:9px!important}
.feedback-save-note{display:block;margin-top:7px;color:#8795ad;font-size:8.5px;line-height:1.4}
.feedback-restore{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:8px}.feedback-restore input{min-width:0;height:36px;padding:0 10px;border-radius:11px;border:1px solid rgba(255,255,255,.09);background:rgba(7,15,29,.48);color:#eef3fb;font-size:10px;outline:none}.feedback-restore input:focus{border-color:rgba(236,196,106,.45)}
.feedback-form{display:grid;gap:11px}.feedback-field{display:grid;gap:6px}.feedback-field>span{color:#d8dfeb;font-size:9px;font-weight:800;letter-spacing:.045em}.feedback-field select,.feedback-field textarea,.feedback-field input[type="text"]{width:100%;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(7,15,29,.48);color:#eef3fb;outline:none;font:inherit}.feedback-field select,.feedback-field input[type="text"]{height:40px;padding:0 11px;font-size:10px}.feedback-field textarea{min-height:116px;resize:vertical;padding:11px;font-size:11px;line-height:1.45}.feedback-field select:focus,.feedback-field textarea:focus,.feedback-field input[type="text"]:focus{border-color:rgba(236,196,106,.45);box-shadow:0 0 0 3px rgba(236,196,106,.045)}
.feedback-stars{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.feedback-star{height:39px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#77849a;font-size:18px}.feedback-star.active{color:#f3c962;border-color:rgba(243,201,98,.34);background:rgba(243,201,98,.085)}
.feedback-diag{display:flex;align-items:flex-start;gap:8px;color:#8e9bb1;font-size:8.5px;line-height:1.4}.feedback-diag input{margin-top:1px;accent-color:#d8b865}
.feedback-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;margin-top:1px}.feedback-status{min-height:17px;margin-top:1px;color:#96a4ba;font-size:9px;line-height:1.4}.feedback-status.ok{color:#78dbb1}.feedback-status.bad{color:#ef9b92}.feedback-status.warn{color:#e2bd76}
.feedback-settings-btn{border-color:rgba(237,194,96,.2)!important;color:#efd080!important}
@media(max-width:390px){.beta-feedback-card{width:calc(100% - 18px);margin-left:9px;margin-right:9px}.beta-feedback-card-inner{grid-template-columns:38px minmax(0,1fr) auto;min-height:60px;padding:9px 10px}.beta-feedback-icon{width:38px;height:38px}.feedback-panel{max-height:94dvh!important}.feedback-save-card{padding:10px}.feedback-stars{gap:4px}.feedback-star{height:36px}.feedback-actions{grid-template-columns:1fr}}

/* ===== source: softBotanicalStep01 ===== */
/* ================================================================
   SOFT BOTANICAL — STEP 01
   Scope intentionally limited to: app intro + #home only.
   No gameplay, Journey, Daily, Free Bloom, Garden, Collection,
   Shop, cloud save, feedback or admin behavior is changed here.
   ================================================================ */

/* ---------- Intro / splash ---------- */
.app-splash{
  background:#f6efe1 url("../scenes/soft-botanical-intro.webp") center 58%/cover no-repeat!important;
  color:#4e5b35!important;
}
.app-splash::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,252,244,.30) 0%,rgba(255,250,239,.14) 38%,rgba(246,235,215,.08) 66%,rgba(244,235,218,.20) 100%),
    radial-gradient(circle at 50% 24%,rgba(255,253,245,.78),rgba(255,250,239,.26) 30%,transparent 58%);
}
.app-splash-backdrop,.app-splash-garden,.app-splash-path,.app-splash-center{display:none!important}
.app-splash-petals{z-index:3!important;opacity:.72!important}
.app-splash-petals span{
  width:10px!important;height:16px!important;
  background:linear-gradient(155deg,#f9d9d6,#e7afa9)!important;
  filter:drop-shadow(0 2px 3px rgba(93,73,44,.10))!important;
  opacity:.28!important;
}
.app-splash-brand{
  z-index:5!important;
  top:29%!important;
  width:min(88vw,520px)!important;
  padding:22px 26px 24px!important;
  color:#4f5e37!important;
  text-shadow:none!important;
  animation:softBotanicalIntroBrand 1.15s cubic-bezier(.22,1,.36,1) both!important;
}
.app-splash-brand::before{
  content:""!important;position:absolute!important;left:50%!important;top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(84vw,470px)!important;height:210px!important;
  border-radius:44px!important;
  background:radial-gradient(ellipse at center,rgba(255,252,243,.80) 0%,rgba(255,249,237,.52) 45%,rgba(255,249,237,0) 76%)!important;
  opacity:1!important;filter:none!important;animation:none!important;z-index:-1!important;
}
.app-splash-brand-shine{display:none!important}
.app-splash-brand-mark{
  min-height:28px!important;margin:0 0 14px!important;display:flex!important;justify-content:center!important;
}
.app-splash-brand-mark::before{display:none!important}
.app-splash-brand-mark .mini-flower{display:block!important;width:24px!important;height:24px!important;filter:none!important}
.app-splash-brand-mark .mini-flower span{
  background:linear-gradient(180deg,#d8bc72,#b99445)!important;
  box-shadow:none!important;opacity:.96!important;
}
.app-splash-brand-mark .mini-flower i{background:#f9efd0!important;box-shadow:0 0 0 1px rgba(130,101,50,.16)!important}
.app-splash-title{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(46px,12vw,76px)!important;
  line-height:.95!important;letter-spacing:-.035em!important;font-weight:400!important;
  color:#4d5b34!important;background:none!important;-webkit-text-fill-color:#4d5b34!important;
  text-shadow:0 2px 0 rgba(255,255,255,.60),0 8px 24px rgba(91,72,38,.08)!important;
}
.app-splash-sub{
  margin-top:19px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  color:#6f7654!important;font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(11px,2.8vw,15px)!important;line-height:1.45!important;
  letter-spacing:.08em!important;font-weight:400!important;text-transform:none!important;text-shadow:none!important;
}
.app-splash-sub::before,.app-splash-sub::after{
  content:""!important;display:block!important;width:34px!important;height:1px!important;
  background:linear-gradient(90deg,transparent,#b89a56)!important;opacity:.65!important;
}
.app-splash-sub::after{transform:scaleX(-1)}
.app-splash-skip{
  z-index:7!important;left:50%!important;right:auto!important;bottom:calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  transform:translateX(-50%)!important;
  color:#69704e!important;background:rgba(255,251,241,.76)!important;
  border:1px solid rgba(169,139,78,.28)!important;border-radius:999px!important;
  box-shadow:0 8px 24px rgba(88,67,35,.08),inset 0 1px 0 rgba(255,255,255,.8)!important;
  backdrop-filter:blur(10px)!important;opacity:.88!important;
  font-size:10px!important;letter-spacing:.02em!important;padding:8px 13px!important;
}
.app-splash-skip b{font-weight:700!important;color:#4f5d37!important}
@keyframes softBotanicalIntroBrand{
  0%{opacity:0;transform:translateX(-50%) translateY(15px) scale(.98)}
  100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
}
@media(max-height:700px){.app-splash-brand{top:24%!important}.app-splash-brand::before{height:170px!important}}
@media(prefers-reduced-motion:reduce){.app-splash-brand{animation:none!important;opacity:1!important;transform:translateX(-50%)!important}}

/* ---------- Entry / home screen ---------- */
#home{
  --sb-ink:#445131;
  --sb-muted:#788064;
  --sb-gold:#b58f45;
  --sb-line:rgba(144,113,59,.22);
  --sb-paper:rgba(255,251,242,.92);
  position:relative!important;isolation:isolate!important;
  min-height:100dvh!important;
  padding:calc(max(13px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) + 2px) 12px calc(28px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  gap:11px!important;
  color:var(--sb-ink)!important;
  background:#efe7d7!important;
  overflow-x:hidden!important;overflow-y:auto!important;
}
#home::before{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:-3!important;
  background:url("../scenes/soft-botanical-home.webp") center 48%/cover no-repeat!important;
  transform:none!important;filter:none!important;opacity:1!important;
}
#home::after{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:-2!important;pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(255,252,244,.54) 0%,rgba(255,250,240,.46) 26%,rgba(249,242,229,.66) 64%,rgba(244,235,218,.86) 100%),
    radial-gradient(90% 34% at 50% 4%,rgba(255,255,249,.72),transparent 74%)!important;
}
#home .home-bar{top:max(12px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;left:12px!important;right:12px!important}
#home .home-bar .icon-btn{
  width:42px!important;height:42px!important;border-radius:50%!important;color:#66704d!important;
  background:rgba(255,250,240,.88)!important;border:1px solid rgba(171,139,77,.27)!important;
  box-shadow:0 7px 20px rgba(86,65,33,.10),inset 0 1px 0 rgba(255,255,255,.90)!important;
  backdrop-filter:blur(10px)!important;
}
#home .home-bar .icon-btn svg{stroke:currentColor!important;fill:none!important}
#home .home-hero-brand{
  min-height:116px!important;margin:0!important;padding:14px 46px 2px!important;
  color:var(--sb-ink)!important;text-shadow:none!important;
}
#home .home-prism-mark{width:30px!important;height:30px!important;margin:0 auto 8px!important;filter:none!important}
#home .home-prism-mark .pg-logo-petal{fill:#bda057!important;opacity:.92!important}
#home .home-prism-mark .pg-logo-core{fill:#f8edc9!important;stroke:#aa8848!important;stroke-width:.7!important}
#home .home-prism-mark .pg-logo-glint{fill:#fffaf0!important}
#home .home-hero-brand h1{
  display:block!important;margin:0!important;
  color:#4b5b35!important;background:none!important;-webkit-text-fill-color:#4b5b35!important;
  filter:none!important;text-shadow:0 1px 0 rgba(255,255,255,.72)!important;
  font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(36px,10vw,52px)!important;
  line-height:.96!important;letter-spacing:-.035em!important;font-weight:400!important;
}
#home .home-hero-brand h1 span{display:inline!important}
#home .home-hero-brand p{
  display:block!important;margin:9px 0 0!important;color:#747c5d!important;
  font-family:Georgia,"Times New Roman",serif!important;font-size:12px!important;letter-spacing:.02em!important;
}
#home .quick-rail{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;
  padding:0!important;margin:0!important;overflow:visible!important;
}
#home .quick-card{
  min-height:134px!important;padding:13px 10px 11px!important;border-radius:20px!important;
  align-items:flex-start!important;color:var(--sb-ink)!important;
  background:linear-gradient(180deg,rgba(255,252,244,.95),rgba(245,237,220,.92))!important;
  border:1px solid var(--sb-line)!important;
  box-shadow:0 10px 26px rgba(93,71,36,.10),inset 0 1px 0 rgba(255,255,255,.90)!important;
  backdrop-filter:blur(9px)!important;
}
#home .quick-card::before{background:linear-gradient(180deg,rgba(255,255,255,.26),transparent 44%)!important}
#home .quick-card::after{display:none!important}
#home .qc-daily{box-shadow:inset 0 3px 0 rgba(213,161,157,.66),0 10px 26px rgba(93,71,36,.10)!important}
#home .qc-free{box-shadow:inset 0 3px 0 rgba(164,143,185,.66),0 10px 26px rgba(93,71,36,.10)!important}
#home .qc-garden{box-shadow:inset 0 3px 0 rgba(129,155,103,.70),0 10px 26px rgba(93,71,36,.10)!important}
#home .qc-ico{width:35px!important;height:35px!important;margin-bottom:auto!important;color:#68744f!important;text-shadow:none!important}
#home .qc-ico svg{width:31px!important;height:31px!important;stroke:currentColor!important;fill:none!important}
#home .qc-kicker{margin-top:8px!important;color:#8a8c70!important;font-size:7.5px!important;letter-spacing:.10em!important}
#home .qc-title{margin-top:3px!important;color:#4d5938!important;text-shadow:none!important;font-family:Georgia,"Times New Roman",serif!important;font-size:13px!important;font-weight:700!important}
#home .qc-cta{
  margin-top:8px!important;padding:6px 11px!important;background:linear-gradient(180deg,#8f9a58,#6f7e45)!important;
  color:#fffdf6!important;box-shadow:0 5px 12px rgba(82,91,47,.16)!important;font-size:9px!important;
}
#home .mission-hub{
  position:relative!important;z-index:3!important;margin-top:0!important;border-radius:20px!important;
  background:var(--sb-paper)!important;border:1px solid var(--sb-line)!important;
  box-shadow:0 10px 26px rgba(91,69,35,.09),inset 0 1px 0 rgba(255,255,255,.88)!important;
  backdrop-filter:blur(10px)!important;overflow:hidden!important;
}
#home .mission-hub-toggle{min-height:62px!important;padding:11px 13px!important;color:var(--sb-ink)!important;background:transparent!important}
#home .mission-kicker{color:#99906e!important}
#home .mission-hub-head h3{color:#4a5637!important;font-family:Georgia,"Times New Roman",serif!important;font-size:14px!important}
#home .mission-reward-count{color:#6d784f!important;background:rgba(125,140,86,.08)!important;border:1px solid rgba(125,140,86,.14)!important}
#home .mission-chevron{color:#8f794b!important}
#home .mission-hub-body{background:rgba(255,252,245,.56)!important}
#home .mission-block{background:rgba(255,255,255,.44)!important;border-color:rgba(144,113,59,.13)!important}
#home .home-resume-card{
  min-height:190px!important;margin:0!important;padding:18px 14px 16px!important;border-radius:22px!important;
  background:
    linear-gradient(180deg,rgba(255,250,239,.10),rgba(255,249,236,.36) 42%,rgba(248,239,221,.90) 100%),
    url("../scenes/soft-botanical-home.webp") center 62%/cover no-repeat!important;
  border:1px solid rgba(153,120,62,.25)!important;
  box-shadow:0 14px 32px rgba(88,66,34,.12),inset 0 1px 0 rgba(255,255,255,.80)!important;
}
#home .home-resume-card::before{display:none!important}
#home .resume-title{
  color:#465333!important;text-shadow:0 1px 0 rgba(255,255,255,.88),0 2px 10px rgba(79,60,29,.10)!important;
  font-family:Georgia,"Times New Roman",serif!important;font-size:17px!important;font-weight:700!important;
}
#home .cta-main{
  width:min(78%,270px)!important;padding:11px 20px!important;border-radius:999px!important;
  color:#fffdf7!important;background:linear-gradient(180deg,#8e9b59,#6f7d43)!important;
  border:1px solid rgba(92,103,54,.72)!important;
  box-shadow:0 9px 20px rgba(66,78,40,.18),inset 0 1px 0 rgba(255,255,255,.28)!important;
}
#home .cta-main b{font-family:Georgia,"Times New Roman",serif!important;font-size:15px!important;font-weight:700!important}
#home .beta-feedback-card{margin-top:0!important;border-radius:18px!important;background:rgba(255,251,242,.90)!important;border:1px solid var(--sb-line)!important;box-shadow:0 8px 22px rgba(91,69,35,.08)!important;color:var(--sb-ink)!important}
#home .beta-feedback-card-inner{background:transparent!important}
#home .beta-feedback-icon{color:#768052!important;background:rgba(132,148,91,.10)!important;border-color:rgba(132,148,91,.14)!important}
#home .beta-feedback-copy small,#home .beta-feedback-copy span{color:#8a8b70!important}
#home .beta-feedback-copy b{color:#4a5637!important}
#home .beta-feedback-arrow{color:#9a7e47!important}

/* Old dark-home entrance animation can stay, but its color/blur effects should not. */
body.intro-home-enter #home{filter:none!important}

@media(max-height:760px){
  #home{gap:8px!important;padding-top:8px!important}
  #home .home-hero-brand{min-height:92px!important;padding-top:10px!important}
  #home .home-prism-mark{width:24px!important;height:24px!important;margin-bottom:5px!important}
  #home .home-hero-brand h1{font-size:32px!important}
  #home .home-hero-brand p{font-size:10px!important;margin-top:5px!important}
  #home .quick-card{min-height:116px!important;padding:10px 8px!important}
  #home .qc-ico{width:29px!important;height:29px!important}
  #home .qc-ico svg{width:27px!important;height:27px!important}
  #home .home-resume-card{min-height:158px!important;padding:12px!important}
  #home .mission-hub-toggle{min-height:54px!important;padding:9px 11px!important}
}
@media(max-width:360px){
  #home{padding-left:9px!important;padding-right:9px!important}
  #home .quick-rail{gap:6px!important}
  #home .quick-card{border-radius:16px!important;padding:9px 7px!important}
  #home .qc-title{font-size:11.5px!important}
  #home .qc-kicker{font-size:6.7px!important}
  #home .qc-cta{padding:5px 8px!important;font-size:8px!important}
}

/* ===== source: softBotanicalApprovedHomeV1 ===== */
/* ================================================================
   APPROVED HOME — exact visual direction from user's reference.
   Scope: #home + home-only navigation. Other game screens unchanged.
   ================================================================ */
#home.home-approved-v1{
  --ha-ink:#465334;--ha-muted:#72775f;--ha-gold:#b18d4c;--ha-line:rgba(137,109,61,.22);
  --ha-paper:#fbf6ea;--ha-paper-2:#f4ead7;--ha-green:#718044;
  position:relative!important;display:flex!important;flex-direction:column!important;
  min-height:100dvh!important;padding:calc(max(16px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) + 4px) 18px calc(100px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  gap:14px!important;overflow-x:hidden!important;overflow-y:auto!important;color:var(--ha-ink)!important;
  background:
    radial-gradient(circle at 14% 5%,rgba(255,255,255,.88),transparent 27%),
    linear-gradient(180deg,#fbf7ed 0%,#f8f1e4 56%,#f3ead9 100%)!important;
  font-family:Georgia,"Times New Roman",serif!important;
}
#home.home-approved-v1::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(136,109,65,.018) 1px,transparent 1px),
    linear-gradient(rgba(136,109,65,.014) 1px,transparent 1px)!important;
  background-size:24px 24px!important;opacity:.65!important;
}
#home.home-approved-v1::after{display:none!important}
#home.home-approved-v1>*{animation:none!important}
#home.home-approved-v1 .home-approved-head{position:relative;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;min-height:66px;flex:0 0 auto}
#home .home-profile{width:58px;height:58px;border-radius:50%;padding:3px;background:#f7edd9;border:1px solid rgba(163,127,66,.35);box-shadow:0 6px 18px rgba(78,61,32,.12),inset 0 1px 0 #fff;overflow:hidden}
#home .home-profile img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
#home .home-approved-brand{text-align:center;color:#4d5b36;font-size:22px;line-height:1;font-weight:400;letter-spacing:.002em;text-shadow:0 1px 0 #fff}
#home .home-approved-flourish{display:block;margin-top:8px;color:#b18d4c;font-size:17px;line-height:.6;transform:scaleX(1.5);opacity:.8}
#home .home-approved-settings{justify-self:end!important;position:static!important;width:46px!important;height:46px!important;border-radius:50%!important;color:#59643f!important;background:linear-gradient(180deg,#fffaf0,#f2e7d1)!important;border:1px solid rgba(158,123,64,.29)!important;box-shadow:0 5px 14px rgba(77,59,31,.12),inset 0 1px 0 rgba(255,255,255,.95)!important}
#home .home-approved-settings svg{width:24px!important;height:24px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.55!important}
#home .home-approved-greeting{flex:0 0 auto;padding:0 4px 1px}
#home .home-approved-greeting h1{margin:0;color:#435033;font-family:Georgia,"Times New Roman",serif;font-size:22px;line-height:1.12;font-weight:400;letter-spacing:0}
#home .home-approved-greeting p{margin:4px 0 0;color:#667057;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12px;line-height:1.35}

#home .home-approved-resume{position:relative;flex:0 0 282px;min-height:282px;border-radius:22px;overflow:hidden;border:1px solid rgba(154,120,61,.24);background:linear-gradient(180deg,#fcf8ee,#f4ead7);box-shadow:0 11px 28px rgba(88,67,35,.10),inset 0 1px 0 rgba(255,255,255,.92)}
#home .home-approved-resume-art{position:absolute;right:0;top:0;width:61%;height:100%;background:url("../ui/home-resume-art.webp") center/cover no-repeat;opacity:.98}
#home .home-approved-resume-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fbf6e9 0%,rgba(251,246,233,.96) 12%,rgba(251,246,233,.54) 31%,rgba(251,246,233,.04) 60%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(248,238,219,.10))}
#home .home-approved-resume-copy{position:relative;z-index:2;width:58%;padding:34px 0 76px 20px;text-align:left}
#home .home-approved-kicker{display:block;color:#5b6647;font-size:12px;margin-bottom:8px}
#home .home-approved-resume h2{margin:0;color:#455235;font-family:Georgia,"Times New Roman",serif;font-size:29px;line-height:1.02;font-weight:400;max-width:180px;text-shadow:0 1px 0 rgba(255,255,255,.8)}
#home .home-approved-rule{display:block;width:54px;margin:11px 0 10px;color:#b08d4e;font-size:15px;line-height:.5;transform:scaleX(1.5);transform-origin:left center;opacity:.78}
#home .home-approved-resume p{margin:0;max-width:170px;color:#5e6652;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12px;line-height:1.55}
#home .home-approved-progress{display:flex;align-items:center;gap:7px;margin-top:15px;color:#52603d;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12px}
#home .home-approved-flower-dot{font-size:17px;color:#657448}
#home .home-approved-progress b{font-weight:600;font-size:12px;white-space:nowrap}
#home .home-approved-progress-track{display:block;width:105px;height:7px;border-radius:999px;background:rgba(91,101,62,.14);overflow:hidden;box-shadow:inset 0 1px 2px rgba(76,63,39,.11)}
#home .home-approved-progress-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#708047,#899a59);box-shadow:inset 0 1px 0 rgba(255,255,255,.35);transition:width .35s ease}
#home .home-approved-continue{position:absolute!important;z-index:3;left:14px!important;right:14px!important;bottom:13px!important;width:auto!important;height:52px!important;min-height:52px!important;margin:0!important;border-radius:999px!important;padding:0 48px!important;background:linear-gradient(180deg,#7f8d4c,#66743e)!important;border:1px solid rgba(77,91,42,.72)!important;color:#fffdf7!important;box-shadow:0 7px 15px rgba(65,76,38,.20),inset 0 1px 0 rgba(255,255,255,.30)!important;display:flex!important;align-items:center!important;justify-content:center!important}
#home .home-approved-continue b{font-family:Georgia,"Times New Roman",serif!important;font-size:18px!important;font-weight:400!important;letter-spacing:.01em!important}

#home .home-approved-next{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);font-size:27px;line-height:1;color:#fffbe9}

#home .home-approved-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:0 0 177px}
#home .home-approved-feature{position:relative!important;width:auto!important;min-width:0!important;height:177px!important;min-height:177px!important;margin:0!important;padding:17px 14px!important;border-radius:20px!important;overflow:hidden!important;border:1px solid rgba(154,120,61,.23)!important;background:linear-gradient(180deg,#fbf7ed,#f3e8d4)!important;box-shadow:0 8px 20px rgba(82,62,32,.08),inset 0 1px 0 rgba(255,255,255,.92)!important;cursor:pointer!important;color:#465334!important;text-align:left!important}
#home .home-approved-feature::before,#home .home-approved-feature::after{display:none!important}
#home .home-approved-feature-copy{position:relative;z-index:3}
#home .home-approved-feature h3{margin:0;color:#435033;font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1;font-weight:400}
#home .home-approved-feature p{margin:8px 0 0;color:#626957;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:11px;line-height:1.35}
#home .home-approved-flower-art{position:absolute;right:8px;bottom:24px;width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(87,66,33,.12));z-index:2}
#home .home-approved-time{position:absolute;left:14px;bottom:13px;display:grid;grid-template-columns:20px auto;grid-template-rows:auto auto;column-gap:5px;align-items:center;color:#4f5940;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;z-index:4}
#home .home-approved-time>span{grid-row:1/3;font-size:21px;color:#5f6b47}
#home .home-approved-time small{font-size:8px;color:#7b7b66;line-height:1}
#home .home-approved-time b{font-size:11px;font-weight:500;line-height:1.25}
#home .home-approved-bouquet{position:absolute;right:4px;bottom:4px;width:112px;height:124px;z-index:2}
#home .home-approved-bouquet img{position:absolute;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(76,58,30,.10))}
#home .bouquet-lavender{width:94px;height:110px;right:0;bottom:6px;transform:rotate(3deg)}
#home .bouquet-daisy{width:74px;height:74px;right:38px;bottom:0;transform:rotate(-8deg)}
#home .home-approved-gift{position:absolute;left:14px;bottom:12px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(145,112,55,.22);background:rgba(255,250,238,.82);color:#5f6b46;font-size:18px;z-index:3}

#home .home-approved-summary{display:grid;grid-template-columns:136px 1fr;gap:0;align-items:stretch;flex:0 0 142px;min-height:142px;width:100%;padding:0;border-radius:19px;overflow:hidden;border:1px solid rgba(154,120,61,.23);background:linear-gradient(180deg,#fbf7ed,#f2e6d1);box-shadow:0 8px 20px rgba(82,62,32,.08),inset 0 1px 0 rgba(255,255,255,.92);color:#455234;cursor:pointer;text-align:left}
#home .home-approved-summary>img{width:136px;height:100%;object-fit:cover;display:block;border-right:1px solid rgba(151,118,61,.13)}
#home .home-approved-summary-body{padding:15px 13px 11px;min-width:0}
#home .home-approved-summary h3{margin:0 0 16px;text-align:center;color:#4a5638;font-family:Georgia,"Times New Roman",serif;font-size:18px;font-weight:400}
#home .home-approved-summary-stats{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;text-align:center}
#home .home-approved-summary-stats span{min-width:0;padding:0 7px;border-right:1px solid rgba(135,108,63,.15)}
#home .home-approved-summary-stats span:last-child{border-right:0}
#home .home-approved-summary-stats small{display:block;min-height:27px;color:#656b58;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:8px;line-height:1.15}
#home .home-approved-summary-stats b{display:block;margin-top:5px;color:#435033;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1;font-weight:400}

#home .home-bottom-nav{position:fixed;left:50%;bottom:0;z-index:55;transform:translateX(-50%);width:min(100%,560px);display:grid;grid-template-columns:repeat(4,1fr);height:86px;padding:8px 12px calc(7px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));background:linear-gradient(180deg,rgba(251,247,237,.97),rgba(243,233,214,.985));border-top:1px solid rgba(143,111,59,.18);box-shadow:0 -10px 28px rgba(75,57,30,.08);backdrop-filter:blur(16px)}
#home .home-nav-item{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#65705a;cursor:pointer;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:10px;min-height:60px;border-radius:15px}
#home .home-nav-item svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#home .home-nav-item.active{color:#56643e;background:rgba(123,139,78,.045)}
#home .home-nav-item.active svg{stroke-width:1.9}
#home .home-approved-runtime{display:none!important}
/* Hide the old global 3-tab bar only while Home is visible. Other screens keep v0.1.6 exactly. */
#home.home-approved-v1:not(.hidden) ~ #tabbar{display:none!important}

/* Settings already contains feedback in v0.1.6 AdminPanel. Make that location explicit; no home feedback card remains. */
#settingsSheet .feedback-settings-btn{border-color:rgba(178,140,72,.34)!important;color:#efd080!important}

@media(max-height:840px){
  #home.home-approved-v1{gap:10px!important;padding-top:10px!important}
  #home.home-approved-v1 .home-approved-head{min-height:58px}.home-approved-v1 .home-profile{width:52px;height:52px}
  #home .home-approved-greeting h1{font-size:20px}
  #home .home-approved-resume{flex-basis:246px;min-height:246px}
  #home .home-approved-resume-copy{padding-top:26px}
  #home .home-approved-resume h2{font-size:25px}
  #home .home-approved-feature-row{flex-basis:154px}
  #home .home-approved-feature{height:154px!important;min-height:154px!important;padding-top:14px!important}
  #home .home-approved-flower-art{width:78px;height:78px}
  #home .home-approved-bouquet{transform:scale(.88);transform-origin:right bottom}
  #home .home-approved-summary{flex-basis:121px;min-height:121px;grid-template-columns:116px 1fr}
  #home .home-approved-summary>img{width:116px}
  #home .home-approved-summary h3{margin-bottom:10px;font-size:16px}
  #home .home-approved-summary-body{padding:12px 10px 8px}
}
@media(max-width:390px){
  #home.home-approved-v1{padding-left:13px!important;padding-right:13px!important}
  #home .home-approved-resume-copy{padding-left:16px;width:62%}
  #home .home-approved-resume h2{font-size:25px}
  #home .home-approved-feature-row{gap:9px}
  #home .home-approved-feature{padding-left:11px!important;padding-right:10px!important}
  #home .home-approved-feature h3{font-size:16px}
  #home .home-approved-flower-art{right:2px;width:76px;height:76px}
  #home .home-approved-bouquet{right:-4px;transform:scale(.78);transform-origin:right bottom}
  #home .home-approved-summary{grid-template-columns:105px 1fr}
  #home .home-approved-summary>img{width:105px}
  #home .home-approved-summary-stats span{padding:0 4px}
  #home .home-approved-summary-stats b{font-size:18px}
}

/* ===== source: softBotanicalStep03HomeProfileFixes ===== */
/* Step 03: exact fixes requested for approved Home. Other screens stay untouched. */
#home .botanical-flourish-svg{display:block;width:72px;height:16px;margin:auto;fill:none;stroke:#b08d4e;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
#home .home-approved-flourish{display:block;margin-top:5px!important;transform:none!important;font-size:0!important;height:16px;opacity:.9!important}
#home .home-approved-rule{display:block!important;width:72px!important;height:16px!important;margin:8px 0 8px!important;transform:none!important;font-size:0!important;opacity:.9!important}
#home .home-approved-rule .botanical-flourish-svg{margin:0;width:72px;height:16px}
#home .home-profile{appearance:none;border:1px solid rgba(163,127,66,.35)!important;cursor:pointer;position:relative;display:block!important}
#home .home-profile-edit{position:absolute;right:-2px;bottom:-2px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#7b874f;color:#fffaf0;border:2px solid #f8efdd;font:700 10px/1 system-ui;box-shadow:0 3px 7px rgba(71,57,31,.15)}
#home .home-approved-flower-dot{width:18px;height:18px;display:grid;place-items:center;color:#667548;flex:0 0 18px}
#home .home-approved-flower-dot svg{width:17px;height:17px;fill:rgba(112,128,72,.12);stroke:currentColor;stroke-width:1.35}

/* Daily/Free: keep text and countdown on their own rows; use native 3D flower WebPs. */
#home .home-approved-feature-copy{height:100%;position:relative;z-index:4}
#home .home-approved-feature h3{line-height:1.08!important}
#home .home-approved-feature p{max-width:56%;margin-top:7px!important;line-height:1.32!important}
#home .home-approved-daily .home-approved-flower-art{right:9px!important;bottom:9px!important;width:82px!important;height:82px!important;object-fit:contain!important;filter:drop-shadow(0 7px 9px rgba(76,58,31,.13))!important}
#home .home-approved-time{left:13px!important;bottom:12px!important;grid-template-columns:20px minmax(0,1fr)!important;max-width:92px;padding:3px 0;background:linear-gradient(90deg,rgba(249,242,225,.94),rgba(249,242,225,.70),transparent);border-radius:10px}
#home .home-approved-time small{font-size:8px!important;line-height:1.15!important;white-space:nowrap}
#home .home-approved-time b{font-size:11px!important;line-height:1.25!important;white-space:nowrap}
#home .home-approved-bouquet{right:4px!important;bottom:4px!important;width:118px!important;height:112px!important}
#home .home-approved-bouquet img{position:absolute;object-fit:contain!important;filter:drop-shadow(0 7px 9px rgba(76,58,31,.13))!important}
#home .bouquet-violet{width:88px!important;height:88px!important;right:0!important;bottom:20px!important;transform:rotate(7deg)!important}
#home .bouquet-gold{width:72px!important;height:72px!important;right:57px!important;bottom:0!important;transform:rotate(-9deg)!important}
#home .home-approved-gift{left:13px!important;bottom:11px!important;width:32px!important;height:32px!important}
#home .home-approved-gift svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}

/* Garden summary: make the three metrics readable and self-explanatory. */
#home .home-approved-summary{grid-template-columns:122px 1fr!important;min-height:150px!important;flex-basis:150px!important}
#home .home-approved-summary>img{width:122px!important}
#home .home-approved-summary-body{padding:13px 11px 10px!important}
#home .home-approved-summary h3{margin:0 0 10px!important;font-size:19px!important;line-height:1.1!important}
#home .home-approved-summary-stats{height:88px;align-items:stretch!important}
#home .home-approved-summary-stats span{display:grid;grid-template-rows:22px 24px 1fr;place-items:center;padding:0 5px!important}
#home .summary-stat-icon{width:20px;height:20px;display:grid;place-items:center;color:#69764b}
#home .summary-stat-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
#home .summary-stat-icon svg ellipse{fill:rgba(112,128,72,.10)}
#home .home-approved-summary-stats small{min-height:0!important;font-size:9px!important;line-height:1.15!important;color:#626a54!important;font-weight:600!important;display:flex!important;align-items:center!important;justify-content:center!important}
#home .home-approved-summary-stats b{margin-top:2px!important;font-size:22px!important;line-height:1!important}

/* Main-menu icon: explicit SVG geometry instead of font/icon fallback. */
#home .home-nav-house{width:28px!important;height:28px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* Profile editor: isolated soft-botanical bottom sheet. */
#profileSheet{z-index:180!important;background:rgba(51,45,33,.32)!important;backdrop-filter:blur(7px)!important}
#profileSheet .profile-panel{width:min(94vw,500px)!important;max-height:min(91dvh,720px)!important;overflow:auto!important;background:linear-gradient(180deg,#fffaf0,#f3e7d1)!important;border:1px solid rgba(159,124,64,.30)!important;color:#465334!important;box-shadow:0 24px 65px rgba(48,39,23,.23),inset 0 1px 0 #fff!important}
#profileSheet .profile-sheet-head{border-bottom:1px solid rgba(143,111,59,.15)!important}
#profileSheet .profile-sheet-head h3{color:#465334!important;font-family:Georgia,"Times New Roman",serif!important;font-size:24px!important;font-weight:400!important}
#profileSheet .profile-sheet-kicker{display:block;color:#9b814c;font-size:8px;font-weight:800;letter-spacing:.14em;margin-bottom:3px}
#profileSheet .icon-btn{color:#626d4b!important;background:#f8eedb!important;border:1px solid rgba(151,116,58,.24)!important}
.profile-preview-card{margin:14px 0 12px;padding:12px;display:flex;align-items:center;gap:12px;border-radius:18px;background:rgba(255,253,247,.72);border:1px solid rgba(151,117,60,.17)}
.profile-preview-avatar{width:66px;height:66px;border-radius:50%;padding:4px;background:#f7edd9;border:1px solid rgba(157,121,61,.27);box-shadow:0 6px 14px rgba(70,55,31,.09)}
.profile-preview-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.profile-preview-copy{display:grid;gap:3px;min-width:0}.profile-preview-copy small{font-size:8px;color:#918568;letter-spacing:.09em;text-transform:uppercase}.profile-preview-copy b{font:400 22px/1.1 Georgia,"Times New Roman",serif;color:#465334}.profile-preview-copy span{font:700 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#8c764a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-field{display:grid;gap:7px;margin:12px 0}.profile-field>span{font-size:10px;font-weight:800;color:#596346;letter-spacing:.02em}.profile-field input{width:100%;height:44px;padding:0 13px;border-radius:13px;border:1px solid rgba(148,115,58,.25);background:#fffdf7;color:#465334;font-size:14px;outline:none}.profile-field input:focus{border-color:#869456;box-shadow:0 0 0 3px rgba(126,143,78,.11)}
.profile-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.profile-avatar-option{aspect-ratio:1;border-radius:16px;border:1px solid rgba(148,115,58,.18);background:#fffaf0;padding:7px;display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 12px rgba(78,60,32,.05)}.profile-avatar-option img{width:100%;height:100%;object-fit:contain;border-radius:12px}.profile-avatar-option[data-avatar="portrait"] img{object-fit:cover;border-radius:50%}.profile-avatar-option.selected{border-color:#758348;box-shadow:0 0 0 3px rgba(117,131,72,.12),0 6px 14px rgba(78,60,32,.07);background:#f7f3df}
.profile-note{font-size:9.5px;line-height:1.45;color:#747963;margin:10px 0}.profile-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:9px;margin-top:11px}.profile-actions .btn{min-height:44px!important;border-radius:14px!important}.profile-actions .primary{background:linear-gradient(180deg,#81904f,#697740)!important;border-color:#617038!important;color:#fffdf7!important}.profile-actions .ghost{background:#fbf4e6!important;border-color:rgba(146,112,57,.22)!important;color:#596346!important}.profile-status{min-height:18px;margin-top:7px;font-size:9px;color:#786e57}.profile-status.ok{color:#66864f}.profile-status.bad{color:#b05f50}.profile-settings-btn{border-color:rgba(168,134,68,.28)!important}

@media(max-width:390px){
  #home .home-approved-feature{padding-top:14px!important}
  #home .home-approved-feature p{max-width:58%!important;font-size:10px!important}
  #home .home-approved-daily .home-approved-flower-art{width:72px!important;height:72px!important;right:3px!important}
  #home .home-approved-bouquet{transform:scale(.88)!important;transform-origin:right bottom!important;right:-3px!important}
  #home .home-approved-summary{grid-template-columns:100px 1fr!important}
  #home .home-approved-summary>img{width:100px!important}
  #home .home-approved-summary-body{padding-left:7px!important;padding-right:7px!important}
  #home .home-approved-summary-stats span{padding:0 2px!important}
  #home .home-approved-summary-stats small{font-size:7.8px!important}
  #home .home-approved-summary-stats b{font-size:19px!important}
  .profile-avatar-grid{gap:7px}.profile-avatar-option{padding:5px;border-radius:13px}
}

/* ===== source: softBotanicalStep04ModalPolish ===== */
/* Step 04 — profile/settings are true modal windows over the current Home UI. */
#profileSheet,#settingsSheet{
  z-index:220!important;
  align-items:center!important;
  justify-content:center!important;
  padding:max(16px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) 14px max(16px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:rgba(63,57,42,.18)!important;
  -webkit-backdrop-filter:blur(9px) saturate(.92)!important;
  backdrop-filter:blur(9px) saturate(.92)!important;
  overscroll-behavior:contain;
}
#profileSheet::before,#settingsSheet::before{display:none!important;content:none!important}
#profileSheet .sheet-panel,#settingsSheet .sheet-panel{
  width:min(94vw,540px)!important;
  max-height:min(88dvh,760px)!important;
  margin:0!important;
  padding:18px 18px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  border:1px solid rgba(165,128,65,.34)!important;
  border-bottom:1px solid rgba(165,128,65,.34)!important;
  border-radius:26px!important;
  color:#465334!important;
  background:
    radial-gradient(circle at 22% 0%,rgba(255,255,255,.98),transparent 34%),
    linear-gradient(180deg,rgba(255,251,241,.985),rgba(244,233,211,.985))!important;
  box-shadow:
    0 28px 80px rgba(56,45,25,.26),
    0 8px 24px rgba(80,61,30,.14),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(160,124,64,.10)!important;
  animation:softBotanicalModalIn .22s cubic-bezier(.22,1,.36,1) both;
}
#profileSheet .profile-panel{width:min(94vw,500px)!important}
#settingsSheet .sheet-panel{width:min(94vw,560px)!important}
#profileSheet .sheet-head,#settingsSheet .sheet-head{margin-bottom:10px!important;padding-bottom:12px!important}
#profileSheet .sheet-head::after,#settingsSheet .sheet-head::after{
  background:linear-gradient(90deg,transparent,rgba(176,141,78,.48),transparent)!important;
}
#settingsSheet .sheet-head h3{color:#465334!important;font:400 25px/1.1 Georgia,"Times New Roman",serif!important}
#settingsSheet .icon-btn,#profileSheet .icon-btn{
  color:#626d4b!important;
  background:linear-gradient(180deg,#fffaf0,#efe1c6)!important;
  border:1px solid rgba(151,116,58,.27)!important;
  box-shadow:0 6px 15px rgba(76,58,30,.13),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
#settingsSheet .sheet-body{color:#566047!important}
#settingsSheet .setting-row{
  min-height:56px!important;
  padding:9px 3px!important;
  color:#4f5a40!important;
  border-bottom-color:rgba(143,111,59,.13)!important;
}
#settingsSheet .sr-ico{
  color:#71804b!important;
  background:linear-gradient(180deg,rgba(255,252,243,.94),rgba(239,229,207,.90))!important;
  border:1px solid rgba(151,117,61,.20)!important;
  box-shadow:0 4px 10px rgba(76,58,30,.06),inset 0 1px 0 #fff!important;
}
#settingsSheet .lang-select{
  color:#4e5940!important;
  background:#fffaf0!important;
  border:1px solid rgba(151,117,61,.22)!important;
}
#settingsSheet .volume-panel{
  background:rgba(255,252,244,.58)!important;
  border-color:rgba(151,117,61,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
#settingsSheet .volume-copy,#settingsSheet .setting-note,#settingsSheet .release-version{color:#6e725f!important}
#settingsSheet .sheet-actions .btn,#settingsSheet .legal-actions .btn{
  color:#596346!important;
  background:linear-gradient(180deg,#fffaf0,#f2e6cf)!important;
  border-color:rgba(150,115,58,.20)!important;
  box-shadow:0 5px 12px rgba(74,57,31,.06),inset 0 1px 0 #fff!important;
}
#settingsSheet .sheet-actions .btn:active,#settingsSheet .legal-actions .btn:active{transform:translateY(1px)}
#settingsSheet .sheet-rule,#settingsSheet .sheet-tools{
  color:#596346!important;
  background:linear-gradient(135deg,rgba(255,252,244,.72),rgba(238,228,207,.55))!important;
  border-color:rgba(151,117,61,.16)!important;
}
#settingsSheet .sheet-rule b{color:#465334!important}
#settingsSheet .sheet-rule::after{color:rgba(121,137,80,.11)!important}
#settingsSheet .sheet-rule.spectrum{background:linear-gradient(135deg,rgba(235,228,207,.88),rgba(255,252,244,.62))!important;border-color:rgba(126,142,82,.22)!important}
#settingsSheet .sw-track{background:#e9dfca!important;border-color:rgba(151,117,61,.18)!important}
#settingsSheet input.sw:checked + .sw-track{background:linear-gradient(180deg,#879655,#6e7d45)!important}

/* Keep the Home visible beneath the modal, and give approved cards more depth. */
#home .home-approved-resume,
#home .home-approved-feature,
#home .home-approved-summary{
  border-color:rgba(171,132,65,.31)!important;
  box-shadow:
    0 14px 30px rgba(80,61,31,.13),
    0 3px 8px rgba(93,70,34,.08),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(164,126,62,.10)!important;
}
#home .home-approved-resume{background:linear-gradient(180deg,#fffaf0,#f2e4ca)!important}
#home .home-approved-feature,#home .home-approved-summary{background:linear-gradient(180deg,#fffaf2 0%,#f4e8d2 100%)!important}
#home .home-approved-feature{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
@media(hover:hover){#home .home-approved-feature:hover{transform:translateY(-2px);border-color:rgba(159,121,55,.43)!important;box-shadow:0 17px 34px rgba(80,61,31,.16),0 4px 9px rgba(93,70,34,.09),inset 0 1px 0 #fff!important}}
#home .home-approved-continue{
  box-shadow:0 10px 21px rgba(66,77,39,.25),inset 0 1px 0 rgba(255,255,255,.42),inset 0 -2px 3px rgba(51,62,29,.12)!important;
}
#home .home-approved-summary>img{filter:saturate(.94) contrast(1.02)}
#home .home-approved-settings,#home .home-profile{
  box-shadow:0 8px 20px rgba(74,57,31,.14),0 2px 5px rgba(74,57,31,.08),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
#home .home-profile{overflow:visible!important;isolation:isolate;z-index:3}
#home .home-profile img{position:relative;z-index:1;overflow:hidden}
#home .home-profile-edit{
  right:-3px!important;bottom:-3px!important;z-index:8!important;
  width:21px!important;height:21px!important;
  color:#fffdf5!important;background:linear-gradient(180deg,#899758,#697842)!important;
  border:2px solid #fff7e8!important;
  box-shadow:0 5px 10px rgba(63,50,28,.22),inset 0 1px 0 rgba(255,255,255,.36)!important;
  pointer-events:none!important;
}
#home .home-profile-edit svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#tabbar{
  box-shadow:0 -10px 28px rgba(82,63,33,.08),inset 0 1px 0 rgba(255,255,255,.94)!important;
  border-top-color:rgba(162,126,64,.18)!important;
}
#tabbar .tab.active{filter:drop-shadow(0 3px 5px rgba(92,72,37,.08))}

@keyframes softBotanicalModalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:560px){
  #profileSheet,#settingsSheet{padding:max(10px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) 10px max(10px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #profileSheet .sheet-panel,#settingsSheet .sheet-panel{width:100%!important;max-height:calc(100dvh - 20px)!important;border-radius:22px!important;padding:15px 14px calc(15px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #settingsSheet .setting-row{min-height:52px!important;padding:7px 2px!important}
  #profileSheet .profile-avatar-grid{gap:7px!important}
}
@media(prefers-reduced-motion:reduce){#profileSheet .sheet-panel,#settingsSheet .sheet-panel{animation:none!important}}

/* ===== source: softBotanicalStep06JourneySelection ===== */
/* Step 06 — Journey: path-only nodes, selected-level info card, Home-identical bottom nav. */
#home.home-approved-v1.hidden{display:none!important}
#journey.hidden{display:none!important}
#journey:not(.hidden){display:block!important}
#journey:not(.hidden) ~ #tabbar{display:none!important}

#journey{
  padding:0 0 calc(86px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:linear-gradient(180deg,#fbf7ed 0%,#f2e8d6 100%)!important;
  color:#465334!important;
}
#journey>.page-card{
  margin:0!important;padding:0!important;min-height:100svh!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
#journey .journey-map{
  min-height:100svh!important;margin:0!important;
  padding:calc(max(14px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) + 3px) 14px 18px!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.78),transparent 28%),
    linear-gradient(180deg,#fbf7ed,#f3ead9)!important;
}
#journey .map-grid{display:block!important;position:relative!important;min-height:1040px!important}

/* Chapter header */
#journey .journey-soft-head{
  position:relative!important;z-index:5!important;width:100%!important;
  display:grid!important;grid-template-columns:44px 1fr 44px!important;
  gap:10px!important;align-items:center!important;margin:0 0 9px!important;padding:2px 0 8px!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
#journey .journey-nav-btn{
  position:static!important;width:42px!important;height:42px!important;border-radius:50%!important;
  border:1px solid rgba(157,122,63,.32)!important;
  background:linear-gradient(180deg,#fffaf0,#f1e5d0)!important;color:#56643f!important;
  box-shadow:0 6px 15px rgba(88,67,35,.13),inset 0 1px 0 rgba(255,255,255,.95)!important;
  font-size:24px!important;
}
#journey .journey-nav-btn:disabled{opacity:.28!important}
#journey .journey-head-copy{position:static!important;text-align:center!important;padding:0!important;color:#465334!important}
#journey .journey-head-kicker{display:block!important;color:#6f725d!important;font:500 11px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.02em!important;text-transform:none!important}
#journey .journey-head-copy strong{display:block!important;margin:4px 0 0!important;color:#445233!important;font:400 25px/1.05 Georgia,"Times New Roman",serif!important}
#journey .journey-region{display:block!important;margin-top:4px!important;color:#b18847!important;font:500 12px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.03em!important;text-transform:none!important}
#journey .journey-star-score{display:block!important;margin-top:8px!important;color:#6b7651!important;font:700 12px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important}

/* Selected level information. This is the ONLY place that contains level name/copy. */
#journey .journey-selected-card{
  position:relative;z-index:5;display:grid;grid-template-columns:118px minmax(0,1fr) 48px;
  min-height:126px;margin:3px 1px 13px;border-radius:21px;overflow:hidden;
  border:1px solid rgba(154,120,61,.25);
  background:linear-gradient(180deg,#fcf8ee 0%,#f4e9d6 100%);
  box-shadow:0 14px 30px rgba(88,67,35,.11),0 2px 6px rgba(88,67,35,.05),inset 0 1px 0 rgba(255,255,255,.96);
}
#journey .journey-selected-art{
  min-height:126px;background:url("../ui/journey-immersive-01.webp") 61% 17%/235% auto no-repeat;
  border-right:1px solid rgba(151,118,61,.13);
}
#journey .journey-selected-copy{min-width:0;padding:14px 11px 12px;color:#465334}
#journey .journey-selected-copy small{display:block;color:#687156;font:600 10px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif}
#journey .journey-selected-copy h3{margin:5px 0 7px;color:#455235;font:400 18px/1.08 Georgia,"Times New Roman",serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#journey .journey-selected-copy p{margin:0;color:#5f6653;font:11px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#journey .journey-selected-meta{display:flex;align-items:center;gap:7px;margin-top:9px;color:#56623f;font:600 10px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif}
#journey .journey-selected-meta .track{display:block;flex:1;height:6px;border-radius:999px;background:rgba(91,101,62,.14);overflow:hidden}
#journey .journey-selected-meta .track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#708047,#899a59)}
#journey .journey-selected-go{position:relative;border:0;background:transparent;color:#596640;display:grid;place-items:center;cursor:pointer;padding:0}
#journey .journey-selected-go::before{content:"";position:absolute;width:37px;height:37px;border-radius:50%;border:1px solid rgba(157,122,63,.25);background:linear-gradient(180deg,#fffaf0,#f2e7d1);box-shadow:0 5px 13px rgba(88,67,35,.11),inset 0 1px 0 #fff}
#journey .journey-selected-go svg{position:relative;z-index:1;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#journey .journey-selected-go:disabled{cursor:default;color:#8b867a;opacity:.8}
#journey .journey-selected-go:disabled::before{background:linear-gradient(180deg,#eee7db,#dcd2c2);border-color:rgba(121,109,86,.26)}

/* Path stage keeps the source image's real ratio, so coordinates map directly to the visible road. */
#journey .journey-soft-stage{
  position:relative;z-index:2;width:100%;aspect-ratio:941 / 1672;min-height:0!important;height:auto!important;
  border-radius:26px;overflow:hidden;border:1px solid rgba(154,120,61,.20);
  background:url("../ui/journey-immersive-01.webp") 50% 50%/100% 100% no-repeat!important;
  box-shadow:0 16px 34px rgba(87,66,33,.11),inset 0 1px 0 rgba(255,255,255,.72);
}
#journey .journey-soft-stage::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,248,234,.08),transparent 18%,transparent 86%,rgba(244,234,216,.08))}

/* The road contains ONLY numbers + lock icon. */
/* Journey bottom nav = Home bottom nav, one-for-one. */
#journey .journey-bottom-nav{
  position:fixed;left:50%;bottom:0;z-index:80;transform:translateX(-50%);width:min(100%,560px);
  display:grid;grid-template-columns:repeat(4,1fr);height:86px;
  padding:8px 12px calc(7px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  background:linear-gradient(180deg,rgba(251,247,237,.97),rgba(243,233,214,.985));
  border-top:1px solid rgba(143,111,59,.18);box-shadow:0 -10px 28px rgba(75,57,30,.08);backdrop-filter:blur(16px);
}
#journey .journey-bottom-nav .home-nav-item{
  border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  color:#65705a;cursor:pointer;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:10px;min-height:60px;border-radius:15px;
}
#journey .journey-bottom-nav .home-nav-item svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#journey .journey-bottom-nav .home-nav-item.active{color:#56643e;background:rgba(123,139,78,.045)}
#journey .journey-bottom-nav .home-nav-item.active svg{stroke-width:1.9}
#journey .journey-bottom-nav .home-nav-house{width:28px!important;height:28px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important}

@media(max-width:390px){
  #journey .journey-map{padding-left:10px!important;padding-right:10px!important}
  #journey .journey-head-copy strong{font-size:21px!important}
  #journey .journey-selected-card{grid-template-columns:104px minmax(0,1fr) 42px!important}
  #journey .journey-selected-copy{padding:12px 9px 10px!important}
  #journey .journey-selected-copy h3{font-size:16px!important}
    }

/* ===== source: softBotanicalStep07PathDevMode ===== */
/* Step 07 — developer mode overlay. Hidden during normal play. */
#developerBadge{
  display:none;position:fixed;z-index:500;top:calc(10px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)));left:10px;
  min-width:42px;height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(119,93,44,.38);
  background:linear-gradient(180deg,#fff8dc,#e8c96e);color:#5d4a24;
  box-shadow:0 6px 16px rgba(63,47,22,.18),inset 0 1px 0 rgba(255,255,255,.82);
  align-items:center;justify-content:center;font:800 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.08em;cursor:pointer;user-select:none;
}
html[data-dev-mode="on"] #developerBadge{display:flex}
#developerPanel{
  position:fixed;z-index:520;inset:0;display:flex;align-items:center;justify-content:center;
  padding:max(16px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) 14px max(16px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  background:rgba(49,44,34,.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
#developerPanel.hidden{display:none!important}
#developerPanel .dev-card{
  width:min(92vw,420px);padding:18px;border-radius:24px;
  border:1px solid rgba(159,124,64,.34);
  background:linear-gradient(180deg,#fffaf0,#f3e7d1);color:#465334;
  box-shadow:0 28px 70px rgba(55,43,24,.28),inset 0 1px 0 #fff;
}
#developerPanel .dev-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
#developerPanel .dev-head small{display:block;color:#9a7a42;font:800 8px/1.2 system-ui;letter-spacing:.14em;text-transform:uppercase}
#developerPanel .dev-head h3{margin:4px 0 0;font:400 24px/1.05 Georgia,"Times New Roman",serif;color:#455235}
#developerPanel .dev-x{width:36px;height:36px;border-radius:50%;border:1px solid rgba(151,116,58,.24);background:#f8eedb;color:#596346;font-size:20px;cursor:pointer}
#developerPanel .dev-note{margin:0 0 12px;color:#666b58;font:11px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}
#developerPanel .dev-field{display:grid;gap:6px;margin:12px 0}
#developerPanel .dev-field span{font:800 9px/1.2 system-ui;color:#596346}
#developerPanel .dev-field input{height:44px;border-radius:13px;border:1px solid rgba(148,115,58,.28);background:#fffdf7;color:#465334;padding:0 12px;font-size:15px;outline:none}
#developerPanel .dev-field input:focus{border-color:#82904f;box-shadow:0 0 0 3px rgba(126,143,78,.11)}
#developerPanel .dev-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
#developerPanel .dev-btn{min-height:43px;border-radius:13px;border:1px solid rgba(146,112,57,.23);background:#fbf4e6;color:#596346;font:700 11px/1 system-ui;cursor:pointer}
#developerPanel .dev-btn.primary{background:linear-gradient(180deg,#81904f,#697740);border-color:#617038;color:#fffdf7}
#developerPanel .dev-btn.danger{grid-column:1/-1;background:#f7e8df;color:#985c4c;border-color:rgba(166,93,70,.22)}
#developerPanel .dev-shortcut{display:block;margin-top:12px;text-align:center;color:#8a826f;font:9px/1.3 system-ui}

/* ===== source: softBotanicalStep08ChapterThemes ===== */
/* Step 08 — chapter-specific scenic themes. */
#journey{--journey-accent:#807d73;--journey-gold:#bb907d;--journey-scene:url("../ui/journey-immersive-01.webp")}
#journey .journey-region{color:var(--journey-gold)!important}
#journey .journey-star-score{color:var(--journey-accent)!important}
#journey .journey-selected-meta .track i{background:linear-gradient(90deg,var(--journey-accent),color-mix(in srgb,var(--journey-accent) 72%,#d9c899))!important}
#journey .journey-selected-art{background:var(--journey-scene) 50% 42%/cover no-repeat!important}
#journey .journey-soft-stage{background:var(--journey-scene) 50% 50%/100% 100% no-repeat!important}
#journey .journey-selected-card{border-color:color-mix(in srgb,var(--journey-gold) 34%,rgba(154,120,61,.22))!important}
#journey .journey-selected-go{color:var(--journey-accent)!important}
#journey .journey-nav-btn{color:var(--journey-accent)!important;border-color:color-mix(in srgb,var(--journey-gold) 40%,rgba(157,122,63,.25))!important}

/* ===== source: softBotanicalStep09JourneyHUD ===== */
/* STEP 09 — approved premium Journey HUD + first three regional scenes. */
#journey{
  --journey-accent:#72864b;--journey-gold:#c59a58;--journey-petal:#c783a2;
  --journey-scene:url("../ui/journey-immersive-01.webp");
}
#journey .journey-map{padding-top:calc(max(10px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) + 3px)!important}
#journey .map-grid{min-height:1050px!important}

/* One unified top HUD: selected level + chapter identity + play action. */
#journey .journey-premium-hud{
  position:relative;z-index:8;display:grid;grid-template-columns:88px minmax(0,1fr) 132px;
  gap:14px;align-items:center;width:100%;min-height:164px;margin:0 0 13px;padding:15px 15px 14px;
  border:1px solid color-mix(in srgb,var(--journey-gold) 42%,#c9ab78);border-radius:25px;
  background:
    radial-gradient(circle at 8% 10%,rgba(255,255,255,.98),transparent 30%),
    linear-gradient(180deg,rgba(255,251,241,.99),rgba(244,233,211,.99));
  box-shadow:0 18px 38px rgba(70,53,28,.14),0 4px 12px rgba(70,53,28,.07),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(157,121,61,.10);
  overflow:hidden;
}
#journey .journey-premium-hud::after{
  content:"";position:absolute;left:16px;right:16px;top:7px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);pointer-events:none;
}
#journey .journey-hud-flower{
  width:76px;height:76px;border-radius:50%;display:grid;place-items:center;padding:7px;
  background:linear-gradient(180deg,#fffaf0,#efe0c3);border:1px solid color-mix(in srgb,var(--journey-gold) 45%,#d6bd91);
  box-shadow:0 8px 18px rgba(77,57,29,.12),inset 0 1px 0 rgba(255,255,255,.98);
}
#journey .journey-hud-flower img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(75,56,28,.12))}
#journey .journey-hud-level{min-width:0;padding-right:4px}
#journey .journey-hud-kicker{display:block;color:#8a7148;font:700 10px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.035em}
#journey .journey-hud-level h2{margin:4px 0 6px;color:#425033;font:400 25px/1.02 Georgia,"Times New Roman",serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#journey .journey-hud-level p{margin:0;color:#5f6652;font:11px/1.42 system-ui,-apple-system,"Segoe UI",sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#journey .journey-hud-progress{display:flex;align-items:center;gap:8px;margin-top:9px;color:#596542;font:700 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif}
#journey .journey-hud-progress .track{height:7px;flex:1;border-radius:999px;background:rgba(88,97,60,.14);overflow:hidden;box-shadow:inset 0 1px 2px rgba(78,62,38,.10)}
#journey .journey-hud-progress .track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--journey-accent),color-mix(in srgb,var(--journey-accent) 68%,#d8c98d));box-shadow:inset 0 1px 0 rgba(255,255,255,.34)}
#journey .journey-hud-play{
  margin-top:10px;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--journey-accent) 76%,#4f5d38);
  display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#fffdf7;
  background:linear-gradient(180deg,color-mix(in srgb,var(--journey-accent) 83%,#ffffff),var(--journey-accent));
  box-shadow:0 7px 14px color-mix(in srgb,var(--journey-accent) 25%,transparent),inset 0 1px 0 rgba(255,255,255,.30);
  font:800 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;
}
#journey .journey-hud-play svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#journey .journey-hud-play:disabled{cursor:default;filter:grayscale(.65);opacity:.62;box-shadow:none}
#journey .journey-hud-chapter{
  align-self:stretch;min-width:0;padding:6px 2px 5px 14px;border-left:1px solid rgba(145,112,57,.20);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#465334;
}
#journey .journey-hud-chapter small{color:#84775f;font:600 9px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif}
#journey .journey-hud-chapter strong{display:block;margin-top:7px;color:#465334;font:400 17px/1.08 Georgia,"Times New Roman",serif;word-break:normal}
#journey .journey-hud-chapter .hud-rule{width:54px;height:1px;margin:8px 0;background:linear-gradient(90deg,transparent,var(--journey-gold),transparent);opacity:.75}
#journey .journey-hud-chapter-nav{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:2px}
#journey .journey-hud-nav{
  width:28px;height:28px;border-radius:50%;border:1px solid color-mix(in srgb,var(--journey-gold) 40%,#d8c3a1);
  background:linear-gradient(180deg,#fffaf0,#f0e3cc);color:var(--journey-accent);font-size:18px;line-height:1;cursor:pointer;
  box-shadow:0 4px 9px rgba(77,58,30,.09),inset 0 1px 0 #fff;
}
#journey .journey-hud-nav:disabled{opacity:.25;cursor:default}

/* Same road geometry for the first three trial gardens; only scenery/colors change. */
#journey .journey-soft-stage{
  background:var(--journey-scene) 50% 50%/100% 100% no-repeat!important;
  border-color:color-mix(in srgb,var(--journey-gold) 27%,rgba(154,120,61,.20))!important;
  box-shadow:0 18px 38px rgba(68,52,29,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
@media(max-width:390px){
  #journey .journey-premium-hud{grid-template-columns:70px minmax(0,1fr) 102px;gap:9px;min-height:148px;padding:12px 11px;border-radius:21px}
  #journey .journey-hud-flower{width:62px;height:62px;padding:6px}
  #journey .journey-hud-level h2{font-size:20px}
  #journey .journey-hud-level p{font-size:9.6px;line-height:1.36}
  #journey .journey-hud-play{min-height:31px;padding:0 11px;font-size:9px}
  #journey .journey-hud-chapter{padding-left:9px}
  #journey .journey-hud-chapter strong{font-size:14px}
  #journey .journey-hud-chapter small{font-size:7.8px}
  }

/* ===== source: softBotanicalStep10ExactJourneyComposition ===== */
/* STEP 10 — Journey now follows the approved generated compositions.
   HUD lives INSIDE the scenic image. Existing 4-button game navigation stays untouched. */
#journey{padding:0 0 calc(86px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;background:#eee9dd!important}
#journey>.page-card{padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
#journey .journey-map{padding:0!important;margin:0!important;background:transparent!important;min-height:0!important}
#journey .map-grid{display:block!important;position:relative!important;min-height:0!important;width:100%!important}
#journey .journey-immersive-stage{
  --journey-bg:url("../ui/journey-immersive-01.webp");
  position:relative;width:100%;aspect-ratio:941/1672;min-height:0;overflow:hidden;container-type:inline-size;
  background:var(--journey-bg) center top/100% 100% no-repeat;
  border-radius:0 0 24px 24px;
  box-shadow:0 14px 34px rgba(61,48,27,.13),inset 0 1px 0 rgba(255,255,255,.6);
}
#journey .journey-scene-image{
  position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block;
  object-fit:fill;pointer-events:none;user-select:none;-webkit-user-drag:none;
}
/* opaque card deliberately covers the reference image's baked HUD and recreates it as live UI */
#journey .journey-premium-hud{
  position:absolute!important;z-index:20!important;top:clamp(12px,3.8vw,22px)!important;
  left:clamp(14px,5.6vw,34px)!important;right:clamp(14px,5.6vw,34px)!important;
  width:auto!important;min-height:clamp(128px,27vw,154px)!important;margin:0!important;
  display:grid!important;grid-template-columns:clamp(58px,15vw,86px) minmax(0,1fr) clamp(88px,23vw,132px)!important;
  gap:clamp(8px,2.1vw,14px)!important;align-items:center!important;padding:clamp(11px,2.8vw,16px)!important;
  border-radius:clamp(20px,5vw,28px)!important;
  border:1px solid color-mix(in srgb,var(--journey-gold) 55%,#d7bf94)!important;
  background:linear-gradient(180deg,rgba(255,251,242,.995),rgba(244,233,212,.995))!important;
  box-shadow:0 18px 38px rgba(68,51,27,.17),0 3px 10px rgba(68,51,27,.08),inset 0 1px 0 #fff!important;
  overflow:hidden!important;
}
#journey .journey-premium-hud::after{content:"";position:absolute;inset:7px 12px auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);pointer-events:none}
#journey .journey-hud-flower{width:clamp(58px,14vw,78px)!important;height:clamp(58px,14vw,78px)!important;padding:6px!important;border-radius:50%!important;background:rgba(255,249,236,.92)!important;border:1px solid color-mix(in srgb,var(--journey-gold) 50%,#d8be8f)!important;box-shadow:0 7px 17px rgba(76,57,30,.11),inset 0 1px 0 #fff!important}
#journey .journey-hud-flower img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 5px 7px rgba(70,52,27,.10))!important}
#journey .journey-hud-level{min-width:0!important}
#journey .journey-hud-kicker{font:700 clamp(8px,1.9vw,10px)/1.15 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#8a7148!important}
#journey .journey-hud-level h2{margin:3px 0 5px!important;font:400 clamp(18px,4.7vw,27px)/1.02 Georgia,"Times New Roman",serif!important;color:#40502f!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#journey .journey-hud-level p{margin:0!important;font:clamp(8.5px,2vw,11px)/1.35 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#5b6350!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
#journey .journey-hud-progress{margin-top:7px!important;gap:7px!important;font-size:clamp(8px,1.8vw,10px)!important}
#journey .journey-hud-progress .track{height:6px!important;background:rgba(87,97,60,.15)!important}
#journey .journey-hud-play{margin-top:8px!important;min-height:30px!important;padding:0 13px!important;font-size:clamp(8px,1.8vw,10px)!important}
#journey .journey-hud-chapter{padding-left:clamp(7px,2vw,13px)!important;border-left:1px solid rgba(145,112,57,.20)!important}
#journey .journey-hud-chapter small{font-size:clamp(7px,1.65vw,9px)!important}
#journey .journey-hud-chapter strong{font:400 clamp(13px,3.5vw,19px)/1.08 Georgia,"Times New Roman",serif!important}
#journey .journey-hud-chapter .hud-rule{margin:6px 0!important}
#journey .journey-hud-nav{width:27px!important;height:27px!important}

/* Real interactive nodes. Only number + lock. No cards, labels, status copy. */
/* Keep the game's CURRENT bottom menu; don't imitate the concept-image nav. */
#journey .journey-bottom-nav{z-index:90!important}
@media(max-width:390px){
  #journey .journey-premium-hud{grid-template-columns:58px minmax(0,1fr) 88px!important;gap:7px!important;padding:10px!important;min-height:126px!important;left:12px!important;right:12px!important;border-radius:20px!important}
  #journey .journey-hud-level p{-webkit-line-clamp:2!important}
  #journey .journey-hud-play{min-height:28px!important;padding:0 10px!important}
}

/* ===== source: softBotanicalStep11MobileRebuild ===== */
/* STEP 11 — dedicated mobile geometry. No desktop proportions leaking into phones. */
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:560px){
  #home.home-approved-v1{
    width:100%!important;min-height:100dvh!important;
    padding:calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 12px) 14px calc(92px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    gap:10px!important;
  }
  #home .home-approved-head{grid-template-columns:50px 1fr 50px!important;min-height:54px!important}
  #home .home-profile{width:48px!important;height:48px!important;padding:3px!important}
  #home .home-approved-settings{width:42px!important;height:42px!important}
  #home .home-approved-brand{font-size:23px!important}
  #home .home-approved-flourish{margin-top:4px!important;height:12px!important}
  #home .home-approved-flourish .botanical-flourish-svg{width:62px!important;height:12px!important}
  #home .home-approved-greeting{padding:0 2px!important}
  #home .home-approved-greeting h1{font-size:26px!important;line-height:1.05!important}
  #home .home-approved-greeting p{font-size:12px!important;margin-top:4px!important}

  #home .home-approved-resume{
    flex:0 0 236px!important;min-height:236px!important;height:236px!important;
    border-radius:20px!important;
  }
  #home .home-approved-resume-art{width:52%!important;height:100%!important;right:0!important}
  #home .home-approved-resume-art::after{background:linear-gradient(90deg,#fbf6e9 0%,rgba(251,246,233,.96) 20%,rgba(251,246,233,.55) 48%,rgba(251,246,233,.02) 74%)!important}
  #home .home-approved-resume-copy{
    width:58%!important;padding:22px 4px 60px 16px!important;overflow:hidden!important;
  }
  #home .home-approved-kicker{font-size:11px!important;margin-bottom:6px!important}
  #home .home-approved-resume h2{
    max-width:152px!important;font-size:24px!important;line-height:1.02!important;
    display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  #home .home-approved-rule{width:58px!important;height:12px!important;margin:6px 0!important}
  #home .home-approved-rule .botanical-flourish-svg{width:58px!important;height:12px!important}
  #home .home-approved-resume p{
    max-width:158px!important;font-size:10.5px!important;line-height:1.38!important;
    display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  #home .home-approved-progress{margin-top:8px!important;gap:6px!important;font-size:10px!important}
  #home .home-approved-progress-track{width:76px!important;height:6px!important}
  #home .home-approved-continue{
    left:12px!important;right:12px!important;bottom:10px!important;height:42px!important;min-height:42px!important;
    padding:0 40px!important;border-radius:999px!important;
  }
  #home .home-approved-continue b{font-size:16px!important}
  #home .home-approved-next{width:28px!important;height:28px!important;right:10px!important;font-size:21px!important}

  #home .home-approved-feature-row{gap:9px!important;flex:0 0 148px!important;height:148px!important}
  #home .home-approved-feature{height:148px!important;min-height:148px!important;padding:13px 11px!important;border-radius:18px!important}
  #home .home-approved-feature h3{font-size:17px!important;line-height:1.05!important}
  #home .home-approved-feature p{max-width:60%!important;font-size:10px!important;line-height:1.28!important;margin-top:7px!important}
  #home .home-approved-daily .home-approved-flower-art{width:70px!important;height:70px!important;right:4px!important;bottom:8px!important}
  #home .home-approved-bouquet{width:96px!important;height:92px!important;right:-2px!important;bottom:3px!important;transform:none!important}
  #home .bouquet-violet{width:72px!important;height:72px!important;right:0!important;bottom:15px!important}
  #home .bouquet-gold{width:58px!important;height:58px!important;right:46px!important;bottom:0!important}
  #home .home-approved-time{left:10px!important;bottom:9px!important;max-width:92px!important}
  #home .home-approved-time>span{font-size:18px!important}
  #home .home-approved-time small{font-size:7px!important}
  #home .home-approved-time b{font-size:10px!important}
  #home .home-approved-gift{left:10px!important;bottom:9px!important;width:29px!important;height:29px!important}

  #home .home-approved-summary{grid-template-columns:94px 1fr!important;flex:0 0 126px!important;min-height:126px!important;height:126px!important;border-radius:18px!important}
  #home .home-approved-summary>img{width:94px!important;height:100%!important}
  #home .home-approved-summary-body{padding:10px 7px 7px!important}
  #home .home-approved-summary h3{font-size:17px!important;margin-bottom:8px!important}
  #home .home-approved-summary-stats{height:77px!important}
  #home .home-approved-summary-stats span{grid-template-rows:19px 20px 1fr!important;padding:0 2px!important}
  #home .summary-stat-icon{width:17px!important;height:17px!important}
  #home .summary-stat-icon svg{width:16px!important;height:16px!important}
  #home .home-approved-summary-stats small{font-size:7.5px!important;line-height:1.05!important}
  #home .home-approved-summary-stats b{font-size:18px!important}
  #home .home-bottom-nav{height:78px!important;padding:6px 8px calc(5px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #home .home-nav-item{min-height:56px!important;font-size:9px!important;gap:3px!important}
  #home .home-nav-item svg{width:24px!important;height:24px!important}

  /* Journey: keep image and nodes in exactly the same coordinate space. */
  #journey{padding-bottom:calc(78px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #journey .journey-immersive-stage{
    width:100%!important;aspect-ratio:941/1672!important;background-size:100% 100%!important;background-position:0 0!important;
    border-radius:0 0 20px 20px!important;
  }
  #journey .journey-premium-hud{
    top:10px!important;left:10px!important;right:10px!important;min-height:118px!important;
    grid-template-columns:54px minmax(0,1fr) 82px!important;gap:6px!important;padding:9px!important;border-radius:19px!important;
  }
  #journey .journey-hud-flower{width:52px!important;height:52px!important;padding:5px!important}
  #journey .journey-hud-level h2{font-size:19px!important;margin:2px 0 4px!important}
  #journey .journey-hud-level p{font-size:8.5px!important;line-height:1.3!important;-webkit-line-clamp:2!important}
  #journey .journey-hud-progress{margin-top:5px!important;font-size:8px!important;gap:5px!important}
  #journey .journey-hud-play{margin-top:6px!important;min-height:27px!important;padding:0 10px!important;font-size:8.5px!important}
  #journey .journey-hud-chapter{padding-left:6px!important}
  #journey .journey-hud-chapter strong{font-size:14px!important}
  #journey .journey-hud-chapter small{font-size:7px!important}
  #journey .journey-hud-nav{width:25px!important;height:25px!important}

  /* Smaller markers expose the road instead of covering it. */
  #journey .journey-bottom-nav{height:78px!important}
}

/* ===== source: softBotanicalStep121JourneyCleanup ===== */
/* STEP 12.1 — remove Journey gap + suppress baked node/lock artwork in 4–6. */
#journey{padding-bottom:0!important;}
#journey .journey-baked-node-cleaner{
  position:absolute;left:var(--jx);top:var(--jy);transform:translate(-50%,-50%);
  z-index:11;pointer-events:none;width:clamp(58px,13vw,74px);height:clamp(58px,13vw,74px);
  border-radius:50%;
  background:rgba(235,226,208,.24);
  -webkit-backdrop-filter:blur(11px) saturate(.72);
  backdrop-filter:blur(11px) saturate(.72);
  -webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0 52%,rgba(0,0,0,.92) 63%,rgba(0,0,0,.45) 78%,transparent 100%);
  mask-image:radial-gradient(circle at 50% 50%,#000 0 52%,rgba(0,0,0,.92) 63%,rgba(0,0,0,.45) 78%,transparent 100%);
}
/* Baked lock badges sit slightly lower/right than the circle; extend the cleanup there. */
#journey .journey-baked-node-cleaner::after{
  content:"";position:absolute;right:-7%;bottom:-6%;width:38%;height:38%;border-radius:50%;
  background:rgba(235,226,208,.44);
  -webkit-backdrop-filter:blur(8px) saturate(.7);backdrop-filter:blur(8px) saturate(.7);
  -webkit-mask-image:radial-gradient(circle,#000 0 55%,rgba(0,0,0,.72) 74%,transparent 100%);
  mask-image:radial-gradient(circle,#000 0 55%,rgba(0,0,0,.72) 74%,transparent 100%);
}
@media(max-width:560px){
  /* Fixed nav overlays the scenic stage; stage itself fills the visible phone height. */
  #journey{min-height:100dvh!important;padding-bottom:0!important;}
  #journey>.page-card,#journey .journey-map,#journey .map-grid{min-height:calc(100dvh - 78px - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;}
  #journey .journey-immersive-stage{
    width:100%!important;height:calc(100dvh - 78px - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    min-height:calc(100dvh - 78px - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;aspect-ratio:auto!important;
    background-size:100% 100%!important;background-position:0 0!important;border-radius:0!important;
  }
  #journey .journey-baked-node-cleaner{width:56px;height:56px;}
  #journey .journey-bottom-nav{height:78px!important;}
}

/* ===== source: softBotanicalStep14HDJourneyAssets ===== */
/* STEP 14 — chapters 7–21 now use individual 941×1672 HD scene exports.
   No contact-sheet crops, baked HUD, node numbers or locks are used. */
#journey[data-journey-theme="07"] .journey-immersive-stage,
#journey[data-journey-theme="08"] .journey-immersive-stage,
#journey[data-journey-theme="09"] .journey-immersive-stage,
#journey[data-journey-theme="10"] .journey-immersive-stage,
#journey[data-journey-theme="11"] .journey-immersive-stage,
#journey[data-journey-theme="12"] .journey-immersive-stage,
#journey[data-journey-theme="13"] .journey-immersive-stage,
#journey[data-journey-theme="14"] .journey-immersive-stage,
#journey[data-journey-theme="15"] .journey-immersive-stage,
#journey[data-journey-theme="16"] .journey-immersive-stage,
#journey[data-journey-theme="17"] .journey-immersive-stage,
#journey[data-journey-theme="18"] .journey-immersive-stage,
#journey[data-journey-theme="19"] .journey-immersive-stage,
#journey[data-journey-theme="20"] .journey-immersive-stage,
#journey[data-journey-theme="21"] .journey-immersive-stage{image-rendering:auto;}

/* ===== source: softBotanicalStep15CleanJourney1to6 ===== */
/* STEP 15 — chapters 1–6 use clean 941×1672 scene art with no baked HUD/nodes/locks.
   All Journey markers share one size system; obsolete mask layer is disabled. */
#journey .journey-baked-node-cleaner{display:none!important}
@media(max-width:560px){
  }

/* ===== YOLCULUK DÜĞÜMLERİ — sahneyle uyumlu ===== 
   Önceki hâl düz beyaz bir daireydi ve illüstrasyonun üstünde yama gibi
   duruyordu. Yeni tasarım sahnenin diline uyuyor: fildişi cam yüzey, ince
   altın çerçeve, yaprak üstünde duruyormuş gibi yumuşak gölge. Boyut sahne
   genişliğine oranlı (cqw), yani her ekranda aynı görünüyor. */
#journey .journey-soft-node{
  position:absolute;left:var(--jx);top:var(--jy);transform:translate(-50%,-50%);
  z-index:3;display:grid;place-items:center;padding:0;border:0;background:transparent;
  width:clamp(42px,14.5cqw,74px)!important;height:clamp(42px,14.5cqw,74px)!important;
  cursor:pointer;-webkit-tap-highlight-color:transparent;
}
/* Zeminden ayırmak için çok hafif bir dış hale — sahne karanlıksa okunur kalır */
/* Tamamlanan: yaprak yeşili dolgu, altın kenar */
/* Seçili: altın halka + yumuşak parıltı */
/* Kilitli: geri çekilmiş ama okunur */
/* Kilit rozeti: daireye oturan küçük madalyon */
/* Tamamlanan bölümlerde küçük altın tik */
/* ===== YOLCULUK: sahne alt menüyle çakışmasın =====
   Sahne oranı sabit ve uzun (941/1672). Kısa ekranlarda alt kenarı
   .journey-bottom-nav çubuğunun altında kalıyor, 1. bölüm düğümüne basmak
   imkânsız hâle geliyordu. Sayfaya çubuk kadar alt boşluk veriyoruz. */
#journey{
  padding-bottom: calc(var(--journey-nav-h, 78px) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)) + 12px)!important;
}


/* Düğüm boyutu, sahnedeki yola göre üç kademe.
   Yol dar olduğunda büyük daireler taşıyor, geniş meydanda küçükler kayboluyordu;
   boyut artık koordinatın üçüncü değeriyle sahne başına seçilebiliyor. */
#journey .journey-soft-node[data-size="s"]{
  width:clamp(34px,10.5cqw,54px)!important;height:clamp(34px,10.5cqw,54px)!important;
}
#journey .journey-soft-node[data-size="l"]{
  width:clamp(50px,18.5cqw,92px)!important;height:clamp(50px,18.5cqw,92px)!important;
}
#journey .journey-soft-node[data-size="s"] .journey-soft-circle{
  width:clamp(28px,8.6cqw,45px)!important;height:clamp(28px,8.6cqw,45px)!important;
  font-size:clamp(12px,3.4cqw,18px)!important;
}
#journey .journey-soft-node[data-size="l"] .journey-soft-circle{
  width:clamp(41px,15.2cqw,76px)!important;height:clamp(41px,15.2cqw,76px)!important;
  font-size:clamp(17px,5.6cqw,28px)!important;
}


/* Perspektifli düğüm: taban boyut sahne genişliğine oranlı, üstüne y konumundan
   gelen ölçek çarpanı biniyor. Yol yukarı daraldıkça düğümler de küçülüyor. */
#journey .journey-soft-node[data-size="auto"]{
  --node-base: clamp(46px, 16.5cqw, 86px);
  width: calc(var(--node-base) * var(--node-scale, 1))!important;
  height: calc(var(--node-base) * var(--node-scale, 1))!important;
}
#journey .journey-soft-node[data-size="auto"] .journey-soft-circle{
  width:86%!important;height:86%!important;
  font-size: calc(clamp(17px, 5.6cqw, 30px) * var(--node-scale, 1))!important;
}


/* ===== YOLCULUK DÜĞÜMLERİ — camsı madalyon =====
   Önceki hâl dolu krem bir daireydi ve zengin sahnelerin üstünde yamalı
   duruyordu. Yeni hâl sahneye gömülüyor: arkası hafif bulanık ve yarı saydam,
   böylece altındaki ışık ve renk düğümün içinden geçiyor. Kenar ince altın,
   gölge yumuşak ve geniş — yüzeyde duran bir cam madalyon hissi. */
#journey .journey-soft-circle{
  position:relative;display:grid;place-items:center;border-radius:50%;
  color:#4f4626;letter-spacing:.005em;
  font-family:Georgia,"Times New Roman",serif!important;font-weight:500!important;
  background:
    radial-gradient(130% 130% at 30% 22%, rgba(255,255,255,.62), rgba(255,252,244,.34) 42%, rgba(250,242,224,.22) 100%);
  -webkit-backdrop-filter:blur(3px) saturate(1.15);
  backdrop-filter:blur(3px) saturate(1.15);
  border:1px solid rgba(255,246,222,.72);
  box-shadow:
    0 1px 0 rgba(255,255,255,.85) inset,
    0 -8px 16px rgba(120,92,44,.14) inset,
    0 6px 14px rgba(48,36,16,.26),
    0 1px 3px rgba(48,36,16,.20);
  text-shadow:0 1px 0 rgba(255,255,255,.75);
  transition:transform .18s cubic-bezier(.34,1.4,.64,1), box-shadow .18s ease, border-color .18s ease;
}
/* Zeminden ayıran çok yumuşak bir hale — koyu sahnelerde okunurluk için */
#journey .journey-soft-node::before{
  content:"";position:absolute;inset:-14%;border-radius:50%;z-index:-1;
  background:radial-gradient(circle, rgba(20,14,4,.20), rgba(20,14,4,0) 70%);
  pointer-events:none;
}
#journey .journey-soft-node:active .journey-soft-circle{transform:scale(.94)}

/* Tamamlanan: yaprak yeşili cam, altın kenar */
#journey .journey-soft-node.done .journey-soft-circle{
  background:
    radial-gradient(130% 130% at 30% 22%, rgba(190,214,150,.72), rgba(126,155,86,.55) 48%, rgba(96,122,62,.48) 100%);
  border-color:rgba(226,204,150,.8);color:#f7f8ee;
  text-shadow:0 1px 2px rgba(30,40,14,.55);
  box-shadow:
    0 1px 0 rgba(255,255,255,.4) inset,
    0 -8px 16px rgba(32,46,14,.32) inset,
    0 6px 14px rgba(34,44,16,.32);
}
/* Mevcut bölüm: altın halka, hafif nefes alan parıltı */
#journey .journey-soft-node.selected .journey-soft-circle,
#journey .journey-soft-node.current .journey-soft-circle{
  border-color:rgba(232,196,116,.95);
  box-shadow:
    0 0 0 2px rgba(232,196,116,.42),
    0 0 20px rgba(232,196,116,.40),
    0 1px 0 rgba(255,255,255,.8) inset,
    0 7px 16px rgba(48,36,16,.28);
  transform:scale(1.05);
}
/* Kilitli: daha saydam, geri çekilmiş */
#journey .journey-soft-node.locked .journey-soft-circle{
  background:radial-gradient(130% 130% at 30% 22%, rgba(255,255,255,.34), rgba(240,232,214,.20) 100%);
  border-color:rgba(255,246,222,.42);color:rgba(70,62,38,.72);
  box-shadow:0 4px 10px rgba(48,36,16,.20), 0 1px 0 rgba(255,255,255,.5) inset;
}
#journey .journey-soft-node.locked{cursor:default}
#journey .journey-soft-node.locked::before{opacity:.5}

/* ===== source: softBotanicalStep21GroundMedallionNodes ===== */
/* STEP 22 — QUIET INLAID PATH MARKERS.
   Visual-only override. Coordinates, progression, chapter data, HUD and navigation stay untouched.
   The clickable wrapper keeps its original size; the visible marker is deliberately smaller and
   matte so it reads as a marker embedded in the path instead of a floating UI button. */
#journey .journey-soft-node{
  isolation:isolate;
  overflow:visible;
  filter:none;
}

/* Small contact shadow: enough to anchor the marker to the stone, never a floating halo. */
#journey .journey-soft-node::before{
  content:"";
  position:absolute;
  left:50%;
  top:59%;
  width:58%;
  height:16%;
  inset:auto;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,
    rgba(53,43,26,.20) 0%,
    rgba(53,43,26,.11) 48%,
    rgba(53,43,26,0) 78%);
  filter:blur(1.8px);
  opacity:.55;
  z-index:-2;
  pointer-events:none;
}

/* Number stays upright. The actual inlaid plate is the pseudo-element below it. */
#journey .journey-soft-circle{
  width:100%!important;
  height:100%!important;
  position:relative;
  display:grid;
  place-items:center;
  border:0!important;
  border-radius:50%;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  color:color-mix(in srgb,var(--journey-accent) 52%,#4c4432)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:calc(clamp(14px,4.15cqw,23px) * var(--node-scale,1))!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
  text-shadow:0 1px 0 rgba(255,255,255,.72)!important;
  transition:transform .16s ease,filter .16s ease!important;
  z-index:1;
}

/* Matte ceramic/stone insert. Smaller than the hit area and only mildly foreshortened. */
#journey .journey-soft-circle::before{
  content:"";
  position:absolute;
  left:50%;
  top:53%;
  width:74%;
  height:64%;
  border-radius:50%;
  transform:translate(-50%,-50%) perspective(220px) rotateX(38deg);
  transform-origin:50% 50%;
  background:linear-gradient(160deg,
    rgba(255,253,244,.93) 0%,
    rgba(247,240,221,.92) 48%,
    rgba(225,210,179,.91) 100%);
  border:1px solid color-mix(in srgb,var(--journey-gold) 47%,#d8c8a4);
  box-shadow:
    0 1px 0 rgba(255,255,255,.78) inset,
    0 -2px 3px rgba(102,78,42,.08) inset,
    0 2px 3px rgba(55,43,25,.15);
  z-index:-1;
  pointer-events:none;
}

/* Very thin inner hairline. No glossy sweep. */
#journey .journey-soft-circle::after{
  content:"";
  position:absolute;
  left:50%;
  top:53%;
  width:64%;
  height:53%;
  border-radius:50%;
  transform:translate(-50%,-50%) perspective(220px) rotateX(38deg);
  border:1px solid rgba(255,255,255,.42);
  background:transparent;
  z-index:-1;
  pointer-events:none;
}

#journey .journey-soft-node:active .journey-soft-circle{
  transform:translateY(.5px) scale(.985)!important;
}

/* Completed: muted botanical enamel, still matte and restrained. */
#journey .journey-soft-node.done .journey-soft-circle{
  color:rgba(255,253,243,.96)!important;
  text-shadow:0 1px 1px rgba(29,42,20,.48)!important;
}
#journey .journey-soft-node.done .journey-soft-circle::before{
  background:linear-gradient(160deg,
    color-mix(in srgb,var(--journey-accent) 64%,#c8d0ad) 0%,
    color-mix(in srgb,var(--journey-accent) 83%,#7e8b67) 58%,
    color-mix(in srgb,var(--journey-accent) 92%,#566247) 100%);
  border-color:color-mix(in srgb,var(--journey-gold) 58%,#dbc994);
  box-shadow:
    0 1px 0 rgba(255,255,255,.32) inset,
    0 -2px 4px rgba(28,42,18,.13) inset,
    0 2px 3px rgba(38,48,24,.16);
}

/* Selected/current: only a slightly larger marker and a fine gold rim. */
#journey .journey-soft-node.selected .journey-soft-circle,
#journey .journey-soft-node.current .journey-soft-circle{
  transform:none!important;
  filter:none!important;
  font-weight:700!important;
}
#journey .journey-soft-node.selected .journey-soft-circle::before,
#journey .journey-soft-node.current .journey-soft-circle::before{
  width:80%;
  height:69%;
  border:1.5px solid color-mix(in srgb,var(--journey-gold) 82%,#f5dfaa);
  box-shadow:
    0 0 0 1.5px color-mix(in srgb,var(--journey-gold) 24%,transparent),
    0 1px 0 rgba(255,255,255,.82) inset,
    0 -2px 3px rgba(102,78,42,.08) inset,
    0 2px 4px rgba(55,43,25,.17);
}
#journey .journey-soft-node.selected::before,
#journey .journey-soft-node.current::before{
  width:64%;
  height:18%;
  opacity:.68;
  background:radial-gradient(ellipse at center,
    color-mix(in srgb,var(--journey-gold) 22%,rgba(76,56,23,.15)) 0%,
    rgba(61,43,16,.08) 52%,transparent 80%);
}

/* Locked: same material, simply cooler and quieter. */
#journey .journey-soft-node.locked .journey-soft-circle{
  color:rgba(75,70,58,.70)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.68)!important;
}
#journey .journey-soft-node.locked .journey-soft-circle::before{
  background:linear-gradient(160deg,
    rgba(251,249,240,.86),
    rgba(232,226,211,.84) 58%,
    rgba(204,197,180,.82));
  border-color:rgba(195,180,151,.74);
  box-shadow:
    0 1px 0 rgba(255,255,255,.62) inset,
    0 -2px 3px rgba(80,69,49,.07) inset,
    0 2px 3px rgba(49,41,26,.12);
}
#journey .journey-soft-node.locked::before{opacity:.42!important}

/* Tiny lock pin; it should never compete with the level number. */
#journey .journey-lock-badge{
  position:absolute;
  right:11%;
  bottom:19%;
  width:18%;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:rgba(93,81,52,.82);
  background:rgba(246,238,214,.94);
  border:1px solid rgba(184,160,111,.60);
  box-shadow:0 1px 2px rgba(58,45,24,.15),0 1px 0 rgba(255,255,255,.72) inset;
  transform:none;
  z-index:4;
  pointer-events:none;
}
#journey .journey-lock-badge svg{
  width:53%;height:53%;
  fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
}

/* Manual calibration sizes use the same visual language. */
#journey .journey-soft-node[data-size="s"] .journey-soft-circle{font-size:clamp(11px,3.15cqw,17px)!important}
#journey .journey-soft-node[data-size="m"] .journey-soft-circle{font-size:clamp(13px,3.75cqw,21px)!important}
#journey .journey-soft-node[data-size="l"] .journey-soft-circle{font-size:clamp(15px,4.35cqw,25px)!important}
#journey .journey-soft-node[data-size="auto"] .journey-soft-circle{
  width:100%!important;height:100%!important;
  font-size:calc(clamp(14px,4.15cqw,23px) * var(--node-scale,1))!important;
}

@media(max-width:560px){
  #journey .journey-soft-circle::before{transform:translate(-50%,-50%) perspective(190px) rotateX(39deg)}
  #journey .journey-soft-circle::after{transform:translate(-50%,-50%) perspective(190px) rotateX(39deg)}
  #journey .journey-soft-node::before{filter:blur(1.4px)}
}

/* ===== source: dailyFlowerPremiumV017 ===== */
/* v0.1.7 — Daily Flower editorial redesign. Keeps existing Daily game logic intact. */
body.daily-active{
  background:#f2eadc!important;
}
#daily{
  min-height:100dvh!important;
  padding:15px 10px calc(26px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  color:#3f4934!important;
  background:
    radial-gradient(circle at 8% 4%,rgba(255,255,255,.92),transparent 26%),
    radial-gradient(circle at 94% 22%,rgba(165,151,107,.12),transparent 30%),
    linear-gradient(180deg,#f7f1e7 0%,#eee4d3 100%)!important;
}
#daily::before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.28;z-index:0;
  background-image:radial-gradient(circle at 20% 30%,rgba(110,101,73,.17) 0 1px,transparent 1.3px),radial-gradient(circle at 74% 62%,rgba(255,255,255,.65) 0 1px,transparent 1.4px);
  background-size:19px 19px,27px 27px;mix-blend-mode:multiply;
}
#daily .daily-flower-shell{
  position:relative;z-index:1;width:min(100%,520px)!important;margin:0 auto!important;padding:0!important;
  border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
body.daily-active #tabbar{display:none!important}
#daily .daily-topbar{height:58px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin:0 4px 10px}
#daily .daily-topbar-btn{width:42px;height:42px;border-radius:50%;border:1px solid rgba(151,120,69,.25);background:rgba(250,244,232,.82);color:#4e573e;display:grid;place-items:center;box-shadow:0 6px 13px rgba(87,68,39,.09),inset 0 1px 0 #fff;cursor:pointer}
#daily .daily-topbar-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#daily .daily-topbar-brand{text-align:center;color:#46513a;font:400 21px/1 Georgia,"Times New Roman",serif;letter-spacing:-.01em}
#daily .daily-topbar-brand>span{display:block;width:44px;height:11px;margin:4px auto 0;color:#b38850}
#daily .daily-topbar-brand svg{display:block;width:44px;height:10px;fill:none;stroke:currentColor;stroke-width:1.05}
#daily .daily-flower-card{
  position:relative;border-radius:26px;padding:5px;
  border:1px solid rgba(151,120,69,.28);
  background:linear-gradient(145deg,rgba(255,253,247,.95),rgba(242,232,216,.97));
  box-shadow:0 16px 38px rgba(90,72,43,.13),inset 0 1px 0 rgba(255,255,255,.92);
}
#daily .daily-flower-card::before,#daily .daily-flower-card::after{
  content:"";position:absolute;pointer-events:none;border:1px solid rgba(170,132,78,.24);border-radius:22px;
}
#daily .daily-flower-card::before{inset:8px}
#daily .daily-flower-card::after{inset:12px;border-color:rgba(188,155,106,.12)}
#daily .daily-flower-card-inner{position:relative;z-index:1;padding:27px 24px 22px}
#daily .daily-flower-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
#daily .daily-flower-title-block{min-width:0;padding-top:5px}
#daily .daily-kicker{
  display:block;margin:0 0 5px!important;color:#424a38!important;font:500 14px/1.2 Georgia,"Times New Roman",serif!important;
  text-transform:none!important;letter-spacing:.01em!important;text-shadow:none!important;
}
#daily #dailyFlowerName{
  margin:0;color:#405033;font:400 clamp(35px,9vw,48px)/1 Georgia,"Times New Roman",serif;letter-spacing:-.025em;
}
#daily .daily-calendar-card{
  flex:0 0 82px;overflow:hidden;border-radius:14px;border:1px solid rgba(153,121,71,.25);
  background:rgba(250,244,232,.84);box-shadow:0 7px 15px rgba(93,74,43,.08),inset 0 1px 0 #fff;
  text-align:center;color:#494d3d;font-family:Georgia,"Times New Roman",serif;
}
#daily .daily-calendar-card span,#daily .daily-calendar-card small{display:block;padding:7px 5px;font-size:12px;line-height:1}
#daily .daily-calendar-card span{border-bottom:1px solid rgba(153,121,71,.18)}
#daily .daily-calendar-card strong{display:block;padding:5px 4px 3px;font-size:30px;line-height:1;font-weight:400}
#daily .daily-calendar-card small{border-top:1px solid rgba(153,121,71,.14);font-size:10px}
#daily .daily-flower-visual{
  position:relative;height:260px;margin:2px 0 0;display:grid;place-items:center;isolation:isolate;
}
#daily .daily-flower-cluster{position:relative;width:260px;height:226px;display:grid;place-items:center}
#daily [data-daily-feature-art]{position:absolute;object-fit:contain;filter:drop-shadow(0 12px 12px rgba(72,55,39,.18))}
#daily #dailyFlowerArt{z-index:2;width:178px;height:178px;transform:translateY(-2px)}
#daily .daily-flower-copy.side{z-index:1;width:116px;height:116px;opacity:.94}
#daily .daily-flower-copy.left{left:5px;bottom:22px;transform:rotate(-17deg)}
#daily .daily-flower-copy.right{right:5px;bottom:22px;transform:rotate(17deg)}
#daily .daily-petal{position:absolute;width:16px;height:8px;border-radius:100% 0 100% 0;background:linear-gradient(135deg,#c6aa78,#8d875d);opacity:.8;filter:drop-shadow(0 3px 3px rgba(68,52,75,.14))}
#daily .daily-petal.p1{left:13%;top:34%;transform:rotate(-28deg)}
#daily .daily-petal.p2{right:14%;top:46%;transform:rotate(28deg) scale(.86)}
#daily .daily-petal.p3{left:17%;bottom:19%;transform:rotate(36deg) scale(.8)}
#daily .daily-petal.p4{right:20%;bottom:14%;transform:rotate(-40deg) scale(.66)}
#daily .daily-diff{
  display:table;margin:-5px auto 10px!important;padding:5px 10px!important;border-radius:999px;
  background:rgba(101,113,70,.07)!important;border:1px solid rgba(101,113,70,.11)!important;
  color:#6d745b!important;font:700 8.5px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  text-transform:uppercase;letter-spacing:.08em;text-shadow:none!important;
}
#daily .daily-flower-description{
  max-width:380px;margin:0 auto;color:#4e5143;text-align:center;font:400 13.5px/1.55 Georgia,"Times New Roman",serif;
}
#daily .daily-ornament{display:flex;align-items:center;justify-content:center;gap:8px;margin:14px auto 11px;color:#b88a45}
#daily .daily-ornament span{width:58px;height:1px;background:linear-gradient(90deg,transparent,rgba(175,129,61,.52))}
#daily .daily-ornament span:last-child{transform:scaleX(-1)}
#daily .daily-ornament i{font:400 12px/1 Georgia,serif}
#daily .daily-reward h3{margin:0 0 10px;text-align:center;color:#555746;font:400 14px/1.2 Georgia,"Times New Roman",serif}
#daily .daily-reward-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:330px;margin:auto}
#daily .daily-reward-item{position:relative;display:grid;justify-items:center;gap:3px;padding:0 11px;color:#4c503e}
#daily .daily-reward-item+ .daily-reward-item::before{content:"";position:absolute;left:0;top:6px;bottom:7px;width:1px;background:rgba(139,112,72,.13)}
#daily .daily-reward-item b{font:400 17px/1 Georgia,"Times New Roman",serif}
#daily .daily-reward-item small{font:600 7px/1 system-ui;color:#8a806c;letter-spacing:.06em;text-transform:uppercase}
#daily .daily-reward-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:2px}
#daily .daily-reward-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
#daily .daily-reward-icon.coin{color:#aa7927}
#daily .daily-reward-icon.coin svg{fill:#d7a83f;stroke:#8f641f;filter:drop-shadow(0 4px 4px rgba(107,77,29,.18))}
#daily .daily-reward-icon.leaf{color:#59653c}
#daily .daily-reward-icon.leaf svg{fill:#7d8d58;stroke:#4e5b35;filter:drop-shadow(0 4px 4px rgba(76,84,54,.15))}
#daily .daily-reward-icon.flower img{width:45px;height:45px;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(75,57,42,.15))}

#daily .daily-series-card,#daily .daily-next-card{
  border:1px solid rgba(145,115,69,.22);background:linear-gradient(145deg,rgba(255,252,245,.88),rgba(238,226,207,.93));
  box-shadow:0 10px 22px rgba(91,71,43,.09),inset 0 1px 0 rgba(255,255,255,.88);
}
#daily .daily-series-card{margin-top:13px;border-radius:18px;padding:12px 15px 13px}
#daily .daily-series-head{display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:8px;color:#46503a}
#daily .daily-series-icon{display:grid;place-items:center;width:25px;height:25px}
#daily .daily-series-icon svg,#daily .daily-next-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#daily .daily-series-head h3{margin:0;font:400 14px/1 Georgia,"Times New Roman",serif}
#daily .daily-series-chevron{font:600 18px/1 system-ui;transform:translateY(2px)}
#daily .daily-series-body{display:grid;grid-template-columns:1fr 59px;gap:12px;align-items:center;margin-top:10px}
#daily #weekStrip{
  display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:5px!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;
}
#daily .week-day{
  min-width:0!important;min-height:42px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;
  display:grid!important;place-items:center!important;position:relative!important;box-shadow:none!important;
}
#daily .week-day::before{content:"";position:absolute;inset:2px;border-radius:50%;background:#e7dcc7;border:1px solid rgba(125,102,66,.12)}
#daily .week-day img{position:relative;z-index:1;width:31px;height:31px;object-fit:contain;filter:grayscale(1) sepia(.2);opacity:.26}
#daily .week-day.done img{filter:none;opacity:1;filter:drop-shadow(0 3px 3px rgba(75,60,40,.14))}
#daily .week-day.today::after{content:"";position:absolute;inset:0;border:1.5px solid #858c5d;border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.7) inset}
#daily .week-day .wd-mark{position:absolute!important;right:-1px!important;bottom:-1px!important;z-index:2!important;width:12px!important;height:12px!important;border-radius:50%!important;background:#708050!important;color:#fff!important;font:700 8px/12px system-ui!important;text-align:center!important}
#daily .week-day:not(.done) .wd-mark{display:none!important}
#daily .wd-name{display:none!important}
#daily .daily-series-count{min-height:54px;border-left:1px solid rgba(140,111,68,.16);display:grid;place-content:center;text-align:center;color:#485039}
#daily .daily-series-count strong{font:400 23px/1 Georgia,"Times New Roman",serif}
#daily .daily-series-count span{margin-top:3px;font:600 8px/1 system-ui;color:#8a806c;text-transform:lowercase}
#daily .daily-next-card{margin-top:10px;min-height:58px;border-radius:16px;padding:0 15px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:8px;color:#4b503f}
#daily .daily-next-icon{display:grid;place-items:center}
#daily .daily-next-card>span:not(.daily-next-icon){font:400 12.5px/1.2 Georgia,"Times New Roman",serif}
#daily #dailyNextCountdown{font:400 20px/1 Georgia,"Times New Roman",serif;letter-spacing:.02em;color:#404738;font-variant-numeric:tabular-nums}
#daily #dailyPlayBtn.daily-play-premium{
  width:calc(100% - 44px);min-height:58px;margin:16px 22px 0;border-radius:999px;border:1px solid #6c713f;
  background:linear-gradient(180deg,#82885a 0%,#6b7144 100%);color:#fffdf6;
  font:400 24px/1 Georgia,"Times New Roman",serif;letter-spacing:.01em;cursor:pointer;
  box-shadow:0 10px 18px rgba(73,76,42,.20),inset 0 1px 0 rgba(255,255,255,.30),0 0 0 2px rgba(213,172,95,.48);
  transition:transform .16s ease,filter .16s ease;
}
#daily #dailyPlayBtn.daily-play-premium:active{transform:translateY(1px) scale(.995);filter:brightness(.97)}
#daily .daily-runtime-legacy{display:none!important}

@media(max-width:430px){
  #daily{padding-left:8px!important;padding-right:8px!important}
  #daily .daily-topbar{height:52px;margin-bottom:6px}
  #daily .daily-flower-card-inner{padding:20px 18px 17px}
  #daily .daily-calendar-card{flex-basis:73px}
  #daily .daily-calendar-card strong{font-size:27px}
  #daily .daily-flower-visual{height:205px}
  #daily .daily-flower-cluster{width:230px;height:195px}
  #daily #dailyFlowerArt{width:154px;height:154px}
  #daily .daily-flower-copy.side{width:98px;height:98px;bottom:18px}
  #daily .daily-flower-description{font-size:12.4px}
  #daily .daily-series-card{padding-left:11px;padding-right:11px}
  #daily .daily-series-body{grid-template-columns:1fr 50px;gap:7px}
  #daily #weekStrip{gap:2px!important}
  #daily .week-day{min-height:38px!important}
  #daily .week-day img{width:27px;height:27px}
  #daily #dailyNextCountdown{font-size:17px}
}
@media(max-width:350px){
  #daily .daily-flower-card-inner{padding-left:14px;padding-right:14px}
  #daily .daily-calendar-card{flex-basis:68px}
  #daily #dailyFlowerName{font-size:31px}
  #daily .daily-flower-visual{height:190px}
  #daily .daily-flower-cluster{width:210px;height:180px}
  #daily #dailyFlowerArt{width:142px;height:142px}
  #daily .daily-flower-copy.side{width:88px;height:88px}
  #daily .daily-reward-item{padding-left:6px;padding-right:6px}
  #daily .daily-next-card{grid-template-columns:23px 1fr auto;padding-left:11px;padding-right:11px}
  #daily .daily-next-card>span:not(.daily-next-icon){font-size:11px}
  #daily #dailyNextCountdown{font-size:15px}
}

/* ===== source: homeResumeCompactDailyBackFixV017 ===== */
/* v0.1.7 repair — compact Home resume CTA + stable progress badge. */
#home .home-approved-resume-copy{height:100%!important;box-sizing:border-box!important;padding-bottom:94px!important}
#home .home-approved-progress{
  position:absolute!important;left:20px!important;bottom:58px!important;z-index:5!important;
  display:inline-flex!important;visibility:visible!important;opacity:1!important;align-items:center!important;
  width:max-content!important;max-width:calc(100% - 28px)!important;min-height:24px!important;margin:0!important;padding:2px 7px 2px 3px!important;gap:5px!important;
  border:1px solid rgba(137,112,67,.15)!important;border-radius:999px!important;background:rgba(255,250,239,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 2px 6px rgba(77,62,36,.05)!important;
}
#home .home-approved-flower-dot{
  display:grid!important;visibility:visible!important;opacity:1!important;place-items:center!important;flex:0 0 18px!important;width:18px!important;height:18px!important;
  border-radius:50%!important;background:rgba(119,135,76,.08)!important;color:#667548!important;
}
#home .home-approved-flower-dot svg{display:block!important;width:13px!important;height:13px!important}
#home .home-approved-progress b{font-size:9.5px!important;line-height:1!important;font-weight:600!important}
#home .home-approved-progress-track{width:52px!important;height:4px!important}
#home .home-approved-continue{
  position:absolute!important;z-index:6!important;display:inline-flex!important;visibility:visible!important;opacity:1!important;
  left:18px!important;right:auto!important;bottom:14px!important;width:116px!important;min-width:116px!important;max-width:116px!important;
  height:34px!important;min-height:34px!important;margin:0!important;padding:0 27px 0 13px!important;border-radius:999px!important;
  align-items:center!important;justify-content:center!important;background:linear-gradient(180deg,#829052 0%,#6d7a45 100%)!important;
  border:1px solid rgba(83,97,48,.55)!important;color:#fffdf7!important;
  box-shadow:0 5px 11px rgba(66,78,40,.16),inset 0 1px 0 rgba(255,255,255,.34)!important;
}
#home .home-approved-continue b{font:400 12.5px/1 Georgia,"Times New Roman",serif!important;white-space:nowrap!important}
#home .home-approved-continue #ctaSub{display:none!important}
#home .home-approved-next{
  position:absolute!important;display:grid!important;place-items:center!important;right:6px!important;top:50%!important;transform:translateY(-50%)!important;
  width:18px!important;height:18px!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.07)!important;font-size:13px!important;line-height:1!important;
}
@media(max-width:560px){
  #home .home-approved-resume-copy{padding-bottom:82px!important}
  #home .home-approved-progress{left:16px!important;bottom:50px!important;min-height:22px!important;padding:2px 6px 2px 3px!important;gap:4px!important}
  #home .home-approved-flower-dot{width:17px!important;height:17px!important;flex-basis:17px!important}
  #home .home-approved-flower-dot svg{width:12px!important;height:12px!important}
  #home .home-approved-progress b{font-size:9px!important}
  #home .home-approved-progress-track{width:46px!important;height:4px!important}
  #home .home-approved-continue{left:15px!important;bottom:13px!important;width:104px!important;min-width:104px!important;max-width:104px!important;height:30px!important;min-height:30px!important;padding:0 23px 0 11px!important}
  #home .home-approved-continue b{font-size:11.5px!important}
  #home .home-approved-next{right:5px!important;width:16px!important;height:16px!important;font-size:12px!important}
}
/* Daily Flower: top-left circular control returns to Home. */
#daily .daily-home-btn{color:#536044!important}
#daily .daily-home-btn:active{transform:scale(.96)}
@media(hover:hover){#daily .daily-home-btn:hover{background:#fff9ed!important;border-color:rgba(132,106,61,.36)!important}}

/* ===== source: collectionPremiumReferenceV018 ===== */
/* Home resume: desktop gets a real breathing zone so story, progress and CTA never stack visually. */
@media(min-width:561px){
  #home .home-approved-resume{flex-basis:318px!important;min-height:318px!important;height:318px!important}
  #home .home-approved-resume-copy{padding-bottom:104px!important}
  #home .home-approved-resume p{max-width:176px!important;line-height:1.48!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  #home .home-approved-progress{left:20px!important;bottom:62px!important}
  #home .home-approved-continue{left:20px!important;bottom:18px!important}
}
@media(min-width:431px) and (max-width:560px){
  #home .home-approved-resume{flex-basis:264px!important;min-height:264px!important;height:264px!important}
  #home .home-approved-resume-copy{padding-bottom:84px!important}
}
@media(max-width:430px){
  #home .home-approved-resume{flex-basis:250px!important;min-height:250px!important;height:250px!important}
  #home .home-approved-resume-copy{padding-bottom:82px!important}
}

/* Collection reference rebuild. */
body.garden-active{
  background:
    radial-gradient(circle at 7% 2%,rgba(255,255,255,.92),transparent 28%),
    linear-gradient(180deg,#f8f1e3 0%,#eee1c9 100%)!important;
  color:#465236!important;
}
body.garden-active::before{display:none!important}
#garden.collection-premium-page{width:100%!important;min-height:100dvh!important;padding:14px 14px calc(92px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;background:transparent!important}
#garden .collection-premium-shell{
  width:min(100%,760px)!important;margin:0 auto!important;padding:18px 18px 28px!important;border:0!important;border-radius:30px!important;
  background:
    linear-gradient(rgba(255,252,245,.88),rgba(249,241,225,.90)),
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.85),transparent 34%)!important;
  box-shadow:0 18px 54px rgba(94,72,40,.13),inset 0 1px 0 rgba(255,255,255,.92)!important;color:#465236!important;
}
#garden .collection-topbar{display:grid!important;grid-template-columns:46px 1fr 46px!important;align-items:center!important;gap:12px!important;margin-bottom:12px!important}
#garden .collection-circle-btn{width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid rgba(151,116,58,.24)!important;background:linear-gradient(180deg,#fffaf0,#f2e3c9)!important;color:#566142!important;box-shadow:0 5px 14px rgba(86,63,30,.10),inset 0 1px 0 rgba(255,255,255,.9)!important;display:grid!important;place-items:center!important;cursor:pointer!important}
#garden .collection-circle-btn svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#garden .collection-brand{text-align:center!important;font:400 22px/1 Georgia,"Times New Roman",serif!important;color:#455235!important;letter-spacing:.01em!important}
#garden .collection-brand>span{display:block!important;height:12px!important;margin-top:3px!important;color:#b5894e!important}
#garden .collection-brand svg,#garden .collection-title-rule svg{width:62px!important;height:12px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.25!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#garden .collection-title-block{text-align:center!important;margin:2px 0 13px!important}
#garden .collection-title-block h1{margin:0!important;font:400 clamp(30px,5vw,40px)/1.05 Georgia,"Times New Roman",serif!important;color:#465236!important}
#garden .collection-title-rule{display:block!important;height:13px!important;margin-top:7px!important;color:#b58b52!important}
#garden .collection-filter-row{display:flex!important;gap:6px!important;overflow-x:auto!important;scrollbar-width:none!important;padding:2px 1px 7px!important;margin-bottom:12px!important}
#garden .collection-filter-row::-webkit-scrollbar{display:none!important}
#garden .collection-filter{flex:0 0 auto!important;min-height:35px!important;padding:0 12px!important;border-radius:999px!important;border:1px solid rgba(148,115,60,.18)!important;background:rgba(255,250,240,.72)!important;color:#596047!important;font:600 11px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;display:inline-flex!important;align-items:center!important;gap:6px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;cursor:pointer!important}
#garden .collection-filter span{font:400 15px/1 Georgia,serif!important}
#garden .collection-filter.active{background:linear-gradient(180deg,#89935f,#6f7949)!important;color:#fffaf0!important;border-color:#707b49!important;box-shadow:0 4px 10px rgba(74,86,46,.18),inset 0 1px 0 rgba(255,255,255,.25)!important}
#garden .collection-progress-card{display:grid!important;grid-template-columns:1fr 66px!important;align-items:center!important;gap:14px!important;padding:15px 16px!important;margin-bottom:13px!important;border:1px solid rgba(151,116,58,.20)!important;border-radius:19px!important;background:rgba(255,250,240,.72)!important;box-shadow:0 7px 18px rgba(87,65,35,.07),inset 0 1px 0 rgba(255,255,255,.9)!important}
#garden .collection-progress-copy h2{margin:0 0 10px!important;font:400 18px/1.15 Georgia,"Times New Roman",serif!important;color:#4d583d!important}
#garden .collection-progress-line{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:10px!important}
#garden .collection-progress-line strong{font:500 13px/1 Georgia,serif!important;color:#4c563d!important}
#garden .collection-progress-track{height:7px!important;border-radius:999px!important;background:rgba(95,103,65,.13)!important;overflow:hidden!important;box-shadow:inset 0 1px 2px rgba(83,65,38,.10)!important}
#garden .collection-progress-track i{display:block!important;height:100%!important;width:0;border-radius:inherit!important;background:linear-gradient(90deg,#6e7b47,#97a26a)!important;transition:width .28s ease!important}
#garden .collection-progress-copy small{display:block!important;margin-top:7px!important;font:500 11px/1 system-ui,sans-serif!important;color:#6d705f!important}
#garden .collection-medal{width:58px!important;height:58px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:radial-gradient(circle at 35% 25%,#fff3be 0 12%,#dfb24d 35%,#9f7427 100%)!important;border:3px double #c6993c!important;box-shadow:0 5px 12px rgba(121,84,29,.18),inset 0 1px 0 #fff4c2!important;color:#fff0b6!important;font-size:27px!important}
#garden .collection-featured{display:grid!important;grid-template-columns:minmax(180px,.9fr) minmax(0,1.1fr)!important;min-height:250px!important;margin-bottom:17px!important;border:1px solid rgba(151,116,58,.22)!important;border-radius:22px!important;overflow:hidden!important;background:rgba(255,250,239,.68)!important;box-shadow:0 8px 21px rgba(83,61,30,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;position:relative!important}
#garden .collection-featured-art{display:grid!important;place-items:center!important;min-height:250px!important;padding:18px!important;border-right:1px solid rgba(151,116,58,.16)!important;background:linear-gradient(145deg,rgba(255,253,247,.84),rgba(242,230,207,.56))!important;position:relative!important}
#garden .collection-featured-art::before,#garden .collection-flower-card::before{content:""!important;position:absolute!important;inset:8px!important;border:1px solid rgba(176,142,82,.20)!important;border-radius:14px!important;pointer-events:none!important}
#garden .collection-featured-art img{width:min(88%,230px)!important;height:220px!important;object-fit:contain!important;filter:drop-shadow(0 12px 13px rgba(76,57,30,.13))!important;position:relative!important;z-index:1!important}
#garden .collection-featured.locked .collection-featured-art img{filter:grayscale(.65) sepia(.18) opacity(.22)!important}
#garden .collection-featured-copy{padding:22px 22px 18px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;position:relative!important}
#garden .collection-featured-ribbon{position:absolute!important;right:20px!important;top:0!important;width:28px!important;height:42px!important;background:linear-gradient(180deg,#8b9560,#6d784a)!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%)!important;box-shadow:0 3px 7px rgba(69,80,42,.14)!important}
#garden .collection-featured-copy h2{margin:0 0 5px!important;padding-right:28px!important;font:400 clamp(26px,4vw,35px)/1 Georgia,"Times New Roman",serif!important;color:#465236!important}
#garden .collection-featured-meta{font:600 11px/1.4 system-ui,sans-serif!important;color:#7a745f!important;margin-bottom:15px!important}
#garden .collection-featured-description{margin:0 0 16px!important;font:400 13px/1.48 Georgia,"Times New Roman",serif!important;color:#5a5d4e!important;max-width:36ch!important}
#garden .collection-rarity{display:grid!important;gap:6px!important;margin-top:auto!important}
#garden .collection-rarity small{font:600 10px/1 system-ui,sans-serif!important;color:#716b58!important}
#garden .collection-rarity-row{font-size:17px!important;letter-spacing:3px!important;color:#566142!important;white-space:nowrap!important}
#garden .collection-rarity-row .off{color:#c9bfa8!important}
#garden .collection-featured-stats{display:flex!important;gap:24px!important;border-top:1px solid rgba(151,116,58,.17)!important;margin-top:12px!important;padding-top:11px!important;font:500 11px/1.2 system-ui,sans-serif!important;color:#6c6a59!important}
#garden .collection-grid-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 4px 10px!important}
#garden .collection-grid-head h2{margin:0!important;font:400 19px/1.1 Georgia,"Times New Roman",serif!important;color:#4b563c!important}
#garden .collection-sort select{height:34px!important;border-radius:999px!important;border:1px solid rgba(148,115,60,.20)!important;background:#f8eedc!important;color:#676957!important;padding:0 30px 0 12px!important;font:600 10px/1 system-ui,sans-serif!important;outline:none!important}
#garden .collection-flower-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
#garden .collection-flower-card{min-width:0!important;min-height:176px!important;padding:10px 8px 9px!important;border-radius:16px!important;border:1px solid rgba(153,119,62,.19)!important;background:rgba(255,250,240,.74)!important;box-shadow:0 5px 12px rgba(87,65,34,.06),inset 0 1px 0 rgba(255,255,255,.88)!important;color:#4d583e!important;display:grid!important;grid-template-rows:112px auto auto!important;align-items:center!important;text-align:center!important;position:relative!important;cursor:pointer!important;overflow:hidden!important}
#garden .collection-flower-card.selected{outline:2px solid rgba(115,128,72,.58)!important;outline-offset:1px!important}
#garden .collection-flower-card img{width:100%!important;height:108px!important;object-fit:contain!important;position:relative!important;z-index:1!important;filter:drop-shadow(0 7px 8px rgba(75,57,31,.10))!important}
#garden .collection-flower-card.locked img{filter:grayscale(.9) sepia(.15) opacity(.18)!important}
#garden .collection-flower-card b{font:400 13px/1.12 Georgia,"Times New Roman",serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;position:relative!important;z-index:1!important}
#garden .collection-flower-card small{font:600 9px/1.2 system-ui,sans-serif!important;color:#687058!important;position:relative!important;z-index:1!important;margin-top:4px!important}
#garden .collection-flower-card.locked b,#garden .collection-flower-card.locked small{color:#a89e88!important}
#garden .collection-card-ribbon{position:absolute!important;right:7px!important;top:7px!important;width:18px!important;height:26px!important;background:#7e8857!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%)!important;z-index:2!important;color:#fff8e8!important;font:700 7px/17px system-ui!important}
#garden .collection-flower-card.locked .collection-card-ribbon{background:#b7aa91!important;color:#f5eee0!important}
#garden .collection-empty{text-align:center!important;padding:24px!important;font:400 14px/1.4 Georgia,serif!important;color:#79735f!important}
#garden .collection-bottom-nav{position:fixed!important;left:50%!important;transform:translateX(-50%)!important;bottom:0!important;z-index:45!important;width:min(100%,760px)!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;padding:8px 10px calc(8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;background:rgba(249,242,227,.95)!important;backdrop-filter:blur(14px)!important;border-top:1px solid rgba(147,115,62,.18)!important;box-shadow:0 -7px 22px rgba(82,61,31,.07)!important}
#garden .collection-nav-item{min-height:54px!important;border:0!important;border-radius:16px!important;background:transparent!important;color:#68705a!important;display:grid!important;place-items:center!important;align-content:center!important;gap:3px!important;font:500 9px/1 system-ui,sans-serif!important;cursor:pointer!important}
#garden .collection-nav-item svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#garden .collection-nav-item.active{background:rgba(226,211,180,.46)!important;color:#4e5b3b!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important}

@media(max-width:560px){
  #garden.collection-premium-page{padding:9px 9px calc(86px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #garden .collection-premium-shell{padding:12px 10px 21px!important;border-radius:24px!important}
  #garden .collection-topbar{grid-template-columns:40px 1fr 40px!important;margin-bottom:8px!important}
  #garden .collection-circle-btn{width:38px!important;height:38px!important}
  #garden .collection-circle-btn svg{width:19px!important;height:19px!important}
  #garden .collection-brand{font-size:19px!important}
  #garden .collection-title-block{margin-bottom:9px!important}
  #garden .collection-title-block h1{font-size:29px!important}
  #garden .collection-filter{min-height:32px!important;padding:0 10px!important;font-size:9.3px!important;gap:5px!important}
  #garden .collection-progress-card{grid-template-columns:1fr 52px!important;padding:12px 12px!important;gap:10px!important;border-radius:17px!important}
  #garden .collection-progress-copy h2{font-size:15px!important;margin-bottom:8px!important}
  #garden .collection-medal{width:47px!important;height:47px!important;font-size:22px!important}
  #garden .collection-featured{grid-template-columns:42% 58%!important;min-height:205px!important;border-radius:19px!important}
  #garden .collection-featured-art{min-height:205px!important;padding:9px!important}
  #garden .collection-featured-art img{height:178px!important;width:100%!important}
  #garden .collection-featured-copy{padding:15px 12px 13px!important}
  #garden .collection-featured-ribbon{right:12px!important;width:22px!important;height:34px!important}
  #garden .collection-featured-copy h2{font-size:24px!important;margin-bottom:4px!important}
  #garden .collection-featured-meta{font-size:8.5px!important;margin-bottom:9px!important}
  #garden .collection-featured-description{font-size:10px!important;line-height:1.42!important;margin-bottom:9px!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  #garden .collection-rarity{gap:4px!important}
  #garden .collection-rarity small{font-size:8px!important}
  #garden .collection-rarity-row{font-size:13px!important;letter-spacing:1px!important}
  #garden .collection-featured-stats{gap:12px!important;margin-top:8px!important;padding-top:8px!important;font-size:8px!important;flex-wrap:wrap!important}
  #garden .collection-grid-head{margin-left:2px!important;margin-right:2px!important}
  #garden .collection-grid-head h2{font-size:16px!important}
  #garden .collection-sort select{height:30px!important;font-size:8.5px!important;padding-left:9px!important;padding-right:24px!important}
  #garden .collection-flower-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  #garden .collection-flower-card{min-height:137px!important;padding:7px 4px 7px!important;grid-template-rows:83px auto auto!important;border-radius:13px!important}
  #garden .collection-flower-card::before{inset:5px!important;border-radius:10px!important}
  #garden .collection-flower-card img{height:80px!important}
  #garden .collection-flower-card b{font-size:10.5px!important}
  #garden .collection-flower-card small{font-size:7.5px!important}
  #garden .collection-card-ribbon{right:5px!important;top:5px!important;width:15px!important;height:22px!important;font-size:6px!important;line-height:14px!important}
  #garden .collection-bottom-nav{padding-top:6px!important;padding-left:6px!important;padding-right:6px!important}
  #garden .collection-nav-item{min-height:50px!important;font-size:7.5px!important}
  #garden .collection-nav-item svg{width:21px!important;height:21px!important}
}
@media(max-width:370px){
  #garden .collection-flower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #garden .collection-featured{grid-template-columns:40% 60%!important}
}

/* ===== source: shopReferenceV017 ===== */
/* v0.1.7 — light botanical boutique rebuilt from the approved store reference. */
#shopSheet.shop-reference-page{
  position:fixed!important;inset:0!important;z-index:10020!important;padding:0!important;
  background:rgba(35,31,23,.24)!important;backdrop-filter:blur(8px)!important;
  overflow:hidden!important;display:grid!important;place-items:center!important;
}
#shopSheet.shop-reference-page.hidden{display:none!important}
#shopSheet.shop-reference-page::before{display:none!important}
#shopSheet .shop-reference-shell{
  --shop-ink:#46553a;--shop-olive:#77854d;--shop-olive-dark:#5e6c39;--shop-gold:#bd9555;--shop-line:rgba(139,111,62,.22);
  position:relative!important;width:min(100%,720px)!important;height:min(100dvh,1080px)!important;max-width:720px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;
  color:var(--shop-ink)!important;
  background:
    radial-gradient(circle at 14% 5%,rgba(255,255,255,.76),transparent 29%),
    linear-gradient(rgba(255,252,243,.91),rgba(247,239,222,.96)),
    url("../scenes/soft-botanical-home.webp") center top/cover no-repeat!important;
  box-shadow:0 28px 80px rgba(42,34,22,.28)!important;
}
#shopSheet .shop-reference-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px 104px;scrollbar-width:none}
#shopSheet .shop-reference-scroll::-webkit-scrollbar{display:none}
#shopSheet .shop-reference-topbar{height:66px;display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:10px;position:relative;z-index:3}
#shopSheet .shop-reference-circle{width:44px;height:44px;border-radius:50%;border:1px solid rgba(164,127,70,.31);background:rgba(250,242,224,.93);color:#536044;display:grid;place-items:center;box-shadow:0 6px 15px rgba(80,60,28,.12),inset 0 1px 0 rgba(255,255,255,.85);cursor:pointer;position:relative}
#shopSheet .shop-reference-circle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#shopSheet .shop-reference-wallet{justify-self:end}
#shopSheet .shop-reference-wallet small{position:absolute;right:-5px;bottom:-4px;min-width:22px;height:18px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#78864f;color:#fffaf0;border:2px solid #f7eedc;font:700 9px/1 system-ui;box-shadow:0 2px 5px rgba(71,59,34,.18)}
#shopSheet .shop-reference-brand{text-align:center;font:400 24px/1.1 Georgia,"Times New Roman",serif;color:#455237;letter-spacing:.01em}
#shopSheet .shop-reference-brand span{display:block;height:11px;margin-top:4px;color:#b48d4e}
#shopSheet .shop-reference-brand svg,#shopSheet .shop-reference-title svg{width:55px;height:12px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
#shopSheet .shop-reference-title{text-align:center;margin:12px 0 18px}
#shopSheet .shop-reference-title h2{margin:0;font:400 clamp(32px,6vw,43px)/1.06 Georgia,"Times New Roman",serif;color:#445336}
#shopSheet .shop-reference-title p{margin:7px 0 8px;color:#a06d42;font:400 14px/1.35 Georgia,"Times New Roman",serif}
#shopSheet .shop-reference-title>span{display:block;height:12px;color:#b79052}

#shopSheet .shop-reference-featured{position:relative;display:grid;grid-template-columns:minmax(150px,38%) 1fr;min-height:196px;margin-bottom:22px;border:1px solid var(--shop-line);border-radius:18px;background:rgba(255,251,242,.82);box-shadow:0 8px 21px rgba(90,70,37,.10),inset 0 1px 0 rgba(255,255,255,.78);overflow:hidden}
#shopSheet .shop-feature-art{min-height:196px;background:url("../ui/home-resume-art.webp") center/cover no-repeat;position:relative}
#shopSheet .shop-feature-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(255,250,238,.64))}
#shopSheet .shop-feature-ribbon{position:absolute;top:0;left:0;z-index:2;padding:6px 15px 6px 12px;background:linear-gradient(135deg,#77844f,#616d3f);color:#fff7e8;font:700 9px/1 system-ui;letter-spacing:.08em;clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
#shopSheet .shop-feature-copy{padding:18px 18px 14px;display:flex;flex-direction:column;justify-content:center;min-width:0}
#shopSheet .shop-feature-copy small{color:#9a7d52;font:700 9px/1.2 system-ui;letter-spacing:.08em;text-transform:uppercase}
#shopSheet .shop-feature-copy h3{margin:5px 0 5px;font:400 24px/1.08 Georgia,"Times New Roman",serif;color:#46543a}
#shopSheet .shop-feature-copy p{margin:0 0 11px;color:#6a6d5b;font:11px/1.42 system-ui}
#shopSheet .shop-feature-perks{display:flex;flex-wrap:wrap;gap:7px 12px;margin:0 0 12px;color:#5d654e;font:700 9px/1.2 system-ui}
#shopSheet .shop-feature-perks span{display:inline-flex;align-items:center;gap:4px}
#shopSheet .shop-feature-perks i{width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#e6d19b;color:#6a6138;font-style:normal;font-size:9px;box-shadow:inset 0 0 0 1px rgba(143,104,47,.24)}
#shopSheet .shop-reference-buy{min-height:39px;border:1px solid rgba(81,94,47,.52);border-radius:999px;background:linear-gradient(180deg,#899657,#667541);color:#fffdf6;font:400 17px/1 Georgia,"Times New Roman",serif;box-shadow:0 5px 12px rgba(77,89,45,.20),inset 0 1px 0 rgba(255,255,255,.30);cursor:pointer;padding:0 15px}
#shopSheet .shop-reference-buy:disabled{opacity:.56;cursor:default}
#shopSheet .shop-feature-secondary{margin-top:7px;border:0;background:none;color:#7e745f;text-decoration:underline;text-underline-offset:3px;font:9px/1.2 system-ui;cursor:pointer}

#shopSheet .shop-reference-section-title{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:8px 4px 11px;color:#5b6048;font:400 16px/1 Georgia,"Times New Roman",serif;letter-spacing:.03em}
#shopSheet .shop-reference-section-title i{height:1px;background:linear-gradient(90deg,transparent,rgba(163,128,73,.45),transparent)}
#shopSheet .shop-reference-currency,#shopSheet .shop-reference-cosmetics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:22px}
#shopSheet .shop-currency-card,#shopSheet .shop-detail-card{min-width:0;border:1px solid var(--shop-line);border-radius:15px;background:rgba(255,251,242,.78);box-shadow:0 6px 14px rgba(79,59,31,.09),inset 0 1px 0 rgba(255,255,255,.78);padding:12px 9px 10px;text-align:center;display:flex;flex-direction:column;align-items:center}
#shopSheet .shop-currency-art{height:72px;width:90px;display:grid;place-items:center;margin-bottom:3px;position:relative}
#shopSheet .shop-currency-art svg{width:72px;height:72px;overflow:visible;filter:drop-shadow(0 5px 5px rgba(87,63,28,.16))}
#shopSheet .shop-currency-card strong{font:400 25px/1 Georgia,"Times New Roman",serif;color:#4d583e;margin:1px 0 8px}
#shopSheet .shop-currency-card small{display:block;height:18px;color:#7f765f;font:9px/1.2 system-ui;margin-top:-4px}
#shopSheet .shop-currency-card button,#shopSheet .shop-detail-card button{width:100%;min-height:31px;margin-top:auto;border:1px solid rgba(110,91,53,.25);border-radius:999px;background:linear-gradient(180deg,#879451,#687641);color:#fffaf0;font:400 13px/1 Georgia,"Times New Roman",serif;padding:0 7px;cursor:pointer}
#shopSheet .shop-currency-card button:disabled,#shopSheet .shop-detail-card button:disabled{opacity:.52;cursor:default}
#shopSheet .shop-currency-card.wallet-card button{background:#eee3cd;color:#716952;border-color:rgba(128,103,63,.17)}
#shopSheet .shop-currency-card.journey-card button{background:#f1e4cb;color:#667047}

#shopSheet .shop-detail-art{width:82px;height:74px;display:grid;place-items:center;margin:0 auto 4px;position:relative}
#shopSheet .shop-detail-art::before{content:"";position:absolute;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle,#fffdf7 0,#e7d9ba 72%,transparent 73%);box-shadow:0 5px 12px rgba(81,63,34,.12)}
#shopSheet .shop-detail-art img{position:relative;z-index:1;width:68px;height:68px;object-fit:contain;filter:drop-shadow(0 5px 4px rgba(75,59,31,.13))}
#shopSheet .shop-detail-card h4{margin:2px 0 4px;font:400 16px/1.05 Georgia,"Times New Roman",serif;color:#48543b;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
#shopSheet .shop-detail-card p{min-height:28px;margin:0 0 7px;color:#726d5c;font:9px/1.35 system-ui}
#shopSheet .shop-detail-card.owned{box-shadow:inset 0 0 0 1px rgba(112,130,68,.24),0 6px 14px rgba(79,59,31,.08)}

#shopSheet .shop-reference-season{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;margin:4px 0 12px;padding:13px 14px;border:1px solid var(--shop-line);border-radius:17px;background:rgba(255,251,242,.80);box-shadow:0 7px 17px rgba(83,63,33,.09);position:relative;overflow:hidden}
#shopSheet .shop-season-art{width:108px;height:82px;background:url("../ui/home-summary-art.webp") center/cover no-repeat;border-radius:13px;box-shadow:inset 0 0 0 1px rgba(121,96,58,.18)}
#shopSheet .shop-season-copy{min-width:0}
#shopSheet .shop-season-copy h3{margin:0 0 4px;font:400 21px/1.05 Georgia,"Times New Roman",serif;color:#46543a}
#shopSheet .shop-season-copy p{margin:0 0 8px;color:#666a57;font:10px/1.35 system-ui}
#shopSheet .shop-season-progress{height:5px;border-radius:999px;background:#e3dbc7;overflow:hidden}
#shopSheet .shop-season-progress i{display:block;height:100%;background:#7f8d50;border-radius:inherit}
#shopSheet .shop-season-cta{min-width:112px;height:34px;border:1px solid rgba(81,94,47,.45);border-radius:999px;background:linear-gradient(180deg,#899657,#677541);color:#fffdf7;font:400 13px/1 Georgia,"Times New Roman",serif;padding:0 12px;cursor:pointer}
#shopSheet .shop-season-ribbon{position:absolute;right:0;top:0;background:linear-gradient(135deg,#8a6f8e,#6e5776);color:#fff8ef;padding:5px 11px 6px 15px;font:700 8px/1 system-ui;letter-spacing:.08em;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
#shopSheet .shop-legal{margin:10px auto 3px!important;max-width:520px;color:#968b75!important;font:8px/1.4 system-ui!important;text-align:center!important}
#shopSheet .shop-reference-status{min-height:19px;text-align:center;color:#78804f;font:700 9px/1.3 system-ui;margin-top:4px}
#shopSheet .shop-reference-runtime{display:none!important}

#shopSheet .shop-reference-bottom-nav{position:absolute;left:0;right:0;bottom:0;z-index:6;height:86px;padding:7px 14px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(249,242,227,.96);border-top:1px solid rgba(143,112,61,.16);box-shadow:0 -7px 22px rgba(73,56,30,.07)}
#shopSheet .shop-reference-bottom-nav button{border:0;background:transparent;color:#59634a;display:grid;place-items:center;align-content:center;gap:4px;border-radius:16px;font:10px/1.05 system-ui;cursor:pointer}
#shopSheet .shop-reference-bottom-nav button.active{background:rgba(235,224,200,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
#shopSheet .shop-reference-bottom-nav svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media(min-width:721px){
  #shopSheet .shop-reference-shell{border-radius:28px!important;height:min(94dvh,1010px)!important;border:1px solid rgba(143,111,59,.18)!important}
}
@media(max-width:560px){
  #shopSheet .shop-reference-scroll{padding:12px 13px 98px}
  #shopSheet .shop-reference-topbar{height:58px;grid-template-columns:46px 1fr 46px}
  #shopSheet .shop-reference-circle{width:40px;height:40px}
  #shopSheet .shop-reference-title{margin:9px 0 14px}
  #shopSheet .shop-reference-title h2{font-size:31px}
  #shopSheet .shop-reference-title p{font-size:12px}
  #shopSheet .shop-reference-featured{grid-template-columns:38% 1fr;min-height:164px;margin-bottom:17px}
  #shopSheet .shop-feature-art{min-height:164px}
  #shopSheet .shop-feature-copy{padding:14px 12px 11px}
  #shopSheet .shop-feature-copy h3{font-size:20px}
  #shopSheet .shop-feature-copy p{font-size:9.5px;margin-bottom:8px}
  #shopSheet .shop-feature-perks{gap:5px 8px;margin-bottom:9px;font-size:7.8px}
  #shopSheet .shop-reference-buy{min-height:34px;font-size:14px}
  #shopSheet .shop-reference-currency,#shopSheet .shop-reference-cosmetics{gap:7px;margin-bottom:17px}
  #shopSheet .shop-currency-card,#shopSheet .shop-detail-card{padding:9px 6px 8px;border-radius:13px}
  #shopSheet .shop-currency-art{height:58px;width:66px}
  #shopSheet .shop-currency-art svg{width:58px;height:58px}
  #shopSheet .shop-currency-card strong{font-size:20px;margin-bottom:7px}
  #shopSheet .shop-currency-card small{font-size:7.5px}
  #shopSheet .shop-currency-card button,#shopSheet .shop-detail-card button{min-height:28px;font-size:11px}
  #shopSheet .shop-detail-art{width:66px;height:58px}
  #shopSheet .shop-detail-art::before{width:48px;height:48px}
  #shopSheet .shop-detail-art img{width:54px;height:54px}
  #shopSheet .shop-detail-card h4{font-size:13px}
  #shopSheet .shop-detail-card p{font-size:7.5px;min-height:23px}
  #shopSheet .shop-reference-season{grid-template-columns:82px 1fr;gap:9px;padding:10px;margin-bottom:8px}
  #shopSheet .shop-season-art{width:78px;height:66px}
  #shopSheet .shop-season-copy h3{font-size:17px}
  #shopSheet .shop-season-copy p{font-size:8px;margin-bottom:6px}
  #shopSheet .shop-season-cta{grid-column:2;justify-self:start;min-width:100px;height:29px;font-size:11px;margin-top:-2px}
  #shopSheet .shop-reference-bottom-nav{height:78px;padding-left:7px;padding-right:7px}
  #shopSheet .shop-reference-bottom-nav svg{width:24px;height:24px}
  #shopSheet .shop-reference-bottom-nav button{font-size:8.5px}
}
@media(max-width:370px){
  #shopSheet .shop-feature-perks span:nth-child(3){display:none}
  #shopSheet .shop-reference-section-title{font-size:14px}
  #shopSheet .shop-detail-card p{display:none}
}

/* ===== source: finishReferenceAndSurfaceFixV017 ===== */
/* Surface bug fixes: Collection used its own fixed dock but the legacy tabbar was
   still rendered underneath it; Shop exposed the old dark sheet backdrop. */
body.garden-active #tabbar{display:none!important}
body.garden-active{min-height:100dvh!important;background:#f5ecd9!important}
#garden.collection-premium-page{isolation:isolate!important;background:#f5ecd9!important}
#garden .collection-bottom-nav{bottom:0!important;border-bottom:0!important;background:#f8efdc!important}
#shopSheet.shop-reference-page{background:#f6edda!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;place-items:stretch center!important}
#shopSheet .shop-reference-shell{background-color:#f7efdf!important}
@media(max-width:720px){
  #shopSheet .shop-reference-shell{width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:none!important;border-radius:0!important;box-shadow:none!important}
}

/* Approved botanical completion screen. */
#finish.finish{
  z-index:10010!important;align-items:flex-start!important;justify-content:center!important;
  padding:0!important;overflow:auto!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:
    radial-gradient(circle at 10% 5%,rgba(255,255,255,.96),transparent 30%),
    linear-gradient(rgba(250,245,233,.94),rgba(241,229,205,.97)),
    url("../scenes/soft-botanical-home.webp") center/cover fixed no-repeat!important;
}
#finish .result-reference-card{
  --result-ink:#46543a;--result-olive:#728047;--result-gold:#bb9150;--result-line:rgba(145,112,60,.22);
  width:min(100%,540px)!important;min-height:100dvh!important;max-width:540px!important;margin:0!important;
  padding:14px 14px 24px!important;border:0!important;border-radius:0!important;color:var(--result-ink)!important;text-align:center!important;
  background:linear-gradient(rgba(255,252,245,.92),rgba(247,238,220,.95)),url("../scenes/soft-botanical-home.webp") center/cover no-repeat!important;
  box-shadow:0 20px 70px rgba(70,52,27,.18)!important;overflow:hidden!important;
}
#finish .result-reference-topbar{height:58px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin-bottom:8px}
#finish .result-reference-circle{width:42px;height:42px;border-radius:50%;border:1px solid rgba(154,119,62,.28);background:linear-gradient(180deg,#fffaf0,#efe0c3);color:#566143;display:grid;place-items:center;box-shadow:0 5px 13px rgba(80,60,29,.11),inset 0 1px 0 rgba(255,255,255,.9);cursor:pointer}
#finish .result-reference-circle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#finish .result-reference-brand{font:400 21px/1.05 Georgia,"Times New Roman",serif;color:#465337}
#finish .result-reference-brand span{display:block;height:10px;margin-top:4px;color:#b58c50}
#finish .result-reference-brand svg{width:58px;height:12px;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
#finish .result-reference-panel{position:relative;padding:18px 13px 16px;border:1px solid var(--result-line);border-radius:22px;background:rgba(255,251,241,.76);box-shadow:0 10px 26px rgba(88,66,35,.08),inset 0 1px 0 rgba(255,255,255,.92)}
#finish .result-reference-panel::before{content:"";position:absolute;inset:7px;border:1px solid rgba(172,135,76,.16);border-radius:17px;pointer-events:none}
#finish .result-reference-heading{position:relative;margin:1px 0 8px;font:400 clamp(28px,7vw,37px)/1.06 Georgia,"Times New Roman",serif;color:#435237}
#finish .result-reference-stars{position:relative;margin:5px 0 2px!important;font-size:clamp(34px,9vw,50px)!important;letter-spacing:5px!important;color:#e3a83a!important;text-shadow:0 2px 0 #9d6f23,0 5px 12px rgba(155,103,28,.17)!important}
#finish .result-reference-stars .star-on{color:#e3a83a!important}
#finish .result-reference-stars .star-off{color:#d5c9ae!important;opacity:.48!important;text-shadow:none!important}
#finish .result-reference-bouquet{position:relative;width:min(84%,320px);height:188px;margin:0 auto 2px;filter:drop-shadow(0 12px 13px rgba(73,55,29,.15))}
#finish .bouquet-flower{position:absolute;width:105px;height:105px;object-fit:contain;z-index:3;filter:drop-shadow(0 4px 4px rgba(67,52,31,.10))}
#finish .bf-a{left:12%;top:58px;transform:rotate(-11deg) scale(.94)}#finish .bf-b{left:34%;top:37px;transform:rotate(3deg) scale(1.06)}#finish .bf-c{right:9%;top:62px;transform:rotate(12deg) scale(.90)}#finish .bf-d{left:25%;top:93px;transform:rotate(-7deg) scale(.75)}#finish .bf-e{right:28%;top:91px;transform:rotate(7deg) scale(.72)}
#finish .bouquet-leaf{position:absolute;z-index:1;width:34px;height:92px;border-radius:90% 10% 90% 10%;background:linear-gradient(145deg,#7c8c54,#415d39);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
#finish .leaf-a{left:31%;top:92px;transform:rotate(-40deg)}#finish .leaf-b{right:29%;top:92px;transform:rotate(40deg)}#finish .leaf-c{left:47%;top:96px;transform:rotate(5deg) scale(.85)}
#finish .bouquet-wrap{position:absolute;z-index:2;left:50%;bottom:4px;transform:translateX(-50%);width:116px;height:76px;background:linear-gradient(145deg,#d9c49a,#aa8d5b);clip-path:polygon(14% 0,86% 0,70% 100%,30% 100%);box-shadow:inset 0 0 0 1px rgba(120,87,43,.12)}
#finish .bouquet-wrap::after{content:"";position:absolute;left:8px;right:8px;top:31px;height:13px;border-radius:999px;background:#66734a;box-shadow:0 2px 4px rgba(67,53,31,.17)}
#finish .result-reference-panel>h2{position:relative;margin:0!important;font:400 21px/1.08 Georgia,"Times New Roman",serif!important;color:#49553b!important}
#finish .result-reference-panel>.result-subtitle{position:relative;margin:5px auto 12px!important;max-width:34ch!important;font:400 12px/1.35 Georgia,"Times New Roman",serif!important;color:#77705b!important}
#finish .result-reference-stats{position:relative;display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 11px;border:1px solid rgba(148,114,59,.19);border-radius:15px;background:rgba(250,244,230,.76);overflow:hidden;box-shadow:0 5px 12px rgba(79,60,32,.06)}
#finish .result-reference-stats>span{min-width:0;padding:9px 5px 8px;display:grid;grid-template-columns:26px 1fr;grid-template-rows:auto auto;column-gap:6px;text-align:left;align-items:center}
#finish .result-reference-stats>span+span{border-left:1px solid rgba(145,111,57,.14)}
#finish .result-reference-stats svg{grid-row:1/3;width:25px;height:25px;fill:none;stroke:#596447;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#finish .result-reference-stats small{font:500 8px/1 system-ui,sans-serif;color:#766f5d}
#finish .result-reference-stats b{margin-top:2px;font:400 18px/1 Georgia,"Times New Roman",serif;color:#46543a;font-variant-numeric:tabular-nums}
#finish .result-reference-next{position:relative;display:grid;grid-template-columns:96px 1fr 32px;gap:10px;align-items:center;min-height:90px;margin-bottom:12px;padding:7px 10px 7px 7px;border:1px solid rgba(148,114,59,.19);border-radius:15px;background:rgba(250,245,233,.76);box-shadow:0 5px 12px rgba(79,60,32,.06);cursor:pointer;text-align:left}
#finish .result-reference-next.hidden{display:none!important}
#finish .result-reference-next-art{width:96px;height:74px;border-radius:10px;background-position:center!important;background-size:cover!important;box-shadow:inset 0 0 0 1px rgba(128,96,51,.17)}
#finish .result-reference-next-copy{min-width:0}
#finish .result-reference-next-copy small{display:block;font:600 8px/1.2 system-ui,sans-serif;color:#8b7758;margin-bottom:4px}
#finish .result-reference-next-copy strong{display:block;font:400 17px/1.1 Georgia,"Times New Roman",serif;color:#48553b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#finish .result-reference-next-progress{display:flex;align-items:center;gap:7px;margin-top:7px;color:#667051;font:700 8px/1 system-ui}
#finish .result-reference-next-progress>i{display:block;flex:1;height:5px;border-radius:999px;background:#ded7c5;overflow:hidden}
#finish .result-reference-next-progress em{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#6d7b47,#97a36c)}
#finish .result-reference-next-arrow{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(151,116,58,.24);background:#f7ecd7;color:#65704e;font:27px/1 Georgia,serif;box-shadow:0 3px 7px rgba(84,64,34,.08)}
#finish .result-reference-reward-title{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;margin:0 4px 7px;color:#665f4d;font:400 11px/1 Georgia,"Times New Roman",serif}
#finish .result-reference-reward-title i{height:1px;background:linear-gradient(90deg,transparent,rgba(161,126,69,.40),transparent)}
#finish .result-reference-rewards{position:relative;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:6px!important;margin:0 0 12px!important}
#finish .finish-reward-tile{min-width:0;min-height:82px;padding:7px 3px 6px;border:1px solid rgba(148,114,59,.17);border-radius:12px;background:rgba(255,250,240,.70);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#4e593e!important;box-shadow:0 3px 8px rgba(79,59,30,.05)}
#finish .finish-reward-tile img,#finish .finish-reward-tile i{width:37px;height:37px;display:grid;place-items:center;object-fit:contain;margin-bottom:2px;font-style:normal}
#finish .reward-medal{border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff2b3,#d8a339 52%,#9a6a21);color:#fff2b7;font-size:20px;border:2px double #bb8730}
#finish .reward-leaf{border-radius:70% 15% 70% 15%;background:linear-gradient(145deg,#92a069,#4f6740);color:#f2e6ba;font-size:16px;transform:rotate(-14deg)}
#finish .reward-star{color:#dfa23c;font-size:34px;line-height:1;text-shadow:0 2px 0 #a26f27}
#finish .finish-reward-tile b{font:400 13px/1 Georgia,"Times New Roman",serif;color:#4d583d!important}
#finish .finish-reward-tile small{margin-top:2px;font:600 6.5px/1.1 system-ui;color:#897f69!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#finish .result-unlock{position:relative;margin:0 0 10px!important;padding:8px 9px!important;border-radius:11px!important;background:#f3e7cd!important;border:1px solid rgba(150,114,58,.18)!important}
#finish .result-unlock span{color:#746747!important;font-size:8px!important}
#finish .result-reference-continue,#finish .result-reference-replay{position:relative;width:min(100%,350px);min-height:48px;border-radius:999px;font:400 18px/1 Georgia,"Times New Roman",serif;cursor:pointer}
#finish .result-reference-continue{border:1px solid rgba(76,91,43,.55);background:linear-gradient(180deg,#879451,#64743d);color:#fffdf5;box-shadow:0 6px 13px rgba(72,85,42,.20),inset 0 1px 0 rgba(255,255,255,.33)}
#finish .result-reference-replay{margin-top:8px;border:1px solid rgba(151,116,58,.32);background:rgba(250,241,224,.85);color:#536044;box-shadow:0 4px 10px rgba(81,61,31,.07)}
#finish .result-reference-replay span:first-child{font:25px/1 Georgia,serif;margin-right:7px;vertical-align:-2px}
#finish .result-reference-runtime{display:none!important}

@media(max-width:400px){
  #finish .result-reference-card{padding:10px 9px 18px!important}
  #finish .result-reference-panel{padding:14px 10px 13px}
  #finish .result-reference-heading{font-size:27px}
  #finish .result-reference-stars{font-size:33px!important;letter-spacing:3px!important}
  #finish .result-reference-bouquet{height:154px;width:88%}
  #finish .bouquet-flower{width:86px;height:86px}#finish .bf-a{top:49px}#finish .bf-b{top:29px}#finish .bf-c{top:53px}#finish .bf-d,#finish .bf-e{top:75px}
  #finish .bouquet-leaf{height:72px;width:27px;top:76px!important}
  #finish .bouquet-wrap{width:96px;height:62px}
  #finish .result-reference-next{grid-template-columns:82px 1fr 28px;min-height:80px;gap:8px}
  #finish .result-reference-next-art{width:82px;height:66px}
  #finish .result-reference-next-copy strong{font-size:15px}
  #finish .result-reference-stats>span{grid-template-columns:22px 1fr;padding-left:4px;padding-right:4px;column-gap:4px}
  #finish .result-reference-stats svg{width:21px;height:21px}
  #finish .result-reference-stats b{font-size:16px}
  #finish .result-reference-rewards{gap:4px!important}
  #finish .finish-reward-tile{min-height:75px;padding-left:2px;padding-right:2px}
  #finish .finish-reward-tile img,#finish .finish-reward-tile i{width:32px;height:32px}
}
@media(min-width:650px){
  #finish.finish{padding:24px!important;align-items:center!important}
  #finish .result-reference-card{min-height:auto!important;border:1px solid rgba(146,112,59,.18)!important;border-radius:30px!important;padding:16px 16px 24px!important}
}

/* ===== source: freeBloomBotanicalV2 ===== */
/* Free Bloom — soft botanical redesign aligned with Daily / Collection / Shop. */
body.free-active{
  background:#f6efdf!important;
  color:#4d593b!important;
}
body.free-active #tabbar{display:none!important}
#free{
  min-height:100dvh!important;
  padding:0 0 calc(92px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:
    linear-gradient(180deg,rgba(251,247,237,.96),rgba(246,238,220,.98)),
    url("../scenes/chapter-meadow.webp") center top/cover fixed!important;
  color:#4f5c3c!important;
}
#free .free-page-shell{
  width:min(100%,760px)!important;
  min-height:calc(100dvh - 88px)!important;
  margin:0 auto!important;
  padding:16px 18px 28px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(255,252,244,.97),rgba(248,240,223,.95))!important;
  box-shadow:none!important;
}
#free .free-topbar{
  display:grid!important;
  grid-template-columns:48px 1fr 48px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:64px!important;
  margin-bottom:8px!important;
}
#free .free-topbar-btn{
  width:44px!important;height:44px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(164,126,66,.28)!important;
  background:rgba(250,243,226,.94)!important;
  color:#566343!important;
  box-shadow:0 5px 14px rgba(95,69,34,.10),inset 0 1px 0 rgba(255,255,255,.8)!important;
  cursor:pointer!important;
}
#free .free-topbar-btn svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#free .free-topbar-brand{
  text-align:center!important;
  font:400 clamp(22px,5vw,29px)/1 Georgia,"Times New Roman",serif!important;
  color:#4e5b3c!important;
}
#free .free-topbar-brand>span{display:block!important;width:62px!important;height:15px!important;margin:5px auto 0!important;color:#b58c4e!important}
#free .free-topbar-brand svg{display:block!important;width:100%!important;height:100%!important;fill:none!important;stroke:currentColor!important;stroke-width:1.2!important}
#free .free-bloom-intro{text-align:center!important;padding:8px 10px 18px!important}
#free .free-bloom-kicker{
  display:block!important;margin-bottom:6px!important;
  color:#a57b3f!important;font:800 9px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.16em!important;
}
#free .free-bloom-intro h2{
  margin:0!important;color:#465538!important;
  font:400 clamp(36px,8vw,50px)/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.025em!important;text-shadow:none!important;
}
#free .free-bloom-intro p{
  max-width:470px!important;margin:10px auto 0!important;
  color:#766d59!important;font:12px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#free .free-bloom-rule{display:block!important;width:90px!important;height:1px!important;margin:14px auto 0!important;background:linear-gradient(90deg,transparent,#bc965c,transparent)!important}
#free .free-config-card{
  margin:0 0 14px!important;padding:15px!important;
  border:1px solid rgba(154,119,62,.22)!important;border-radius:23px!important;
  background:rgba(255,251,241,.82)!important;
  box-shadow:0 8px 21px rgba(87,64,30,.075),inset 0 1px 0 rgba(255,255,255,.75)!important;
}
#free .free-section-head{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important;
}
#free .free-section-head small{
  display:block!important;color:#a17c46!important;font:800 8px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.15em!important;text-transform:uppercase!important;
}
#free .free-section-head h3{
  margin:3px 0 0!important;color:#4c593d!important;font:400 20px/1.05 Georgia,"Times New Roman",serif!important;
}
#free .free-current-badge{
  flex:0 0 auto!important;padding:7px 10px!important;border-radius:999px!important;
  border:1px solid rgba(115,134,70,.28)!important;background:rgba(119,137,77,.09)!important;
  color:#667545!important;font:800 9px/1 system-ui!important;
}
#free .difficulty-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0!important;
}
#free .diff-card{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  display:grid!important;grid-template-columns:52px minmax(0,1fr) 26px!important;align-items:center!important;gap:9px!important;
  min-height:108px!important;padding:12px!important;
  border:1px solid rgba(150,118,65,.18)!important;border-radius:18px!important;
  background:#fbf5e8!important;color:#536043!important;text-align:left!important;
  box-shadow:0 4px 12px rgba(88,64,31,.06)!important;text-shadow:none!important;
}
#free .diff-card::before{
  content:""!important;position:absolute!important;z-index:-2!important;inset:0 0 0 55%!important;
  background-image:linear-gradient(90deg,#fbf5e8 0%,rgba(251,245,232,.70) 36%,rgba(251,245,232,.18) 100%),var(--diff-art)!important;
  background-size:100% 100%,cover!important;background-position:center,center!important;opacity:.48!important;
}
#free .diff-card::after{
  content:""!important;display:block!important;position:absolute!important;z-index:-1!important;inset:0!important;
  background:linear-gradient(90deg,rgba(255,252,244,.98) 0%,rgba(255,252,244,.93) 52%,rgba(255,252,244,.28) 100%)!important;
}
#free .diff-flower{
  width:50px!important;height:50px!important;border-radius:50%!important;
  background-color:#f5ead5!important;background-size:86%!important;background-repeat:no-repeat!important;background-position:center!important;
  border:1px solid rgba(154,119,62,.22)!important;
  box-shadow:0 5px 12px rgba(92,66,32,.09)!important;
}
#free .diff-copy{min-width:0!important;position:relative!important;z-index:2!important}
#free .diff-card h4{
  margin:0 0 5px!important;color:#4a583a!important;font:400 20px/1 Georgia,"Times New Roman",serif!important;white-space:nowrap!important;text-shadow:none!important;
}
#free .diff-meta{
  display:block!important;color:#7a725f!important;font:9.5px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
}
#free .diff-solved{
  display:inline-flex!important;margin-top:8px!important;min-height:22px!important;padding:4px 7px!important;border-radius:999px!important;
  border:1px solid rgba(157,124,70,.16)!important;background:rgba(247,238,219,.75)!important;
  color:#85785d!important;font:700 8.5px/1 system-ui!important;text-shadow:none!important;
}
#free .diff-go{
  position:relative!important;z-index:2!important;display:grid!important;place-items:center!important;
  width:25px!important;height:25px!important;border-radius:50%!important;justify-self:end!important;
  border:1px solid rgba(148,116,64,.20)!important;background:rgba(255,250,239,.80)!important;
  color:#788253!important;font:800 13px/1 system-ui!important;box-shadow:none!important;text-shadow:none!important;
}
#free .diff-card.active{
  border-color:rgba(110,130,67,.72)!important;background:#faf4e5!important;
  box-shadow:0 0 0 2px rgba(115,137,73,.11),0 7px 17px rgba(86,66,30,.09)!important;
}
#free .diff-card.active h4{color:#566842!important}
#free .diff-card.active .diff-flower{border-color:rgba(109,128,67,.48)!important;background-color:#eef0da!important}
#free .diff-card.active .diff-go{background:#78884d!important;border-color:#697941!important;color:#fffdf7!important}
#free .free-mechanic-picker{margin:0 0 14px!important}
#free .free-mechanic-grid{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;
}
#free .free-mechanic-card{
  min-width:0!important;padding:9px 4px 8px!important;border-radius:14px!important;
  border:1px solid rgba(151,118,64,.18)!important;background:#fbf5e8!important;color:#6f6b58!important;
  box-shadow:none!important;text-align:center!important;
}
#free .free-mechanic-card i{
  display:grid!important;place-items:center!important;width:34px!important;height:34px!important;margin:0 auto!important;border-radius:50%!important;
  border:1px solid rgba(151,118,64,.18)!important;background:#f4e8d1!important;color:#77804e!important;font-style:normal!important;font-size:14px!important;
}
#free .free-mechanic-card b{display:block!important;margin-top:6px!important;color:#66634f!important;font:700 8.5px/1.15 system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#free .free-mechanic-card small{display:none!important}
#free .free-mechanic-card.active{
  border-color:rgba(111,132,68,.62)!important;background:#eef0db!important;box-shadow:0 0 0 1px rgba(111,132,68,.08)!important;
}
#free .free-mechanic-card.active i{background:#7b894f!important;border-color:#6b7943!important;color:#fffdf5!important}
#free .free-mechanic-card.active b{color:#52613b!important}
#free .free-mechanic-card.locked{opacity:.42!important}
#free .free-launch-card{
  display:grid!important;grid-template-columns:64px minmax(0,1fr) minmax(148px,190px)!important;align-items:center!important;gap:12px!important;
  margin:0!important;padding:13px 14px!important;border-radius:22px!important;
  border:1px solid rgba(154,119,62,.24)!important;
  background:linear-gradient(135deg,#f5ecd8,#fffaf0 58%,#f1e7d0)!important;
  box-shadow:0 9px 22px rgba(86,62,28,.085),inset 0 1px 0 rgba(255,255,255,.78)!important;
}
#free .free-launch-flower{
  display:block!important;width:60px!important;height:60px!important;border-radius:50%!important;
  background-color:#eee8cf!important;background-size:88%!important;background-position:center!important;background-repeat:no-repeat!important;
  border:1px solid rgba(131,145,82,.25)!important;box-shadow:0 5px 13px rgba(77,63,35,.10)!important;
}
#free .free-launch-copy{min-width:0!important}
#free .free-launch-copy small{display:block!important;color:#a07a43!important;font:800 8px/1.2 system-ui!important;letter-spacing:.14em!important}
#free .free-launch-copy strong{display:block!important;margin-top:3px!important;color:#48583b!important;font:400 21px/1.05 Georgia,"Times New Roman",serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#free .free-launch-copy span{display:block!important;margin-top:5px!important;color:#7c7460!important;font:9.5px/1.3 system-ui!important}
#free .free-actions{margin:0!important;position:static!important;padding:0!important;background:none!important}
#free #newBloomBtn{
  width:100%!important;min-height:44px!important;border-radius:999px!important;
  border:1px solid #65753d!important;background:linear-gradient(180deg,#849453,#6d7c43)!important;
  color:#fffdf6!important;font:400 15px/1 Georgia,"Times New Roman",serif!important;
  box-shadow:0 5px 12px rgba(71,85,42,.18),inset 0 1px 0 rgba(255,255,255,.26)!important;
}
#free #newBloomBtn:active{transform:scale(.985)!important}
#free .free-bottom-nav{
  position:fixed!important;left:50%!important;transform:translateX(-50%)!important;bottom:0!important;z-index:90!important;
  width:min(100%,760px)!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;
  padding:7px 8px calc(7px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:rgba(249,242,227,.97)!important;backdrop-filter:blur(14px)!important;
  border-top:1px solid rgba(147,115,62,.18)!important;box-shadow:0 -7px 22px rgba(82,61,31,.07)!important;
}
#free .free-bottom-nav .home-nav-item{
  min-height:58px!important;border:0!important;border-radius:16px!important;background:transparent!important;color:#68705a!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  font:9px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#free .free-bottom-nav .home-nav-item svg{width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#free .free-bottom-nav .home-nav-house{width:26px!important;height:26px!important}
@media(max-width:560px){
  #free .free-page-shell{padding:11px 10px 22px!important}
  #free .free-topbar{grid-template-columns:44px 1fr 44px!important;min-height:58px!important}
  #free .free-topbar-btn{width:40px!important;height:40px!important}
  #free .free-bloom-intro{padding-top:4px!important;padding-bottom:14px!important}
  #free .free-bloom-intro h2{font-size:38px!important}
  #free .free-bloom-intro p{font-size:10.5px!important;max-width:330px!important}
  #free .free-config-card{padding:12px!important;border-radius:20px!important;margin-bottom:10px!important}
  #free .free-section-head h3{font-size:18px!important}
  #free .difficulty-grid{gap:7px!important}
  #free .diff-card{grid-template-columns:45px minmax(0,1fr) 22px!important;gap:6px!important;min-height:96px!important;padding:9px 8px!important;border-radius:15px!important}
  #free .diff-flower{width:43px!important;height:43px!important}
  #free .diff-card h4{font-size:17px!important}
  #free .diff-meta{font-size:8px!important}
  #free .diff-solved{margin-top:6px!important;padding:3px 5px!important;font-size:7px!important}
  #free .diff-go{width:21px!important;height:21px!important;font-size:11px!important}
  #free .free-mechanic-grid{gap:5px!important}
  #free .free-mechanic-card{padding:7px 2px 6px!important;border-radius:12px!important}
  #free .free-mechanic-card i{width:29px!important;height:29px!important;font-size:12px!important}
  #free .free-mechanic-card b{font-size:7px!important}
  #free .free-launch-card{grid-template-columns:52px minmax(0,1fr)!important;gap:9px!important;padding:11px!important;border-radius:19px!important}
  #free .free-launch-flower{width:50px!important;height:50px!important}
  #free .free-launch-copy strong{font-size:18px!important}
  #free .free-launch-copy span{font-size:8.5px!important}
  #free .free-actions{grid-column:1/-1!important}
  #free #newBloomBtn{min-height:42px!important;font-size:14px!important}
  #free .free-bottom-nav{padding-left:5px!important;padding-right:5px!important}
  #free .free-bottom-nav .home-nav-item{min-height:56px!important;font-size:8px!important}
}
@media(max-width:370px){
  #free .difficulty-grid{grid-template-columns:1fr!important}
  #free .diff-card{min-height:84px!important}
  #free .free-mechanic-grid{overflow-x:auto!important;grid-template-columns:repeat(5,64px)!important;padding-bottom:2px!important;scrollbar-width:none!important}
}

/* ===== source: gameplayBotanicalV017 ===== */
/* v0.1.7 — Gameplay aligned with the approved soft botanical UI language. */
#game{
  --bot-ink:#46553a;--bot-olive:#77864f;--bot-olive-dark:#5e6c3a;--bot-gold:#bd9555;--bot-paper:#f7efdf;--bot-paper-2:#efe3cf;--bot-line:rgba(142,111,60,.25);
  padding:max(9px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) max(9px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px))) max(8px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))) max(9px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  background-color:#f4ebda!important;
  background-image:
    radial-gradient(circle at 50% -8%,rgba(255,255,255,.88),transparent 39%),
    linear-gradient(rgba(250,246,235,.91),rgba(242,232,214,.96)),
    url("../scenes/soft-botanical-home.webp")!important;
  background-size:auto,auto,cover!important;background-position:center,center,center!important;background-repeat:no-repeat!important;
  color:var(--bot-ink)!important;
}
#game .game-shell{max-width:620px!important;gap:7px!important;padding:0!important}
#game .side-column{display:contents!important}

/* Top title and actions */
#game .gameplay-botanical-hud{
  order:-4!important;min-height:64px!important;display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;
  padding:3px 3px 4px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#game .gameplay-botanical-hud .game-menu-trigger{
  width:44px!important;height:44px!important;border-radius:50%!important;background:rgba(250,243,226,.96)!important;border:1px solid rgba(162,126,68,.30)!important;
  color:#536044!important;box-shadow:0 6px 15px rgba(79,59,28,.11),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
#game .gameplay-botanical-hud .game-menu-trigger svg{width:23px!important;height:23px!important;stroke:currentColor!important}
#game .hud-title{text-align:center!important;padding:0!important;align-self:center!important}
#game .hud-title p{order:0!important;margin:0 0 3px!important;color:#7e765f!important;font:400 11px/1.1 Georgia,"Times New Roman",serif!important;letter-spacing:.015em!important;text-shadow:none!important}
#game .hud-title h2{margin:0!important;color:#445337!important;font:400 clamp(25px,6vw,33px)/1.02 Georgia,"Times New Roman",serif!important;letter-spacing:.005em!important;text-shadow:none!important;white-space:nowrap!important}
#game .game-title-ornament{display:block;height:10px;margin:3px auto 0;color:#b99051}
#game .game-title-ornament svg{display:block;width:54px;height:12px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round}
#game .game-quick-actions{display:flex;align-items:center;gap:7px;justify-self:end}
#game .game-quick-pill{height:38px;min-width:72px;padding:0 10px;border-radius:999px;border:1px solid rgba(160,124,67,.28);background:rgba(250,243,227,.96);color:#4d5940;box-shadow:0 5px 12px rgba(80,60,29,.09),inset 0 1px 0 rgba(255,255,255,.86);display:flex;align-items:center;justify-content:center;gap:5px;font:400 12px/1 Georgia,"Times New Roman",serif;cursor:pointer}
#game .game-quick-pill svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#game .game-quick-pill i{min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#7b8952;color:#fff8ea;display:grid;place-items:center;font:700 8px/1 system-ui;font-style:normal}
#game .game-quick-pill.active{background:linear-gradient(180deg,#839154,#6c7944);color:#fffaf0;border-color:#69763f;box-shadow:0 6px 13px rgba(86,96,50,.18),inset 0 1px 0 rgba(255,255,255,.25)}
#game .gameplay-settings-source{display:none!important}

/* Statistics card */
#game .game-premium-stats{order:-2!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;min-height:62px!important;margin:0 4px 1px!important;padding:8px 9px!important;border:1px solid var(--bot-line)!important;border-radius:17px!important;background:rgba(251,246,235,.91)!important;box-shadow:0 6px 15px rgba(84,63,31,.08),inset 0 1px 0 rgba(255,255,255,.84)!important}
#game .game-stat{min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:1px 9px;color:#4a5740;border-right:1px solid rgba(142,111,60,.16)}
#game .game-stat:last-child{border-right:0}
#game .game-stat>svg{flex:0 0 auto;width:26px;height:26px;fill:none;stroke:#566348;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
#game .game-stat>span,#game .game-stat-mistake>div{display:grid;gap:1px;min-width:0}
#game .game-stat small,#game .mistake-meter>span{color:#77715f!important;font:400 8px/1.15 system-ui!important;letter-spacing:.01em!important;white-space:nowrap!important}
#game .game-stat b,#game .hud-timer b,#game .mistake-meter>b{color:#46543b!important;font:400 21px/1 Georgia,"Times New Roman",serif!important;font-variant-numeric:tabular-nums!important}
#game .hud-timer{display:grid!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:left!important}
#game .hud-timer>small{font:400 6.5px/1 system-ui!important;color:#9c9076!important;white-space:nowrap!important;margin-top:1px!important}
#game .mistake-meter{margin:0!important;padding:0!important;background:transparent!important;border:0!important;min-height:0!important;display:grid!important;gap:1px!important;color:#46543b!important}
#game .mistake-meter em{display:none!important}
#game .mistake-meter.danger>b,#game .mistake-meter.failed>b{color:#a44d42!important}

/* Board — parchment tiles with calm olive feedback. */
:is(#game,#loadoutStage) .board-stage{order:0!important;flex:1 1 0!important;min-height:0!important;padding:3px 0!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
:is(#game,#loadoutStage) .board-stage::before{display:none!important}
:is(#game,#loadoutStage) .board{
  max-width:96%!important;max-height:96%!important;padding:5px!important;gap:1px!important;border-radius:18px!important;overflow:hidden!important;
  background:#c8b898!important;border:1px solid rgba(137,104,55,.42)!important;
  box-shadow:0 10px 23px rgba(76,56,28,.13),0 0 0 3px rgba(250,243,228,.62),inset 0 1px 0 rgba(255,255,255,.55)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
:is(#game,#loadoutStage) .cell{background:#f7edda!important;border-radius:4px!important;border-color:rgba(164,139,96,.22)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;transition:background-color .08s linear,outline-color .08s linear!important}
:is(#game,#loadoutStage) .cell.given{background:#efe2cd!important}
:is(#game,#loadoutStage) .cell.peer{background:#f0e5d3!important}
:is(#game,#loadoutStage) .cell.same:not(.selected){background:#e9e6ce!important;box-shadow:inset 0 0 0 1px rgba(116,134,74,.30)!important}
:is(#game,#loadoutStage) .cell.selected{background:#e8e0c8!important;outline:2px solid #7c8a51!important;outline-offset:-2px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.44)!important}
:is(#game,#loadoutStage) .cell.given-select{box-shadow:inset 0 0 0 1px rgba(118,135,76,.42)!important}
:is(#game,#loadoutStage) .cell.c3,:is(#game,#loadoutStage) .cell.c6{border-right:2px solid rgba(115,102,71,.63)!important}
:is(#game,#loadoutStage) .cell.r3,:is(#game,#loadoutStage) .cell.r6{border-bottom:2px solid rgba(115,102,71,.63)!important}
:is(#game,#loadoutStage) .cell.spectrum-cell{background:#eee4dc!important}
:is(#game,#loadoutStage) .cell.spectrum-cell.peer{background:#e6dbd3!important}
:is(#game,#loadoutStage) .cell.in-zone{background:#eee3ee!important}
:is(#game,#loadoutStage) .cell.in-zone.peer{background:#e7dce8!important}
:is(#game,#loadoutStage) .cell.in-fence{background:#e1ebe0!important}
:is(#game,#loadoutStage) .cell.in-fence.peer{background:#d9e5d8!important}
:is(#game,#loadoutStage) .flower-token.tok-lg{width:84%!important;height:84%!important}
:is(#game,#loadoutStage) .flower-token.has-image{filter:drop-shadow(0 2px 2px rgba(78,58,30,.14)) saturate(.93)!important}
:is(#game,#loadoutStage) .cell.given .flower-token.has-image{filter:drop-shadow(0 1px 2px rgba(78,58,30,.14)) saturate(.88)!important}
:is(#game,#loadoutStage) .cell.peer .flower-token.has-image{opacity:.84!important}
:is(#game,#loadoutStage) .cell.same .flower-token.has-image,:is(#game,#loadoutStage) .cell.selected .flower-token.has-image{opacity:1!important;filter:drop-shadow(0 2px 3px rgba(76,57,30,.18)) saturate(1)!important}
#game .notes-grid{color:#6c7554!important}
#game .note-num{color:#536044!important;text-shadow:none!important}
#game .note-dot i{box-shadow:none!important}

/* Slim progress line between board and tools. */
#game .hud-strip{order:1!important;width:calc(100% - 20px)!important;height:5px!important;margin:0 10px 0!important;padding:0!important}
#game .progress-mini{height:4px!important;border-radius:999px!important;background:rgba(120,115,94,.16)!important;border:0!important;overflow:hidden!important}
#game .progress-mini>i{background:linear-gradient(90deg,#89955d,#687642)!important;box-shadow:none!important}
#game .hud-feedback-row,#game .hud-status{display:none!important}

/* Action tray and one-row flower palette. */
#game .dock{order:2!important;flex:0 0 auto!important;width:100%!important;margin:0!important;padding:6px!important;gap:6px!important;border-radius:18px!important;background:rgba(250,244,231,.93)!important;border:1px solid rgba(143,112,62,.24)!important;box-shadow:0 7px 16px rgba(82,61,31,.09),inset 0 1px 0 rgba(255,255,255,.82)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#game .dock-tools{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important}
#game .tool{min-height:42px!important;height:42px!important;padding:3px 2px!important;border-radius:12px!important;border:1px solid rgba(151,119,67,.20)!important;background:#f8eedc!important;box-shadow:0 2px 6px rgba(79,60,30,.05),inset 0 1px 0 rgba(255,255,255,.75)!important;color:#546044!important}
#game .tool .tool-ico{width:25px!important;height:22px!important;margin:0 auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#566347!important;display:grid!important;place-items:center!important}
#game .tool .tool-ico svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;filter:none!important}
#game .tool .tool-lbl{font:500 8px/1 system-ui!important;color:#625f50!important}
#game .tool.active{background:linear-gradient(180deg,#879557,#707e47)!important;border-color:#66733e!important;box-shadow:0 4px 9px rgba(91,102,55,.14),inset 0 1px 0 rgba(255,255,255,.22)!important}
#game .tool.active .tool-ico,#game .tool.active .tool-lbl{color:#fff9ec!important}
#game .tool.hint-ad-mode,#game .tool.hint-bonus-mode{background:#f4ead6!important;border-color:rgba(171,129,59,.28)!important;box-shadow:none!important}
#game .tool.hint-ad-mode .tool-ico,#game .tool.hint-ad-mode .tool-lbl{color:#8a6e3c!important}
#game .tool.hint-bonus-mode .tool-ico,#game .tool.hint-bonus-mode .tool-lbl{color:#52745b!important}
#game .tool:disabled{opacity:.34!important}
#game .palette{grid-template-columns:repeat(10,minmax(0,1fr))!important;gap:3px!important;padding:6px 5px 4px!important;border-radius:14px!important;background:rgba(247,238,220,.72)!important;border:1px solid rgba(151,119,67,.15)!important}
#game .color-btn{height:58px!important;min-height:58px!important;padding:3px 1px 15px!important;border-radius:9px!important;background:rgba(255,250,241,.73)!important;border:1px solid rgba(153,123,76,.13)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.68)!important}
#game .color-btn .flower-token{height:auto!important;width:88%!important;max-width:37px!important;max-height:37px!important;filter:drop-shadow(0 2px 2px rgba(75,57,30,.13))!important}
#game .color-btn .remain-badge{position:absolute!important;left:50%!important;right:auto!important;top:auto!important;bottom:3px!important;transform:translateX(-50%)!important;min-width:0!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#566047!important;box-shadow:none!important;font:400 11px/1 Georgia,"Times New Roman",serif!important}
#game .color-btn.exhausted{opacity:.34!important}
#game .color-btn.exhausted .remain-badge{background:transparent!important;color:#9a927f!important}
#game .clear-btn{font:400 24px/1 Georgia,"Times New Roman",serif!important;color:#75805c!important;padding-bottom:3px!important}
#game .clear-btn::after{content:"Temizle";position:absolute;left:50%;bottom:3px;transform:translateX(-50%);font:500 6.5px/1 system-ui;color:#7b7563;white-space:nowrap}

/* Effects stay subtle on paper. */
#game .line-sweep{display:none!important}
:is(#game,#loadoutStage) .cell.wave::after{background:radial-gradient(circle,rgba(196,160,88,.18),transparent 72%)!important}
:is(#game,#loadoutStage) .flower-token.just-placed{animation:fairy-place .16s ease-out both!important}
#game:not(.hidden) ~ #tabbar{display:none!important}
#game .coach-bubble{background:linear-gradient(180deg,#fffaf0,#efe2ca)!important;border:1px solid rgba(154,119,61,.28)!important;color:#4c5940!important;box-shadow:0 14px 32px rgba(73,56,29,.16)!important}
#game .coach-bubble p{color:#566047!important}
#game .coach-next{background:linear-gradient(180deg,#879557,#707e47)!important;color:#fffaf0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)!important}
#game .mechanic-toast{background:linear-gradient(145deg,rgba(255,250,239,.98),rgba(241,229,208,.98))!important;border:1px solid rgba(154,119,61,.30)!important;box-shadow:0 12px 28px rgba(72,55,29,.16)!important}
#game .mechanic-toast-copy b{color:#46543a!important;font-family:Georgia,"Times New Roman",serif!important}
#game .mechanic-toast-copy span{color:#6d705c!important}
#game .mechanic-toast-close{color:#778064!important}
#game .twin-demo{color:#6c764d!important}
#game .twin-demo i{color:#4e593e!important;background:linear-gradient(180deg,#f8edd5,#e3d0aa)!important;border-color:rgba(144,111,58,.28)!important}
#game .twin-demo span{color:#8f7447!important}
#game .rotate-hint{color:#4f5c42!important;background:#f5ecdc!important}
#game .rotate-hint p{color:#68705a!important}
#game .rotate-hint .rot-ico svg{stroke:#71804c!important;filter:none!important}

@media(max-width:480px){
  #game{padding-left:6px!important;padding-right:6px!important}
  #game .game-shell{gap:5px!important}
  #game .gameplay-botanical-hud{grid-template-columns:43px minmax(0,1fr) auto!important;gap:5px!important;min-height:58px!important}
  #game .gameplay-botanical-hud .game-menu-trigger{width:40px!important;height:40px!important}
  #game .hud-title h2{font-size:25px!important}
  #game .hud-title p{font-size:9.5px!important}
  #game .game-quick-actions{gap:4px!important}
  #game .game-quick-pill{min-width:61px!important;height:34px!important;padding:0 7px!important;font-size:10px!important;gap:3px!important}
  #game .game-quick-pill svg{width:17px!important;height:17px!important}
  #game .game-quick-pill i{min-width:14px;height:14px;font-size:7px!important}
  #game .game-premium-stats{min-height:55px!important;padding:6px 5px!important;margin-left:2px!important;margin-right:2px!important;border-radius:14px!important}
  #game .game-stat{gap:5px!important;padding:1px 5px!important}
  #game .game-stat>svg{width:22px!important;height:22px!important}
  #game .game-stat b,#game .hud-timer b,#game .mistake-meter>b{font-size:18px!important}
  #game .game-stat small,#game .mistake-meter>span{font-size:7px!important}
  :is(#game,#loadoutStage) .board{max-width:97%!important;max-height:97%!important;padding:4px!important;border-radius:16px!important}
  #game .dock{padding:5px!important;gap:5px!important;border-radius:15px!important}
  #game .dock-tools{gap:3px!important}
  #game .tool{min-height:39px!important;height:39px!important;border-radius:10px!important}
  #game .tool .tool-ico{height:20px!important}
  #game .tool .tool-ico svg{width:17px!important;height:17px!important}
  #game .tool .tool-lbl{font-size:6.9px!important}
  #game .palette{gap:2px!important;padding:4px 3px 3px!important;border-radius:12px!important}
  #game .color-btn{height:50px!important;min-height:50px!important;padding-bottom:13px!important;border-radius:7px!important}
  #game .color-btn .flower-token{max-width:31px!important;max-height:31px!important}
  #game .color-btn .remain-badge{font-size:9.5px!important;bottom:2px!important}
  #game .clear-btn{font-size:21px!important}
  #game .clear-btn::after{font-size:5.8px!important;bottom:2px!important}
}
@media(max-height:720px){
  #game .gameplay-botanical-hud{min-height:49px!important}
  #game .game-menu-trigger{width:36px!important;height:36px!important}
  #game .hud-title h2{font-size:21px!important}
  #game .hud-title p,#game .game-title-ornament{display:none!important}
  #game .game-quick-pill{height:31px!important;min-width:56px!important;font-size:9px!important}
  #game .game-premium-stats{min-height:47px!important;padding:4px!important}
  #game .game-stat>svg{width:19px!important;height:19px!important}
  #game .game-stat b,#game .hud-timer b,#game .mistake-meter>b{font-size:16px!important}
  #game .tool{min-height:35px!important;height:35px!important}
  #game .tool .tool-lbl{display:none!important}
  #game .color-btn{height:43px!important;min-height:43px!important}
  #game .color-btn .flower-token{max-height:27px!important;max-width:27px!important}
}
@media(min-width:700px) and (min-height:650px){
  #game .game-shell{max-width:640px!important}
  #game .gameplay-botanical-hud{min-height:70px!important}
  #game .game-premium-stats{min-height:66px!important}
  :is(#game,#loadoutStage) .board{max-width:92%!important;max-height:92%!important}
}

/* ===== source: aux-theme-botanical-hotfix ===== */
/* v0.1.7 hotfix — helper screens aligned to botanical light theme */
#feedbackSheet.sheet,
#legalSheet.sheet,
#flowerQaSheet.sheet{
  background:rgba(238,232,219,.72)!important;
  backdrop-filter:blur(14px) saturate(1.05)!important;
}

/* Legal/support content is a child dialog of Settings. Keep Settings visible
   behind it and guarantee that the legal dialog receives the interaction. */
#legalSheet.sheet{z-index:10080!important;pointer-events:auto!important}
#legalSheet.sheet.hidden{display:none!important}
#chapterIntro.story-overlay,
#chapterComplete.story-overlay,
#mechanicCoach:not(.hidden),
#mistakeFail.finish,
#onboarding.finish{
  background:rgba(236,229,214,.78)!important;
  backdrop-filter:blur(14px) saturate(1.02)!important;
}
#feedbackSheet .sheet-panel,
#legalSheet .sheet-panel,
#flowerQaSheet .sheet-panel,
#chapterIntro .story-card,
#chapterComplete .story-card,
#mistakeFail .finish-card,
#onboarding .finish-card,
#mechanicCoach .mechanic-coach-card{
  border:1px solid rgba(189,166,118,.34)!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(255,252,246,.98) 0%,rgba(244,236,221,.985) 100%)!important;
  box-shadow:0 22px 58px rgba(95,74,42,.16), inset 0 1px 0 rgba(255,255,255,.92)!important;
  color:#4f5c40!important;
}
#feedbackSheet .sheet-head h3,
#legalSheet .sheet-head h3,
#flowerQaSheet .sheet-head h3,
#chapterIntro .story-content h2,
#chapterComplete .story-content h2,
#mistakeFail .finish-card h2,
#onboarding .finish-card h2,
#mechanicCoach .mechanic-coach-card h3{
  color:#465334!important;
  font:400 clamp(22px,3.4vw,34px)/1.08 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.01em!important;
}
#feedbackSheet .sheet-head::after,
#legalSheet .sheet-head::after,
#flowerQaSheet .sheet-head::after{
  background:linear-gradient(90deg,transparent,rgba(186,154,91,.58),transparent)!important;
}
#feedbackSheet .icon-btn,
#legalSheet .icon-btn,
#flowerQaSheet .icon-btn{
  border:1px solid rgba(186,164,119,.35)!important;
  background:rgba(255,249,239,.92)!important;
  color:#5d684d!important;
  box-shadow:0 6px 14px rgba(91,69,35,.08)!important;
}
#feedbackSheet .sheet-body,
#legalSheet .sheet-body,
#flowerQaSheet .sheet-body,
#chapterIntro .story-content,
#chapterComplete .story-content,
#mistakeFail .finish-card,
#onboarding .finish-card,
#mechanicCoach .mechanic-coach-card,
#feedbackSheet .feedback-intro,
#legalSheet .legal-body,
#flowerQaSheet .flower-qa-note{
  color:#69755a!important;
}
#feedbackSheet .shop-kicker,
#flowerQaSheet .shop-kicker,
#chapterIntro .story-kicker,
#chapterComplete .story-kicker,
#mechanicCoach .mechanic-coach-kicker,
#mistakeFail .result-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:rgba(139,153,90,.11)!important;
  border:1px solid rgba(139,153,90,.23)!important;
  color:#9a7d47!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
#feedbackSheet .feedback-save-card,
#legalSheet .legal-status,
#chapterIntro .story-reward-note,
#chapterComplete .chapter-complete-rewards,
#mechanicCoach .mechanic-coach-card,
#flowerQaSheet .flower-qa-chapter,
#mistakeFail .mistake-fail-pips,
#onboarding .onboard-steps li{
  background:rgba(255,249,241,.82)!important;
  border-color:rgba(183,160,114,.22)!important;
}
#feedbackSheet .feedback-save-card{box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;}
#feedbackSheet .feedback-save-head b,
#feedbackSheet .feedback-field>span,
#legalSheet .legal-body h4,
#flowerQaSheet .flower-qa-chapter header b,
#chapterIntro .story-region,
#chapterComplete .story-region{
  color:#7b6a4d!important;
}
#feedbackSheet .feedback-cloud-state,
#feedbackSheet .feedback-save-note,
#feedbackSheet .feedback-status,
#legalSheet .legal-status,
#flowerQaSheet .flower-qa-note,
#flowerQaSheet .flower-qa-token small,
#chapterComplete .chapter-complete-score small,
#onboarding .onboard-steps span,
#onboarding .onboard-note,
#mechanicCoach .mechanic-coach-card p{
  color:#807763!important;
}
#feedbackSheet .feedback-code,
#feedbackSheet .feedback-restore input,
#feedbackSheet .feedback-field select,
#feedbackSheet .feedback-field textarea,
#feedbackSheet .feedback-field input[type="text"],
#legalSheet #legalSheetContent,
#flowerQaSheet .flower-qa-chapter,
#chapterComplete .chapter-complete-score,
#mistakeFail .mistake-fail-card,
#onboarding .onboard-card{
  background:rgba(255,252,246,.94)!important;
  border-color:rgba(185,163,118,.22)!important;
  color:#4f5c40!important;
}
#feedbackSheet .feedback-code{
  color:#6b7648!important;
  font:700 12px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace!important;
}
#feedbackSheet .feedback-field select,
#feedbackSheet .feedback-field textarea,
#feedbackSheet .feedback-field input[type="text"],
#feedbackSheet .feedback-restore input{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
}
#feedbackSheet .feedback-field select:focus,
#feedbackSheet .feedback-field textarea:focus,
#feedbackSheet .feedback-field input[type="text"]:focus,
#feedbackSheet .feedback-restore input:focus{
  border-color:rgba(126,142,82,.45)!important;
  box-shadow:0 0 0 3px rgba(126,142,82,.08), inset 0 1px 0 rgba(255,255,255,.78)!important;
}
#feedbackSheet .feedback-star{
  border:1px solid rgba(186,163,119,.24)!important;
  background:rgba(255,249,240,.88)!important;
  color:#b7af9e!important;
}
#feedbackSheet .feedback-star.active{
  color:#d2a33f!important;
  border-color:rgba(210,163,63,.34)!important;
  background:rgba(255,242,205,.72)!important;
}
#feedbackSheet .feedback-diag{color:#7c755f!important}
#legalSheet .legal-body{font-size:11px!important;line-height:1.62!important}
#legalSheet .legal-body ul{padding-left:20px!important}
#legalSheet #legalSheetContent h1,
#legalSheet #legalSheetContent h2,
#legalSheet #legalSheetContent h3{
  color:#51603e!important;
  font-family:Georgia,"Times New Roman",serif!important;
}
#chapterIntro .story-card,
#chapterComplete .story-card{
  width:min(470px,100%)!important;
  overflow:hidden!important;
}
#chapterIntro .story-scene,
#chapterComplete .story-scene{
  height:228px!important;
}
#chapterIntro .story-scene::after,
#chapterComplete .story-scene::after{
  background:linear-gradient(180deg,rgba(255,255,255,.0) 25%,rgba(246,239,224,.58) 62%,rgba(244,235,219,.98) 100%)!important;
}
#chapterIntro .story-content,
#chapterComplete .story-content{
  margin-top:-20px!important;
  padding:0 20px 22px!important;
}
#chapterIntro .story-content p,
#chapterComplete .story-content p{
  color:#6d775d!important;
}
#chapterIntro .story-flowers,
#chapterComplete .story-flowers{
  gap:8px!important;
}
#chapterIntro .story-flowers i,
#chapterComplete .story-flowers i{
  filter:drop-shadow(0 5px 8px rgba(121,94,52,.12))!important;
}
#chapterComplete .chapter-complete-score{
  gap:10px!important;
  padding:12px 10px!important;
  border-radius:17px!important;
}
#chapterComplete .chapter-complete-score b{
  color:#4d583e!important;
  font:400 20px/1 Georgia,"Times New Roman",serif!important;
}
#chapterComplete .chapter-complete-flowers i.locked{filter:grayscale(1) brightness(1.03)!important;opacity:.34!important}
#chapterComplete .chapter-complete-rewards span,
#chapterIntro .story-reward-note{
  display:block;
  color:#7b705c!important;
}
#mistakeFail.finish,
#onboarding.finish{
  align-items:center!important;
}
#mistakeFail .finish-card,
#onboarding .finish-card{
  max-width:430px!important;
  text-align:center!important;
}
#mistakeFail .mistake-fail-mark{
  color:#b56b61!important;
  border:1px solid rgba(188,120,108,.28)!important;
  background:radial-gradient(circle at 50% 40%,rgba(233,188,176,.50),rgba(255,250,245,.0) 72%)!important;
  box-shadow:none!important;
}
#mistakeFail .mistake-fail-pips{
  display:flex!important;
  justify-content:center!important;
  gap:10px!important;
  padding:0!important;
  margin:2px 0 16px!important;
  background:transparent!important;
  border:none!important;
}
#mistakeFail .mistake-fail-pips i{
  width:10px!important;
  height:10px!important;
  background:#cf847a!important;
  box-shadow:0 0 0 4px rgba(207,132,122,.08)!important;
}
#onboarding .onboard-prism-mark{
  box-shadow:0 16px 28px rgba(91,69,35,.12)!important;
  border:1px solid rgba(183,160,114,.28)!important;
}
#onboarding .onboard-steps{
  list-style:none!important;
  padding:0!important;
  margin:0 0 14px!important;
  gap:9px!important;
}
#onboarding .onboard-steps li{
  border:1px solid rgba(183,160,114,.18)!important;
  border-radius:16px!important;
  padding:10px 12px!important;
  text-align:left!important;
}
#onboarding .onboard-steps b,
#mechanicCoach .mechanic-coach-card h3{color:#4c583b!important}
#mechanicCoach{padding:14px 12px calc(14px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
#mechanicCoach .mechanic-coach-card{
  width:min(500px,100%)!important;
  padding:16px 16px 15px!important;
}
#mechanicCoach .mechanic-coach-progress i{
  background:rgba(142,154,97,.20)!important;
}
#mechanicCoach .mechanic-coach-progress i.on{
  background:#8b9958!important;
}
#flowerQaSheet .flower-qa-panel{max-width:780px!important}
#flowerQaSheet .flower-qa-grid{gap:14px!important}
#flowerQaSheet .flower-qa-chapter{padding:13px!important;border-radius:20px!important}
#flowerQaSheet .flower-qa-row{gap:8px!important}
#flowerQaSheet .flower-qa-token i{filter:drop-shadow(0 4px 6px rgba(121,94,52,.10))}
#flowerQaSheet .flower-qa-token small{font-size:7px!important}
#feedbackSheet .btn.primary,
#legalSheet .btn.primary,
#chapterIntro .btn.primary,
#chapterComplete .btn.primary,
#mistakeFail .btn.primary,
#onboarding .btn.primary,
#mechanicCoach .btn.primary,
#flowerQaSheet .btn.primary{
  background:linear-gradient(180deg,#8d9c59 0%,#798749 100%)!important;
  color:#fffef8!important;
  border:1px solid rgba(113,127,66,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 6px 16px rgba(89,112,49,.16)!important;
}
#feedbackSheet .btn.ghost,
#legalSheet .btn.ghost,
#chapterIntro .btn.ghost,
#chapterComplete .btn.ghost,
#mistakeFail .btn:not(.primary),
#onboarding .btn:not(.primary),
#mechanicCoach .btn.ghost,
#flowerQaSheet .btn.ghost{
  background:rgba(255,250,242,.96)!important;
  color:#556244!important;
  border:1px solid rgba(188,165,120,.38)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 5px 12px rgba(91,69,35,.06)!important;
}
#feedbackSheet .btn,
#legalSheet .btn,
#chapterIntro .btn,
#chapterComplete .btn,
#mistakeFail .btn,
#onboarding .btn,
#mechanicCoach .btn,
#flowerQaSheet .btn{
  border-radius:999px!important;
  min-height:42px!important;
  font:400 15px/1.1 Georgia,"Times New Roman",serif!important;
}
@media (max-width:560px){
  #feedbackSheet .feedback-actions,
  #chapterIntro .story-actions,
  #chapterComplete .story-actions,
  #mistakeFail .finish-actions,
  #onboarding .finish-actions{grid-template-columns:1fr!important}
  #chapterIntro .story-scene,
  #chapterComplete .story-scene{height:196px!important}
  #flowerQaSheet .flower-qa-row{grid-template-columns:repeat(3,1fr)!important}
}

/* ===== source: gameplay-usability-hotfix-v017 ===== */
/* v0.1.7 gameplay usability hotfix — timer, header, softness, stronger highlights */
#game .gameplay-botanical-hud{
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  gap:10px!important;
}
#game .game-quick-actions{display:none!important}
#game .gameplay-settings-source{
  display:grid!important;place-items:center!important;
  width:44px!important;height:44px!important;border-radius:50%!important;
  background:rgba(250,243,226,.96)!important;border:1px solid rgba(162,126,68,.30)!important;
  color:#536044!important;box-shadow:0 6px 15px rgba(79,59,28,.11),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
#game .gameplay-settings-source svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#game .hud-title{max-width:100%!important}
#game .hud-title h2{
  white-space:normal!important;
  max-width:100%!important;
  font-size:clamp(26px,5.4vw,37px)!important;
  line-height:1.02!important;
}
#game .hud-title p{font-size:12px!important;color:#8a7b61!important}
/* Make the main play surface calmer and softer. */
#game{
  background-image:
    radial-gradient(circle at 50% -10%,rgba(255,255,255,.92),transparent 40%),
    linear-gradient(rgba(251,248,241,.94),rgba(243,234,219,.97)),
    url("../scenes/soft-botanical-home.webp")!important;
}
#game .game-shell{max-width:646px!important;gap:9px!important}
#game .game-premium-stats{
  background:rgba(252,248,240,.94)!important;
  box-shadow:0 8px 20px rgba(84,63,31,.08),inset 0 1px 0 rgba(255,255,255,.92)!important;
}
:is(#game,#loadoutStage) .board-stage{padding:7px 0 9px!important}
:is(#game,#loadoutStage) .board{
  max-width:97%!important;max-height:97%!important;
  padding:7px!important;
  border-radius:23px!important;
  background:linear-gradient(180deg,#ccbc9d,#c4b18f)!important;
  border:1px solid rgba(135,104,57,.34)!important;
  box-shadow:0 15px 34px rgba(76,56,28,.12),0 0 0 4px rgba(250,244,232,.74),inset 0 1px 0 rgba(255,255,255,.62)!important;
}
:is(#game,#loadoutStage) .cell{
  background:#f9f1e3!important;
  border-radius:6px!important;
  border-color:rgba(169,145,103,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
  transition:background-color .08s linear,outline-color .08s linear,box-shadow .08s linear,transform .08s linear!important;
}
:is(#game,#loadoutStage) .cell.given{background:#f1e6d4!important}
:is(#game,#loadoutStage) .cell.peer{
  background:#efe6d7!important;
  box-shadow:inset 0 0 0 1px rgba(171,149,109,.20), inset 0 1px 0 rgba(255,255,255,.48)!important;
}
:is(#game,#loadoutStage) .cell.same:not(.selected){
  background:linear-gradient(180deg,#edf0d8,#e5ebc6)!important;
  box-shadow:inset 0 0 0 2px rgba(122,141,76,.34),0 0 0 1px rgba(255,255,255,.36)!important;
}
:is(#game,#loadoutStage) .cell.selected{
  background:linear-gradient(180deg,#ece4cf,#e3d8bc)!important;
  outline:3px solid rgba(119,136,72,.96)!important;
  outline-offset:-2px!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.52),0 0 0 3px rgba(119,136,72,.12)!important;
}
:is(#game,#loadoutStage) .cell.given-select{box-shadow:inset 0 0 0 2px rgba(118,135,76,.48)!important}
:is(#game,#loadoutStage) .cell.peer .flower-token.has-image{opacity:.94!important;filter:drop-shadow(0 2px 3px rgba(76,57,30,.15)) saturate(.98)!important}
:is(#game,#loadoutStage) .cell.same .flower-token.has-image{
  opacity:1!important;
  transform:scale(1.075)!important;
  filter:drop-shadow(0 2px 3px rgba(76,57,30,.18)) drop-shadow(0 0 8px rgba(139,153,88,.18)) saturate(1.03)!important;
}
:is(#game,#loadoutStage) .cell.selected .flower-token.has-image{
  opacity:1!important;
  transform:scale(1.08)!important;
  filter:drop-shadow(0 2px 3px rgba(76,57,30,.2)) drop-shadow(0 0 10px rgba(124,138,81,.20)) saturate(1.05)!important;
}
:is(#game,#loadoutStage) .cell.peer:not(.same):not(.selected) .flower-token.has-image{transform:scale(1.02)!important}
#game .dock{
  padding:8px!important;gap:7px!important;border-radius:21px!important;
  background:rgba(251,246,236,.96)!important;
  box-shadow:0 9px 22px rgba(82,61,31,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
#game .palette{
  background:rgba(248,241,227,.82)!important;
  border:1px solid rgba(151,119,67,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58)!important;
}
#game .tool,
#game .color-btn{background:rgba(255,250,242,.92)!important}
#game .tool.active{box-shadow:0 6px 14px rgba(91,102,55,.14),inset 0 1px 0 rgba(255,255,255,.22)!important}
#game .progress-mini{height:5px!important;background:rgba(120,115,94,.13)!important}

@media(max-width:480px){
  #game .gameplay-botanical-hud{grid-template-columns:40px minmax(0,1fr) 40px!important;gap:6px!important}
  #game .gameplay-botanical-hud .game-menu-trigger,
  #game .gameplay-settings-source{width:40px!important;height:40px!important}
  #game .hud-title h2{font-size:clamp(22px,7.1vw,31px)!important}
  #game .hud-title p{font-size:10px!important}
  :is(#game,#loadoutStage) .board{padding:6px!important;border-radius:19px!important}
  :is(#game,#loadoutStage) .cell{border-radius:5px!important}
  #game .dock{padding:6px!important;border-radius:17px!important}
}
@media(max-height:720px){
  #game .gameplay-botanical-hud{min-height:54px!important}
  #game .hud-title h2{font-size:23px!important}
  #game .hud-title p{display:block!important;font-size:9.5px!important}
}

/* ===== source: mistake-timer-exit-hotfix-v017 ===== */
/* v0.1.7 — mistake flow, timer-responsive stats, real Home confirmation */
body:not(.timer-on) #game .game-stat-time{display:none!important}
body:not(.timer-on) #game .game-premium-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.timer-on #game .game-premium-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#game .game-stat-mistake{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
#game .game-stat-mistake>svg{flex:0 0 auto!important}
#game .mistake-meter{
  min-width:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;color:#46543b!important;
}
#game .mistake-meter>span{display:block!important;color:#77715f!important;font:400 8px/1 system-ui!important;white-space:nowrap!important}
#game .mistake-meter>b{display:block!important;color:#46543b!important;font:400 20px/1 Georgia,"Times New Roman",serif!important;white-space:nowrap!important}
#game .mistake-meter>em{display:flex!important;align-items:center!important;gap:3px!important;margin-left:2px!important;font-style:normal!important}
#game .mistake-meter>em i{display:block!important;width:6px!important;height:6px!important;border-radius:50%!important;background:#d8cfbd!important;box-shadow:inset 0 0 0 1px rgba(115,95,61,.12)!important}
#game .mistake-meter>em i.used{background:#c9786d!important;box-shadow:0 0 0 2px rgba(201,120,109,.09)!important}
#game .mistake-meter.danger>b{color:#a95c4f!important}
#game .mistake-meter.danger>em i.used{background:#c7685d!important}
#game .mistake-meter.failed>b{color:#a34d43!important}

/* Home confirmation */
#gameExitConfirm{
  position:fixed!important;inset:0!important;z-index:1700!important;display:grid!important;place-items:center!important;
  padding:18px!important;background:rgba(229,220,203,.72)!important;backdrop-filter:blur(13px)!important;
}
#gameExitConfirm.hidden{display:none!important}
#gameExitConfirm .game-exit-card{
  width:min(390px,100%)!important;padding:24px 20px 20px!important;text-align:center!important;
  border:1px solid rgba(184,159,111,.34)!important;border-radius:27px!important;
  background:linear-gradient(180deg,#fffdf8 0%,#f3e8d5 100%)!important;
  box-shadow:0 24px 60px rgba(83,63,31,.18),inset 0 1px 0 #fff!important;color:#4e5a3e!important;
}
#gameExitConfirm .game-exit-mark{width:54px;height:54px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(146,130,91,.25);background:#faf2e1;color:#66734a}
#gameExitConfirm .game-exit-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#gameExitConfirm h3{margin:4px 0 8px;color:#465334;font:400 27px/1.05 Georgia,"Times New Roman",serif!important}
#gameExitConfirm p{margin:0 auto 18px;max-width:31ch;color:#756f5e;font:11px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#gameExitConfirm .game-exit-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
#gameExitConfirm button{min-height:44px;border-radius:999px;font:400 15px/1 Georgia,"Times New Roman",serif;cursor:pointer}
#gameExitCancel{border:1px solid rgba(181,158,111,.34);background:#fffaf0;color:#566244}
#gameExitYes{border:1px solid #68763f;background:linear-gradient(180deg,#899754,#718048);color:#fffdf7;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 7px 15px rgba(87,102,50,.15)}

/* 3-mistake screen: readable copy + three explicit choices. */
#mistakeFail .mistake-fail-card{max-width:430px!important;padding:24px 22px 20px!important;text-align:center!important}
#mistakeFail .result-kicker{margin-bottom:7px!important;color:#8b7449!important}
#mistakeFail .finish-card h2{margin:6px 0 10px!important;color:#465334!important;font:400 clamp(27px,7vw,38px)/1.03 Georgia,"Times New Roman",serif!important;letter-spacing:-.015em!important}
#mistakeFail .finish-card p{max-width:34ch!important;margin:0 auto 14px!important;color:#665f51!important;font:500 12px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif!important;opacity:1!important}
#mistakeFail .mistake-fail-pips{margin:6px 0 18px!important}
#mistakeFail .mistake-fail-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:0!important}
#mistakeFail .mistake-fail-actions .btn{width:100%!important;min-height:46px!important;border-radius:999px!important;font:400 15px/1.1 Georgia,"Times New Roman",serif!important}
#mistakeFailRetry{order:1;background:linear-gradient(180deg,#899754,#718048)!important;border-color:#68763f!important;color:#fffdf7!important}
#mistakeFailAd{order:2;background:linear-gradient(180deg,#fff4d5,#f0ddaa)!important;border:1px solid rgba(177,139,63,.40)!important;color:#665630!important;box-shadow:inset 0 1px 0 #fff!important}
#mistakeFailHome{order:3;background:#fffaf1!important;border:1px solid rgba(181,158,111,.34)!important;color:#586247!important}
#mistakeFailAd svg{width:18px;height:18px;vertical-align:-4px;margin-right:5px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#mistakeFailStatus{min-height:16px;margin-top:9px;color:#806f51;font:500 9px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif}
#mistakeFailStatus.bad{color:#a6564c}
#mistakeFailStatus.good{color:#657548}

@media(max-width:480px){
  
  
  
  #game .mistake-meter>em{gap:2px!important}
  #game .mistake-meter>em i{width:5px!important;height:5px!important}
  #gameExitConfirm .game-exit-actions{grid-template-columns:1fr!important}
  #mistakeFail .mistake-fail-card{padding:22px 18px 18px!important}
}

/* ===== source: gameplay-contrast-mistake-fix-v017 ===== */
/* v0.1.7 — calmer neutral board for yellow-flower contrast + readable mistake state */
:is(#game,#loadoutStage) .board{
  background:linear-gradient(180deg,#b8b5a8 0%,#aaa99d 100%)!important;
  border-color:rgba(105,104,89,.42)!important;
  box-shadow:0 15px 34px rgba(73,61,41,.11),0 0 0 4px rgba(250,247,239,.82),inset 0 1px 0 rgba(255,255,255,.66)!important;
}
:is(#game,#loadoutStage) .cell{
  background:#f5f3eb!important;
  border-color:rgba(127,126,110,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
:is(#game,#loadoutStage) .cell.given{background:#ebe9df!important}
:is(#game,#loadoutStage) .cell.peer{
  background:#e4e9e2!important;
  box-shadow:inset 0 0 0 1px rgba(117,132,103,.18),inset 0 1px 0 rgba(255,255,255,.58)!important;
}
:is(#game,#loadoutStage) .cell.same:not(.selected){
  background:linear-gradient(180deg,#e4ebd2 0%,#d9e5bd 100%)!important;
  box-shadow:inset 0 0 0 2px rgba(115,137,72,.38),0 0 0 1px rgba(255,255,255,.46)!important;
}
:is(#game,#loadoutStage) .cell.selected{
  background:linear-gradient(180deg,#e7ead9 0%,#dce3c8 100%)!important;
  outline:3px solid rgba(111,132,68,.96)!important;
  outline-offset:-2px!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.62),0 0 0 3px rgba(112,133,70,.12)!important;
}
:is(#game,#loadoutStage) .cell.spectrum-cell{background:#efedf1!important}
:is(#game,#loadoutStage) .cell.spectrum-cell.peer{background:#e2e6e4!important}
:is(#game,#loadoutStage) .cell.in-zone{background:#ece8ef!important}
:is(#game,#loadoutStage) .cell.in-zone.peer{background:#e0e5e2!important}
:is(#game,#loadoutStage) .cell.in-fence{background:#e6ece4!important}
:is(#game,#loadoutStage) .cell.in-fence.peer{background:#dce5dc!important}
:is(#game,#loadoutStage) .cell .flower-token.has-image{
  filter:drop-shadow(0 2px 3px rgba(68,58,42,.18)) saturate(1.03) contrast(1.03)!important;
}
:is(#game,#loadoutStage) .cell.given .flower-token.has-image{
  filter:drop-shadow(0 2px 3px rgba(68,58,42,.16)) saturate(.98) contrast(1.02)!important;
}
:is(#game,#loadoutStage) .cell.peer .flower-token.has-image{opacity:.96!important}
:is(#game,#loadoutStage) .cell.same .flower-token.has-image{
  filter:drop-shadow(0 2px 3px rgba(68,58,42,.20)) drop-shadow(0 0 8px rgba(123,145,77,.18)) saturate(1.06) contrast(1.04)!important;
}
:is(#game,#loadoutStage) .cell.selected .flower-token.has-image{
  filter:drop-shadow(0 2px 3px rgba(68,58,42,.22)) drop-shadow(0 0 10px rgba(116,137,74,.20)) saturate(1.07) contrast(1.05)!important;
}

/* Mistake state: no icon collision, one clear label/value row + three status dots. */
#game .game-stat-mistake{padding-left:7px!important;padding-right:7px!important}
#game .game-stat-mistake>svg{display:none!important}
#game .mistake-meter{
  width:100%!important;
  min-width:72px!important;
  display:grid!important;
  grid-template-columns:auto auto!important;
  grid-template-areas:"label value" "dots dots"!important;
  align-items:center!important;
  justify-content:center!important;
  column-gap:7px!important;
  row-gap:5px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#game .mistake-meter>span{
  grid-area:label!important;
  display:block!important;
  color:#777568!important;
  font:500 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
#game .mistake-meter>b{
  grid-area:value!important;
  display:block!important;
  color:#48543e!important;
  font:400 20px/1 Georgia,"Times New Roman",serif!important;
  white-space:nowrap!important;
}
#game .mistake-meter>em{
  grid-area:dots!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:0!important;
  font-style:normal!important;
}
#game .mistake-meter>em i{
  display:block!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:#e5dfd2!important;
  box-shadow:inset 0 0 0 1px rgba(111,99,76,.16)!important;
}
#game .mistake-meter>em i.used{
  background:#cf7b70!important;
  box-shadow:0 0 0 2px rgba(207,123,112,.10)!important;
}
#game .mistake-meter.danger>b{color:#b85f53!important}
#game .mistake-meter.danger>em i.used{background:#c9695d!important}
#game .mistake-meter.failed>b{color:#aa4f46!important}

/* Palette stays warm, but yellow has a neutral card behind it instead of yellow-on-cream. */
#game .palette{background:rgba(245,243,235,.90)!important;border-color:rgba(126,125,107,.16)!important}
#game .color-btn{background:#fbfaf5!important;border-color:rgba(126,125,108,.16)!important}

@media(max-width:480px){
  #game .mistake-meter{min-width:66px!important;column-gap:5px!important;row-gap:4px!important}
  
  
  #game .mistake-meter>em{gap:5px!important}
  #game .mistake-meter>em i{width:7px!important;height:7px!important}
}

/* ===== source: home-nav-mistake-cleanup-v017 ===== */
/* Remove the mistake warning effect entirely: keep only plain text. */
#game .game-stat-mistake{background:transparent!important;box-shadow:none!important}
#game .mistake-meter,
#game .mistake-meter.danger,
#game .mistake-meter.failed{
  width:auto!important;min-width:0!important;
  display:flex!important;align-items:baseline!important;justify-content:center!important;gap:5px!important;
  margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;
  background:transparent!important;background-image:none!important;
  box-shadow:none!important;outline:0!important;
  color:#4d5942!important;
}
#game .mistake-meter>span{
  display:inline!important;color:#777568!important;
  font:500 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.02em!important;white-space:nowrap!important;
}
#game .mistake-meter>b,
#game .mistake-meter.danger>b,
#game .mistake-meter.failed>b{
  display:inline!important;color:#4d5942!important;
  font:400 20px/1 Georgia,"Times New Roman",serif!important;
  white-space:nowrap!important;
}
#game .mistake-meter>em,
#game .mistake-meter>em i,
#game .mistake-meter.danger>em,
#game .mistake-meter.failed>em{display:none!important}
@media(max-width:480px){
  #game .mistake-meter{gap:4px!important}
  #game .mistake-meter>span{font-size:7px!important}
  #game .mistake-meter>b{font-size:18px!important}
}

/* ===== BAHÇE ===== */
#gardenPlay .page-card{padding:14px}
.gd-top{display:flex;gap:9px;margin-bottom:13px}
.gd-wallet,.gd-water,.gd-bonus{
  flex:1;display:flex;align-items:center;gap:6px;justify-content:center;
  padding:10px 8px;border-radius:16px;background:rgba(255,252,244,.75);
  border:1px solid rgba(168,150,110,.28);box-shadow:0 3px 10px rgba(80,66,38,.10)
}
.gd-wallet b,.gd-water b,.gd-bonus{font:600 17px/1 Georgia,serif;color:#4f4626}
.gd-wallet small,.gd-water small,.gd-bonus small{font-size:9.5px;color:#8a7f61}
.gd-bonus{flex-direction:column;gap:1px;font:600 15px/1.1 Georgia,serif;color:#6f8c4e}
.gd-petal{color:#d98fb0}

.gd-plots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}
.gd-plot{
  position:relative;aspect-ratio:1;border-radius:18px;cursor:pointer;
  border:1px solid rgba(150,132,96,.32);
  background:linear-gradient(180deg,rgba(214,196,158,.55),rgba(176,152,110,.6));
  display:grid;place-items:center;gap:3px;padding:7px;overflow:hidden;
  box-shadow:inset 0 2px 6px rgba(120,96,54,.22),0 3px 8px rgba(80,66,38,.14);
  transition:transform .13s ease;
}
.gd-plot:active{transform:scale(.96)}
.gd-plot small{font-size:10px;color:#5e5335;font-weight:600}
.gd-plot.gd-locked{opacity:.55;background:rgba(190,178,150,.4)}
.gd-lock{font-size:19px;opacity:.6}
.gd-plus{font:300 26px/1 Georgia,serif;color:#7a6c46}
.gd-bloom{
  width:56%;aspect-ratio:1;background-size:contain;background-repeat:no-repeat;
  background-position:center bottom;transform-origin:50% 100%;
  filter:drop-shadow(0 3px 6px rgba(60,46,20,.3));transition:transform .4s ease
}
.gd-bloom.is-ready{animation:gd-sway 2.4s ease-in-out infinite}
@keyframes gd-sway{0%,100%{rotate:-3deg}50%{rotate:3deg}}
.gd-ring{display:block;width:74%;height:4px;border-radius:99px;background:rgba(90,74,42,.24);overflow:hidden}
.gd-ring i{display:block;height:100%;background:linear-gradient(90deg,#a9c07a,#7f9a52);border-radius:99px}
.gd-plot.gd-ready{border-color:rgba(190,158,86,.85);box-shadow:0 0 0 2px rgba(214,178,96,.4),0 4px 12px rgba(80,66,38,.2)}

.gd-quests,.gd-shop{margin-bottom:16px}
.gd-quests h3,.gd-shop h3{margin:0 0 8px;font-size:14px}
.gd-note{margin:0 0 9px;font-size:11px;color:#8a7f61;line-height:1.5}
.gd-quest{display:flex;align-items:center;gap:10px;padding:9px 11px;margin-bottom:7px;
  border-radius:14px;background:rgba(255,252,244,.72);border:1px solid rgba(168,150,110,.24)}
.gd-quest.done{opacity:.6}
.gd-q-body{flex:1;min-width:0}
.gd-q-body b{display:block;font-size:12.5px;font-weight:600}
.gd-q-bar{display:block;height:4px;border-radius:99px;background:rgba(120,104,70,.18);margin:5px 0 3px;overflow:hidden}
.gd-q-bar i{display:block;height:100%;background:linear-gradient(90deg,#c4a86a,#a98d4e);border-radius:99px}
.gd-q-body small{font-size:10px;color:#8a7f61}
.gd-q-claim{border:0;border-radius:11px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;
  background:linear-gradient(180deg,#dfc389,#c2a259);color:#40361a}
.gd-q-claim:disabled{opacity:.4;cursor:default;background:rgba(150,132,96,.25);color:#6b6047}

.gd-decor{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.gd-decor-card{text-align:left;padding:11px;border-radius:15px;cursor:pointer;
  background:rgba(255,252,244,.75);border:1px solid rgba(168,150,110,.26)}
.gd-decor-card b{display:block;font-size:12.5px}
.gd-decor-card small{display:block;font-size:10px;color:#6f8c4e;margin-top:2px}
.gd-price{display:inline-block;margin-top:7px;font-size:11.5px;font-weight:700;color:#8a6f34}
.gd-decor-card.owned{opacity:.62;cursor:default}
.gd-expand{width:100%;margin-top:10px;padding:12px;border-radius:15px;cursor:pointer;
  border:1px dashed rgba(150,132,96,.5);background:transparent;
  display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:600}

.seed-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.seed-card{padding:12px;border-radius:16px;cursor:pointer;text-align:center;
  background:rgba(255,252,244,.8);border:1px solid rgba(168,150,110,.28)}
.seed-card.poor{opacity:.45;cursor:default}
.seed-art{display:block;width:46px;height:46px;margin:0 auto 6px;
  background-size:contain;background-repeat:no-repeat;background-position:center}
.seed-card b{display:block;font-size:12.5px}
.seed-card small{display:block;font-size:10px;color:#8a7f61;margin-top:2px}
.seed-price{display:inline-block;margin-top:6px;font-size:12px;font-weight:700;color:#8a6f34}

.gd-toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%,14px);z-index:90;
  padding:10px 18px;border-radius:99px;font-size:12.5px;font-weight:600;
  background:rgba(46,38,20,.92);color:#fdf8ec;opacity:0;pointer-events:none;
  transition:opacity .22s ease,transform .22s ease}
.gd-toast.show{opacity:1;transform:translate(-50%,0)}

/* Koleksiyon ekranındaki giriş kartı */
.collection-garden-cta{
  display:flex;align-items:center;gap:12px;width:100%;margin-bottom:14px;
  padding:14px;border-radius:20px;cursor:pointer;text-align:left;
  background:linear-gradient(135deg,rgba(197,214,163,.55),rgba(233,226,196,.5));
  border:1px solid rgba(150,168,110,.4);box-shadow:0 4px 14px rgba(80,80,40,.12)
}
.collection-garden-cta .cg-ico{font-size:26px}
.collection-garden-cta b{display:block;font-size:15px}
.collection-garden-cta small{font-size:11px;color:#6d7452}
.collection-garden-cta .cg-go{margin-left:auto;font-size:19px;color:#7b8b4e}


/* Bahçe ekranı oyunun açık botanik yüzeyini kullanır. Varsayılan koyu sayfa
   zemini üstünde krem kartlar kontrastsız kalıyordu. */
#gardenPlay{
  background:
    radial-gradient(900px 520px at 50% -6%, rgba(255,250,236,.96), rgba(246,240,224,.92) 60%, rgba(238,231,211,.9) 100%),
    #f2ece0;
}
#gardenPlay .page-card{
  background:linear-gradient(180deg, rgba(255,253,247,.92), rgba(250,245,232,.88));
  border:1px solid rgba(168,150,110,.28);
  box-shadow:0 10px 30px rgba(96,82,52,.12);
}
#gardenPlay .title h2{color:#3f4a2c}
#gardenPlay .title p{color:#8a7f61}
#gardenPlay .btn.back{
  background:rgba(255,252,244,.9);border:1px solid rgba(168,150,110,.35);color:#5c5136
}
.gd-quests h3,.gd-shop h3{color:#3f4a2c}

/* ===== source: v018-desktop-responsive-polish ===== */
/* v0.1.8 desktop / wide-screen polish.
   Mobile geometry remains the primary layout; wide screens get a warm botanical
   surround and screen-specific max widths instead of exposing the legacy navy body. */
@media (min-width:761px){
  html,body{
    min-height:100%;
    background:#efe6d4!important;
  }
  body{
    background:
      radial-gradient(circle at 9% 5%,rgba(255,255,255,.76),transparent 27%),
      radial-gradient(circle at 91% 12%,rgba(160,148,105,.10),transparent 30%),
      linear-gradient(180deg,#f5eddf 0%,#eee3ce 100%)!important;
    background-attachment:fixed!important;
  }
  .screen{max-width:760px!important}

  /* Home: slightly wider than phone, still compact enough to read as one composition. */
  #home.home-approved-v1{
    width:680px!important;max-width:680px!important;margin:0 auto!important;
    min-height:100dvh!important;
    box-shadow:0 0 0 1px rgba(153,122,71,.10),0 18px 58px rgba(91,69,36,.10)!important;
  }
  #home .home-bottom-nav{width:680px!important}
  #home .home-approved-resume{height:286px!important;min-height:286px!important;flex-basis:286px!important}
  #home .home-approved-resume-copy{padding-bottom:96px!important}
  #home .home-approved-feature-row{height:162px!important;flex-basis:162px!important}
  #home .home-approved-feature{height:162px!important;min-height:162px!important}
  #home .home-approved-summary{height:132px!important;min-height:132px!important;flex-basis:132px!important}

  /* Journey: a chapter is one viewport on desktop too. The image is scaled as a
     single 941×1672 coordinate space, so hand-calibrated node coordinates remain untouched. */
  #journey:not(.hidden){
    width:100%!important;max-width:none!important;height:100dvh!important;min-height:100dvh!important;
    padding:0!important;margin:0!important;overflow:hidden!important;
    background:transparent!important;
  }
  #journey>.page-card,
  #journey .journey-map,
  #journey .map-grid{
    width:100%!important;height:calc(100dvh - 82px)!important;min-height:0!important;max-height:calc(100dvh - 82px)!important;
    padding:0!important;margin:0!important;overflow:hidden!important;background:transparent!important;
  }
  #journey .journey-immersive-stage{
    width:min(100vw,calc(56.28dvh - 46px))!important;
    height:calc(100dvh - 82px)!important;min-height:0!important;max-height:calc(100dvh - 82px)!important;
    aspect-ratio:auto!important;margin:0 auto!important;border-radius:0!important;
    background-size:100% 100%!important;background-position:0 0!important;
  }
  #journey .journey-bottom-nav{
    width:min(100vw,calc(56.28dvh - 46px))!important;height:82px!important;
    padding:7px 10px!important;
  }

  /* Collection: its 760px dock now matches the screen instead of floating wider than content. */
  #garden.collection-premium-page{
    max-width:760px!important;width:760px!important;margin:0 auto!important;
    min-height:100dvh!important;padding-top:16px!important;
  }
  #garden .collection-premium-shell{width:100%!important;max-width:760px!important;min-height:calc(100dvh - 102px)!important}
  #garden .collection-bottom-nav{width:760px!important}

  /* New My Garden / Bahçem screen: use desktop width rather than a stretched phone column. */
  #gardenPlay{
    width:min(100%,980px)!important;max-width:980px!important;min-height:100dvh!important;
    margin:0 auto!important;padding:24px!important;
    background:transparent!important;
  }
  #gardenPlay .page-card{
    width:100%!important;max-width:none!important;margin:0!important;padding:22px!important;border-radius:28px!important;
  }
  #gardenPlay #gardenScreen{
    display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr)!important;
    grid-template-areas:"top top" "plots quests" "plots shop"!important;
    align-items:start!important;gap:14px 18px!important;
  }
  #gardenPlay .gd-top{grid-area:top!important;margin-bottom:2px!important}
  #gardenPlay .gd-plots{grid-area:plots!important;grid-template-columns:repeat(3,1fr)!important;margin:0!important;gap:12px!important}
  #gardenPlay .gd-quests{grid-area:quests!important;margin:0!important}
  #gardenPlay .gd-shop{grid-area:shop!important;margin:0!important}
  #gardenPlay .gd-plot{border-radius:20px!important}
  #gardenPlay .gd-decor{grid-template-columns:1fr 1fr!important}
  #seedSheet .sheet-panel{max-width:620px!important}
  #seedSheet .seed-list{grid-template-columns:repeat(3,1fr)!important}

  /* Shop should end exactly at the viewport and its navigation should sit at the true bottom. */
  #shopSheet.shop-reference-page{
    background:
      radial-gradient(circle at 10% 4%,rgba(255,255,255,.72),transparent 27%),
      linear-gradient(180deg,#f4ecdd,#ede1ca)!important;
    place-items:stretch center!important;
  }
  #shopSheet .shop-reference-shell{
    width:720px!important;max-width:720px!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    border-radius:0!important;border-left:1px solid rgba(143,111,59,.15)!important;border-right:1px solid rgba(143,111,59,.15)!important;
    box-shadow:0 0 54px rgba(91,69,36,.12)!important;
  }
  #shopSheet .shop-reference-scroll{padding-bottom:104px!important}

  /* Free / Daily stay intentionally focused, but sit on the same paper desktop surface. */
  #free{max-width:660px!important;margin:0 auto!important}
  #free .free-bottom-nav{width:660px!important}
  #daily{max-width:640px!important;margin:0 auto!important}
  #game{max-width:760px!important;margin:0 auto!important}

  /* Generic card pages / overlays: don't inherit legacy dark wide-screen framing. */
  #profileSheet.sheet,#settingsSheet.sheet,#feedbackSheet.sheet,#legalSheet.sheet,#seedSheet.sheet,#flowerQaSheet.sheet{
    background:rgba(235,226,208,.70)!important;
  }
}
@media (min-width:761px) and (max-height:820px){
  #home.home-approved-v1{gap:9px!important;padding-top:10px!important;padding-bottom:86px!important}
  #home .home-approved-head{min-height:54px!important}
  #home .home-approved-greeting h1{font-size:20px!important}
  #home .home-approved-resume{height:226px!important;min-height:226px!important;flex-basis:226px!important}
  #home .home-approved-resume-copy{padding-top:22px!important;padding-bottom:79px!important}
  #home .home-approved-resume h2{font-size:25px!important}
  #home .home-approved-progress{bottom:49px!important}
  #home .home-approved-continue{bottom:12px!important}
  #home .home-approved-feature-row{height:136px!important;flex-basis:136px!important}
  #home .home-approved-feature{height:136px!important;min-height:136px!important;padding-top:12px!important}
  #home .home-approved-summary{height:108px!important;min-height:108px!important;flex-basis:108px!important}
  #home .home-approved-summary h3{margin-bottom:6px!important}
}

/* Onboarding readability: soft does not mean low contrast. */
#onboarding .onboard-card{background:linear-gradient(180deg,#fffdf8,#f6ecda)!important;color:#4b583c!important}
#onboarding .onboard-card h2{color:#465438!important}
#onboarding .onboard-lead{color:#66705a!important;font-size:12.5px!important;line-height:1.48!important}
#onboarding .onboard-steps li{background:rgba(255,251,243,.88)!important;border-color:rgba(158,126,74,.20)!important}
#onboarding .onboard-steps b{color:#526041!important}
#onboarding .onboard-steps span{color:#686d5b!important;font-size:11.5px!important;line-height:1.48!important}
#onboarding .onboard-note{
  color:#566247!important;background:rgba(230,235,211,.82)!important;
  border:1px solid rgba(126,143,78,.24)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.68)!important;
}
#onboarding .finish-actions .btn{font-size:15px!important}

/* ===== source: v018-desktop-fit-final ===== */
/* v0.1.8 final desktop-fit pass: Home, Journey and Gameplay only. */
@media (min-width:761px){
  html,body{min-height:100%;background:#efe6d5!important}
  body{
    background-image:
      radial-gradient(circle at 12% 4%,rgba(255,255,255,.72),transparent 30%),
      radial-gradient(circle at 88% 8%,rgba(168,153,111,.08),transparent 28%),
      linear-gradient(180deg,#f5eee1 0%,#efe5d3 100%)!important;
    background-attachment:fixed!important;
  }

  /* HOME — fit one desktop viewport; no card content hidden under bottom nav. */
  #home.home-approved-v1{
    width:760px!important;max-width:760px!important;height:100dvh!important;min-height:0!important;
    margin:0 auto!important;padding:10px 18px 82px!important;gap:8px!important;overflow:hidden!important;
    box-shadow:0 0 0 1px rgba(151,119,67,.10),0 18px 52px rgba(91,69,36,.09)!important;
  }
  #home .home-bottom-nav{width:760px!important;height:76px!important;padding:6px 10px!important}
  #home .home-approved-head{min-height:50px!important;height:50px!important}
  #home .home-profile{width:48px!important;height:48px!important}
  #home .home-approved-settings{width:42px!important;height:42px!important}
  #home .home-approved-greeting{padding:0 4px!important}
  #home .home-approved-greeting h1{font-size:21px!important;line-height:1.05!important}
  #home .home-approved-greeting p{font-size:10.5px!important;margin-top:3px!important}
  #home .home-approved-resume{
    height:236px!important;min-height:236px!important;flex:0 0 236px!important;border-radius:20px!important;
  }
  #home .home-approved-resume-copy{
    width:51%!important;padding:22px 0 82px 20px!important;
  }
  #home .home-approved-kicker{font-size:9px!important;margin-bottom:5px!important}
  #home .home-approved-resume h2{font-size:27px!important;line-height:1.01!important;max-width:220px!important}
  #home .home-approved-rule{margin:6px 0!important}
  #home .home-approved-resume p{
    max-width:210px!important;font-size:10px!important;line-height:1.42!important;
    display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  #home .home-approved-progress{left:20px!important;bottom:50px!important;margin:0!important;gap:6px!important}
  #home .home-approved-progress-track{width:74px!important;height:6px!important}
  #home .home-approved-continue{left:20px!important;bottom:12px!important;min-width:112px!important;height:34px!important;min-height:34px!important}
  #home .home-approved-continue b{font-size:14px!important}
  #home .home-approved-feature-row{height:138px!important;flex:0 0 138px!important;gap:10px!important}
  #home .home-approved-feature{height:138px!important;min-height:138px!important;padding-top:12px!important}
  #home .home-approved-feature h3{font-size:17px!important}
  #home .home-approved-feature p{font-size:9.5px!important;line-height:1.3!important;max-width:55%!important}
  #home .home-approved-daily .home-approved-flower-art{width:72px!important;height:72px!important}
  #home .home-approved-bouquet{transform:scale(.84)!important;transform-origin:right bottom!important}
  #home .home-approved-summary{
    height:116px!important;min-height:116px!important;flex:0 0 116px!important;grid-template-columns:112px 1fr!important;
  }
  #home .home-approved-summary>img{width:112px!important}
  #home .home-approved-summary-body{padding:9px 11px 8px!important}
  #home .home-approved-summary h3{font-size:17px!important;margin:0 0 4px!important;line-height:1.05!important}
  #home .home-approved-summary-stats{height:65px!important;align-items:stretch!important}
  #home .home-approved-summary-stats span{grid-template-rows:19px 18px 22px!important;padding:0 7px!important}
  #home .home-approved-summary-stats small{font-size:7.5px!important;min-height:0!important}
  #home .home-approved-summary-stats b{font-size:19px!important;line-height:1!important;margin:0!important}

  /* JOURNEY — preserve image/node coordinates; only fit the live HUD to the narrow portrait stage. */
  body:has(#journey:not(.hidden)){
    background:#efe7d8!important;
    background-image:linear-gradient(180deg,#f4ede1 0%,#ece1cf 100%)!important;
  }
  #journey:not(.hidden){
    width:100%!important;max-width:none!important;height:100dvh!important;min-height:100dvh!important;
    margin:0!important;padding:0!important;overflow:hidden!important;
    background:linear-gradient(180deg,#f4ede1 0%,#ece1cf 100%)!important;
  }
  #journey>.page-card,#journey .journey-map,#journey .map-grid{
    width:100%!important;height:calc(100dvh - 76px)!important;min-height:0!important;max-height:calc(100dvh - 76px)!important;
    margin:0!important;padding:0!important;overflow:hidden!important;background:transparent!important;
  }
  #journey .journey-immersive-stage{
    width:min(100vw,calc(56.28dvh - 43px))!important;height:calc(100dvh - 76px)!important;
    min-height:0!important;max-height:calc(100dvh - 76px)!important;aspect-ratio:auto!important;
    margin:0 auto!important;border-radius:0!important;background-size:100% 100%!important;background-position:0 0!important;
    box-shadow:0 0 34px rgba(86,65,34,.12)!important;
  }
  #journey .journey-bottom-nav{
    width:min(100vw,calc(56.28dvh - 43px))!important;height:76px!important;padding:6px 8px!important;
    background:rgba(249,242,228,.985)!important;
  }
  #journey .journey-premium-hud{
    top:9px!important;left:8px!important;right:8px!important;min-height:144px!important;
    grid-template-columns:54px minmax(0,1fr) 102px!important;gap:7px!important;
    padding:10px!important;border-radius:20px!important;align-items:center!important;
  }
  #journey .journey-hud-flower{width:52px!important;height:52px!important;padding:5px!important}
  #journey .journey-hud-level{min-width:0!important;overflow:hidden!important}
  #journey .journey-hud-kicker{font-size:7.5px!important;line-height:1.05!important}
  #journey .journey-hud-level h2{
    margin:2px 0 3px!important;font-size:17px!important;line-height:1.02!important;
    white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  #journey .journey-hud-level p{
    font-size:7.7px!important;line-height:1.28!important;-webkit-line-clamp:2!important;
  }
  #journey .journey-hud-progress{margin-top:4px!important;gap:4px!important;font-size:7px!important}
  #journey .journey-hud-progress .track{height:5px!important}
  #journey .journey-hud-play{margin-top:5px!important;min-height:27px!important;padding:0 9px!important;font-size:8px!important}
  #journey .journey-hud-chapter{min-width:0!important;padding-left:7px!important;overflow:hidden!important}
  #journey .journey-hud-chapter small{font-size:6.8px!important;line-height:1.15!important;white-space:normal!important}
  #journey .journey-hud-chapter strong{
    font-size:14px!important;line-height:1.02!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  #journey .journey-hud-chapter .hud-rule{margin:4px 0!important;width:42px!important}
  #journey .journey-hud-nav{width:25px!important;height:25px!important}

  /* GAMEPLAY — centered desktop composition with a complete board and controls in one viewport. */
  body:has(#game:not(.hidden)){
    background:#efe7d8!important;background-image:linear-gradient(180deg,#f5eee2,#eee3d1)!important;
  }
  #game:not(.hidden){
    width:min(100%,820px)!important;max-width:820px!important;height:100dvh!important;min-height:0!important;
    margin:0 auto!important;padding:10px 18px 10px!important;overflow:hidden!important;
    background-size:auto,auto,cover!important;
    box-shadow:0 0 0 1px rgba(147,116,65,.09),0 15px 48px rgba(82,62,32,.08)!important;
  }
  #game .game-shell{width:100%!important;max-width:720px!important;height:100%!important;gap:7px!important;margin:0 auto!important}
  #game .gameplay-botanical-hud{
    width:100%!important;min-height:60px!important;height:60px!important;
    grid-template-columns:46px minmax(0,1fr) 46px!important;gap:10px!important;padding:0 5px!important;
  }
  #game .gameplay-botanical-hud .game-menu-trigger,#game .gameplay-settings-source{
    position:static!important;transform:none!important;inset:auto!important;margin:0!important;
    width:42px!important;height:42px!important;justify-self:center!important;
  }
  #game .hud-title{min-width:0!important;overflow:hidden!important}
  #game .hud-title h2{font-size:30px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #game .hud-title p{font-size:9.5px!important;margin-bottom:2px!important}
  #game .game-title-ornament{height:8px!important;margin-top:2px!important}
  #game .game-premium-stats{
    width:100%!important;max-width:700px!important;min-height:58px!important;margin:0 auto!important;padding:6px 8px!important;
  }
  :is(#game,#loadoutStage) .board-stage{flex:1 1 0!important;min-height:0!important;padding:4px 0!important;overflow:hidden!important}
  :is(#game,#loadoutStage) .board{
    width:var(--board-size)!important;height:var(--board-size)!important;
    max-width:525px!important;max-height:525px!important;margin:auto!important;padding:6px!important;border-radius:20px!important;
  }
  #game .hud-strip{width:calc(100% - 18px)!important;margin:0 9px 1px!important}
  #game .dock{width:100%!important;max-width:720px!important;margin:0 auto!important;padding:6px!important;gap:5px!important;border-radius:18px!important}
  #game .dock-tools{gap:4px!important}
  #game .tool{height:39px!important;min-height:39px!important}
  #game .palette{padding:5px 4px 3px!important;gap:3px!important}
  #game .color-btn{height:54px!important;min-height:54px!important}
  #game .color-btn .flower-token{max-width:34px!important;max-height:34px!important}
}
@media (min-width:761px) and (max-height:760px){
  #home.home-approved-v1{padding-top:7px!important;gap:6px!important}
  #home .home-approved-head{height:46px!important;min-height:46px!important}
  #home .home-approved-resume{height:210px!important;min-height:210px!important;flex-basis:210px!important}
  #home .home-approved-resume-copy{padding-top:16px!important}
  #home .home-approved-feature-row{height:124px!important;flex-basis:124px!important}
  #home .home-approved-feature{height:124px!important;min-height:124px!important}
  #home .home-approved-summary{height:104px!important;min-height:104px!important;flex-basis:104px!important}
  #home .home-approved-summary-stats{height:55px!important}
  #game .gameplay-botanical-hud{height:52px!important;min-height:52px!important}
  #game .game-premium-stats{min-height:50px!important}
  :is(#game,#loadoutStage) .board{max-width:465px!important;max-height:465px!important}
  #game .tool{height:35px!important;min-height:35px!important}
  #game .color-btn{height:46px!important;min-height:46px!important}
}

/* ===== source: v018-home-journey-text-fix-final ===== */
/* v0.1.8 — final Home action-row + Journey HUD readability fix. */
@media (min-width:761px){
  /* HOME: progress and CTA share one horizontal action row; never overlap. */
  #home .home-approved-resume-copy{
    padding-bottom:62px!important;
  }
  #home .home-approved-progress{
    left:20px!important;
    bottom:14px!important;
    width:132px!important;
    min-height:36px!important;
    margin:0!important;
    padding:4px 7px 4px 4px!important;
    gap:5px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    border-radius:999px!important;
  }
  #home .home-approved-flower-dot{
    flex:0 0 20px!important;
    width:20px!important;
    height:20px!important;
  }
  #home .home-approved-progress b{
    flex:0 0 auto!important;
    font-size:9.5px!important;
    line-height:1!important;
  }
  #home .home-approved-progress-track{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:42px!important;
    height:5px!important;
  }
  #home .home-approved-continue{
    left:164px!important;
    right:auto!important;
    bottom:15px!important;
    width:120px!important;
    min-width:120px!important;
    max-width:120px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 27px 0 13px!important;
  }
  #home .home-approved-continue b{font-size:13px!important}
  #home .home-approved-next{right:6px!important;width:21px!important;height:21px!important;font-size:13px!important}

  /* JOURNEY: keep calibrated image/nodes untouched; simplify the HUD so text has room. */
  #journey .journey-premium-hud{
    top:8px!important;
    left:6px!important;
    right:6px!important;
    min-height:132px!important;
    padding:10px 9px!important;
    grid-template-columns:54px minmax(0,1fr) 96px!important;
    gap:8px!important;
    align-items:center!important;
  }
  #journey .journey-hud-flower{
    width:52px!important;
    height:52px!important;
  }
  #journey .journey-hud-level{
    min-width:0!important;
    overflow:visible!important;
    padding-right:1px!important;
  }
  #journey .journey-hud-kicker{
    display:block!important;
    font-size:8px!important;
    line-height:1.1!important;
    margin-bottom:2px!important;
  }
  #journey .journey-hud-level h2{
    margin:0 0 6px!important;
    color:#40502f!important;
    font:400 19px/1.03 Georgia,"Times New Roman",serif!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }
  #journey .journey-hud-level p{
    display:none!important;
  }
  #journey .journey-hud-progress{
    margin-top:0!important;
    gap:4px!important;
    font-size:7.5px!important;
    line-height:1!important;
  }
  #journey .journey-hud-progress .track{
    min-width:36px!important;
    height:5px!important;
  }
  #journey .journey-hud-play{
    margin-top:7px!important;
    min-height:29px!important;
    height:29px!important;
    padding:0 10px!important;
    font-size:8.5px!important;
    white-space:nowrap!important;
  }
  #journey .journey-hud-chapter{
    min-width:0!important;
    padding-left:8px!important;
    overflow:visible!important;
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  #journey .journey-hud-chapter small{
    font-size:7px!important;
    line-height:1.2!important;
    white-space:normal!important;
  }
  #journey .journey-hud-chapter strong{
    margin-top:5px!important;
    font:400 15px/1.05 Georgia,"Times New Roman",serif!important;
    white-space:normal!important;
    overflow:visible!important;
    display:block!important;
  }
  #journey .journey-hud-chapter .hud-rule{
    width:38px!important;
    margin:5px 0!important;
  }
  #journey .journey-hud-chapter-nav{
    margin-top:2px!important;
    gap:6px!important;
  }
  #journey .journey-hud-nav{
    width:25px!important;
    height:25px!important;
  }
}

/* Slightly narrower desktop windows need a touch more compression but no overlap. */
@media (min-width:761px) and (max-width:900px){
  #home .home-approved-progress{width:126px!important}
  #home .home-approved-continue{left:156px!important;width:116px!important;min-width:116px!important;max-width:116px!important}
  #journey .journey-premium-hud{grid-template-columns:50px minmax(0,1fr) 92px!important;gap:6px!important}
  #journey .journey-hud-flower{width:48px!important;height:48px!important}
  #journey .journey-hud-level h2{font-size:18px!important}
  #journey .journey-hud-chapter strong{font-size:14px!important}
}

/* ===== source: petal-unified-icon-system-v018 ===== */
/* v0.1.8 — one icon language across every primary screen. */
:root{--petal-icon-ink:#5b6748;--petal-icon-line:1.65;--petal-control-bg:#fbf4e6;--petal-control-border:rgba(157,122,63,.26)}
.petal-ui-icon{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:var(--petal-icon-line);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}

/* Top circular controls: Home / Gift / Settings all share one material. */
#free .free-topbar-btn,
#daily .daily-topbar-btn,
#garden .collection-circle-btn,
#shopSheet .shop-reference-circle,
#game #gameBack,
#game #openSettings,
#gardenPlay [data-garden-back]{
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;
  border-radius:50%!important;border:1px solid var(--petal-control-border)!important;
  background:linear-gradient(180deg,#fffaf0,#f2e7d1)!important;color:var(--petal-icon-ink)!important;
  box-shadow:0 5px 14px rgba(77,59,31,.10),inset 0 1px 0 rgba(255,255,255,.92)!important;
  display:grid!important;place-items:center!important;
}
#free .free-topbar-btn svg,
#daily .daily-topbar-btn svg,
#garden .collection-circle-btn svg,
#shopSheet .shop-reference-circle svg,
#game #gameBack svg,
#game #openSettings svg,
#gardenPlay [data-garden-back] svg{width:24px!important;height:24px!important;fill:none!important;stroke:currentColor!important;stroke-width:var(--petal-icon-line)!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* Every four-tab primary navigation uses the exact same icon geometry + weight. */
#home .home-bottom-nav .home-nav-item,
#journey .journey-bottom-nav .home-nav-item,
#free .free-bottom-nav .home-nav-item,
#garden .collection-bottom-nav .collection-nav-item,
#shopSheet .shop-reference-bottom-nav button{
  border:0!important;background:transparent!important;color:#68705a!important;border-radius:16px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  font:500 9px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:none!important;
}
#home .home-bottom-nav .home-nav-item svg,
#journey .journey-bottom-nav .home-nav-item svg,
#free .free-bottom-nav .home-nav-item svg,
#garden .collection-bottom-nav .collection-nav-item svg,
#shopSheet .shop-reference-bottom-nav button svg{
  width:26px!important;height:26px!important;fill:none!important;stroke:currentColor!important;stroke-width:var(--petal-icon-line)!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
#home .home-bottom-nav .home-nav-item.active,
#journey .journey-bottom-nav .home-nav-item.active,
#free .free-bottom-nav .home-nav-item.active,
#garden .collection-bottom-nav .collection-nav-item.active,
#shopSheet .shop-reference-bottom-nav button.active{
  color:#56643e!important;background:rgba(123,139,78,.085)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
#home .home-bottom-nav .home-nav-item.active svg,
#journey .journey-bottom-nav .home-nav-item.active svg,
#free .free-bottom-nav .home-nav-item.active svg,
#garden .collection-bottom-nav .collection-nav-item.active svg,
#shopSheet .shop-reference-bottom-nav button.active svg{stroke-width:1.9!important}

/* Keep the navigation surface itself visually identical wherever it appears. */
#home .home-bottom-nav,
#journey .journey-bottom-nav,
#free .free-bottom-nav,
#garden .collection-bottom-nav,
#shopSheet .shop-reference-bottom-nav{
  background:linear-gradient(180deg,rgba(251,247,237,.975),rgba(244,235,218,.985))!important;
  border-top:1px solid rgba(143,111,59,.18)!important;
  box-shadow:0 -8px 24px rgba(75,57,30,.065)!important;
  backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;
}

/* Collection should feel embedded in the same paper surface, not a white card pasted on top. */
#garden{background:linear-gradient(180deg,#f5eddf 0%,#eee3ce 100%)!important}
#garden .collection-premium-shell{
  background:linear-gradient(180deg,rgba(255,252,245,.82),rgba(248,240,224,.88))!important;
  border-color:rgba(168,143,98,.18)!important;
  box-shadow:0 12px 32px rgba(92,70,38,.07),inset 0 1px 0 rgba(255,255,255,.72)!important;
}

/* Collection filters use the same line-icon system instead of mixed Unicode glyphs. */
#garden .collection-filter .petal-filter-icon{width:17px!important;height:17px!important;display:inline-grid!important;place-items:center!important;flex:0 0 17px!important}
#garden .collection-filter .petal-filter-icon svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* My Garden CTA and My Garden page: remove emoji / text-arrow icon mismatch. */
#garden .collection-garden-cta .cg-ico{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;color:#607249!important}
#garden .collection-garden-cta .cg-ico svg{width:30px!important;height:30px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#garden .collection-garden-cta .cg-go{width:24px!important;height:24px!important;display:grid!important;place-items:center!important;color:#71804f!important;font-size:0!important}
#garden .collection-garden-cta .cg-go svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#gardenPlay [data-garden-back]{font-size:0!important;border-radius:50%!important}
#gardenPlay .gd-lock{display:grid!important;place-items:center!important;color:#7d775f!important;font-size:0!important}
#gardenPlay .gd-lock svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}

@media(max-width:560px){
  #free .free-topbar-btn,#daily .daily-topbar-btn,#garden .collection-circle-btn,#shopSheet .shop-reference-circle,#game #gameBack,#game #openSettings,#gardenPlay [data-garden-back]{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:9px!important}
  #home .home-bottom-nav .home-nav-item svg,#journey .journey-bottom-nav .home-nav-item svg,#free .free-bottom-nav .home-nav-item svg,#garden .collection-bottom-nav .collection-nav-item svg,#shopSheet .shop-reference-bottom-nav button svg{width:24px!important;height:24px!important}
}

/* ===== source: petal-close-icon-polish-v018 ===== */
#seedClose svg,#twinIntroClose svg,#closeProfile svg,#closeFeedback svg,#closeSettings svg,#closeLegal svg,#closeFlowerQa svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* ===== v0.1.9n: Phase 3 UX density pass ===== */
/* Collection: one compact garden entry, one readable featured item and a
   three-column chapter grid. Each chapter still contains exactly nine items. */
#garden .collection-garden-card{
  min-height:68px!important;margin:0 0 12px!important;padding:0 58px 0 15px!important;
  border-radius:18px!important;background:linear-gradient(135deg,#f4ead5,#fffaf0)!important;
}
#garden .collection-garden-card::before,#garden .collection-garden-card::after{display:none!important}
#garden .collection-garden-card .collection-garden-card__copy{
  width:100%!important;min-height:68px!important;padding:11px 0!important;justify-content:center!important;
}
#garden .collection-garden-card .collection-garden-card__copy b{font-size:22px!important;line-height:1!important}
#garden .collection-garden-card .collection-garden-card__copy>small{
  margin:5px 0 0!important;max-width:none!important;font-size:9px!important;line-height:1.2!important;
}
#garden .collection-garden-card .collection-garden-card__action{
  right:13px!important;bottom:50%!important;transform:translateY(50%)!important;width:34px!important;height:34px!important;
}
#garden .collection-featured{min-height:190px!important}
#garden .collection-featured-art{min-height:190px!important;padding:10px!important}
#garden .collection-featured-art img{height:166px!important}
#garden .collection-featured-copy{padding:14px 16px 12px!important}
#garden .collection-featured-copy h2{font-size:27px!important}
#garden .collection-featured-meta{margin-bottom:8px!important}
#garden .collection-featured-description{margin-bottom:9px!important;font-size:11px!important}
#garden .collection-featured-stats{margin-top:8px!important;padding-top:8px!important}
#garden .collection-flower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Free Bloom: difficulty is a numeric, scan-friendly list. Decorative flower
   and scene imagery is intentionally absent from configuration controls. */
#free .free-bloom-intro{padding:2px 10px 12px!important}
#free .free-bloom-intro h2{font-size:38px!important}
#free .free-bloom-rule{margin-top:10px!important}
#free .difficulty-grid{grid-template-columns:1fr!important;gap:6px!important}
#free .diff-card{
  grid-template-columns:minmax(0,1fr) auto 24px!important;gap:10px!important;
  min-height:54px!important;padding:8px 10px 8px 13px!important;border-radius:14px!important;
}
#free .diff-card::before,#free .diff-card::after{display:none!important}
#free .diff-card h4{display:inline-block!important;margin:0 10px 0 0!important;font-size:17px!important}
#free .diff-meta{display:inline!important;font-size:9px!important}
#free .diff-meta b{color:#596845!important;font-size:11px!important}
#free .diff-solved{
  margin:0!important;min-width:70px!important;min-height:0!important;padding:5px 8px!important;
  justify-content:center!important;gap:3px!important;font-size:8px!important;
}
#free .diff-solved b{font-size:11px!important}
#free .diff-go{width:22px!important;height:22px!important}
#free .free-config-card{margin-bottom:9px!important;padding:11px 12px!important;border-radius:18px!important}
#free .free-section-head{margin-bottom:8px!important}
#free .free-mechanic-picker{margin-bottom:9px!important}
#free .free-launch-card{
  grid-template-columns:minmax(0,1fr) minmax(148px,190px)!important;gap:10px!important;
  padding:11px 13px!important;border-radius:18px!important;
}

@media(max-width:560px){
  #garden .collection-sort{display:none!important}
  #garden .collection-featured{grid-template-columns:38% 62%!important;min-height:164px!important}
  #garden .collection-featured-art{min-height:164px!important;padding:6px!important}
  #garden .collection-featured-art img{height:146px!important}
  #garden .collection-featured-copy{padding:11px 10px 10px!important}
  #garden .collection-featured-copy h2{font-size:21px!important}
  #garden .collection-featured-description{font-size:9px!important;-webkit-line-clamp:2!important}
  #garden .collection-featured-stats{gap:8px!important;font-size:7px!important}
  #free .free-page-shell{padding-top:7px!important}
  #free .free-topbar{min-height:48px!important;margin-bottom:2px!important}
  #free .free-topbar-spacer{width:40px!important;height:40px!important}
  #free .free-bloom-intro h2{font-size:32px!important}
  #free .diff-card{grid-template-columns:minmax(0,1fr) auto 22px!important;min-height:50px!important;padding:7px 8px 7px 11px!important}
  #free .diff-card h4{font-size:15px!important}
  #free .diff-meta{font-size:7.8px!important}
  #free .diff-solved{min-width:62px!important;font-size:7px!important}
  #free .free-launch-card{grid-template-columns:1fr!important}
  #free .free-actions{grid-column:auto!important}
}

/* ===== app-shell.css ===== */
/* Petalattice application shell and shared overlays. */
/* Section: responsive shell and unified controls. */
:root{
  --petal-shell-width:860px;
  --petal-unified-icon:44px;
  --petal-unified-nav-icon:22px;
  --petal-unified-nav-height:86px;
}

html,body{overflow-x:hidden!important}

/* --- Unified screen shell sizing (except Journey) --- */
body:not(.petal-journey-active){
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.62),transparent 31%),
    linear-gradient(180deg,#f6edde 0%,#efe3cf 100%)!important;
}
@media (min-width: 761px){
  #home,
  #daily,
  #free,
  #garden,
  #gardenPlay,
  #game{
    width:min(100%,var(--petal-shell-width))!important;
    max-width:var(--petal-shell-width)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0 auto!important;
    overflow:hidden!important;
  }

  #daily .daily-flower-shell,
  #free .free-page-shell,
  #garden .collection-premium-shell,
  #gardenPlay .collection-premium-shell{
    width:100%!important;
    max-width:var(--petal-shell-width)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    margin:0 auto!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
  }

  #home.home-approved-v1{
    width:100%!important;
    max-width:var(--petal-shell-width)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0 auto!important;
    overflow-y:auto!important;
    scrollbar-gutter:stable!important;
  }

  #shopSheet .shop-reference-shell{
    width:min(calc(100vw - 28px),var(--petal-shell-width))!important;
    max-width:var(--petal-shell-width)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    margin:0 auto!important;
  }
  #shopSheet .shop-reference-scroll{
    height:calc(100dvh - var(--petal-unified-nav-height))!important;
    max-height:calc(100dvh - var(--petal-unified-nav-height))!important;
    overflow-y:auto!important;
    scrollbar-gutter:stable!important;
  }

  #home .home-bottom-nav,
  #garden .collection-bottom-nav,
  #shopSheet .shop-reference-bottom-nav{
    width:min(100%,var(--petal-shell-width))!important;
  }
}

/* --- Unified icon rhythm --- */
#home .home-approved-settings,
#home .home-profile,
#garden .collection-circle-btn,
#daily .daily-topbar-btn,
#free .free-topbar-btn,
#gardenPlay .page-head .btn.back,
#daily .page-head .btn.back,
#free .page-head .btn.back,
#shopSheet .shop-reference-circle,
#game .gameplay-botanical-hud .game-menu-trigger,
#journey .journey-nav-btn{
  width:var(--petal-unified-icon)!important;
  height:var(--petal-unified-icon)!important;
}

#home .home-bottom-nav button,
#garden .collection-bottom-nav button,
#shopSheet .shop-reference-bottom-nav button,
#journey .journey-bottom-nav button{
  min-height:var(--petal-unified-nav-height)!important;
}
#home .home-bottom-nav button svg,
#garden .collection-bottom-nav button svg,
#shopSheet .shop-reference-bottom-nav button svg,
#journey .journey-bottom-nav button svg{
  width:var(--petal-unified-nav-icon)!important;
  height:var(--petal-unified-nav-icon)!important;
}
#home .home-bottom-nav button span,
#garden .collection-bottom-nav button span,
#shopSheet .shop-reference-bottom-nav button span,
#journey .journey-bottom-nav button span{
  font-size:10.5px!important;
}

/* --- Home visuals --- */
#home .home-approved-resume-art::after{
  background:linear-gradient(90deg,#fbf6e9 0%,rgba(251,246,233,.97) 24%,rgba(251,246,233,.60) 48%,rgba(251,246,233,.08) 79%)!important;
}

/* --- Journey background clean-up --- */
body:has(#journey:not(.hidden)).petal-journey-active{
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.58),transparent 30%),
    linear-gradient(180deg,#f8efe2 0%,#efe2ca 58%,#eadac1 100%)!important;
}
#journey{
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.62),transparent 30%),
    linear-gradient(180deg,#f8efe2 0%,#efe2ca 58%,#eadac1 100%)!important;
}
#journey .journey-map{
  max-width:560px!important;
  box-shadow:0 0 44px rgba(96,74,42,.10)!important;
  margin:0 auto!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.64),transparent 23%),
    linear-gradient(180deg,rgba(255,249,240,.94),rgba(245,236,219,.82))!important;
}


/* --- Shop status popup --- */
#shopStatus{
  position:fixed!important;
  left:50%!important;
  bottom:102px!important;
  z-index:9999!important;
  width:min(calc(100vw - 32px),420px)!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  padding:14px 16px!important;
  border-radius:22px!important;
  border:1px solid rgba(159,124,64,.28)!important;
  background:linear-gradient(180deg,#fffaf1,#f1e5cf)!important;
  box-shadow:0 18px 42px rgba(72,55,29,.18),inset 0 1px 0 rgba(255,255,255,.86)!important;
  color:#48533b!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translate(-50%,18px)!important;
  transition:opacity .22s ease,transform .22s ease!important;
}
#shopStatus.show{
  opacity:1!important;
  transform:translate(-50%,0)!important;
}

/* --- Bigger desktop gameplay board & palette --- */
@media (min-width: 1100px){
  #game,
  #game .game-shell{
    width:min(100%,var(--petal-shell-width))!important;
    max-width:var(--petal-shell-width)!important;
  }
  #game .game-premium-stats{margin-left:0!important;margin-right:0!important}
  :is(#game,#loadoutStage) .board-stage{padding:10px 0 8px!important}
  :is(#game,#loadoutStage) .board{
    max-width:630px!important;
    max-height:630px!important;
  }
  #game .dock{padding:10px!important;gap:8px!important}
  #game .tool{min-height:46px!important;height:46px!important}
  #game .palette{gap:5px!important;padding:8px 8px 6px!important}
  #game .color-btn{
    height:70px!important;
    min-height:70px!important;
    padding-bottom:16px!important;
  }
  #game .color-btn .flower-token{
    max-width:46px!important;
    max-height:46px!important;
  }
  #game .color-btn .remain-badge{font-size:12px!important}
}

/* Section: final layout, navigation, typography, and shop surfaces. */
/* ===== source: v019a-layout-repair ===== */
/* v0.1.9a — desktop repair pass.
   Goal: restore one coherent desktop shell, remove browser-page scrolling,
   keep Journey untouched, and make Collection / Shop / Home visuals feel native again. */
:root{
  --petal-desktop-shell:min(480px, calc(100vw - 24px));
  --petal-desktop-shadow:0 18px 54px rgba(85,64,33,.12);
  --petal-desktop-line:rgba(153,121,68,.15);
  --petal-paper-bg:linear-gradient(180deg,#f6efe2 0%,#eee3cf 100%);
}
@media (min-width: 620px){
  html,body{
    height:100%;
    min-height:100%;
    overflow:hidden!important;
    background:#efe5d1!important;
  }
  body{
    background:
      radial-gradient(circle at 10% 5%,rgba(255,255,255,.78),transparent 28%),
      radial-gradient(circle at 90% 10%,rgba(170,154,108,.10),transparent 27%),
      linear-gradient(180deg,#f5ede0 0%,#ede1cb 100%)!important;
    background-attachment:fixed!important;
  }
  .shell{
    width:100%;
    height:100dvh;
  }
  .screen{max-width:none!important}

  /* Shared desktop frame for every main screen except Journey. */
  #home.home-approved-v1,
  #garden.collection-premium-page,
  #free,
  #daily,
  #game:not(.hidden),
  #gardenPlay{
    width:var(--petal-desktop-shell)!important;
    max-width:var(--petal-desktop-shell)!important;
    min-width:var(--petal-desktop-shell)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0 auto!important;
    border-left:1px solid var(--petal-desktop-line)!important;
    border-right:1px solid var(--petal-desktop-line)!important;
    box-shadow:var(--petal-desktop-shadow)!important;
    background:var(--petal-paper-bg)!important;
    overflow:hidden!important;
  }

  /* HOME */
  #home.home-approved-v1{
    padding:14px 22px 90px!important;
    gap:14px!important;
  }
  #home .home-bottom-nav{width:var(--petal-desktop-shell)!important}
  #home .home-approved-head{min-height:56px!important}
  #home .home-approved-greeting h1{font-size:30px!important;line-height:1.05!important}
  #home .home-approved-greeting p{font-size:13px!important;line-height:1.35!important}
  #home .home-approved-resume{
    flex:0 0 312px!important;
    min-height:312px!important;
    height:312px!important;
    border-radius:24px!important;
    background:linear-gradient(180deg,#fff8eb,#f3e7d1)!important;
  }
  #home .home-approved-resume-art{
    display:block!important;
    width:48%!important;
    height:100%!important;
    right:0!important;
    top:0!important;
    opacity:1!important;
    background-image:url("../ui/home-resume-art.webp")!important;
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
  }
  #home .home-approved-resume-copy{
    width:55%!important;
    padding:30px 0 92px 22px!important;
    z-index:2!important;
  }
  #home .home-approved-resume h2{font-size:31px!important;max-width:240px!important}
  #home .home-approved-resume p{font-size:12px!important;max-width:220px!important;line-height:1.5!important}
  #home .home-approved-progress{left:22px!important;bottom:56px!important}
  #home .home-approved-progress-track{width:92px!important;height:6px!important}
  #home .home-approved-continue{left:22px!important;bottom:18px!important;min-width:128px!important;height:38px!important;min-height:38px!important}
  #home .home-approved-continue b{font-size:15px!important}
  #home .home-approved-next{right:8px!important;width:24px!important;height:24px!important;font-size:16px!important}
  #home .home-approved-feature-row{flex:0 0 176px!important;height:176px!important;gap:14px!important}
  #home .home-approved-feature{height:176px!important;min-height:176px!important}
  #home .home-approved-feature p{font-size:11px!important;max-width:56%!important}
  #home .home-approved-summary{
    flex:0 0 154px!important;
    min-height:154px!important;
    height:154px!important;
    grid-template-columns:168px 1fr!important;
    background:linear-gradient(180deg,#fff9ef,#f3e7d2)!important;
  }
  #home .home-approved-summary>img{width:168px!important;object-fit:cover!important;filter:none!important}
  #home .home-approved-summary-body{padding:16px 14px 12px!important}
  #home .home-approved-summary h3{margin:0 0 10px!important;font-size:22px!important}
  #home .home-approved-summary-stats small{font-size:8.4px!important;line-height:1.15!important}
  #home .home-approved-summary-stats b{font-size:22px!important}

  /* COLLECTION */
  #garden.collection-premium-page{
    padding-top:0!important;
    background:linear-gradient(180deg,#f5ede0 0%,#eee2cd 100%)!important;
  }
  #garden .collection-premium-shell{
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    height:calc(100dvh - 86px)!important;
    margin:0!important;
    padding:18px 18px 20px!important;
    border-radius:0!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    background:linear-gradient(180deg,#f9f2e7 0%,#f3e7d2 100%)!important;
    box-shadow:none!important;
  }
  #garden .collection-bottom-nav{width:var(--petal-desktop-shell)!important}
  #garden .collection-topbar{margin-bottom:16px!important}


  /* MY GARDEN PAGE */
  #gardenPlay{padding:0!important;background:linear-gradient(180deg,#f5ede0 0%,#eee2cd 100%)!important}
  #gardenPlay .page-card{
    width:100%!important;height:100%!important;margin:0!important;border-radius:0!important;
    padding:22px 20px 26px!important;overflow:auto!important;overscroll-behavior:contain!important;
    background:linear-gradient(180deg,#f9f2e7 0%,#f2e7d2 100%)!important;
    box-shadow:none!important;
  }

  /* SHOP */
  #shopSheet{
    position:fixed!important;inset:0!important;display:grid!important;place-items:stretch center!important;
    background:rgba(239,229,209,.78)!important;backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;
    overflow:hidden!important;
  }
  #shopSheet.hidden{display:none!important}
  #shopSheet .shop-reference-shell{
    width:var(--petal-desktop-shell)!important;max-width:var(--petal-desktop-shell)!important;
    height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    margin:0 auto!important;border-radius:0!important;overflow:hidden!important;
    border-left:1px solid var(--petal-desktop-line)!important;border-right:1px solid var(--petal-desktop-line)!important;border-top:0!important;border-bottom:0!important;
    box-shadow:var(--petal-desktop-shadow)!important;background:var(--petal-paper-bg)!important;
  }
  #shopSheet .shop-reference-scroll{
    height:calc(100dvh - 86px)!important;overflow:auto!important;overscroll-behavior:contain!important;
    padding:16px 18px 116px!important;
  }
  #shopSheet .shop-reference-bottom-nav{width:100%!important;height:86px!important;padding:8px 12px!important}
  #shopSheet .shop-reference-status{
    position:absolute!important;left:50%!important;bottom:96px!important;transform:translate(-50%,10px)!important;
    width:min(calc(var(--petal-desktop-shell) - 36px), 540px)!important;max-width:540px!important;
    opacity:0!important;pointer-events:none!important;z-index:12!important;
    padding:14px 18px!important;border-radius:18px!important;
    background:linear-gradient(180deg,rgba(84,101,58,.98),rgba(66,78,46,.98))!important;
    color:#fff9ea!important;border:1px solid rgba(255,255,255,.12)!important;
    box-shadow:0 16px 34px rgba(48,40,23,.24)!important;
    font:600 14px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    text-align:center!important;transition:opacity .22s ease,transform .22s ease!important;
  }
  #shopSheet .shop-reference-status.show{opacity:1!important;transform:translate(-50%,0)!important}

  /* FREE / DAILY / GAME */
  #free,#daily,#game:not(.hidden){padding-top:0!important}
  #free .free-page-shell,
  #daily .daily-flower-shell{
    width:100%!important;max-width:none!important;min-height:calc(100dvh - 86px)!important;
  }
  #free .free-bottom-nav,
  #daily .daily-bottom-nav{width:var(--petal-desktop-shell)!important}
  #game:not(.hidden){padding:12px 20px 10px!important}
  #game .game-shell{max-width:820px!important;gap:8px!important}
  :is(#game,#loadoutStage) .board{max-width:620px!important;max-height:620px!important}
  #game .dock{max-width:820px!important}
  #game .color-btn{height:58px!important;min-height:58px!important}
  #game .color-btn .flower-token{max-width:38px!important;max-height:38px!important}
}

@media (min-width: 620px) and (max-height: 860px){
  #home.home-approved-v1{padding-top:10px!important;gap:10px!important}
  #home .home-approved-resume{flex-basis:276px!important;min-height:276px!important;height:276px!important}
  #home .home-approved-feature-row{height:160px!important;flex-basis:160px!important}
  #home .home-approved-summary{height:140px!important;flex-basis:140px!important;min-height:140px!important}
  :is(#game,#loadoutStage) .board{max-width:560px!important;max-height:560px!important}
}

/* ===== source: v019b-final-polish ===== */
/* v0.1.9b — final cross-device polish. */

/* Home artwork must exist on mobile too; previous desktop-only override left the
   right half blank on phones. */
#home .home-approved-resume-art{
  display:block!important;
  background-image:url("../ui/home-resume-art.webp")!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:58% 52%!important;
  opacity:1!important;
}
#home .home-approved-summary>img{
  content:url("../ui/home-summary-art.webp")!important;
  object-position:center 58%!important;
}


/* Do not expose native browser scrollbars inside the game shell. Scrolling can
   remain available on long collection/shop/garden content, but the gray thumb
   should never become part of the visual design. */
#garden .collection-premium-shell,
#gardenPlay .page-card,
#shopSheet .shop-reference-scroll{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#garden .collection-premium-shell::-webkit-scrollbar,
#gardenPlay .page-card::-webkit-scrollbar,
#shopSheet .shop-reference-scroll::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}

@media (min-width:900px){
  /* Collection: remove the inherited 14px page padding that exposed gray side rails. */
  #garden.collection-premium-page{
    padding:0 0 86px!important;
    background:linear-gradient(180deg,#f8f0e3 0%,#eee2cd 100%)!important;
  }
  #garden .collection-premium-shell{
    width:100%!important;max-width:none!important;
    height:calc(100dvh - 86px)!important;
    border:0!important;border-radius:0!important;
    background:linear-gradient(180deg,#faf4e9 0%,#f2e6d1 100%)!important;
  }


  /* Gameplay: modestly enlarge board while preserving a complete one-viewport
     composition. The 1080p layout can reach ~600px; 768/900px windows scale down. */
  #game .gameplay-botanical-hud{min-height:54px!important;height:54px!important}
  #game .game-premium-stats{min-height:52px!important;padding-top:5px!important;padding-bottom:5px!important}
  :is(#game,#loadoutStage) .board{max-width:600px!important;max-height:600px!important}
  #game .dock{padding:7px!important;gap:6px!important}
  #game .tool{height:41px!important;min-height:41px!important}
  #game .color-btn{height:60px!important;min-height:60px!important}
  #game .color-btn .flower-token{max-width:40px!important;max-height:40px!important}
}

/* 1366×768 class laptops: fit every Home card above the bottom nav instead of
   letting Bahçe Özeti disappear underneath it. */
@media (min-width:900px) and (max-height:820px){
  #home.home-approved-v1{padding:8px 22px 82px!important;gap:7px!important}
  #home .home-approved-head{height:46px!important;min-height:46px!important}
  #home .home-profile{width:44px!important;height:44px!important}
  #home .home-approved-settings{width:40px!important;height:40px!important}
  #home .home-approved-greeting h1{font-size:23px!important}
  #home .home-approved-greeting p{font-size:10.5px!important;margin-top:2px!important}
  #home .home-approved-resume{height:238px!important;min-height:238px!important;flex-basis:238px!important}
  #home .home-approved-resume-copy{padding:18px 0 70px 20px!important}
  #home .home-approved-resume h2{font-size:27px!important}
  #home .home-approved-resume p{font-size:10px!important;line-height:1.35!important}
  #home .home-approved-progress{bottom:44px!important}
  #home .home-approved-continue{bottom:9px!important;height:32px!important;min-height:32px!important}
  #home .home-approved-feature-row{height:128px!important;flex-basis:128px!important;gap:9px!important}
  #home .home-approved-feature{height:128px!important;min-height:128px!important;padding:11px 12px!important}
  #home .home-approved-feature h3{font-size:16px!important}
  #home .home-approved-feature p{font-size:9px!important;margin-top:5px!important}
  #home .home-approved-daily .home-approved-flower-art{width:64px!important;height:64px!important}
  #home .home-approved-bouquet{transform:scale(.75)!important;transform-origin:right bottom!important}
  #home .home-approved-summary{height:112px!important;min-height:112px!important;flex-basis:112px!important;grid-template-columns:116px 1fr!important}
  #home .home-approved-summary>img{width:116px!important}
  #home .home-approved-summary-body{padding:8px 9px 6px!important}
  #home .home-approved-summary h3{font-size:17px!important;margin-bottom:3px!important}
  #home .home-approved-summary-stats{height:58px!important}
  :is(#game,#loadoutStage) .board{max-width:520px!important;max-height:520px!important}
  #game .color-btn{height:52px!important;min-height:52px!important}
  #game .color-btn .flower-token{max-width:35px!important;max-height:35px!important}
}

/* Mobile guard rails: explicitly return to phone geometry. */
@media (max-width:899px){
  html,body{overflow-x:hidden!important}
  #home .home-approved-resume-art{background-position:62% 52%!important}
}

/* ===== source: v019b-shop-notice-card ===== */
#shopSheet .shop-reference-status.show{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:min(calc(100% - 32px),430px)!important;
  min-height:76px!important;
  padding:12px 14px!important;
  border-radius:20px!important;
  text-align:left!important;
  background:linear-gradient(180deg,#fff9ef,#eee0c7)!important;
  color:#465438!important;
  border:1px solid rgba(153,120,65,.28)!important;
  box-shadow:0 18px 38px rgba(63,49,27,.22),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
#shopSheet .shop-reference-status .shop-notice-icon{
  width:46px;height:46px;border-radius:15px;display:grid;place-items:center;
  color:#786640;background:linear-gradient(180deg,#f9edcf,#e5cf9e);
  border:1px solid rgba(151,116,56,.20);font:400 22px/1 Georgia,"Times New Roman",serif;
}
#shopSheet .shop-reference-status .shop-notice-copy{display:grid;gap:3px;min-width:0}
#shopSheet .shop-reference-status .shop-notice-copy b{
  color:#465438;font:400 17px/1.1 Georgia,"Times New Roman",serif;
}
#shopSheet .shop-reference-status .shop-notice-copy span{
  color:#6b6f59;font:500 11px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif;
}
@media(max-width:899px){
  #shopSheet .shop-reference-status.show{bottom:94px!important;width:calc(100% - 28px)!important;min-height:72px!important;padding:11px 12px!important;border-radius:18px!important}
  #shopSheet .shop-reference-status .shop-notice-icon{width:42px;height:42px;border-radius:14px;font-size:20px}
  #shopSheet .shop-reference-status .shop-notice-copy b{font-size:16px}
  #shopSheet .shop-reference-status .shop-notice-copy span{font-size:10.5px}
}

/* ===== source: v019b-journey-gutter-fix ===== */
@media(min-width:900px){
  /* Wrapper follows the already-calculated stage width. Stage size and all
     hand-calibrated node coordinates remain untouched. */
  #journey .journey-map,
  #journey .map-grid{
    width:min(100vw,calc(56.28dvh - 43px))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}



/* Yolculuk ve açılış ekranı da aynı kabuğa girer. Değişken yerine doğrudan
   değer: bu kural harici hotfix katmanından sonra geliyor ve kesin uygulanmalı. */
@media (min-width: 620px){
  html body #journey,
  html body #journey .card.page-card,
  html body .app-splash{
    width: min(480px, calc(100vw - 24px))!important;
    max-width: min(480px, calc(100vw - 24px))!important;
    margin-left: auto!important;
    margin-right: auto!important;
  }
  html body .app-splash{ left:50%!important; right:auto!important; transform:translateX(-50%)!important }
  html body #journey .journey-bottom-nav{
    left:50%!important; right:auto!important; transform:translateX(-50%)!important;
    width: min(480px, calc(100vw - 24px))!important;
    max-width: min(480px, calc(100vw - 24px))!important;
  }
}

/* ===== source: v019d-mobile-bottom-nav-fix ===== */
/* v0.1.9d — unified compact bottom navigation.
   Keep the existing 78px journey geometry; only standardize visual footprint. */
@media (max-width: 899px){
  :root{--petal-mobile-nav-h:78px;--petal-mobile-nav-item-h:56px;--petal-mobile-nav-icon:24px}

  #home .home-bottom-nav,
  #journey .journey-bottom-nav,
  #free .free-bottom-nav,
  #garden .collection-bottom-nav,
  #shopSheet .shop-reference-bottom-nav{
    height:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    min-height:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    box-sizing:border-box!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    align-items:start!important;
    gap:2px!important;
    padding:7px 6px calc(7px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    background:linear-gradient(180deg,rgba(252,248,239,.985),rgba(244,235,218,.992))!important;
    border-top:1px solid rgba(143,111,59,.16)!important;
    box-shadow:0 -7px 22px rgba(75,57,30,.065)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }

  #home .home-bottom-nav .home-nav-item,
  #journey .journey-bottom-nav .home-nav-item,
  #free .free-bottom-nav .home-nav-item,
  #garden .collection-bottom-nav .collection-nav-item,
  #shopSheet .shop-reference-bottom-nav button{
    width:calc(100% - 10px)!important;
    max-width:92px!important;
    height:var(--petal-mobile-nav-item-h)!important;
    min-height:var(--petal-mobile-nav-item-h)!important;
    margin:0 auto!important;
    padding:5px 3px 4px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:start!important;
    justify-self:center!important;
    gap:4px!important;
    border:1px solid transparent!important;
    border-radius:17px!important;
    background:transparent!important;
    color:#626c54!important;
    box-shadow:none!important;
    font:500 9.5px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    white-space:nowrap!important;
  }

  #home .home-bottom-nav .home-nav-item svg,
  #journey .journey-bottom-nav .home-nav-item svg,
  #free .free-bottom-nav .home-nav-item svg,
  #garden .collection-bottom-nav .collection-nav-item svg,
  #shopSheet .shop-reference-bottom-nav button svg{
    width:var(--petal-mobile-nav-icon)!important;
    height:var(--petal-mobile-nav-icon)!important;
    flex:0 0 var(--petal-mobile-nav-icon)!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.65!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  #home .home-bottom-nav .home-nav-item span,
  #journey .journey-bottom-nav .home-nav-item span,
  #free .free-bottom-nav .home-nav-item span,
  #garden .collection-bottom-nav .collection-nav-item span,
  #shopSheet .shop-reference-bottom-nav button span{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:1.05!important;
  }

  #home .home-bottom-nav .home-nav-item.active,
  #journey .journey-bottom-nav .home-nav-item.active,
  #free .free-bottom-nav .home-nav-item.active,
  #garden .collection-bottom-nav .collection-nav-item.active,
  #shopSheet .shop-reference-bottom-nav button.active{
    color:#52613d!important;
    background:linear-gradient(180deg,rgba(234,229,207,.78),rgba(229,220,194,.64))!important;
    border-color:rgba(124,139,80,.12)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.74)!important;
  }

  #home .home-bottom-nav .home-nav-item.active svg,
  #journey .journey-bottom-nav .home-nav-item.active svg,
  #free .free-bottom-nav .home-nav-item.active svg,
  #garden .collection-bottom-nav .collection-nav-item.active svg,
  #shopSheet .shop-reference-bottom-nav button.active svg{stroke-width:1.9!important}

  /* Content clearance matches the exact same nav footprint. */
  #home.home-approved-v1{padding-bottom:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)) + 8px)!important}
  #journey{padding-bottom:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #garden.collection-premium-page{padding-bottom:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)) + 8px)!important}
  #free{padding-bottom:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #shopSheet .shop-reference-scroll{padding-bottom:calc(var(--petal-mobile-nav-h) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)) + 20px)!important}
}

@media (max-width: 370px){
  #home .home-bottom-nav .home-nav-item,
  #journey .journey-bottom-nav .home-nav-item,
  #free .free-bottom-nav .home-nav-item,
  #garden .collection-bottom-nav .collection-nav-item,
  #shopSheet .shop-reference-bottom-nav button{
    width:calc(100% - 6px)!important;
    font-size:8.7px!important;
  }
}

/* ===== source: journeyChapterNodeSkinsAll21V019d ===== */
/* v0.1.9d final — chapter-specific Journey marker skins for all 21 chapters.
   Visual only: calibrated --jx/--jy coordinates, wrapper geometry and perspective scale remain untouched. */
#journey[data-journey-theme="01"]{
  --chapter-node-face:linear-gradient(160deg,#fffdf5 0%,#f8eee2 48%,#e6cfbd 100%);
  --chapter-node-ring:#bd7b87;
  --chapter-node-inner:rgba(183,94,116,.28);
  --chapter-node-ink:#573e3e;
  --chapter-node-done:linear-gradient(160deg,#a9b982 0%,#71874f 58%,#53663a 100%);
  --chapter-node-done-ring:#d7b57a;
  --chapter-node-accent-shadow:rgba(170,82,106,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef9 0%,#fbf0e6 52%,#ead7c5 100%);
  --chapter-node-signature:radial-gradient(circle at 50% 48%,transparent 53%,rgba(178,92,113,.10) 55%,transparent 61%);
}
#journey[data-journey-theme="02"]{
  --chapter-node-face:linear-gradient(160deg,#f9fcfb 0%,#e4f1f1 47%,#bfd9dc 100%);
  --chapter-node-ring:#6e9ca9;
  --chapter-node-inner:rgba(77,142,160,.28);
  --chapter-node-ink:#345763;
  --chapter-node-done:linear-gradient(160deg,#91b7b6 0%,#54838b 58%,#37626c 100%);
  --chapter-node-done-ring:#d4b47a;
  --chapter-node-accent-shadow:rgba(63,132,153,.19);
  --chapter-node-final:linear-gradient(160deg,#fcfffe 0%,#e9f5f4 52%,#ccdee0 100%);
  --chapter-node-signature:linear-gradient(150deg,transparent 36%,rgba(65,134,151,.09) 37% 41%,transparent 42% 57%,rgba(65,134,151,.07) 58% 62%,transparent 63%);
}
#journey[data-journey-theme="03"]{
  --chapter-node-face:linear-gradient(160deg,#fffafc 0%,#eee5f1 48%,#d5c2db 100%);
  --chapter-node-ring:#8b7097;
  --chapter-node-inner:rgba(123,91,143,.27);
  --chapter-node-ink:#56405f;
  --chapter-node-done:linear-gradient(160deg,#9a91ad 0%,#6d6080 58%,#4f455f 100%);
  --chapter-node-done-ring:#d5b77d;
  --chapter-node-accent-shadow:rgba(111,78,137,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdfd 0%,#f1e9f3 52%,#ddcee1 100%);
  --chapter-node-signature:radial-gradient(ellipse at 50% 38%,rgba(132,96,150,.10),transparent 58%);
}
#journey[data-journey-theme="04"]{
  --chapter-node-face:linear-gradient(160deg,#fbfcf5 0%,#e5eddd 47%,#c7d2bd 100%);
  --chapter-node-ring:#6e8a70;
  --chapter-node-inner:rgba(80,126,83,.26);
  --chapter-node-ink:#3f5943;
  --chapter-node-done:linear-gradient(160deg,#91aa86 0%,#607d62 58%,#415c48 100%);
  --chapter-node-done-ring:#cfb17a;
  --chapter-node-accent-shadow:rgba(72,116,76,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef9 0%,#edf3e8 52%,#d4ddcb 100%);
  --chapter-node-signature:linear-gradient(122deg,transparent 46%,rgba(73,116,76,.11) 47% 50%,transparent 51%);
}
#journey[data-journey-theme="05"]{
  --chapter-node-face:linear-gradient(160deg,#fffaf0 0%,#f2dfc9 48%,#d6ae8e 100%);
  --chapter-node-ring:#ad745b;
  --chapter-node-inner:rgba(164,91,64,.27);
  --chapter-node-ink:#654437;
  --chapter-node-done:linear-gradient(160deg,#b79167 0%,#8a6848 58%,#674c34 100%);
  --chapter-node-done-ring:#d7b168;
  --chapter-node-accent-shadow:rgba(159,86,58,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdf8 0%,#f6e6d3 52%,#dec1a5 100%);
  --chapter-node-signature:radial-gradient(ellipse at 32% 28%,rgba(188,105,68,.11),transparent 56%);
}
#journey[data-journey-theme="06"]{
  --chapter-node-face:linear-gradient(160deg,#fffdf4 0%,#e9f0df 46%,#c7d7c0 100%);
  --chapter-node-ring:#7e9a72;
  --chapter-node-inner:rgba(100,146,98,.27);
  --chapter-node-ink:#405b42;
  --chapter-node-done:linear-gradient(160deg,#9cab73 0%,#657a4f 58%,#485c3d 100%);
  --chapter-node-done-ring:#d9b56e;
  --chapter-node-accent-shadow:rgba(93,131,79,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef8 0%,#eef4e7 52%,#d2deca 100%);
  --chapter-node-signature:radial-gradient(circle at 62% 36%,rgba(225,169,72,.11),transparent 47%);
}
#journey[data-journey-theme="07"]{
  --chapter-node-face:linear-gradient(160deg,#fcfeff 0%,#e5f0f7 48%,#c5d9e7 100%);
  --chapter-node-ring:#668aa7;
  --chapter-node-inner:rgba(78,123,158,.27);
  --chapter-node-ink:#34536b;
  --chapter-node-done:linear-gradient(160deg,#809db8 0%,#55738d 58%,#39556e 100%);
  --chapter-node-done-ring:#d9b56e;
  --chapter-node-accent-shadow:rgba(74,118,153,.18);
  --chapter-node-final:linear-gradient(160deg,#fffefe 0%,#edf5fa 52%,#d5e4ee 100%);
  --chapter-node-signature:linear-gradient(135deg,transparent 42%,rgba(70,119,158,.10) 43% 47%,transparent 48%);
}
#journey[data-journey-theme="08"]{
  --chapter-node-face:linear-gradient(160deg,#fffafc 0%,#eee7f4 48%,#d8c8e1 100%);
  --chapter-node-ring:#9277a2;
  --chapter-node-inner:rgba(126,92,150,.27);
  --chapter-node-ink:#574262;
  --chapter-node-done:linear-gradient(160deg,#a69ab4 0%,#756786 58%,#554a66 100%);
  --chapter-node-done-ring:#d6b96f;
  --chapter-node-accent-shadow:rgba(121,86,146,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdfd 0%,#f3ebf5 52%,#e0d3e5 100%);
  --chapter-node-signature:radial-gradient(ellipse at 42% 38%,rgba(143,108,164,.11),transparent 55%);
}
#journey[data-journey-theme="09"]{
  --chapter-node-face:linear-gradient(160deg,#ffffff 0%,#edf5f6 48%,#cedfe3 100%);
  --chapter-node-ring:#7594a0;
  --chapter-node-inner:rgba(88,129,143,.25);
  --chapter-node-ink:#405862;
  --chapter-node-done:linear-gradient(160deg,#9aaeb2 0%,#697e84 58%,#4d6167 100%);
  --chapter-node-done-ring:#d9bd82;
  --chapter-node-accent-shadow:rgba(78,117,132,.17);
  --chapter-node-final:linear-gradient(160deg,#fff 0%,#f2f8f8 52%,#dbe8ea 100%);
  --chapter-node-signature:linear-gradient(155deg,transparent 43%,rgba(100,145,160,.09) 44% 47%,transparent 48%);
}
#journey[data-journey-theme="10"]{
  --chapter-node-face:linear-gradient(160deg,#fffdfd 0%,#f6e7ea 48%,#e9cbd2 100%);
  --chapter-node-ring:#b27d8d;
  --chapter-node-inner:rgba(171,94,119,.25);
  --chapter-node-ink:#654652;
  --chapter-node-done:linear-gradient(160deg,#b99aa2 0%,#896872 58%,#674b55 100%);
  --chapter-node-done-ring:#d9b87a;
  --chapter-node-accent-shadow:rgba(167,88,115,.17);
  --chapter-node-final:linear-gradient(160deg,#fffefe 0%,#faedf0 52%,#efd8de 100%);
  --chapter-node-signature:radial-gradient(circle at 55% 38%,rgba(192,104,132,.10),transparent 52%);
}
#journey[data-journey-theme="11"]{
  --chapter-node-face:linear-gradient(160deg,#fbfeff 0%,#e3f0f4 48%,#c2d9e2 100%);
  --chapter-node-ring:#6d91a5;
  --chapter-node-inner:rgba(74,124,149,.26);
  --chapter-node-ink:#365469;
  --chapter-node-done:linear-gradient(160deg,#8eabb7 0%,#5c7d8d 58%,#405e6f 100%);
  --chapter-node-done-ring:#d8bc82;
  --chapter-node-accent-shadow:rgba(64,116,144,.18);
  --chapter-node-final:linear-gradient(160deg,#fff 0%,#eaf5f8 52%,#d1e4e9 100%);
  --chapter-node-signature:radial-gradient(ellipse at 50% 35%,rgba(87,139,165,.11),transparent 58%);
}
#journey[data-journey-theme="12"]{
  --chapter-node-face:linear-gradient(160deg,#fffaf7 0%,#f3e1df 48%,#ddbec1 100%);
  --chapter-node-ring:#a76f79;
  --chapter-node-inner:rgba(154,75,91,.26);
  --chapter-node-ink:#623f48;
  --chapter-node-done:linear-gradient(160deg,#ad8a83 0%,#805d59 58%,#5f4544 100%);
  --chapter-node-done-ring:#d8aa58;
  --chapter-node-accent-shadow:rgba(150,74,87,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdf9 0%,#f8e9e7 52%,#e6cece 100%);
  --chapter-node-signature:radial-gradient(circle at 34% 31%,rgba(202,153,57,.12),transparent 50%);
}
#journey[data-journey-theme="13"]{
  --chapter-node-face:linear-gradient(160deg,#fbfffd 0%,#e0f0eb 48%,#b9d9d0 100%);
  --chapter-node-ring:#5e988d;
  --chapter-node-inner:rgba(53,135,120,.27);
  --chapter-node-ink:#315e58;
  --chapter-node-done:linear-gradient(160deg,#76a794 0%,#4f796d 58%,#36594f 100%);
  --chapter-node-done-ring:#d6ae55;
  --chapter-node-accent-shadow:rgba(47,125,111,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef9 0%,#eaf5f0 52%,#cae1da 100%);
  --chapter-node-signature:radial-gradient(circle at 61% 35%,rgba(218,170,66,.12),transparent 48%);
}
#journey[data-journey-theme="14"]{
  --chapter-node-face:linear-gradient(160deg,#fffaf2 0%,#f4dfc6 48%,#dfb487 100%);
  --chapter-node-ring:#b9784e;
  --chapter-node-inner:rgba(174,95,52,.27);
  --chapter-node-ink:#6a4530;
  --chapter-node-done:linear-gradient(160deg,#c49a60 0%,#936b3f 58%,#6c4d30 100%);
  --chapter-node-done-ring:#e0b24c;
  --chapter-node-accent-shadow:rgba(175,89,45,.19);
  --chapter-node-final:linear-gradient(160deg,#fffdf7 0%,#f9e8d2 52%,#e8c59f 100%);
  --chapter-node-signature:linear-gradient(135deg,transparent 43%,rgba(206,91,48,.10) 44% 48%,transparent 49%);
}
#journey[data-journey-theme="15"]{
  --chapter-node-face:linear-gradient(160deg,#fbfff9 0%,#e1f0dc 48%,#b9d4b1 100%);
  --chapter-node-ring:#5f8c65;
  --chapter-node-inner:rgba(60,126,69,.27);
  --chapter-node-ink:#35553b;
  --chapter-node-done:linear-gradient(160deg,#7ca47e 0%,#52765a 58%,#385640 100%);
  --chapter-node-done-ring:#d0a95e;
  --chapter-node-accent-shadow:rgba(55,119,65,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef8 0%,#ebf4e7 52%,#cfdfc8 100%);
  --chapter-node-signature:radial-gradient(circle at 37% 36%,rgba(154,76,145,.12),transparent 52%);
}
#journey[data-journey-theme="16"]{
  --chapter-node-face:linear-gradient(160deg,#fffdf7 0%,#edf0e0 48%,#d3d9bd 100%);
  --chapter-node-ring:#7d9068;
  --chapter-node-inner:rgba(105,132,79,.25);
  --chapter-node-ink:#495a3d;
  --chapter-node-done:linear-gradient(160deg,#99a47c 0%,#6e7a59 58%,#505b43 100%);
  --chapter-node-done-ring:#d4b479;
  --chapter-node-accent-shadow:rgba(93,116,71,.17);
  --chapter-node-final:linear-gradient(160deg,#fffefb 0%,#f1f3e8 52%,#dce1cc 100%);
  --chapter-node-signature:radial-gradient(circle at 60% 36%,rgba(176,100,112,.10),transparent 52%);
}
#journey[data-journey-theme="17"]{
  --chapter-node-face:linear-gradient(160deg,#fffaf4 0%,#f3dfd4 48%,#ddb8aa 100%);
  --chapter-node-ring:#ac756a;
  --chapter-node-inner:rgba(161,91,77,.26);
  --chapter-node-ink:#65443e;
  --chapter-node-done:linear-gradient(160deg,#b88b75 0%,#886052 58%,#64483f 100%);
  --chapter-node-done-ring:#d5ae69;
  --chapter-node-accent-shadow:rgba(155,83,69,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdf9 0%,#f7e8e1 52%,#e5c9be 100%);
  --chapter-node-signature:radial-gradient(ellipse at 50% 34%,rgba(194,96,84,.11),transparent 55%);
}
#journey[data-journey-theme="18"]{
  --chapter-node-face:linear-gradient(160deg,#fbfffb 0%,#e4efe2 48%,#bed2c0 100%);
  --chapter-node-ring:#668d73;
  --chapter-node-inner:rgba(72,129,87,.26);
  --chapter-node-ink:#395747;
  --chapter-node-done:linear-gradient(160deg,#83a28a 0%,#5b7762 58%,#415746 100%);
  --chapter-node-done-ring:#d5b66e;
  --chapter-node-accent-shadow:rgba(65,120,80,.18);
  --chapter-node-final:linear-gradient(160deg,#fffef9 0%,#ecf4ea 52%,#d0dfd1 100%);
  --chapter-node-signature:radial-gradient(circle at 38% 34%,rgba(96,91,148,.10),transparent 52%);
}
#journey[data-journey-theme="19"]{
  --chapter-node-face:linear-gradient(160deg,#fbffff 0%,#dff2f1 48%,#b9dddc 100%);
  --chapter-node-ring:#5d9b9b;
  --chapter-node-inner:rgba(53,138,139,.27);
  --chapter-node-ink:#315c5e;
  --chapter-node-done:linear-gradient(160deg,#77aaa5 0%,#4f7b78 58%,#365a59 100%);
  --chapter-node-done-ring:#d8b263;
  --chapter-node-accent-shadow:rgba(48,132,133,.18);
  --chapter-node-final:linear-gradient(160deg,#fff 0%,#e9f7f5 52%,#cce8e5 100%);
  --chapter-node-signature:radial-gradient(circle at 62% 34%,rgba(219,105,103,.11),transparent 50%);
}
#journey[data-journey-theme="20"]{
  --chapter-node-face:linear-gradient(160deg,#fffaf2 0%,#efe2d0 48%,#d4bea1 100%);
  --chapter-node-ring:#9a8065;
  --chapter-node-inner:rgba(139,105,72,.26);
  --chapter-node-ink:#5d4938;
  --chapter-node-done:linear-gradient(160deg,#a89572 0%,#796a51 58%,#594d3d 100%);
  --chapter-node-done-ring:#d7ad52;
  --chapter-node-accent-shadow:rgba(130,93,58,.18);
  --chapter-node-final:linear-gradient(160deg,#fffdf7 0%,#f5eadb 52%,#dfcfb7 100%);
  --chapter-node-signature:linear-gradient(145deg,transparent 44%,rgba(173,80,76,.10) 45% 49%,transparent 50%);
}
#journey[data-journey-theme="21"]{
  --chapter-node-face:linear-gradient(160deg,#fffefe 0%,#edf0f7 44%,#d7d8ea 100%);
  --chapter-node-ring:#8a82a9;
  --chapter-node-inner:rgba(113,103,160,.26);
  --chapter-node-ink:#4c4967;
  --chapter-node-done:linear-gradient(145deg,#799f8c 0%,#7183aa 34%,#8b6f9f 68%,#8f6e79 100%);
  --chapter-node-done-ring:#d6b76b;
  --chapter-node-accent-shadow:rgba(103,91,157,.20);
  --chapter-node-final:linear-gradient(145deg,#fffefe 0%,#eef5f1 28%,#edf0fa 54%,#f3eaf4 76%,#f8eee7 100%);
  --chapter-node-signature:linear-gradient(120deg,rgba(126,180,160,.07),rgba(103,144,187,.08) 32%,rgba(146,110,165,.08) 62%,rgba(196,127,118,.07));
}

/* One consistent number system across every chapter. 1/2/3 digit labels are optically balanced,
   while the existing road-perspective scale still controls the apparent size. */
#journey[data-journey-theme] .journey-soft-circle{
  color:var(--chapter-node-ink)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
  font-weight:720!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  font-feature-settings:"tnum" 1,"lnum" 1!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
  text-shadow:0 1px 0 rgba(255,255,255,.94),0 0 2px rgba(255,255,255,.45)!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{
  font-size:calc(clamp(15px,4.25cqw,23px) * var(--node-scale,1))!important;
  letter-spacing:-.035em!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{
  font-size:calc(clamp(14px,3.95cqw,21.5px) * var(--node-scale,1))!important;
  letter-spacing:-.045em!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{
  font-size:calc(clamp(12.5px,3.45cqw,19px) * var(--node-scale,1))!important;
  letter-spacing:-.055em!important;
}
#journey[data-journey-theme] .journey-soft-circle::before{
  background:var(--chapter-node-face)!important;
  border-color:var(--chapter-node-ring)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.90) inset,0 -2px 4px rgba(91,70,43,.08) inset,0 2px 4px rgba(58,44,25,.16),0 0 0 1px color-mix(in srgb,var(--chapter-node-ring) 12%,transparent)!important;
}
#journey[data-journey-theme] .journey-soft-circle::after{
  border-color:var(--chapter-node-inner)!important;
  background:var(--chapter-node-signature)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.30) inset!important;
}
#journey[data-journey-theme] .journey-soft-node.done .journey-soft-circle{
  color:#fffdf4!important;text-shadow:0 1px 2px rgba(31,37,23,.52)!important;
}
#journey[data-journey-theme] .journey-soft-node.done .journey-soft-circle::before{
  background:var(--chapter-node-done)!important;border-color:var(--chapter-node-done-ring)!important;
}
#journey[data-journey-theme] .journey-soft-node.selected .journey-soft-circle::before,
#journey[data-journey-theme] .journey-soft-node.current .journey-soft-circle::before{
  border-width:1.5px!important;
  box-shadow:0 0 0 2px var(--chapter-node-accent-shadow),0 1px 0 rgba(255,255,255,.92) inset,0 -2px 4px rgba(91,70,43,.08) inset,0 3px 6px rgba(58,44,25,.18)!important;
}
/* Finale readability boost: NO size change. Only a more opaque plate, darker ink and stronger weight. */
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle{
  font-weight:790!important;
  color:color-mix(in srgb,var(--chapter-node-ink) 90%,#20251e)!important;
  text-shadow:0 1px 0 #fff,0 0 3px rgba(255,255,255,.95),0 1px 2px rgba(44,37,24,.18)!important;
}
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle::before{
  background:var(--chapter-node-final)!important;
  border-width:1.4px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 -2px 3px rgba(91,70,43,.08) inset,0 2px 5px rgba(49,39,24,.22),0 0 0 1px rgba(255,255,255,.34)!important;
}
#journey[data-journey-theme] .journey-soft-node.locked.journey-node-readability .journey-soft-circle{
  color:color-mix(in srgb,var(--chapter-node-ink) 82%,#44473e)!important;opacity:1!important;
}
@media(max-width:560px){
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{font-size:calc(clamp(14.5px,4.15cqw,22px) * var(--node-scale,1))!important}
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{font-size:calc(clamp(13.5px,3.82cqw,20.5px) * var(--node-scale,1))!important}
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{font-size:calc(clamp(12px,3.32cqw,18px) * var(--node-scale,1))!important}
}

/* ===== v0.4.6: profile card inside Settings ===== */
.settings-profile-card{
  width:100%!important;min-height:70px!important;margin:0 0 12px!important;padding:9px 12px!important;
  display:grid!important;grid-template-columns:50px minmax(0,1fr) 20px!important;align-items:center!important;gap:11px!important;
  border:1px solid rgba(143,116,69,.18)!important;border-radius:17px!important;background:linear-gradient(145deg,#fbf5e9,#eee1ca)!important;
  color:#4b573e!important;text-align:left!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.84),0 5px 12px rgba(76,58,32,.06)!important;
}
.settings-profile-card img{width:50px!important;height:50px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid rgba(125,139,80,.35)!important}
.settings-profile-card span{display:grid!important;gap:4px!important;min-width:0!important}
.settings-profile-card small{font:750 7px/1 system-ui,sans-serif!important;letter-spacing:.14em!important;color:#9a7844!important}
.settings-profile-card b{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:400 17px/1.1 Georgia,serif!important}
.settings-profile-card>i{text-align:center!important;font:400 23px/1 Georgia,serif!important;color:#748052!important}
/* ===== source: journey-number-readability-v2 ===== */
/* Global Journey number legibility pass. Geometry and node coordinates are untouched. */
#journey[data-journey-theme] .journey-soft-circle{
  color:#26372f!important;
  font-family:Arial,"Helvetica Neue",system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-weight:800!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  font-feature-settings:"tnum" 1,"lnum" 1!important;
  letter-spacing:-.018em!important;
  -webkit-text-stroke:.22px rgba(30,43,36,.34)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.98),0 0 2px rgba(255,255,255,.96),0 1px 1px rgba(26,35,30,.15)!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{
  font-size:max(15px,calc(clamp(15px,4.2cqw,23px) * var(--node-scale,1)))!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{
  font-size:max(14.5px,calc(clamp(14px,3.9cqw,21.5px) * var(--node-scale,1)))!important;
  letter-spacing:-.025em!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{
  font-size:max(13.5px,calc(clamp(13px,3.55cqw,19.5px) * var(--node-scale,1)))!important;
  letter-spacing:-.035em!important;
}
#journey[data-journey-theme] .journey-soft-circle::before{
  filter:saturate(.82) brightness(1.045)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 -2px 4px rgba(80,62,39,.08) inset,0 2px 5px rgba(45,35,23,.18),0 0 0 1px rgba(255,255,255,.42)!important;
}
#journey[data-journey-theme] .journey-soft-circle::after{
  opacity:.70!important;
}
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle{
  color:#1f3029!important;
  font-weight:850!important;
  -webkit-text-stroke:.28px rgba(24,37,30,.42)!important;
  text-shadow:0 1px 0 #fff,0 0 3px rgba(255,255,255,.98),0 1px 1px rgba(24,31,26,.18)!important;
}
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle::before{
  filter:saturate(.72) brightness(1.07)!important;
  border-color:color-mix(in srgb,var(--chapter-node-ring) 78%,#3e4d43)!important;
}
#journey[data-journey-theme] .journey-soft-node.locked .journey-soft-circle{
  opacity:1!important;
  color:#33463d!important;
}
#journey[data-journey-theme] .journey-soft-node.done .journey-soft-circle{
  color:#fffdf5!important;
  -webkit-text-stroke:.20px rgba(31,37,23,.38)!important;
  text-shadow:0 1px 2px rgba(27,34,24,.62),0 0 2px rgba(27,34,24,.28)!important;
}
@media(max-width:560px){
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{font-size:max(15px,calc(clamp(14.5px,4.15cqw,22px) * var(--node-scale,1)))!important}
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{font-size:max(14.5px,calc(clamp(13.8px,3.88cqw,20.8px) * var(--node-scale,1)))!important}
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{font-size:max(13.5px,calc(clamp(13px,3.52cqw,19px) * var(--node-scale,1)))!important}
}

/* ===== source: journey-number-optical-balance-v3 ===== */
/* v0.1.9d — Journey number optical balance V3.
   All nodes share one number weight. No finale/top-node bolding or font floor.
   The label perspective is deliberately softer than the medallion perspective so
   distant 3-digit labels remain readable without becoming visually oversized. */
#journey[data-journey-theme] .journey-soft-circle{
  color:#344039!important;
  font-family:Roboto,"Segoe UI",system-ui,-apple-system,Arial,sans-serif!important;
  font-weight:600!important;
  font-style:normal!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  font-feature-settings:"tnum" 1,"lnum" 1!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
  -webkit-text-stroke:0!important;
  text-shadow:0 1px 0 rgba(255,255,255,.94),0 0 1px rgba(255,255,255,.78)!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:geometricPrecision!important;
}

/* Smooth optical sizing: --node-label-scale is computed from the existing
   perspective scale. It never changes node geometry or coordinates. */
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{
  font-size:calc(clamp(16px,4.30cqw,23px) * var(--node-label-scale,var(--node-scale,1)))!important;
  letter-spacing:-.025em!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{
  font-size:calc(clamp(15.5px,4.08cqw,22px) * var(--node-label-scale,var(--node-scale,1)))!important;
  letter-spacing:-.030em!important;
}
#journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{
  font-size:calc(clamp(15px,3.82cqw,20.5px) * var(--node-label-scale,var(--node-scale,1)))!important;
  letter-spacing:-.040em!important;
}

/* The old last-three readability class intentionally has NO typographic or
   size effect now. Keeping this override also neutralises older injected CSS. */
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle{
  color:#344039!important;
  font-weight:600!important;
  -webkit-text-stroke:0!important;
  text-shadow:0 1px 0 rgba(255,255,255,.94),0 0 1px rgba(255,255,255,.78)!important;
}
#journey[data-journey-theme] .journey-soft-node.journey-node-readability .journey-soft-circle::before{
  border-width:1px!important;
}

/* Readability comes from the plate, not from bolding the number. */
#journey[data-journey-theme] .journey-soft-circle::before{
  filter:saturate(.88) brightness(1.035)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.96) inset,
             0 -2px 3px rgba(78,62,40,.075) inset,
             0 2px 4px rgba(49,39,25,.17),
             0 0 0 1px rgba(255,255,255,.32)!important;
}
#journey[data-journey-theme] .journey-soft-circle::after{opacity:.64!important}

#journey[data-journey-theme] .journey-soft-node.locked .journey-soft-circle{
  color:#465049!important;
  opacity:.92!important;
  font-weight:600!important;
}
#journey[data-journey-theme] .journey-soft-node.done .journey-soft-circle{
  color:#fffdf5!important;
  font-weight:600!important;
  -webkit-text-stroke:0!important;
  text-shadow:0 1px 2px rgba(27,34,24,.58)!important;
}
#journey[data-journey-theme] .journey-soft-node.selected .journey-soft-circle,
#journey[data-journey-theme] .journey-soft-node.current .journey-soft-circle{
  font-weight:600!important;
}

/* Manual calibrated sizes use the same optical weight. */
#journey[data-journey-theme] .journey-soft-node[data-size="s"] .journey-soft-circle{font-weight:600!important}
#journey[data-journey-theme] .journey-soft-node[data-size="m"] .journey-soft-circle{font-weight:600!important}
#journey[data-journey-theme] .journey-soft-node[data-size="l"] .journey-soft-circle{font-weight:600!important}

@media(max-width:560px){
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="1"] .journey-soft-circle{
    font-size:calc(clamp(15.5px,4.22cqw,22px) * var(--node-label-scale,var(--node-scale,1)))!important;
  }
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="2"] .journey-soft-circle{
    font-size:calc(clamp(15px,4.00cqw,21px) * var(--node-label-scale,var(--node-scale,1)))!important;
  }
  #journey[data-journey-theme] .journey-soft-node[data-size="auto"][data-digits="3"] .journey-soft-circle{
    font-size:calc(clamp(14.5px,3.76cqw,19.5px) * var(--node-label-scale,var(--node-scale,1)))!important;
  }
}

/* ===== source: v019d-typography-shell-unify ===== */
/* v0.1.9d — unify Petalattice typography + remove Collection's inset container look. */
:root{
  --petal-brand-font:var(--font-display);
  --petal-brand-color:#465337;
  --petal-brand-gold:#b58c50;
}

/* One brand treatment everywhere. */
#home .home-approved-brand,
#free .free-topbar-brand,
#daily .daily-topbar-brand,
#garden .collection-brand,
#shopSheet .shop-reference-brand,
#finish .result-reference-brand{
  font-family:var(--petal-brand-font)!important;
  font-size:24px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
  color:var(--petal-brand-color)!important;
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased!important;
  font-synthesis:none!important;
}

#home .home-approved-brand>span,
#free .free-topbar-brand>span,
#daily .daily-topbar-brand>span,
#garden .collection-brand>span,
#shopSheet .shop-reference-brand>span,
#finish .result-reference-brand>span{
  display:block!important;
  width:58px!important;
  height:12px!important;
  margin:5px auto 0!important;
  color:var(--petal-brand-gold)!important;
  transform:none!important;
  opacity:1!important;
}

#home .home-approved-brand svg,
#free .free-topbar-brand svg,
#daily .daily-topbar-brand svg,
#garden .collection-brand svg,
#shopSheet .shop-reference-brand svg,
#finish .result-reference-brand svg{
  display:block!important;
  width:58px!important;
  height:12px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Page titles should feel like the same family, not separate mockups. */
#garden .collection-title-block h1,
#shopSheet .shop-reference-title h2{
  font-family:var(--font-display)!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:-.015em!important;
  color:#465337!important;
  -webkit-font-smoothing:antialiased!important;
  font-synthesis:none!important;
}

#garden .collection-title-block h1{
  font-size:clamp(34px,8.5vw,44px)!important;
  line-height:1.02!important;
}
#shopSheet .shop-reference-title h2{
  font-size:clamp(34px,8.5vw,44px)!important;
  line-height:1.02!important;
}

/* Collection is a main screen, not a card floating inside another screen. */
body.garden-active{
  background:linear-gradient(180deg,#f8f1e5 0%,#eee3cf 100%)!important;
}
#garden.collection-premium-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  background:linear-gradient(180deg,#f8f1e5 0%,#eee3cf 100%)!important;
}
#garden .collection-premium-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:linear-gradient(180deg,#fbf6ed 0%,#f3e8d4 100%)!important;
}

/* The top of Collection should align with Shop/Home controls, not with an inset card edge. */
#garden .collection-topbar{
  margin-left:0!important;
  margin-right:0!important;
}

@media (max-width:899px){
  #garden.collection-premium-page{
    min-height:100dvh!important;
    padding:0 0 calc(var(--petal-mobile-nav-h,78px) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    overflow:hidden!important;
  }
  #garden .collection-premium-shell{
    height:calc(100dvh - var(--petal-mobile-nav-h,78px) - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    min-height:0!important;
    padding:18px 18px 26px!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
  }
  #garden .collection-topbar{
    grid-template-columns:46px 1fr 46px!important;
    min-height:58px!important;
    margin-bottom:13px!important;
  }
  #garden .collection-title-block{margin-top:5px!important}

  /* Home brand previously inherited UI sans on some Android browsers. */
  #home .home-approved-brand,
  #free .free-topbar-brand,
  #daily .daily-topbar-brand,
  #garden .collection-brand,
  #shopSheet .shop-reference-brand,
  #finish .result-reference-brand{
    font-size:24px!important;
  }
}

@media (min-width:900px){
  #garden.collection-premium-page{
    padding:0 0 86px!important;
    background:linear-gradient(180deg,#f8f1e5 0%,#eee3cf 100%)!important;
  }
  #garden .collection-premium-shell{
    height:calc(100dvh - 86px)!important;
    padding:18px 20px 24px!important;
    overflow:auto!important;
  }
}

/* ===== v0.4: 1920x1080 desktop layout =====
   Desktop is a first-class wide layout. The mobile/tablet cascade remains
   untouched below 1200px, while every primary screen shares one 1180px frame. */
@media (min-width:1200px) and (min-height:720px){
  :root{
    --petal-desktop-v04:1180px;
    --petal-desktop-nav-v04:78px;
  }

  #home.home-approved-v1,
  #free,
  #daily,
  #garden.collection-premium-page,
  #gardenPlay,
  #game:not(.hidden){
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;
    min-width:0!important;
  }

  #home .home-bottom-nav,
  #journey .journey-bottom-nav,
  #free .free-bottom-nav,
  #daily .daily-bottom-nav,
  #garden .collection-bottom-nav,
  #shopSheet .shop-reference-bottom-nav{
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    height:var(--petal-desktop-nav-v04)!important;
    min-height:var(--petal-desktop-nav-v04)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    padding:6px 18px!important;
  }
  #home .home-bottom-nav button,
  #journey .journey-bottom-nav button,
  #free .free-bottom-nav button,
  #daily .daily-bottom-nav button,
  #garden .collection-bottom-nav button,
  #shopSheet .shop-reference-bottom-nav button{
    min-height:64px!important;
    height:64px!important;
    font-size:11px!important;
  }

  /* Home: use the horizontal space instead of stretching a phone canvas. */
  #home.home-approved-v1{
    padding:18px 28px calc(var(--petal-desktop-nav-v04) + 18px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.45fr) minmax(360px,.8fr)!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
    gap:18px!important;
    overflow:hidden!important;
  }
  #home .home-approved-head{grid-column:1/-1!important}
  #home .home-approved-resume{
    grid-column:1!important;grid-row:2/4!important;
    width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  }
  #home .home-approved-feature-row{
    grid-column:2!important;grid-row:2!important;
    display:grid!important;grid-template-columns:1fr!important;
    width:100%!important;height:auto!important;min-height:0!important;
  }
  #home .home-approved-feature{height:auto!important;min-height:0!important}
  #home .home-approved-summary{
    grid-column:2!important;grid-row:3!important;
    width:100%!important;height:180px!important;min-height:180px!important;
  }

  /* Collection: summary/featured content on the left, chapter and 3x3 grid on the right. */
  #garden.collection-premium-page{padding:0 0 var(--petal-desktop-nav-v04)!important}
  #garden .collection-premium-shell{
    height:calc(100dvh - var(--petal-desktop-nav-v04))!important;
    min-height:0!important;
    padding:18px 24px 22px!important;
    display:grid!important;
    grid-template-columns:minmax(360px,.78fr) minmax(0,1.35fr)!important;
    grid-template-rows:auto auto auto auto minmax(0,1fr)!important;
    column-gap:22px!important;row-gap:12px!important;
    overflow:hidden!important;
  }
  #garden .collection-topbar{grid-column:1/-1!important;margin:0!important}
  #garden .collection-title-block{grid-column:1!important;grid-row:2!important;margin:0!important;align-self:center!important}
  #garden .collection-filter-row{grid-column:2!important;grid-row:2!important;margin:0!important;align-self:center!important}
  #garden .collection-filter-help{grid-column:2!important;grid-row:3!important;margin:0!important;min-height:18px!important;text-align:center!important}
  #garden .collection-progress-card{grid-column:1!important;grid-row:3!important;margin:0!important;min-height:86px!important}
  #garden .collection-featured{
    grid-column:1!important;grid-row:4/6!important;
    margin:0!important;min-height:0!important;height:100%!important;
    grid-template-columns:1fr!important;grid-template-rows:minmax(210px,1fr) auto!important;
  }
  #garden .collection-featured-art{min-height:210px!important;border-right:0!important;border-bottom:1px solid rgba(151,116,58,.16)!important}
  #garden .collection-featured-art img{height:min(28vh,260px)!important;max-height:260px!important}
  #garden .collection-featured-copy{padding:18px 20px!important}
  #garden .collection-grid-head-v2{grid-column:2!important;grid-row:4!important;margin:0!important;padding:12px 14px!important}
  #garden .collection-flower-grid{
    grid-column:2!important;grid-row:5!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:minmax(168px,1fr)!important;
    gap:10px!important;min-height:0!important;overflow:auto!important;
    padding:2px 4px 6px!important;align-content:start!important;
  }
  #garden .collection-flower-card{min-height:168px!important;grid-template-rows:104px auto auto!important}
  #garden .collection-flower-card img{height:100px!important}
  #garden .collection-empty{grid-column:2!important;grid-row:5!important}

  /* My Garden: its nine plots remain visible as a true 3x3 desktop grid. */
  #gardenPlay.garden-page .page-card.garden-page-shell{
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;
    padding:0 24px 28px!important;
  }
  #gardenPlay.garden-page .gd-main-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr)!important;gap:18px!important}
  #gardenPlay.garden-page .gd-plots{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
  #gardenPlay.garden-page .gd-plot{min-height:150px!important;aspect-ratio:auto!important}

  /* Free Bloom and Daily Flower keep readable line lengths inside the common frame. */
  #free .free-page-shell,#daily .daily-flower-shell{
    width:100%!important;max-width:none!important;
    height:calc(100dvh - var(--petal-desktop-nav-v04))!important;
    min-height:0!important;overflow:auto!important;
    padding-left:34px!important;padding-right:34px!important;
  }
  #free .free-page-main,#daily .daily-flower-main{max-width:1040px!important;margin-left:auto!important;margin-right:auto!important}

  /* Journey and gameplay use the same visual width instead of a narrow central strip. */
  #journey .journey-map{width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;max-width:var(--petal-desktop-v04)!important}
  #game .game-shell{width:100%!important;max-width:1120px!important}
  :is(#game,#loadoutStage) .board{max-width:min(68vh,680px)!important;max-height:min(68vh,680px)!important}

  #shopSheet .shop-reference-shell{
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;
  }
  #shopSheet .shop-reference-scroll{height:calc(100dvh - var(--petal-desktop-nav-v04))!important}
}

/* ===== v0.4.6.5: official Petalattice rose-lattice identity ===== */
#home .home-approved-brand,
#free .free-topbar-brand,
#daily .daily-topbar-brand,
#garden .collection-brand,
#shopSheet .shop-reference-brand,
#finish .result-reference-brand{
  box-sizing:content-box!important;
  width:max-content!important;
  min-height:34px!important;
  padding-left:38px!important;
  justify-self:center!important;
  background-image:url("../app/petalattice-logo-red.png")!important;
  background-repeat:no-repeat!important;
  background-size:32px 32px!important;
  background-position:left top!important;
}
.app-splash-brand-mark{
  min-height:58px!important;
  margin-bottom:10px!important;
  background:url("../app/petalattice-logo-red.png") center/58px 58px no-repeat!important;
  filter:drop-shadow(0 8px 16px rgba(20,49,42,.25))!important;
}
.app-splash-brand-mark::before,
.app-splash-brand-mark .mini-flower{display:none!important}

@media(max-width:420px){
  #home .home-approved-brand,
  #free .free-topbar-brand,
  #daily .daily-topbar-brand,
  #garden .collection-brand,
  #shopSheet .shop-reference-brand,
  #finish .result-reference-brand{
    padding-left:34px!important;
    background-size:28px 28px!important;
    background-position:left 1px!important;
  }
}

/* ===== v0.4.1: screenshot-verified desktop corrections ===== */
@media (min-width:1200px) and (min-height:720px){
  /* Older Collection/Game declarations explicitly used margin:0. Reassert the
     centered desktop frame after the complete legacy cascade. */
  #home.home-approved-v1,
  #free,
  #daily,
  #garden.collection-premium-page,
  #gardenPlay,
  #game:not(.hidden),
  #shopSheet .shop-reference-shell{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Home DOM order includes the greeting between header and main cards. Give
     it an explicit row so it cannot be auto-placed beneath the hero. */
  #home.home-approved-v1{
    grid-template-rows:auto auto minmax(0,1fr) 180px!important;
  }
  #home .home-approved-head{grid-column:1/-1!important;grid-row:1!important}
  #home .home-approved-greeting{
    grid-column:1/-1!important;grid-row:2!important;
    margin:0!important;padding:0 4px!important;
  }
  #home .home-approved-greeting h1{margin:0 0 3px!important;font-size:28px!important}
  #home .home-approved-greeting p{margin:0!important}
  #home .home-approved-resume{grid-column:1!important;grid-row:3/5!important}
  #home .home-approved-feature-row{grid-column:2!important;grid-row:3!important}
  #home .home-approved-summary{grid-column:2!important;grid-row:4!important}

  /* Journey's page-card retained the old 480px cap even though the map itself
     was widened. Widen the complete ownership chain, not only the child map. */
  #journey{
    width:100vw!important;max-width:none!important;
    margin:0!important;padding:0 0 var(--petal-desktop-nav-v04)!important;
    overflow:hidden!important;
  }
  #journey>.page-card{
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;
    height:calc(100dvh - var(--petal-desktop-nav-v04))!important;
    min-height:0!important;margin:0 auto!important;padding:0!important;
    overflow:hidden!important;border-radius:0!important;
  }
  #journey .journey-map,#journey .map-grid{
    width:100%!important;max-width:none!important;
    min-width:0!important;height:100%!important;min-height:100%!important;
    margin:0!important;
  }

  /* Collection keeps both columns inside the centered frame and avoids the
     empty right half visible in the supplied capture. */
  #garden.collection-premium-page{
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;
    margin:0 auto!important;
  }
  #garden .collection-premium-shell{width:100%!important;max-width:100%!important;margin:0!important}

  /* Gameplay is intentionally a focused board, but the complete frame and HUD
     must be centered; no left-anchored 1180px slab. */
  #game:not(.hidden){
    width:min(var(--petal-desktop-v04),calc(100vw - 64px))!important;
    max-width:var(--petal-desktop-v04)!important;margin:0 auto!important;
  }
  #game .game-shell{max-width:760px!important;margin:0 auto!important}
  #game .game-premium-stats,#game .dock{width:100%!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
}

/* ===== v0.4.6: coherent botanical home artwork ===== */
#home .home-approved-resume-art{
  width:53%!important;
  background-image:url("../ui/home-chapter-lale-safagi-v3.webp")!important;
  background-position:center right!important;
  filter:saturate(1.06) contrast(1.015)!important;
  box-shadow:-10px 0 18px rgba(58,65,35,.12)!important;
}
#home .home-approved-resume-art::after{
  display:none!important;
}
#home .home-approved-resume-copy{width:47%!important}
#home .home-approved-progress{color:#465338!important}
#home .home-approved-progress b{font-size:10.5px!important;font-weight:700!important}
#home .home-approved-daily .home-approved-flower-art{
  width:78px!important;height:78px!important;right:5px!important;bottom:7px!important;
  filter:drop-shadow(0 8px 12px rgba(91,67,38,.13))!important;
}
#home .home-approved-daily .home-approved-time{
  box-sizing:border-box!important;left:12px!important;bottom:13px!important;width:94px!important;min-height:32px!important;
  grid-template-columns:16px minmax(0,1fr)!important;grid-template-rows:12px 15px!important;
  column-gap:5px!important;padding:5px 2px 0!important;border-radius:0!important;
  background:transparent!important;border:0!important;border-top:1px solid rgba(121,104,69,.22)!important;
  box-shadow:none!important;
}
#home .home-approved-daily .home-approved-time>span{font-size:15px!important}
#home .home-approved-daily .home-approved-time small{font-size:7.5px!important;color:#666b58!important;letter-spacing:.01em!important}
#home .home-approved-daily .home-approved-time b{font-size:11px!important;color:#414c36!important;font-variant-numeric:tabular-nums!important;letter-spacing:.01em!important}
#home .home-approved-feature p{font-size:12px!important;color:#555f4c!important;line-height:1.3!important;max-width:108px!important}
#home .home-approved-bouquet{
  width:126px!important;height:118px!important;right:3px!important;bottom:2px!important;
  transform:none!important;
}
#home .home-approved-bouquet .home-free-bloom-flower{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:contain!important;filter:drop-shadow(0 8px 12px rgba(91,67,38,.13))!important;
}
#home .home-approved-summary{
  grid-template-columns:106px minmax(0,1fr)!important;
  min-height:112px!important;height:112px!important;flex-basis:112px!important;
}
#home .home-approved-summary>img{
  content:url("../ui/home-garden-summary-v3.webp")!important;
  width:106px!important;height:112px!important;object-fit:cover!important;object-position:center!important;
  filter:saturate(.86) contrast(.98)!important;
}
#home .home-approved-summary-body{padding:9px 10px 7px!important}
#home .home-approved-summary-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0 0 5px!important}
#home .home-approved-summary h3{margin:0!important;font-size:17px!important;line-height:1.05!important}
#home .home-approved-summary-head>span{display:flex!important;align-items:center!important;gap:4px!important;white-space:nowrap!important;color:#68754e!important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important;font-size:8.5px!important;font-weight:650!important}
#home .home-approved-summary-head>span b{font-family:Georgia,"Times New Roman",serif!important;font-size:17px!important;font-weight:400!important;line-height:1!important}
#home .home-approved-summary-stats{height:62px!important}
#home .home-approved-summary-stats span{grid-template-rows:18px 18px 22px!important;padding:0 4px!important}
#home .home-approved-summary-stats small{font-size:8.5px!important;color:#565f4e!important;min-height:0!important}
#home .home-approved-summary-stats b{font-size:19px!important;margin:0!important}

@media(max-width:560px){
  #home .home-approved-resume-art{width:52%!important}
  #home .home-approved-resume-copy{width:48%!important}
  #home .home-approved-daily .home-approved-flower-art{width:74px!important;height:74px!important;right:3px!important;bottom:8px!important}
  #home .home-approved-daily .home-approved-time{left:10px!important;bottom:12px!important;width:90px!important;padding:5px 1px 0!important}
  #home .home-approved-bouquet{width:102px!important;height:98px!important;right:1px!important;bottom:2px!important}
  #home .home-approved-summary{grid-template-columns:92px minmax(0,1fr)!important;min-height:104px!important;height:104px!important;flex-basis:104px!important}
  #home .home-approved-summary>img{width:92px!important;height:104px!important}
  #home .home-approved-summary-body{padding:8px 6px 6px!important}
  #home .home-approved-summary h3{font-size:16px!important}
  #home .home-approved-summary-head{margin-bottom:4px!important}
  #home .home-approved-summary-head>span{font-size:8px!important}
  #home .home-approved-summary-stats{height:57px!important}
  #home .home-approved-summary-stats small{font-size:8px!important}
}

@media (min-width:1200px) and (min-height:720px){
  #home.home-approved-v1{grid-template-rows:auto auto minmax(0,1fr) 150px!important}
  #home .home-approved-summary{height:150px!important;min-height:150px!important;grid-template-columns:150px minmax(0,1fr)!important}
  #home .home-approved-summary>img{width:150px!important;height:150px!important}
  #home .home-approved-summary-body{padding:15px 18px 12px!important}
  #home .home-approved-summary h3{font-size:21px!important;margin-bottom:12px!important}
  #home .home-approved-summary-stats{height:84px!important}
  #home .home-approved-summary-stats small{font-size:9px!important}
  #home .home-approved-summary-stats b{font-size:23px!important}
}

/* ===== v0.4.6.6: final home masthead and quick-card balance ===== */
#home .home-approved-greeting{display:none!important}
#home .home-approved-brand{
  min-height:42px!important;padding-left:42px!important;
  background-size:36px 36px!important;background-position:left 1px!important;
}
#home .home-approved-brand .home-approved-flourish{display:none!important}
#home .home-approved-head{min-height:72px!important}
#home .home-approved-feature-row .home-approved-gift{display:none!important}
#home .home-approved-daily .home-approved-time{
  left:10px!important;bottom:8px!important;width:94px!important;min-height:32px!important;
  grid-template-columns:16px minmax(0,1fr)!important;grid-template-rows:12px 15px!important;
  column-gap:5px!important;padding:5px 2px 0!important;border:0!important;border-radius:0!important;
  background:transparent!important;border-top:1px solid rgba(121,104,69,.22)!important;
  box-shadow:none!important;
}
#home .home-approved-daily .home-approved-time>span{color:#657448!important}
#home .home-approved-free .home-approved-bouquet{right:7px!important;bottom:7px!important}
@media(min-width:1200px) and (min-height:720px){
  #home.home-approved-v1{grid-template-rows:auto minmax(0,1fr) 180px!important}
  #home .home-approved-head{grid-row:1!important}
  #home .home-approved-resume{grid-row:2/4!important}
  #home .home-approved-feature-row{grid-row:2!important}
  #home .home-approved-summary{grid-row:3!important}
}
@media(max-width:560px){
  #home .home-approved-brand{padding-left:38px!important;background-size:32px 32px!important}
  #home .home-approved-daily .home-approved-time{left:9px!important;bottom:7px!important;width:90px!important;padding:5px 1px 0!important}
}

/* Settings and legal sheets stay above one another without forcing a close. */
#settingsSheet.sheet{z-index:10070!important}
#legalSheet.sheet{z-index:10080!important}
#profileSheet.sheet{z-index:10090!important}

/* v0.4.6: emerald image wordmark only on Home and Collection. */
#home .home-approved-head,
body #garden .collection-topbar{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  align-items:center!important;
  gap:10px!important;
}
#home .petal-global-logo,
body #garden .petal-global-logo{
  display:block!important;
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 6px 11px rgba(21,48,41,.20))!important;
}
#home .home-approved-brand,
body #garden .collection-brand{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  text-align:center!important;
}
.petal-emerald-wordmark{
  display:block!important;
  width:min(100%,240px)!important;
  height:56px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 3px 4px rgba(50,38,16,.13))!important;
}
#home .home-approved-settings,
body #garden .petal-global-settings{
  justify-self:end!important;
  width:44px!important;
  height:44px!important;
  padding:0!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(154,122,68,.22)!important;
  background:linear-gradient(180deg,#fffaf0,#eee1c9)!important;
  color:#566344!important;
  box-shadow:0 6px 15px rgba(75,57,31,.09),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
body #garden .petal-global-settings svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
@media(max-width:560px){
  #home .home-approved-head,
  body #garden .collection-topbar{grid-template-columns:42px minmax(0,1fr) 42px!important;gap:8px!important}
  #home .petal-global-logo,
  body #garden .petal-global-logo{width:40px!important;height:40px!important}
  #home .home-approved-settings,
  body #garden .petal-global-settings{width:40px!important;height:40px!important}
  .petal-emerald-wordmark{width:min(100%,205px)!important;height:48px!important}
}

/* ===== garden.css ===== */
/* Petalattice Garden and Collection surfaces. */
/* Section 1: shared My Garden layout and components. */
#gardenPlay.garden-page{
  --gd-ink:#46543a;
  --gd-muted:#74765f;
  --gd-gold:#b7914e;
  --gd-sage:#87975a;
  --gd-paper:#fbf5e9;
  --gd-paper-2:#f2e6d1;
  --gd-line:rgba(151,124,77,.20);
  --gd-shadow:0 14px 34px rgba(74,56,29,.10);
  background:
    radial-gradient(circle at 50% -12%,rgba(255,255,255,.92),transparent 34%),
    linear-gradient(180deg,#f7efe2 0%,#efe2cc 100%)!important;
  color:var(--gd-ink)!important;
}

/* ===== v0.4.6.8: simplified Collection hierarchy and in-game chapter HUD ===== */
#garden .collection-topbar{
  display:block!important;margin:0 0 12px!important;text-align:center!important;
}
#garden .collection-brand{
  box-sizing:content-box!important;width:max-content!important;min-height:48px!important;
  margin:0 auto!important;padding:2px 0 0 52px!important;text-align:left!important;
  font:400 31px/1.02 Georgia,"Times New Roman",serif!important;
  background:url("../app/petalattice-logo-red.png") left center/44px 44px no-repeat!important;
}
#garden .collection-brand>span{display:none!important}
#garden .collection-garden-card{
  min-height:168px!important;margin:0 0 14px!important;border-radius:23px!important;
  background:#d8cbb2!important;
}
#garden .collection-garden-card::before{
  inset:0!important;background:url("../ui/collection-my-garden-v2.webp") center 58%/cover no-repeat!important;
  filter:saturate(1.04) contrast(1.02)!important;
}
#garden .collection-garden-card::after{
  display:block!important;inset:0!important;
  background:linear-gradient(180deg,transparent 32%,rgba(24,38,23,.08) 56%,rgba(26,38,23,.76) 100%)!important;
}
#garden .collection-garden-card .collection-garden-card__copy{
  width:100%!important;min-height:168px!important;justify-content:flex-end!important;
  padding:18px 72px 17px 19px!important;
}
#garden .collection-garden-card .collection-garden-card__kicker{display:none!important}
#garden .collection-garden-card .collection-garden-card__copy b{
  color:#fffaf0!important;font-size:32px!important;text-shadow:0 2px 9px rgba(15,25,14,.34)!important;
}
#garden .collection-garden-card .collection-garden-card__copy>small{
  max-width:330px!important;margin:5px 0 0!important;color:rgba(255,250,240,.91)!important;
  font-size:10px!important;text-shadow:0 1px 5px rgba(15,25,14,.42)!important;
}
#garden .collection-garden-card .collection-garden-card__action{
  right:15px!important;bottom:15px!important;background:rgba(250,244,231,.92)!important;
}
#garden .collection-garden-card .collection-garden-card__action>span{display:none!important}
#garden .collection-filter-row{justify-content:center!important;margin-bottom:12px!important}
#garden .collection-progress-card{grid-template-columns:1fr 58px!important}
#garden .collection-medal{
  width:54px!important;height:54px!important;border:1px solid rgba(129,105,61,.28)!important;
  background:linear-gradient(145deg,#f8eed2,#d8bd79)!important;box-shadow:0 7px 16px rgba(91,68,31,.13),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
#garden .collection-medal svg{width:34px!important;height:34px!important;fill:rgba(112,128,72,.14)!important;stroke:#68794a!important;stroke-width:2!important;stroke-linejoin:round!important}
#garden .collection-card-ribbon{
  right:5px!important;top:7px!important;width:auto!important;height:20px!important;min-width:38px!important;
  padding:0 7px!important;border-radius:999px!important;clip-path:none!important;
  background:linear-gradient(180deg,#7e8955,#667342)!important;color:#fffaf0!important;
  font:750 7px/20px system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.08em!important;
  box-shadow:0 3px 8px rgba(57,70,34,.17)!important;
}
#garden .collection-flower-card.locked .collection-card-ribbon{background:#988c72!important;color:#fff9ec!important}
#garden .collection-grid-controls{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}
#garden .collection-chapter-hud-trigger{
  position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:12px 18px!important;column-gap:8px!important;width:min(270px,52vw)!important;min-width:0!important;
  height:44px!important;padding:6px 31px 6px 12px!important;border:1px solid rgba(130,109,70,.22)!important;
  border-radius:13px!important;background:linear-gradient(180deg,#fbf5e8,#eee1ca)!important;color:#4b573d!important;text-align:left!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 4px 10px rgba(81,62,34,.07)!important;
}
#garden .collection-chapter-hud-trigger>span{grid-column:1!important;font:700 7px/1 system-ui,sans-serif!important;letter-spacing:.11em!important;text-transform:uppercase!important;color:#987946!important}
#garden .collection-chapter-hud-trigger>b{grid-column:1!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:600 10.5px/1.2 system-ui,sans-serif!important}
#garden .collection-chapter-hud-trigger>i{grid-column:2!important;grid-row:1/3!important;align-self:center!important;font:650 8px/1 system-ui,sans-serif!important;color:#7c806a!important}
#garden .collection-chapter-hud-trigger>em{position:absolute!important;right:9px!important;top:13px!important;font:700 14px/1 system-ui!important;color:#6e7952!important}
#garden .collection-chapter-hud{position:fixed!important;inset:0!important;z-index:10120!important;display:grid!important;place-items:center!important;padding:18px!important}
#garden .collection-chapter-hud.hidden{display:none!important}
#garden .collection-chapter-hud-backdrop{position:absolute!important;inset:0!important;border:0!important;background:rgba(36,39,27,.54)!important;backdrop-filter:blur(7px)!important}
#garden .collection-chapter-hud-panel{
  position:relative!important;z-index:1!important;width:min(720px,100%)!important;max-height:min(82dvh,760px)!important;
  display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important;border:1px solid rgba(165,132,75,.28)!important;
  border-radius:25px!important;background:linear-gradient(155deg,#fffaf0,#eee2cc)!important;box-shadow:0 28px 70px rgba(33,36,23,.32),inset 0 1px 0 #fff!important;
}
#garden .collection-chapter-hud-panel>header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:18px 20px 14px!important;border-bottom:1px solid rgba(145,113,61,.15)!important}
#garden .collection-chapter-hud-panel header small{font:750 8px/1 system-ui,sans-serif!important;letter-spacing:.16em!important;color:#9a7843!important}
#garden .collection-chapter-hud-panel header h2{margin:4px 0 0!important;font:400 27px/1 Georgia,serif!important;color:#455237!important}
#garden .collection-chapter-hud-panel header button{width:36px!important;height:36px!important;border-radius:50%!important;border:1px solid rgba(135,109,67,.19)!important;background:#f5ead6!important;color:#5e694c!important;font:300 24px/1 system-ui!important}
#garden .collection-chapter-hud-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:12px!important;overflow:auto!important;overscroll-behavior:contain!important}
#garden .collection-chapter-hud-item{
  position:relative!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 18px!important;grid-template-rows:auto auto!important;
  align-items:center!important;column-gap:10px!important;min-height:64px!important;padding:9px 12px!important;border:1px solid rgba(143,114,67,.16)!important;
  border-radius:15px!important;background:rgba(255,252,244,.7)!important;color:#4d5840!important;text-align:left!important;
}
#garden .collection-chapter-hud-item>span{grid-row:1/3!important;width:38px!important;height:38px!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:#ece1ca!important;color:#758052!important;font:700 11px/1 system-ui!important}
#garden .collection-chapter-hud-item>b{align-self:end!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:600 11px/1.2 system-ui,sans-serif!important}
#garden .collection-chapter-hud-item>small{align-self:start!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:500 8px/1.25 system-ui,sans-serif!important;color:#7a7968!important}
#garden .collection-chapter-hud-item>i{grid-column:3!important;grid-row:1/3!important;text-align:center!important;font:700 13px/1 system-ui!important;color:#7a8459!important}
#garden .collection-chapter-hud-item.active{border-color:#7b8853!important;background:linear-gradient(145deg,#eef1db,#dde4c2)!important;box-shadow:inset 3px 0 0 #778550!important}

/* The official mark and wordmark are the only Home masthead content. */
#home .home-approved-brand{min-height:50px!important;padding-left:52px!important;background-size:44px 44px!important;font-size:30px!important}
#home .home-approved-head{min-height:78px!important}

@media(max-width:560px){
  #garden .collection-brand{min-height:44px!important;padding-left:47px!important;background-size:40px 40px!important;font-size:27px!important}
  #garden .collection-garden-card{min-height:154px!important}
  #garden .collection-garden-card .collection-garden-card__copy{min-height:154px!important;padding:15px 60px 14px 16px!important}
  #garden .collection-garden-card .collection-garden-card__copy b{font-size:29px!important}
  #garden .collection-filter-row{justify-content:flex-start!important}
  #garden .collection-grid-head{align-items:flex-end!important}
  #garden .collection-grid-controls{width:100%!important}
  #garden .collection-chapter-hud-trigger{width:auto!important;flex:1 1 auto!important}
  #garden .collection-sort{flex:0 0 auto!important}
  #garden .collection-chapter-hud{padding:12px!important}
  #garden .collection-chapter-hud-panel{max-height:86dvh!important;border-radius:22px!important}
  #garden .collection-chapter-hud-grid{grid-template-columns:1fr!important}
  #home .home-approved-brand{min-height:46px!important;padding-left:47px!important;background-size:40px 40px!important;font-size:27px!important}
}

@media(min-width:1200px) and (min-height:720px){
  #garden .collection-premium-shell{
    grid-template-rows:auto auto auto auto minmax(0,1fr)!important;
  }
  #garden .collection-topbar{grid-column:1/-1!important;grid-row:1!important}
  #garden .collection-garden-card{grid-column:1!important;grid-row:2!important;margin:0!important;min-height:164px!important}
  #garden .collection-garden-card .collection-garden-card__copy{min-height:164px!important}
  #garden .collection-filter-row{grid-column:2!important;grid-row:2!important}
  #garden .collection-progress-card{grid-column:1!important;grid-row:3!important}
  #garden .collection-featured{grid-column:1!important;grid-row:4/6!important}
  #garden .collection-grid-head-v2{grid-column:2!important;grid-row:3/5!important;align-self:start!important}
  #garden .collection-flower-grid{grid-column:2!important;grid-row:5!important}
}
#gardenPlay.garden-page .garden-page-shell{
  position:relative;
  width:min(100%,760px)!important;
  max-width:760px!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:0 14px 30px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,#fbf6ec 0%,#f4e8d4 100%)!important;
  box-shadow:none!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:none;
}
#gardenPlay.garden-page .garden-page-shell::-webkit-scrollbar{display:none}
#gardenPlay.garden-page .garden-topbar{
  position:sticky;top:0;z-index:8;
  min-height:82px!important;
  margin:0 -14px 10px!important;
  padding:12px 18px 8px!important;
  display:grid!important;
  grid-template-columns:48px 1fr 48px!important;
  align-items:center!important;
  gap:10px!important;
  background:linear-gradient(180deg,rgba(251,246,236,.98) 0%,rgba(251,246,236,.90) 74%,rgba(251,246,236,0) 100%)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
#gardenPlay.garden-page .garden-back,
#gardenPlay.garden-page .garden-shop{
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  border-radius:50%!important;border:1px solid rgba(174,143,87,.28)!important;
  background:linear-gradient(180deg,#fffaf0,#f1e5cf)!important;
  color:#5b674b!important;
  box-shadow:0 7px 16px rgba(77,58,29,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
  display:grid!important;place-items:center!important;padding:0!important;
}
#gardenPlay.garden-page .garden-back svg,
#gardenPlay.garden-page .garden-shop svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#gardenPlay.garden-page .garden-brand{text-align:center;min-width:0}
#gardenPlay.garden-page .garden-brand b{
  display:block;color:#435137;font:400 26px/1 Georgia,"Times New Roman",serif;letter-spacing:-.01em;
}
#gardenPlay.garden-page .garden-brand svg{display:block;width:62px;height:13px;margin:5px auto 0;fill:none;stroke:#b78d43;stroke-width:1.25;stroke-linecap:round}

#gardenPlay.garden-page #gardenScreen{display:block!important}

#gardenPlay.garden-page .gd-top{
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin:0 0 18px!important;
}
#gardenPlay.garden-page .gd-wallet,
#gardenPlay.garden-page .gd-water,
#gardenPlay.garden-page .gd-bonus{
  min-width:0;min-height:66px;padding:9px 10px!important;border-radius:18px!important;
  display:grid!important;grid-template-columns:32px 1fr!important;grid-template-rows:auto auto!important;column-gap:8px!important;align-items:center!important;justify-items:start!important;
  background:linear-gradient(180deg,rgba(255,252,246,.97),rgba(247,238,222,.96))!important;
  border:1px solid var(--gd-line)!important;box-shadow:0 7px 16px rgba(72,56,31,.06),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
#gardenPlay.garden-page .gd-stat-icon{grid-row:1/3;width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:#eef0dc;color:#748448}
#gardenPlay.garden-page .gd-water .gd-stat-icon{background:#e8f0ed;color:#628b83}
#gardenPlay.garden-page .gd-bonus .gd-stat-icon{background:#f3ead2;color:#a17d3f}
#gardenPlay.garden-page .gd-stat-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#gardenPlay.garden-page .gd-wallet b,
#gardenPlay.garden-page .gd-water b,
#gardenPlay.garden-page .gd-bonus b{font:400 18px/1 Georgia,"Times New Roman",serif!important;color:#46533a!important}
#gardenPlay.garden-page .gd-wallet small,
#gardenPlay.garden-page .gd-water small,
#gardenPlay.garden-page .gd-bonus small{font:600 9px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#7a7968!important}

#gardenPlay.garden-page .gd-main-grid{display:grid;gap:16px}
#gardenPlay.garden-page .gd-section-card{
  border:1px solid var(--gd-line);border-radius:24px;background:linear-gradient(180deg,rgba(255,251,244,.97),rgba(246,237,221,.96));
  box-shadow:0 10px 22px rgba(75,57,29,.07),inset 0 1px 0 rgba(255,255,255,.84);padding:14px;
}
#gardenPlay.garden-page .gd-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 1px 12px}
#gardenPlay.garden-page .gd-section-head>div{min-width:0}
#gardenPlay.garden-page .gd-section-head h3{margin:0;color:#45533a;font:400 21px/1.04 Georgia,"Times New Roman",serif}
#gardenPlay.garden-page .gd-section-head p{margin:4px 0 0;color:#85806d;font:500 10px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif}
#gardenPlay.garden-page .gd-section-badge{flex:none;padding:6px 9px;border-radius:999px;background:#eef0dd;border:1px solid rgba(126,143,83,.17);color:#66764a;font:700 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif}

#gardenPlay.garden-page .gd-plots{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important;margin:0!important}
#gardenPlay.garden-page .gd-plot{
  position:relative;aspect-ratio:.94!important;border-radius:18px!important;padding:8px!important;overflow:hidden!important;
  display:flex!important;flex-direction:column!important;justify-content:space-between!important;align-items:stretch!important;gap:5px!important;
  border:1px solid rgba(148,126,86,.22)!important;background:linear-gradient(180deg,#fffaf0 0%,#f0e4cf 100%)!important;
  box-shadow:0 7px 15px rgba(72,56,31,.07),inset 0 1px 0 rgba(255,255,255,.85)!important;color:#4e5941!important;
  transform:none!important;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease!important;
}
#gardenPlay.garden-page .gd-plot:active{transform:scale(.975)!important}
#gardenPlay.garden-page .gd-plot-top{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:18px}
#gardenPlay.garden-page .gd-plot-index{color:#958b72;font:700 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.08em}
#gardenPlay.garden-page .gd-state{
  padding:4px 6px;border-radius:999px;background:rgba(128,145,83,.10);color:#69784d;font:700 7.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif;text-transform:uppercase;letter-spacing:.06em
}
#gardenPlay.garden-page .gd-plot-visual{position:relative;min-height:58px;display:grid;place-items:center;flex:1}
#gardenPlay.garden-page .gd-bloom{
  width:72%!important;max-width:78px!important;aspect-ratio:1!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center bottom!important;
  filter:drop-shadow(0 5px 7px rgba(65,46,24,.18))!important;transform-origin:50% 100%!important
}
#gardenPlay.garden-page .gd-ring{width:100%!important;height:4px!important;background:rgba(104,103,80,.13)!important;border-radius:999px!important;overflow:hidden!important}
#gardenPlay.garden-page .gd-ring i{background:linear-gradient(90deg,#aab877,#778b4c)!important}
#gardenPlay.garden-page .gd-plot-copy{display:grid;gap:2px;text-align:left}
#gardenPlay.garden-page .gd-plot-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4a563f;font:600 10.5px/1.15 system-ui,-apple-system,"Segoe UI",sans-serif}
#gardenPlay.garden-page .gd-plot-copy small{color:#817a68;font:500 8.5px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif}
#gardenPlay.garden-page .gd-ready{
  border-color:rgba(177,145,76,.44)!important;background:linear-gradient(180deg,#fff9e8 0%,#efe2c4 100%)!important;
  box-shadow:0 8px 18px rgba(99,75,30,.10),inset 0 0 0 1px rgba(207,173,93,.18)!important
}
#gardenPlay.garden-page .gd-ready .gd-state{background:#f2e3b9;color:#8b6b31}
#gardenPlay.garden-page .gd-ready .gd-plot-copy b{color:#7d6231}
#gardenPlay.garden-page .gd-growing .gd-state{background:#e8efdd;color:#62774d}
#gardenPlay.garden-page .gd-empty .gd-state{background:#f0eadc;color:#83775e}
#gardenPlay.garden-page .gd-locked{opacity:1!important;background:linear-gradient(180deg,#f1ece2,#e7dfd1)!important;color:#98907f!important;border-style:dashed!important}
#gardenPlay.garden-page .gd-locked .gd-state{background:rgba(110,105,91,.08);color:#979080}
#gardenPlay.garden-page .gd-lock{opacity:.68!important;display:grid!important;place-items:center!important;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.42);border:1px solid rgba(129,121,105,.16)}
#gardenPlay.garden-page .gd-lock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}

#gardenPlay.garden-page .gd-side-stack{display:grid;gap:16px}
#gardenPlay.garden-page .gd-quests,#gardenPlay.garden-page .gd-shop{margin:0!important}
#gardenPlay.garden-page .gd-quest-list{display:grid;gap:8px}
#gardenPlay.garden-page .gd-quest{
  display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;margin:0!important;padding:9px!important;
  border-radius:16px!important;background:rgba(255,252,246,.82)!important;border:1px solid rgba(151,125,80,.15)!important
}
#gardenPlay.garden-page .gd-quest.done{opacity:.66!important}
#gardenPlay.garden-page .gd-q-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#edf0df;color:#72824d}
#gardenPlay.garden-page .gd-q-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
#gardenPlay.garden-page .gd-q-body b{color:#4b5740;font:650 10.5px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#gardenPlay.garden-page .gd-q-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;color:#89816e;font:600 8.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif}
#gardenPlay.garden-page .gd-q-bar{height:4px!important;margin:5px 0 0!important;background:rgba(116,112,87,.13)!important}
#gardenPlay.garden-page .gd-q-bar i{background:linear-gradient(90deg,#a8b777,#7b8d50)!important}
#gardenPlay.garden-page .gd-q-claim{min-width:58px!important;padding:8px 8px!important;border-radius:999px!important;border:1px solid rgba(156,127,70,.16)!important;background:linear-gradient(180deg,#899b59,#718243)!important;color:#fffdf5!important;font:700 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important}
#gardenPlay.garden-page .gd-q-claim:disabled{background:#eee6d7!important;color:#958d7a!important;border-color:rgba(139,125,96,.13)!important;opacity:1!important;box-shadow:none!important}

#gardenPlay.garden-page .gd-decor{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
#gardenPlay.garden-page .gd-decor-card{
  position:relative;text-align:left!important;min-height:112px;padding:10px!important;border-radius:17px!important;overflow:hidden!important;
  background:linear-gradient(180deg,#fffaf1,#f1e5d1)!important;border:1px solid rgba(151,125,80,.16)!important;color:#4b5740!important
}
#gardenPlay.garden-page .gd-decor-card.owned{opacity:1!important;background:linear-gradient(180deg,#eef1df,#e4e8d0)!important;border-color:rgba(127,145,82,.23)!important}
#gardenPlay.garden-page .gd-decor-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;margin-bottom:8px;background:rgba(255,255,255,.58);color:#7e754e;border:1px solid rgba(150,126,82,.13)}
#gardenPlay.garden-page .gd-decor-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
#gardenPlay.garden-page .gd-decor-card b{font:600 10.5px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#4c5742!important}
#gardenPlay.garden-page .gd-decor-card small{margin-top:3px!important;color:#778262!important;font:600 8.5px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#gardenPlay.garden-page .gd-price{margin-top:8px!important;padding:5px 7px;border-radius:999px;background:rgba(181,145,73,.10);color:#8a6b35!important;font:700 8.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#gardenPlay.garden-page .gd-decor-card.owned .gd-price{background:rgba(119,138,77,.12);color:#66774b!important}
#gardenPlay.garden-page .gd-expand{
  margin-top:9px!important;padding:11px 12px!important;border-radius:15px!important;border:1px dashed rgba(151,125,80,.33)!important;
  background:rgba(255,251,244,.48)!important;color:#5a624d!important;font:650 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important
}


@media(max-width:560px){
  #gardenPlay.garden-page .garden-page-shell{width:100%!important;max-width:none!important;padding:0 12px 24px!important}
  #gardenPlay.garden-page .garden-topbar{margin:0 -12px 8px!important;padding-left:16px!important;padding-right:16px!important}
  #gardenPlay.garden-page .gd-top{gap:6px!important;margin-bottom:13px!important}
  #gardenPlay.garden-page .gd-wallet,#gardenPlay.garden-page .gd-water,#gardenPlay.garden-page .gd-bonus{min-height:59px;padding:7px!important;grid-template-columns:27px 1fr!important;column-gap:6px!important;border-radius:16px!important}
  #gardenPlay.garden-page .gd-stat-icon{width:27px;height:27px;border-radius:9px}
  #gardenPlay.garden-page .gd-stat-icon svg{width:16px;height:16px}
  #gardenPlay.garden-page .gd-wallet b,#gardenPlay.garden-page .gd-water b,#gardenPlay.garden-page .gd-bonus b{font-size:16px!important}
  #gardenPlay.garden-page .gd-wallet small,#gardenPlay.garden-page .gd-water small,#gardenPlay.garden-page .gd-bonus small{font-size:7.7px!important}
  #gardenPlay.garden-page .gd-section-card{border-radius:21px;padding:11px}
  #gardenPlay.garden-page .gd-section-head h3{font-size:19px}
  
  #gardenPlay.garden-page .gd-plot{border-radius:15px!important;padding:7px!important;aspect-ratio:.91!important}
  #gardenPlay.garden-page .gd-plot-visual{min-height:48px}
  #gardenPlay.garden-page .gd-bloom{max-width:62px!important}
  #gardenPlay.garden-page .gd-plot-copy b{font-size:9px}
  #gardenPlay.garden-page .gd-plot-copy small{font-size:7.5px}
  #gardenPlay.garden-page .gd-state{font-size:6.5px;padding:3px 5px}
  #gardenPlay.garden-page .gd-main-grid{gap:12px}
  #gardenPlay.garden-page .gd-side-stack{gap:12px}
}

@media(min-width:900px){
  
  #gardenPlay.garden-page .garden-page-shell{width:980px!important;max-width:980px!important;height:100dvh!important;min-height:100dvh!important;padding:0 20px 26px!important;border-left:1px solid rgba(151,124,77,.13)!important;border-right:1px solid rgba(151,124,77,.13)!important;box-shadow:0 18px 54px rgba(78,59,30,.10)!important}
  #gardenPlay.garden-page .garden-topbar{margin:0 -20px 10px!important;padding-left:24px!important;padding-right:24px!important}
  #gardenPlay.garden-page .gd-main-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;gap:16px}
  #gardenPlay.garden-page .gd-plots{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}
  #gardenPlay.garden-page .gd-plot{aspect-ratio:1.03!important;min-height:156px}
  #gardenPlay.garden-page .gd-bloom{max-width:86px!important}
  #gardenPlay.garden-page .gd-decor{grid-template-columns:repeat(2,1fr)!important}
}

/* Section 2: canonical My Garden presentation. */
/* Petalattice — My Garden Premium V3 */
#gardenPlay.garden-page{
  --garden-ink:#435038;
  --garden-muted:#777361;
  --garden-sage:#7e9050;
  --garden-sage-2:#a9b979;
  --garden-gold:#b58e49;
  --garden-paper:#fbf6ec;
  --garden-paper-2:#f1e5d0;
  --garden-line:rgba(151,124,77,.19);
  --garden-shadow:0 15px 36px rgba(77,58,29,.10);
  background:
    radial-gradient(circle at 50% -10%,rgba(255,255,255,.92),transparent 34%),
    linear-gradient(180deg,#f7efe2 0%,#eee1ca 100%)!important;
}
#gardenPlay.garden-page .garden-page-shell{
  width:min(100%,780px)!important;max-width:780px!important;
  padding:0 14px 34px!important;
  background:linear-gradient(180deg,#fbf6ec 0%,#f2e5d0 100%)!important;
}
#gardenPlay.garden-page .garden-topbar{
  min-height:76px!important;margin-bottom:8px!important;
  background:linear-gradient(180deg,rgba(251,246,236,.99),rgba(251,246,236,.93) 78%,rgba(251,246,236,0))!important;
}
#gardenPlay.garden-page .garden-brand b{
  font-family:var(--font-display,Georgia,"Times New Roman",serif)!important;
  font-size:27px!important;font-weight:400!important;letter-spacing:-.015em!important;color:#435137!important;
}
#gardenPlay.garden-page #gardenScreen{display:grid!important;gap:12px!important}

/* Hero */
#gardenPlay.garden-page .garden-hero{
  position:relative;min-height:246px;border-radius:27px;overflow:hidden;
  border:1px solid rgba(151,124,77,.20);box-shadow:var(--garden-shadow);
  background:url("../scenes/soft-botanical-home.webp") center 47%/cover no-repeat;
}
#gardenPlay.garden-page .garden-hero::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(251,247,238,.96) 0%,rgba(251,247,238,.89) 41%,rgba(251,247,238,.30) 68%,rgba(251,247,238,.03) 100%),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 58%,rgba(75,58,32,.08));
}
#gardenPlay.garden-page .garden-hero__copy{position:relative;z-index:2;width:59%;padding:26px 0 22px 23px}
#gardenPlay.garden-page .garden-hero__kicker{
  display:flex;align-items:center;gap:8px;margin-bottom:9px;
  color:#937340;font:700 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.14em;text-transform:uppercase
}
#gardenPlay.garden-page .garden-hero__kicker::before{content:"";width:22px;height:1px;background:#b58d47}
#gardenPlay.garden-page .garden-hero h1{margin:0;color:#415036;font:400 42px/.98 var(--font-display,Georgia,"Times New Roman",serif);letter-spacing:-.028em}
#gardenPlay.garden-page .garden-hero p{margin:10px 0 14px;max-width:310px;color:#5e6753;font:500 12px/1.52 system-ui,-apple-system,"Segoe UI",sans-serif}
#gardenPlay.garden-page .garden-hero__stats{display:flex;gap:7px;flex-wrap:wrap}
#gardenPlay.garden-page .garden-hero__stat{
  display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 9px;border-radius:999px;
  background:rgba(255,251,243,.88);border:1px solid rgba(151,124,77,.17);color:#566248;
  font:650 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:inset 0 1px 0 rgba(255,255,255,.78)
}
#gardenPlay.garden-page .garden-hero__stat svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}

/* DEV toolbar */
#gardenPlay.garden-page .garden-dev-panel{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;
  padding:10px 11px;border-radius:18px;border:1px solid rgba(184,139,48,.28);
  background:linear-gradient(180deg,#fff5cf,#f1df9d);box-shadow:0 8px 18px rgba(105,75,22,.10)
}
#gardenPlay.garden-page .garden-dev-panel__copy{min-width:0}
#gardenPlay.garden-page .garden-dev-panel__copy b{display:block;color:#70561e;font:800 9px/1 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
#gardenPlay.garden-page .garden-dev-panel__copy span{display:block;margin-top:3px;color:#826d39;font:600 9px/1.25 system-ui,sans-serif}
#gardenPlay.garden-page .garden-dev-panel__actions{display:flex;gap:5px}
#gardenPlay.garden-page .garden-dev-panel__actions button{border:1px solid rgba(129,95,29,.18);border-radius:999px;background:rgba(255,252,236,.78);color:#705a28;padding:7px 9px;font:700 8px/1 system-ui,sans-serif}

/* resource strip */
#gardenPlay.garden-page .gd-top{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:7px!important;margin:0!important}
#gardenPlay.garden-page .gd-wallet,#gardenPlay.garden-page .gd-water,#gardenPlay.garden-page .gd-bonus{
  min-height:62px!important;padding:8px 9px!important;border-radius:17px!important;
  background:linear-gradient(180deg,#fffaf1,#f1e5d0)!important;border:1px solid var(--garden-line)!important;
  box-shadow:0 6px 14px rgba(73,56,31,.055),inset 0 1px 0 rgba(255,255,255,.86)!important
}
#gardenPlay.garden-page .gd-wallet b,#gardenPlay.garden-page .gd-water b,#gardenPlay.garden-page .gd-bonus b{font-size:18px!important}

/* common sections */
#gardenPlay.garden-page .gd-main-grid{display:grid!important;gap:12px!important}
#gardenPlay.garden-page .gd-side-stack{display:grid!important;gap:12px!important}
#gardenPlay.garden-page .gd-section-card{
  padding:13px!important;border-radius:23px!important;border:1px solid var(--garden-line)!important;
  background:linear-gradient(180deg,rgba(255,251,244,.98),rgba(246,237,221,.97))!important;
  box-shadow:0 10px 22px rgba(75,57,29,.065),inset 0 1px 0 rgba(255,255,255,.84)!important
}
#gardenPlay.garden-page .gd-section-head{margin:0 1px 11px!important;align-items:center!important}
#gardenPlay.garden-page .gd-section-head h3{font:400 22px/1.02 var(--font-display,Georgia,"Times New Roman",serif)!important;color:#445238!important}
#gardenPlay.garden-page .gd-section-head p{font-size:9.5px!important;line-height:1.35!important}

/* plots — larger and friendlier */
#gardenPlay.garden-page .gd-plots{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:9px!important;margin:0!important}
#gardenPlay.garden-page .gd-plot{
  min-height:158px!important;aspect-ratio:auto!important;padding:9px!important;border-radius:20px!important;
  background:linear-gradient(180deg,#fffaf1 0%,#f1e4cf 100%)!important;border:1px solid rgba(148,126,86,.21)!important;
  box-shadow:0 8px 16px rgba(72,56,31,.065),inset 0 1px 0 rgba(255,255,255,.88)!important
}
#gardenPlay.garden-page .gd-plot-top{min-height:18px!important}
#gardenPlay.garden-page .gd-plot-index{font-size:7.5px!important}
#gardenPlay.garden-page .gd-state{font-size:6.8px!important}
#gardenPlay.garden-page .gd-plot-visual{min-height:74px!important}
#gardenPlay.garden-page .garden-soil{
  position:relative;width:82px;height:50px;border-radius:50%;
  background:radial-gradient(ellipse at 50% 38%,#c79b68 0%,#9a7047 45%,#6d492c 80%,#51331e 100%);
  box-shadow:inset 0 8px 14px rgba(66,38,18,.21),0 7px 12px rgba(76,50,25,.13)
}
#gardenPlay.garden-page .garden-soil::after{content:"";position:absolute;left:50%;top:50%;width:34px;height:3px;border-radius:50%;background:rgba(60,34,16,.22);transform:translate(-50%,-50%) rotate(-8deg)}
#gardenPlay.garden-page .gd-seed-action{
  position:absolute;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  color:#728149;background:linear-gradient(180deg,#fffaf0,#efe3ce);border:1px solid rgba(147,118,69,.26);box-shadow:0 6px 13px rgba(63,47,24,.10)
}
#gardenPlay.garden-page .gd-seed-action svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#gardenPlay.garden-page .gd-bloom{max-width:92px!important;width:80%!important}
#gardenPlay.garden-page .gd-plot-copy b{font-size:10.5px!important}
#gardenPlay.garden-page .gd-plot-copy small{font-size:8.2px!important;line-height:1.32!important}
#gardenPlay.garden-page .gd-dev-state{display:inline-flex;margin-top:2px;color:#9b7a37;font:800 6.5px/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
#gardenPlay.garden-page .gd-locked{min-height:128px!important}
#gardenPlay.garden-page .gd-expand{margin-top:9px!important;padding:10px 12px!important;border-radius:15px!important}

/* quests: all three must always be visible */
#gardenPlay.garden-page .gd-quest-list{display:grid!important;gap:7px!important;overflow:visible!important;max-height:none!important}
#gardenPlay.garden-page .gd-quest{
  min-height:68px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 66px!important;align-items:center!important;
  gap:8px!important;padding:8px 9px!important;margin:0!important;border-radius:16px!important;
  background:rgba(255,252,246,.86)!important;border:1px solid rgba(151,125,80,.14)!important
}
#gardenPlay.garden-page .gd-q-icon{width:38px!important;height:38px!important;border-radius:12px!important}
#gardenPlay.garden-page .gd-q-body b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:10px!important;line-height:1.16!important}
#gardenPlay.garden-page .gd-q-bar{margin:5px 0 3px!important}
#gardenPlay.garden-page .gd-q-meta{margin:0!important;font-size:7.5px!important}
#gardenPlay.garden-page .gd-q-claim{min-width:62px!important;padding:8px 6px!important;font-size:8px!important}
#gardenPlay.garden-page .gd-quest.dev-ready .gd-q-claim{background:linear-gradient(180deg,#a6894e,#806731)!important}

/* decor */
#gardenPlay.garden-page .gd-decor{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
#gardenPlay.garden-page .gd-decor-card{min-height:108px!important}

/* Seed picker — explicitly erase legacy dark .sheet image */
#seedSheet.garden-seed-sheet{
  position:fixed!important;
  inset:0!important;
  z-index:10040!important;
  align-items:flex-end!important;
  background:
    linear-gradient(180deg,rgba(248,240,226,.55),rgba(235,221,198,.80)),
    url("../scenes/soft-botanical-home.webp") center 48%/cover no-repeat!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#seedSheet.garden-seed-sheet:not(.hidden){display:flex!important}
#seedSheet.garden-seed-sheet::before{display:none!important;content:none!important}
#seedSheet.garden-seed-sheet .sheet-panel{
  position:relative;width:100%!important;max-width:560px!important;max-height:84dvh!important;
  border-radius:30px 30px 0 0!important;padding:18px 15px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:linear-gradient(180deg,#fffaf0 0%,#f1e4ce 100%)!important;border:1px solid rgba(153,124,75,.21)!important;
  box-shadow:0 -24px 58px rgba(69,52,28,.20),inset 0 1px 0 rgba(255,255,255,.9)!important;color:#45523a!important
}
#seedSheet.garden-seed-sheet .sheet-head{padding:0 2px 10px!important;margin:0!important;border-bottom:1px solid rgba(153,124,75,.13)!important}
#seedSheet.garden-seed-sheet .sheet-head h3{margin:0!important;color:#405035!important;font:400 30px/1 var(--font-display,Georgia,"Times New Roman",serif)!important}
#seedSheet.garden-seed-sheet #seedClose{
  width:42px!important;height:42px!important;border-radius:50%!important;background:linear-gradient(180deg,#fffaf0,#ede0ca)!important;
  border:1px solid rgba(153,124,75,.22)!important;color:#64704f!important;box-shadow:0 6px 14px rgba(70,54,31,.08)!important
}
#seedSheet.garden-seed-sheet .garden-seed-context{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px 12px;color:#77715f;font:600 9px/1.3 system-ui,sans-serif}
#seedSheet.garden-seed-sheet .garden-seed-context b{color:#8e6d37;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
#seedSheet.garden-seed-sheet .seed-list{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:9px!important}
#seedSheet.garden-seed-sheet .seed-card{
  position:relative;min-height:190px!important;padding:12px!important;border-radius:20px!important;text-align:left!important;overflow:hidden!important;
  background:linear-gradient(180deg,#fffaf1 0%,#f1e3cd 100%)!important;border:1px solid rgba(151,125,80,.17)!important;
  box-shadow:0 8px 17px rgba(72,56,31,.065),inset 0 1px 0 rgba(255,255,255,.82)!important;color:#45523a!important
}
#seedSheet.garden-seed-sheet .seed-card::before{content:"";position:absolute;inset:0 0 auto;height:60px;background:linear-gradient(180deg,rgba(235,240,216,.62),transparent);pointer-events:none}
#seedSheet.garden-seed-sheet .seed-card.poor{opacity:.58!important;filter:none!important}
html[data-dev-mode="on"] #seedSheet.garden-seed-sheet .seed-card.poor{opacity:1!important}
#seedSheet.garden-seed-sheet .seed-art{position:relative;z-index:1;width:86px!important;height:86px!important;margin:0 auto 8px!important;filter:drop-shadow(0 6px 8px rgba(61,45,24,.17))}
#seedSheet.garden-seed-sheet .seed-card b{display:block;color:#45523a!important;font:600 13px/1.15 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#seedSheet.garden-seed-sheet .seed-card small{display:block;margin-top:5px!important;color:#797562!important;font:500 8.5px/1.38 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#seedSheet.garden-seed-sheet .seed-price{position:absolute!important;right:10px!important;bottom:10px!important;margin:0!important;padding:6px 8px!important;border-radius:999px!important;background:#e9e3cb!important;color:#66754b!important;font:800 9px/1 system-ui,sans-serif!important}
#seedSheet.garden-seed-sheet .seed-dev-free{position:absolute;left:10px;bottom:10px;padding:5px 7px;border-radius:999px;background:#f3df9e;color:#74571f;font:800 7px/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:560px){
  #gardenPlay.garden-page .garden-page-shell{padding:0 11px 28px!important}
  #gardenPlay.garden-page .garden-topbar{margin-left:-11px!important;margin-right:-11px!important;padding-left:15px!important;padding-right:15px!important}
  #gardenPlay.garden-page .garden-hero{min-height:224px;border-radius:22px;background-position:58% 47%}
  #gardenPlay.garden-page .garden-hero::before{background:linear-gradient(90deg,rgba(251,247,238,.97) 0%,rgba(251,247,238,.89) 48%,rgba(251,247,238,.30) 76%,rgba(251,247,238,.05) 100%)}
  #gardenPlay.garden-page .garden-hero__copy{width:68%;padding:20px 0 17px 17px}
  #gardenPlay.garden-page .garden-hero h1{font-size:36px}
  #gardenPlay.garden-page .garden-hero p{font-size:10.5px;margin:8px 0 11px;line-height:1.43}
  #gardenPlay.garden-page .garden-hero__stat{height:25px;padding:0 7px;font-size:7.8px}
  #gardenPlay.garden-page .garden-dev-panel{grid-template-columns:1fr;padding:9px!important}
  #gardenPlay.garden-page .garden-dev-panel__actions{display:grid;grid-template-columns:repeat(3,1fr)}
  #gardenPlay.garden-page .garden-dev-panel__actions button{padding:7px 4px;font-size:7px}
  #gardenPlay.garden-page .gd-top{gap:6px!important}
  #gardenPlay.garden-page .gd-wallet,#gardenPlay.garden-page .gd-water,#gardenPlay.garden-page .gd-bonus{min-height:57px!important;padding:7px!important}
  #gardenPlay.garden-page .gd-section-card{padding:10px!important;border-radius:20px!important}
  #gardenPlay.garden-page .gd-section-head h3{font-size:20px!important}
  #gardenPlay.garden-page .gd-plots{gap:7px!important}
  #gardenPlay.garden-page .gd-plot{min-height:146px!important;padding:8px!important;border-radius:17px!important}
  #gardenPlay.garden-page .gd-plot-visual{min-height:66px!important}
  #gardenPlay.garden-page .gd-bloom{max-width:82px!important}
  #gardenPlay.garden-page .gd-quest{grid-template-columns:34px minmax(0,1fr) 60px!important;min-height:64px!important;padding:7px!important}
  #gardenPlay.garden-page .gd-q-icon{width:34px!important;height:34px!important}
  #gardenPlay.garden-page .gd-q-claim{min-width:56px!important;font-size:7.4px!important}
  #seedSheet.garden-seed-sheet .sheet-panel{max-height:82dvh!important;padding-left:12px!important;padding-right:12px!important}
  #seedSheet.garden-seed-sheet .sheet-head h3{font-size:28px!important}
  #seedSheet.garden-seed-sheet .seed-card{min-height:180px!important;padding:10px!important}
  #seedSheet.garden-seed-sheet .seed-art{width:78px!important;height:78px!important}
}

@media(min-width:900px){
  #gardenPlay.garden-page{width:min(100%,980px)!important;max-width:980px!important;margin:0 auto!important;background:transparent!important}
  #gardenPlay.garden-page .garden-page-shell{width:980px!important;max-width:980px!important;padding:0 20px 28px!important}
  #gardenPlay.garden-page .garden-hero{min-height:260px;background-position:center 45%}
  #gardenPlay.garden-page .garden-hero h1{font-size:48px}
  #gardenPlay.garden-page .gd-main-grid{grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr)!important;align-items:start!important;gap:14px!important}
  #gardenPlay.garden-page .gd-plots{grid-template-columns:repeat(3,1fr)!important;gap:9px!important}
  #gardenPlay.garden-page .gd-plot{min-height:160px!important}
  #seedSheet.garden-seed-sheet{align-items:center!important;padding:18px!important}
  #seedSheet.garden-seed-sheet .sheet-panel{max-width:720px!important;border-radius:30px!important;padding:18px!important}
  #seedSheet.garden-seed-sheet .seed-list{grid-template-columns:repeat(4,1fr)!important}
}

/* Collection to Garden feature card. */
/* Section 3: Collection entry card for My Garden. */

/* --------------------------------------------------------------------------
   Collection → My Garden premium feature card
   -------------------------------------------------------------------------- */
#garden .collection-garden-card{
  position:relative!important;
  isolation:isolate!important;
  display:block!important;
  width:100%!important;
  min-height:150px!important;
  margin:4px 0 22px!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:25px!important;
  border:1px solid rgba(153,124,77,.23)!important;
  background:#f6ecd9!important;
  box-shadow:0 14px 30px rgba(76,57,31,.10),inset 0 1px 0 rgba(255,255,255,.80)!important;
  text-align:left!important;
  color:#45523a!important;
  cursor:pointer!important;
}
#garden .collection-garden-card::before{
  content:""!important;
  position:absolute!important;
  z-index:-2!important;
  inset:0 0 0 38%!important;
  background:url("../scenes/soft-botanical-home.webp") 59% 48%/cover no-repeat!important;
  filter:saturate(.92) contrast(.96)!important;
}
#garden .collection-garden-card::after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:0!important;
  background:
    linear-gradient(90deg,#fbf5e9 0%,#fbf5e9 38%,rgba(251,245,233,.91) 53%,rgba(251,245,233,.26) 78%,rgba(251,245,233,.04) 100%),
    linear-gradient(180deg,rgba(255,255,255,.12),transparent 60%,rgba(75,57,32,.08))!important;
}
#garden .collection-garden-card .collection-garden-card__copy{
  position:relative!important;
  z-index:2!important;
  width:61%!important;
  min-height:150px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:18px 8px 17px 19px!important;
}
#garden .collection-garden-card .collection-garden-card__kicker{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin-bottom:7px!important;
  color:#98763f!important;
  font:750 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
#garden .collection-garden-card .collection-garden-card__kicker::before{
  content:""!important;width:18px!important;height:1px!important;background:#b58d47!important
}
#garden .collection-garden-card .collection-garden-card__copy b{
  display:block!important;
  margin:0!important;
  color:#415036!important;
  font:400 31px/.98 var(--font-display,Georgia,"Times New Roman",serif)!important;
  letter-spacing:-.025em!important;
}
#garden .collection-garden-card .collection-garden-card__copy>small{
  display:block!important;
  margin:8px 0 10px!important;
  max-width:230px!important;
  color:#68705a!important;
  font:550 10.5px/1.38 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#garden .collection-garden-card .collection-garden-card__meta{
  display:flex!important;
  gap:5px!important;
  flex-wrap:wrap!important;
}
#garden .collection-garden-card .collection-garden-card__chip{
  display:inline-flex!important;
  align-items:center!important;
  height:23px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  color:#63714b!important;
  background:rgba(255,250,241,.80)!important;
  border:1px solid rgba(151,124,77,.16)!important;
  font:700 7.7px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
#garden .collection-garden-card .collection-garden-card__action{
  position:absolute!important;
  z-index:3!important;
  right:14px!important;
  bottom:14px!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  color:#66764b!important;
  background:linear-gradient(180deg,rgba(255,250,240,.96),rgba(235,225,207,.96))!important;
  border:1px solid rgba(151,124,77,.23)!important;
  box-shadow:0 6px 16px rgba(68,52,30,.11),inset 0 1px 0 rgba(255,255,255,.88)!important;
}
#garden .collection-garden-card .collection-garden-card__action svg{
  width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important
}
#garden .collection-garden-card:active{transform:scale(.992)!important}

@media (max-width:430px){
  #garden .collection-garden-card{min-height:142px!important;border-radius:22px!important;margin-bottom:18px!important}
  #garden .collection-garden-card::before{inset:0 0 0 42%!important;background-position:62% 48%!important}
  #garden .collection-garden-card::after{
    background:linear-gradient(90deg,#fbf5e9 0%,#fbf5e9 42%,rgba(251,245,233,.90) 59%,rgba(251,245,233,.18) 84%,rgba(251,245,233,.03) 100%)!important
  }
  #garden .collection-garden-card .collection-garden-card__copy{width:67%!important;min-height:142px!important;padding:16px 4px 15px 16px!important}
  #garden .collection-garden-card .collection-garden-card__copy b{font-size:28px!important}
  #garden .collection-garden-card .collection-garden-card__copy>small{font-size:9.5px!important;max-width:205px!important;margin:7px 0 9px!important}
  #garden .collection-garden-card .collection-garden-card__chip{height:21px!important;padding:0 7px!important;font-size:7px!important}
  #garden .collection-garden-card .collection-garden-card__action{right:11px!important;bottom:11px!important;width:38px!important;height:38px!important}
}

/* Single scroll-owner rules for Garden. */
/* Petalattice — My Garden Scroll V5
   One scroll owner on mobile/tablet: the inner garden shell.
   This avoids Android Chrome gesture cancellation caused by nested/competing
   100dvh overflow containers. */

@media (max-width:899px){
  #gardenPlay.garden-page{
    position:fixed!important;
    inset:0!important;
    z-index:140!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    touch-action:auto!important;
    background:linear-gradient(180deg,#f8f1e5 0%,#eee2cc 100%)!important;
  }
  #gardenPlay.garden-page.hidden{display:none!important}

  #gardenPlay.garden-page .page-card.garden-page-shell{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0 11px calc(46px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-behavior:auto!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:linear-gradient(180deg,#fbf6ec 0%,#f2e5d0 100%)!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  #gardenPlay.garden-page .page-card.garden-page-shell::-webkit-scrollbar{
    width:0!important;height:0!important;display:none!important;
  }
  #gardenPlay.garden-page #gardenScreen{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    touch-action:pan-y!important;
  }
  #gardenPlay.garden-page .gd-main-grid,
  #gardenPlay.garden-page .gd-side-stack,
  #gardenPlay.garden-page .gd-section-card,
  #gardenPlay.garden-page .gd-plots,
  #gardenPlay.garden-page .gd-quest-list,
  #gardenPlay.garden-page .gd-decor{
    max-height:none!important;
    overflow:visible!important;
  }
  #gardenPlay.garden-page .garden-topbar{
    position:sticky!important;
    top:0!important;
    z-index:30!important;
    margin-left:-11px!important;
    margin-right:-11px!important;
    padding-left:15px!important;
    padding-right:15px!important;
    background:linear-gradient(180deg,rgba(251,246,236,.995) 0%,rgba(251,246,236,.96) 82%,rgba(251,246,236,.72) 100%)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  /* Allow the user to begin a vertical swipe directly on plot/action buttons. */
  #gardenPlay.garden-page button,
  #gardenPlay.garden-page .gd-plot,
  #gardenPlay.garden-page .gd-decor-card,
  #gardenPlay.garden-page .gd-q-claim{
    touch-action:pan-y!important;
  }
}

@media (min-width:900px){
  #gardenPlay.garden-page{overflow:hidden!important}
  #gardenPlay.garden-page .page-card.garden-page-shell{
    height:100dvh!important;
    min-height:0!important;
    max-height:100dvh!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  #gardenPlay.garden-page .page-card.garden-page-shell::-webkit-scrollbar{display:none!important}
}

/* Phase 3 final cascade: keep garden actions above secondary decoration. */
#gardenPlay.garden-page .garden-hero{min-height:132px!important;margin-bottom:9px!important;border-radius:19px!important;background-position:62% 48%!important}
#gardenPlay.garden-page .garden-hero__copy{width:64%!important;padding:17px 0 15px 18px!important}
#gardenPlay.garden-page .garden-hero h1{font-size:34px!important}
#gardenPlay.garden-page .garden-hero p,#gardenPlay.garden-page .garden-hero__stats{display:none!important}
#gardenPlay.garden-page .gd-top{margin-bottom:10px!important}
#gardenPlay.garden-page .gd-side-stack{gap:9px!important}
@media(max-width:560px){
  #gardenPlay.garden-page .garden-hero{min-height:108px!important;background-position:66% 48%!important}
  #gardenPlay.garden-page .garden-hero__copy{width:67%!important;padding:14px 0 12px 14px!important}
  #gardenPlay.garden-page .garden-hero__kicker{margin-bottom:5px!important;font-size:7px!important}
  #gardenPlay.garden-page .garden-hero h1{font-size:29px!important}
  #gardenPlay.garden-page .gd-section-head p{display:none!important}
  #gardenPlay.garden-page .gd-main-grid{gap:9px!important}
}
@media(min-width:900px){
  #gardenPlay.garden-page .garden-hero{min-height:154px!important;background-position:center 47%!important}
  #gardenPlay.garden-page .garden-hero h1{font-size:40px!important}
}

/* Final ownership after legacy Garden card declarations. */
body #garden .collection-topbar{display:block!important;margin:0 0 12px!important;text-align:center!important}
body #garden .collection-brand{
  box-sizing:content-box!important;width:max-content!important;min-height:48px!important;margin:0 auto!important;
  padding:2px 0 0 52px!important;text-align:left!important;font:400 31px/1.02 Georgia,"Times New Roman",serif!important;
  background:url("../app/petalattice-logo-red.png") left center/44px 44px no-repeat!important;
}
body #garden .collection-brand>span{display:none!important}
body #garden .collection-garden-card{min-height:168px!important;margin:0 0 14px!important;border-radius:23px!important;background:#d8cbb2!important}
body #garden .collection-garden-card::before{
  display:block!important;inset:0!important;background:url("../ui/collection-my-garden-v2.webp") center 58%/cover no-repeat!important;
  filter:saturate(1.04) contrast(1.02)!important;
}
body #garden .collection-garden-card::after{
  display:block!important;inset:0!important;background:linear-gradient(180deg,transparent 32%,rgba(24,38,23,.08) 56%,rgba(26,38,23,.76) 100%)!important;
}
body #garden .collection-garden-card .collection-garden-card__copy{
  width:100%!important;min-height:168px!important;justify-content:flex-end!important;padding:18px 72px 17px 19px!important;
}
body #garden .collection-garden-card .collection-garden-card__kicker{display:none!important}
body #garden .collection-garden-card .collection-garden-card__copy b{color:#fffaf0!important;font-size:32px!important;text-shadow:0 2px 9px rgba(15,25,14,.34)!important}
body #garden .collection-garden-card .collection-garden-card__copy>small{max-width:330px!important;margin:5px 0 0!important;color:rgba(255,250,240,.91)!important;font-size:10px!important;text-shadow:0 1px 5px rgba(15,25,14,.42)!important}
body #garden .collection-garden-card .collection-garden-card__action{right:15px!important;bottom:15px!important;background:rgba(250,244,231,.92)!important}
body #garden .collection-garden-card .collection-garden-card__action>span{display:none!important}
body #garden .collection-filter-row{justify-content:center!important;margin-bottom:12px!important}
body #garden .collection-medal{width:54px!important;height:54px!important;border:1px solid rgba(129,105,61,.28)!important;background:linear-gradient(145deg,#f8eed2,#d8bd79)!important}
body #garden .collection-card-ribbon{right:5px!important;top:7px!important;width:auto!important;height:20px!important;min-width:38px!important;padding:0 7px!important;border-radius:999px!important;clip-path:none!important;font:750 7px/20px system-ui,sans-serif!important}
@media(max-width:560px){
  body #garden .collection-brand{min-height:44px!important;padding-left:47px!important;background-size:40px 40px!important;font-size:27px!important}
  body #garden .collection-garden-card{min-height:154px!important}
  body #garden .collection-garden-card::before{inset:0!important;background-position:center 58%!important}
  body #garden .collection-garden-card::after{background:linear-gradient(180deg,transparent 28%,rgba(24,38,23,.08) 53%,rgba(26,38,23,.78) 100%)!important}
  body #garden .collection-garden-card .collection-garden-card__copy{width:100%!important;min-height:154px!important;padding:15px 60px 14px 16px!important}
  body #garden .collection-garden-card .collection-garden-card__copy b{font-size:29px!important}
  body #garden .collection-filter-row{justify-content:flex-start!important}
}

/* Collection header, gold seal and chapter selector final lock. */
body #garden .collection-topbar{display:grid!important;grid-template-columns:46px minmax(0,1fr) 46px!important;align-items:center!important;gap:10px!important;margin:0 0 12px!important}
body #garden .collection-brand{box-sizing:border-box!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important;text-align:center!important;background:none!important;font:400 30px/1 Georgia,"Times New Roman",serif!important}
body #garden .collection-medal{border:3px double #c6993c!important;background:radial-gradient(circle at 35% 25%,#fff5c8 0 12%,#e3b94f 38%,#a77825 100%)!important;box-shadow:0 6px 14px rgba(121,84,29,.20),inset 0 1px 0 #fff5c8!important}
body #garden .collection-medal svg{width:32px!important;height:32px!important;fill:rgba(255,244,188,.20)!important;stroke:#fff1b2!important;stroke-width:2.2!important;filter:drop-shadow(0 1px 2px rgba(96,61,16,.25))!important}
body #garden .collection-grid-head-v2{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;min-height:0!important;padding:14px!important}
body #garden .collection-grid-title-copy{text-align:center!important}
body #garden .collection-grid-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;gap:8px!important}
body #garden .collection-chapter-hud-trigger{width:100%!important;min-width:0!important;max-width:none!important}
@media(max-width:560px){
  body #garden .collection-topbar{grid-template-columns:40px minmax(0,1fr) 40px!important}
  body #garden .collection-brand{padding:0!important;background:none!important;font-size:27px!important}
  body #garden .collection-grid-head-v2{margin:0 2px 10px!important;padding:13px 12px!important;border:1px solid rgba(145,115,67,.16)!important;border-radius:18px!important;background:rgba(255,250,240,.68)!important}
}

/* ===== app-performance.css ===== */
/* ===== source: v019e-gameplay-performance-polish ===== */
/* v0.1.9e — Gameplay performance pass.
   Mobile keeps tactile transform feedback while DOM particles, per-token GPU filters
   and forced-reflow FX are removed. Desktop retains richer micro FX. */
:is(#game,#loadoutStage) .board{contain:layout paint style!important}
:is(#game,#loadoutStage) .flower-token.just-placed{will-change:transform,opacity}
@media (max-width:720px),(hover:none) and (pointer:coarse){
  :is(#game,#loadoutStage) .flower-token.has-image,
  :is(#game,#loadoutStage) .cell.given .flower-token.has-image,
  :is(#game,#loadoutStage) .cell.same .flower-token.has-image,
  :is(#game,#loadoutStage) .cell.selected .flower-token.has-image,
  #game .color-btn .flower-token{
    filter:none!important;
  }
  :is(#game,#loadoutStage) .cell-spark,
  #board.board-fx-place::after,
  #board.board-fx-hint::after,
  #board.board-fx-complete::after,
  #board.board-fx-complete::before,
  :is(#game,#loadoutStage) .cell.select-pop::after,
  :is(#game,#loadoutStage) .cell.place-pop::after,
  :is(#game,#loadoutStage) .cell.hint-pop::after,
  :is(#game,#loadoutStage) .cell.complete-pop::after,
  :is(#game,#loadoutStage) .cell.error-pop::after{display:none!important}
  #game .color-btn.palette-pop,
  #game .color-btn.palette-pop .flower-token.has-image,
  #game .color-btn.palette-pop .remain-badge{animation:none!important}
  :is(#game,#loadoutStage) .flower-token.just-placed{animation:fairy-place .13s ease-out both!important}
  :is(#game,#loadoutStage) .cell{transition:background-color .06s linear,outline-color .06s linear!important}
}
@media (prefers-reduced-motion:reduce){
  :is(#game,#loadoutStage) .flower-token.just-placed{animation:none!important}
}

/* ===== source: v019f-audio-feedback-polish ===== */
/* v0.1.9f — three-tier feedback hierarchy. No particle flood on mobile. */
@keyframes petalPlacePolish{
  0%{transform:scale(.84);opacity:.46}
  62%{transform:scale(1.035);opacity:1}
  100%{transform:scale(1);opacity:1}
}
:is(#game,#loadoutStage) .flower-token.just-placed{animation:petalPlacePolish .18s cubic-bezier(.22,.78,.28,1) both!important}
#board.feedback-line-cue{animation:petalLineFrame .34s ease-out both}
#board.feedback-win-cue{animation:petalWinFrame .50s ease-out both}
:is(#game,#loadoutStage) .cell.feedback-hint-cue{animation:petalHintCell .40s ease-out both}
@keyframes petalLineFrame{
  0%{outline:0 solid rgba(150,169,91,0);outline-offset:-2px}
  42%{outline:2px solid rgba(150,169,91,.42);outline-offset:-4px}
  100%{outline:0 solid rgba(150,169,91,0);outline-offset:-6px}
}
@keyframes petalWinFrame{
  0%{outline:0 solid rgba(198,156,76,0);outline-offset:-2px}
  38%{outline:3px solid rgba(198,156,76,.48);outline-offset:-5px}
  100%{outline:0 solid rgba(198,156,76,0);outline-offset:-8px}
}
@keyframes petalHintCell{
  0%{outline:0 solid rgba(178,141,66,0);outline-offset:-1px}
  45%{outline:2px solid rgba(178,141,66,.56);outline-offset:-2px}
  100%{outline:0 solid rgba(178,141,66,0);outline-offset:-1px}
}
@media (max-width:720px),(hover:none) and (pointer:coarse){
  :is(#game,#loadoutStage) .flower-token.just-placed{animation-duration:.15s!important}
}
@media (prefers-reduced-motion:reduce){
  #board.feedback-line-cue,#board.feedback-win-cue,:is(#game,#loadoutStage) .cell.feedback-hint-cue{animation:none!important}
}

/* ===== source: v019g-performance-calm-density ===== */
/* v0.1.9g — performance + calm density pass.
   Fewer concurrent visual effects, flatter mobile paint layers, chapter-paged collection. */

/* Collection: one garden at a time instead of a 189-card wall. */
#garden .collection-filter-label{font:inherit!important}
#garden .collection-grid-head-v2{align-items:flex-end!important}
#garden .collection-grid-title-copy{display:grid!important;gap:3px!important;min-width:0!important}
#garden .collection-grid-title-copy small{font:700 8.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.11em!important;color:#8b7758!important}
#garden .collection-grid-controls{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important}
#garden .collection-chapter-arrow{width:32px!important;height:32px!important;min-width:32px!important;border-radius:50%!important;border:1px solid rgba(148,115,60,.20)!important;background:#f8eedc!important;color:#586247!important;font:400 23px/1 Georgia,serif!important;display:grid!important;place-items:center!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important}
#garden .collection-chapter-arrow:disabled{opacity:.32!important}
#garden .collection-chapter-picker select,#garden .collection-sort select{height:32px!important;border-radius:999px!important;border:1px solid rgba(148,115,60,.20)!important;background:#f8eedc!important;color:#626653!important;outline:none!important;font:650 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important}
#garden .collection-chapter-picker select{max-width:150px!important;padding:0 25px 0 10px!important}
#garden .collection-sort select{max-width:100px!important}
#garden .collection-flower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
#garden .collection-flower-card{min-height:160px!important;grid-template-rows:100px auto auto!important}
#garden .collection-flower-card img{height:96px!important}
#garden .collection-featured-description{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}
#garden .collection-progress-track i{transition:none!important}

/* Off-screen card work can wait until scrolling reaches it. */
#garden .collection-featured,#garden .collection-flower-card,
#gardenPlay .gd-section-card,#shopSheet .shop-detail-card,#shopSheet .shop-currency-card{
  content-visibility:auto;
  contain-intrinsic-size:auto 180px;
}

/* Calm density: keep hierarchy, remove visual noise rather than features. */
#home .home-approved-resume,#home .home-approved-feature,#home .home-approved-summary,
#free .free-config-card,#free .free-launch-card,
#daily .daily-flower-card,#daily .daily-series-card,#daily .daily-next-card,
#garden .collection-progress-card,#garden .collection-featured,#garden .collection-flower-card,
#gardenPlay .gd-section-card,#shopSheet .shop-reference-card{
  box-shadow:0 5px 14px rgba(82,61,31,.055),inset 0 1px 0 rgba(255,255,255,.75)!important;
}

@media (max-width:720px),(hover:none) and (pointer:coarse){
  /* The mobile game is tactile through sound + haptics; avoid paint-heavy motion. */
  :is(#game,#loadoutStage) .flower-token.just-placed,
  #board.feedback-line-cue,#board.feedback-win-cue,:is(#game,#loadoutStage) .cell.feedback-hint-cue,
  :is(#game,#loadoutStage) .cell.wave,#game .petal-burst{animation:none!important}
  :is(#game,#loadoutStage) .cell{transition:none!important}
  :is(#game,#loadoutStage) .flower-token{will-change:auto!important}

  /* Drop blur/filter layers on frequently repainted mobile surfaces. */
  #home .home-bottom-nav,#free .free-bottom-nav,#daily .daily-bottom-nav,
  #journey .journey-bottom-nav,#garden .collection-bottom-nav,
  #shopSheet .shop-reference-bottom-nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  #home .home-approved-flower-art,#home .home-approved-bouquet img,
  #daily [data-daily-feature-art],#daily .daily-reward-icon svg,#daily .daily-reward-icon img,
  #garden .collection-featured-art img,#garden .collection-flower-card img,
  #shopSheet .shop-detail-art img,#shopSheet .shop-currency-art svg,
  #gardenPlay .gd-bloom{filter:none!important}

  /* Decorative motion is the first thing to go on phones. */
  .brand p,#gardenPlay .gd-bloom.is-ready{animation:none!important}
  #daily .daily-petal,#daily .daily-flower-copy.side{display:none!important}
  #daily .daily-flower-description{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}
  #daily .daily-ornament{opacity:.45!important}
  #free .free-bloom-intro p{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}

  /* Collection is now a readable 3×3 chapter album. */
  #garden .collection-filter-row{gap:5px!important;margin-bottom:9px!important}
  #garden .collection-filter{padding:0 9px!important}
  #garden .collection-grid-head-v2{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;align-items:stretch!important}
  #garden .collection-grid-controls{width:100%!important}
  #garden .collection-chapter-picker{flex:1 1 auto!important;min-width:0!important}
  #garden .collection-chapter-picker select{width:100%!important;max-width:none!important}
  #garden .collection-sort{flex:0 0 auto!important}
  #garden .collection-sort select{max-width:92px!important}
  #garden .collection-flower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  #garden .collection-flower-card{min-height:142px!important;grid-template-rows:86px auto auto!important;padding:7px 5px!important}
  #garden .collection-flower-card img{height:83px!important}
  #garden .collection-featured{min-height:188px!important;margin-bottom:13px!important}
  #garden .collection-featured-art{min-height:188px!important}
  #garden .collection-featured-art img{height:158px!important}

  /* Garden long screen: don't animate idle flowers or paint offscreen sections. */
  #gardenPlay .gd-side-stack,#gardenPlay .gd-plots-card{content-visibility:auto;contain-intrinsic-size:auto 420px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important}
}

/* v0.4.2 adaptive paint budget. Touch devices and modest hardware keep the
   full artwork and layout while avoiding the most expensive live paint work. */
html[data-performance-tier="reduced"] .app-splash-backdrop::before,
html[data-performance-tier="reduced"] .app-splash-backdrop::after,
html[data-performance-tier="reduced"] .app-splash-garden::after,
html[data-performance-tier="reduced"] .app-splash-petals span,
html[data-performance-tier="reduced"] .app-splash-sparks span,
html[data-performance-tier="reduced"] #gardenPlay .gd-bloom.is-ready{
  animation:none!important;
}
html[data-performance-tier="reduced"] #gameExitConfirm,
html[data-performance-tier="reduced"] .daily-series-modal,
html[data-performance-tier="reduced"] #gardenPlay .gd-modal-backdrop{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html[data-performance-tier="reduced"] :is(#game,#loadoutStage) .flower-token.has-image,
html[data-performance-tier="reduced"] #game .color-btn .flower-token,
html[data-performance-tier="reduced"] #garden .collection-flower-card img,
html[data-performance-tier="reduced"] #gardenPlay .gd-bloom{
  filter:none!important;
}
html[data-performance-tier="reduced"] :is(#game,#loadoutStage) .cell,
html[data-performance-tier="reduced"] :is(#game,#loadoutStage) .flower-token,
html[data-performance-tier="reduced"] #garden .collection-progress-track i{
  transition:none!important;
  will-change:auto!important;
}



/* Developer-only real-device performance profiler. */
html[data-dev-mode="on"] .dev-perf-toggle{display:inline-flex!important}
.dev-perf-toggle{
  display:none;position:fixed;z-index:10030;right:8px;top:max(8px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)));
  height:28px;padding:0 9px;border-radius:999px;border:1px solid rgba(118,132,76,.35);
  background:rgba(255,249,236,.94);color:#4d5b3d;font:700 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  align-items:center;gap:5px;box-shadow:0 5px 14px rgba(52,45,29,.12);backdrop-filter:none!important
}
.dev-perf-toggle i{width:6px;height:6px;border-radius:50%;background:#7f9852;display:block}
.dev-perf-toggle.is-recording i{background:#bd5d46;animation:devPerfPulse 1s ease-in-out infinite}
.dev-perf-toggle.has-warning i{background:#b56a52}
@keyframes devPerfPulse{50%{opacity:.32;transform:scale(.72)}}
.dev-perf-panel{
  position:fixed;z-index:10031;right:8px;top:44px;width:min(320px,calc(100vw - 16px));
  max-height:min(560px,calc(100dvh - 54px));overflow:auto;padding:12px;border-radius:16px;
  border:1px solid rgba(130,108,67,.25);background:rgba(255,250,241,.98);color:#35422f;
  box-shadow:0 16px 38px rgba(38,32,20,.22);font:600 11px/1.35 system-ui,-apple-system,"Segoe UI",sans-serif
}
.dev-perf-panel.hidden{display:none!important}
.dev-perf-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.dev-perf-head small{display:block;color:#8b7758;font-size:8px;letter-spacing:.12em}
.dev-perf-panel h3{margin:2px 0 9px;font:600 15px/1.1 var(--font-display,Georgia,serif);color:#435136}
.dev-perf-head button{
  width:28px;height:28px;border:1px solid rgba(130,108,67,.2);border-radius:50%;
  background:#f5ead7;color:#4d5a40;font:500 18px/1 system-ui
}
.dev-perf-scenario{display:grid;gap:4px;margin-bottom:8px}
.dev-perf-scenario span{color:#777361;font-size:8px;text-transform:uppercase;letter-spacing:.08em}
.dev-perf-scenario select{
  width:100%;height:32px;padding:0 9px;border:1px solid rgba(130,108,67,.2);
  border-radius:9px;background:#fbf4e7;color:#435136;font:650 10px/1 system-ui
}
.dev-perf-status{
  margin-bottom:8px;padding:7px 8px;border-radius:9px;background:#f1eadb;
  color:#686755;font-size:9px;font-variant-numeric:tabular-nums
}
.dev-perf-status.is-recording{background:#f6e3d9;color:#8f4f3f}
.dev-perf-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.dev-perf-stat{padding:8px;border:1px solid rgba(137,117,78,.16);border-radius:10px;background:#fbf4e7}
.dev-perf-stat small{display:block;color:#7b7b68;font-size:8px;text-transform:uppercase;letter-spacing:.08em}
.dev-perf-stat b{display:block;margin-top:2px;font-size:14px;font-variant-numeric:tabular-nums}
.dev-perf-warn b{color:#a05a45}.dev-perf-good b{color:#607946}
.dev-perf-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.dev-perf-actions button{
  min-height:32px;border-radius:9px;border:1px solid rgba(130,108,67,.2);
  background:#f5ead7;color:#4d5a40;font:700 9px system-ui
}
.dev-perf-actions button:disabled{opacity:.42}
.dev-perf-note{margin-top:7px;color:#777361;font-size:8.5px;line-height:1.35}
@media (prefers-reduced-motion:reduce){
  .dev-perf-toggle.is-recording i{animation:none}
}

/* v0.2.3 consolidated UI consistency layer. */
/* Petalattice shared visual contract.
   Loaded last so screen-specific legacy rules cannot move shared chrome. */
:root{
  --petal-page-bg:
    radial-gradient(circle at 14% 5%,rgba(255,255,255,.76),transparent 29%),
    linear-gradient(rgba(255,252,243,.91),rgba(247,239,222,.96)),
    url("../scenes/soft-botanical-home.webp") center top/cover no-repeat;
  --petal-header-gutter:18px;
  --petal-header-height:66px;
  --petal-header-control:44px;
  --petal-header-icon:24px;
  --petal-brand-size:24px;
  --petal-brand-rule-w:58px;
  --petal-brand-rule-h:12px;
  --petal-nav-height:86px;
  --petal-nav-icon:26px;
}

/* Collection and Shop now use the exact same botanical paper. */
body.garden-active,
#garden.collection-premium-page,
#garden .collection-premium-shell,
#shopSheet.shop-reference-page,
#shopSheet .shop-reference-shell,
#shopSheet .shop-reference-scroll{
  background:var(--petal-page-bg)!important;
  background-attachment:fixed!important;
  color:#465337!important;
}
#garden .collection-premium-shell,
#shopSheet .shop-reference-shell{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* One coordinate system for every branded top bar. */
#free .free-topbar,
#daily .daily-topbar,
#garden .collection-topbar,
#shopSheet .shop-reference-topbar,
#finish .result-reference-topbar{
  box-sizing:border-box!important;
  width:100%!important;
  height:var(--petal-header-height)!important;
  min-height:var(--petal-header-height)!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:var(--petal-header-control) minmax(0,1fr) var(--petal-header-control)!important;
  align-items:center!important;
  gap:10px!important;
}

/* Equal page gutters put the controls on the same x/y coordinates. */
#garden .collection-premium-shell,
#shopSheet .shop-reference-scroll{
  padding-top:0!important;
  padding-right:var(--petal-header-gutter)!important;
  padding-left:var(--petal-header-gutter)!important;
}

/* Identical wordmark typography and flourish dimensions everywhere it repeats. */
#home .home-approved-brand,
body #garden .collection-brand{
  height:48px!important;
  max-height:48px!important;
  overflow:hidden!important;
  contain:layout paint!important;
  padding:0!important;
  background:none!important;
}
#home .home-approved-brand>.petal-emerald-wordmark,
body #garden .collection-brand>.petal-emerald-wordmark{
  position:static!important;
  display:block!important;
  box-sizing:border-box!important;
  width:min(100%,205px)!important;
  max-width:205px!important;
  height:48px!important;
  max-height:48px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

#home .home-approved-brand,
#free .free-topbar-brand,
#daily .daily-topbar-brand,
#garden .collection-brand,
#shopSheet .shop-reference-brand,
#finish .result-reference-brand{
  font-family:var(--font-display),Georgia,"Times New Roman",serif!important;
  font-size:var(--petal-brand-size)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-align:center!important;
  color:#465337!important;
  text-shadow:none!important;
  transform:none!important;
}
#home .home-approved-brand>span,
#free .free-topbar-brand>span,
#daily .daily-topbar-brand>span,
#garden .collection-brand>span,
#shopSheet .shop-reference-brand>span,
#finish .result-reference-brand>span{
  display:block!important;
  width:var(--petal-brand-rule-w)!important;
  height:var(--petal-brand-rule-h)!important;
  margin:5px auto 0!important;
  color:#b58c50!important;
  transform:none!important;
}
#home .home-approved-brand svg,
#free .free-topbar-brand svg,
#daily .daily-topbar-brand svg,
#garden .collection-brand svg,
#shopSheet .shop-reference-brand svg,
#finish .result-reference-brand svg{
  display:block!important;
  width:var(--petal-brand-rule-w)!important;
  height:var(--petal-brand-rule-h)!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Same circular control, icon box and optical stroke on each screen. */
#free .free-topbar-btn,
#daily .daily-topbar-btn,
#garden .collection-circle-btn,
#shopSheet .shop-reference-circle,
#game #gameBack,
#game #openSettings,
#gardenPlay [data-garden-back]{
  box-sizing:border-box!important;
  width:var(--petal-header-control)!important;
  height:var(--petal-header-control)!important;
  min-width:var(--petal-header-control)!important;
  min-height:var(--petal-header-control)!important;
  padding:10px!important;
  border:1px solid rgba(157,122,63,.26)!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#fffaf0,#f2e7d1)!important;
  color:#5b6748!important;
  box-shadow:0 5px 14px rgba(77,59,31,.10),inset 0 1px 0 rgba(255,255,255,.92)!important;
  display:grid!important;
  place-items:center!important;
}
#free .free-topbar-btn svg,
#daily .daily-topbar-btn svg,
#garden .collection-circle-btn svg,
#shopSheet .shop-reference-circle svg,
#game #gameBack svg,
#game #openSettings svg,
#gardenPlay [data-garden-back] svg{
  width:var(--petal-header-icon)!important;
  height:var(--petal-header-icon)!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Repeated bottom-navigation icons keep the same size, baseline and active state. */
#home .home-bottom-nav,
#journey .journey-bottom-nav,
#free .free-bottom-nav,
#garden .collection-bottom-nav,
#shopSheet .shop-reference-bottom-nav{
  height:var(--petal-nav-height)!important;
  min-height:var(--petal-nav-height)!important;
  padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}

/* ===== v0.4.14: shared Free/Daily shell and balanced Free Bloom art ===== */
#free,
#daily,
#free .free-page-shell,
#daily .daily-flower-shell{
  background:var(--petal-page-bg)!important;
}
#free .free-page-shell,
#daily .daily-flower-shell{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:16px 18px calc(var(--petal-primary-nav-h) + 18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#free .free-topbar,
#daily .daily-topbar{
  box-sizing:border-box!important;
  width:100%!important;
  height:var(--petal-primary-header-h)!important;
  min-height:var(--petal-primary-header-h)!important;
  max-height:var(--petal-primary-header-h)!important;
  margin:0 0 12px!important;
  padding:var(--petal-primary-header-pad) 0!important;
  display:grid!important;
  grid-template-columns:var(--petal-primary-control) minmax(0,1fr) var(--petal-primary-control)!important;
  align-items:center!important;
  gap:8px!important;
}
#free .free-topbar>.petal-global-logo,
#daily .daily-topbar>.petal-global-logo,
#free .petal-primary-settings,
#daily .petal-primary-settings{
  box-sizing:border-box!important;
  width:var(--petal-primary-control)!important;
  min-width:var(--petal-primary-control)!important;
  height:var(--petal-primary-control)!important;
  min-height:var(--petal-primary-control)!important;
  margin:0!important;
}
#free .free-topbar-brand,
#daily .daily-topbar-brand{
  box-sizing:border-box!important;
  width:100%!important;
  height:var(--petal-primary-wordmark-h)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#free .free-topbar-brand>.petal-emerald-wordmark,
#daily .daily-topbar-brand>.petal-emerald-wordmark{
  display:block!important;
  width:min(100%,var(--petal-primary-wordmark-w))!important;
  max-width:var(--petal-primary-wordmark-w)!important;
  height:var(--petal-primary-wordmark-h)!important;
  max-height:var(--petal-primary-wordmark-h)!important;
  margin:0 auto!important;
  object-fit:contain!important;
}
#free .petal-primary-settings,
#daily .petal-primary-settings{
  position:static!important;
  padding:9px!important;
  border:1px solid rgba(150,128,84,.25)!important;
  border-radius:50%!important;
  background:rgba(249,244,233,.88)!important;
  color:#5b684d!important;
  box-shadow:0 5px 14px rgba(80,66,39,.08)!important;
}
#free .petal-primary-settings>svg,
#daily .petal-primary-settings>svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
#free .free-bottom-nav,
#daily .daily-bottom-nav{
  box-sizing:border-box!important;
  height:var(--petal-primary-nav-h)!important;
  min-height:var(--petal-primary-nav-h)!important;
  max-height:var(--petal-primary-nav-h)!important;
  padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}
#home .home-approved-free .home-approved-bouquet{
  width:88px!important;
  height:88px!important;
  right:14px!important;
  bottom:9px!important;
  display:grid!important;
  place-items:center!important;
  transform:none!important;
}
#home .home-approved-free .home-approved-bouquet .home-free-bloom-flower{
  position:static!important;
  inset:auto!important;
  width:84px!important;
  height:84px!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* ===== v0.4.10: exact masthead origin and one settings component ===== */
#home.home-approved-v1,
body #garden .collection-premium-shell,
#shopSheet .shop-reference-scroll{
  padding-top:16px!important;
}
#home.home-approved-v1{gap:0!important}
#home .home-approved-head,
body #garden .collection-topbar,
#shopSheet .shop-reference-topbar{
  margin-bottom:20px!important;
}
#home .home-approved-resume,
body #garden .collection-garden-card,
#shopSheet .shop-reference-featured{
  margin-top:0!important;
}
.petal-primary-settings{
  -webkit-appearance:none!important;
  appearance:none!important;
  justify-self:end!important;
  box-sizing:border-box!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  margin:0!important;
  padding:9px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(154,122,68,.22)!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#fffaf0,#eee1c9)!important;
  color:#566344!important;
  box-shadow:0 6px 15px rgba(75,57,31,.09),inset 0 1px 0 rgba(255,255,255,.9)!important;
  line-height:0!important;
  transform:none!important;
}
.petal-primary-settings::before,
.petal-primary-settings::after{content:none!important;display:none!important}
.petal-primary-settings>svg{
  display:block!important;
  box-sizing:border-box!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  margin:0!important;
  padding:0!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transform:none!important;
}

/* ===== v0.4.11: restore Home rhythm and match Collection coordinates ===== */
#home.home-approved-v1,
body #garden .collection-premium-shell,
#shopSheet .shop-reference-scroll{
  padding-top:16px!important;
  padding-right:18px!important;
  padding-left:18px!important;
}
#home.home-approved-v1{gap:10px!important}
#home .home-approved-head{margin-bottom:10px!important}
body #garden .collection-topbar,
#shopSheet .shop-reference-topbar{margin-bottom:20px!important}
#home .home-approved-head,
body #garden .collection-topbar,
#shopSheet .shop-reference-topbar{
  grid-template-columns:40px minmax(0,1fr) 40px!important;
  column-gap:8px!important;
}
#home .home-approved-head>.petal-global-logo,
body #garden .collection-topbar>.petal-global-logo,
#shopSheet .shop-reference-topbar>.petal-global-logo{
  justify-self:start!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  margin:0!important;
  transform:none!important;
}
#home .petal-primary-settings,
body #garden .petal-primary-settings,
#shopSheet .petal-primary-settings{justify-self:end!important}

/* ===== v0.4.12: exact settings button parity only ===== */
#home .petal-primary-settings,
body #garden .petal-primary-settings,
#shopSheet .petal-primary-settings{
  -webkit-appearance:none!important;
  appearance:none!important;
  position:static!important;
  inset:auto!important;
  align-self:center!important;
  justify-self:end!important;
  box-sizing:border-box!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(154,122,68,.22)!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#fffaf0,#eee1c9)!important;
  color:#566344!important;
  box-shadow:0 6px 15px rgba(75,57,31,.09),inset 0 1px 0 rgba(255,255,255,.9)!important;
  line-height:0!important;
  transform:none!important;
}
#home .petal-primary-settings::before,
#home .petal-primary-settings::after,
body #garden .petal-primary-settings::before,
body #garden .petal-primary-settings::after,
#shopSheet .petal-primary-settings::before,
#shopSheet .petal-primary-settings::after{
  content:none!important;
  display:none!important;
}
#home .petal-primary-settings>svg,
body #garden .petal-primary-settings>svg,
#shopSheet .petal-primary-settings>svg{
  position:static!important;
  display:block!important;
  box-sizing:border-box!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  margin:0!important;
  padding:0!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transform:none!important;
}
#home .home-bottom-nav button,
#journey .journey-bottom-nav button,
#free .free-bottom-nav button,
#garden .collection-bottom-nav button,
#shopSheet .shop-reference-bottom-nav button{
  min-height:0!important;
  gap:4px!important;
  font-size:10.5px!important;
  line-height:1.1!important;
}
#home .home-bottom-nav button svg,
#journey .journey-bottom-nav button svg,
#free .free-bottom-nav button svg,
#garden .collection-bottom-nav button svg,
#shopSheet .shop-reference-bottom-nav button svg{
  width:var(--petal-nav-icon)!important;
  height:var(--petal-nav-icon)!important;
  flex:0 0 var(--petal-nav-icon)!important;
}

/* Wallet badge must not change the gift button's actual geometry. */
#shopSheet .shop-reference-wallet{justify-self:stretch!important}

@media(max-width:560px){
  :root{
    --petal-header-gutter:18px;
    --petal-header-height:66px;
    --petal-header-control:44px;
    --petal-header-icon:24px;
    --petal-nav-height:86px;
    --petal-nav-icon:26px;
  }
  #garden.collection-premium-page{padding:0 0 calc(var(--petal-nav-height) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #garden .collection-premium-shell{
    height:calc(100dvh - var(--petal-nav-height) - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    padding-bottom:26px!important;
  }
  #shopSheet .shop-reference-scroll{padding-bottom:calc(var(--petal-nav-height) + 20px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
}

/* ===== UX pass: Collection clarity + premium My Garden ===== */
#garden .collection-garden-card{
  position:relative!important;display:block!important;width:100%!important;min-height:156px!important;
  margin:2px 0 18px!important;padding:0!important;overflow:hidden!important;text-align:left!important;
  border:1px solid rgba(135,105,57,.28)!important;border-radius:25px!important;
  background:url("../scenes/soft-botanical-home.webp") 68% 48%/cover no-repeat!important;
  box-shadow:0 16px 34px rgba(83,61,29,.15),inset 0 1px 0 rgba(255,255,255,.78)!important;
}
#garden .collection-garden-card::before{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;
  background:linear-gradient(90deg,rgba(252,247,237,.99) 0%,rgba(252,247,237,.95) 48%,rgba(252,247,237,.34) 75%,rgba(252,247,237,.08) 100%)!important;
}
#garden .collection-garden-card::after{
  content:""!important;display:block!important;position:absolute!important;inset:7px!important;border:1px solid rgba(181,141,73,.22)!important;border-radius:19px!important;pointer-events:none!important;
}
#garden .collection-garden-card .collection-garden-card__copy{
  position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;justify-content:center!important;
  width:70%!important;min-height:156px!important;padding:18px 16px 17px 20px!important;
}
#garden .collection-garden-card .collection-garden-card__kicker{display:flex!important;align-items:center!important;gap:7px!important;color:#9b773d!important;font:800 8px/1 system-ui,sans-serif!important;letter-spacing:.14em!important}
#garden .collection-garden-card .collection-garden-card__kicker::before{content:"";width:22px;height:1px;background:#b58d47}
#garden .collection-garden-card .collection-garden-card__copy b{margin-top:8px!important;font:400 32px/.95 var(--font-display),Georgia,serif!important;color:#435137!important}
#garden .collection-garden-card .collection-garden-card__copy>small{margin:8px 0 12px!important;max-width:235px!important;color:#69705c!important;font:600 10px/1.4 system-ui,sans-serif!important}
#garden .collection-garden-card .collection-garden-card__meta{display:flex!important;gap:5px!important;flex-wrap:wrap!important}
#garden .collection-garden-card .collection-garden-card__chip{display:inline-flex!important;align-items:center!important;gap:4px!important;height:23px!important;padding:0 7px!important;border:1px solid rgba(122,139,76,.18)!important;border-radius:999px!important;background:rgba(245,247,229,.88)!important;color:#66764b!important;font:750 7.5px/1 system-ui,sans-serif!important}
#garden .collection-garden-card .collection-garden-card__chip svg{width:12px!important;height:12px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important}
#garden .collection-garden-card .collection-garden-card__action{position:absolute!important;z-index:2!important;right:13px!important;bottom:13px!important;width:auto!important;height:36px!important;padding:0 10px 0 12px!important;display:flex!important;align-items:center!important;gap:5px!important;border:1px solid rgba(83,101,53,.35)!important;border-radius:999px!important;background:linear-gradient(180deg,#87965a,#657541)!important;color:#fffdf5!important;box-shadow:0 6px 14px rgba(72,88,43,.21)!important;transform:none!important}
#garden .collection-garden-card .collection-garden-card__action span{font:700 8px/1 system-ui,sans-serif!important}
#garden .collection-garden-card .collection-garden-card__action svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important}

#garden .collection-filter-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;width:100%!important;margin:0 auto 7px!important;padding:0!important;overflow:visible!important}
#garden .collection-filter{min-width:0!important;width:100%!important;min-height:39px!important;padding:0 5px!important;justify-content:center!important;text-align:center!important;gap:5px!important}
#garden .collection-filter-label{font-size:9.5px!important;white-space:nowrap!important}
#garden .collection-filter-help{min-height:30px;margin:0 5px 12px;padding:7px 10px;border-radius:11px;background:rgba(255,250,240,.58);color:#74745f;text-align:center;font:600 9px/1.35 system-ui,sans-serif}

#garden .collection-grid-head-v2{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin:4px 0 11px!important;padding:13px!important;border:1px solid rgba(151,116,58,.18)!important;border-radius:18px!important;background:rgba(255,251,243,.72)!important}
#garden .collection-grid-title-copy{text-align:center!important}
#garden .collection-grid-title-copy small{display:block!important;margin-bottom:4px!important;color:#9a7742!important;font:800 8px/1 system-ui,sans-serif!important;letter-spacing:.13em!important}
#garden .collection-grid-title-copy h2{font-size:22px!important;line-height:1.05!important}
#garden .collection-grid-controls{display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px auto!important;align-items:center!important;gap:7px!important;width:100%!important}
#garden .collection-chapter-arrow{width:38px!important;height:38px!important;border-radius:50%!important}
#garden .collection-chapter-picker{min-width:0!important;width:100%!important}
#garden .collection-chapter-picker select{width:100%!important;height:38px!important;min-width:0!important;padding:0 31px 0 11px!important;border-radius:12px!important;font-size:10px!important;text-overflow:ellipsis!important}
#garden .collection-sort{width:38px!important;overflow:hidden!important}
#garden .collection-sort select{width:38px!important;height:38px!important;padding:0!important;font-size:0!important;border-radius:50%!important;background-position:center!important}
#garden .collection-grid-controls .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* My Garden: compact premium header and shortcuts before the plot manager. */
#gardenPlay.garden-page .garden-topbar{min-height:72px!important;margin-bottom:6px!important;padding-top:5px!important;padding-bottom:5px!important;border-bottom:1px solid rgba(151,124,77,.12)!important;background:rgba(251,246,236,.97)!important}
#gardenPlay.garden-page .garden-brand b{font:400 24px/1 var(--font-display),Georgia,serif!important}
#gardenPlay.garden-page .garden-brand svg{width:58px!important;height:12px!important;margin-top:5px!important}
#gardenPlay.garden-page .garden-hero{min-height:142px!important;border-radius:24px!important;box-shadow:0 14px 31px rgba(77,58,29,.13)!important}
#gardenPlay.garden-page .garden-hero__copy{width:68%!important;padding:20px 0 18px 19px!important}
#gardenPlay.garden-page .garden-hero h1{font-size:36px!important}
#gardenPlay.garden-page .garden-hero p{display:block!important;margin:8px 0 0!important;font-size:9.5px!important;line-height:1.4!important;max-width:210px!important}
#gardenPlay.garden-page .garden-hero__stats{display:none!important}
#gardenPlay.garden-page .gd-quick-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0 0 10px!important}
#gardenPlay.garden-page .gd-quick-actions button{min-width:0!important;min-height:64px!important;padding:9px!important;display:grid!important;grid-template-columns:34px minmax(0,1fr) 12px!important;align-items:center!important;gap:8px!important;text-align:left!important;border:1px solid rgba(151,124,77,.18)!important;border-radius:17px!important;background:linear-gradient(180deg,#fffaf1,#efe5d1)!important;color:#46533a!important;box-shadow:0 7px 15px rgba(72,56,31,.07)!important}
#gardenPlay.garden-page .gd-quick-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#e9edd8;color:#738249}
#gardenPlay.garden-page .gd-quick-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}
#gardenPlay.garden-page .gd-quick-actions b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 10px/1.15 system-ui,sans-serif!important}
#gardenPlay.garden-page .gd-quick-actions small{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7c7967;font:600 7.5px/1 system-ui,sans-serif!important}
#gardenPlay.garden-page .gd-quick-actions i{font:400 22px/1 Georgia,serif;color:#82905c}

/* Plot manager is now a horizontal, snap-to-card workspace instead of a long wall. */
#gardenPlay.garden-page .gd-plots-card{overflow:hidden!important;padding:12px 0 13px!important}
#gardenPlay.garden-page .gd-plots-card .gd-section-head{padding:0 13px!important;margin-bottom:10px!important}
#gardenPlay.garden-page .gd-plots{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:minmax(190px,72%)!important;grid-template-columns:none!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px 13px 12px!important;scroll-snap-type:x mandatory!important;overscroll-behavior-x:contain!important;scrollbar-width:none!important}
#gardenPlay.garden-page .gd-plots::-webkit-scrollbar{display:none!important}
#gardenPlay.garden-page .gd-plot{scroll-snap-align:center!important;min-height:176px!important;aspect-ratio:auto!important;padding:12px!important;border-radius:21px!important}
#gardenPlay.garden-page .gd-plot-visual{min-height:86px!important}
#gardenPlay.garden-page .garden-soil{width:104px!important;height:60px!important}
#gardenPlay.garden-page .gd-seed-action{width:46px!important;height:46px!important}
#gardenPlay.garden-page .gd-plot-copy b{font-size:13px!important}
#gardenPlay.garden-page .gd-plot-copy small{font-size:9px!important}
#gardenPlay.garden-page .gd-expand{margin:0 13px!important;width:calc(100% - 26px)!important}

@media(min-width:700px){
  #gardenPlay.garden-page .gd-plots{grid-auto-columns:minmax(210px,31%)!important}
}

/* ===== v0.4.8: Collection-matched Shop header and shared botanical language ===== */
#shopSheet .shop-reference-topbar{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 46px!important;
  align-items:center!important;
  gap:10px!important;
  height:72px!important;
  min-height:72px!important;
  margin:0 0 12px!important;
  padding:0!important;
}
#shopSheet .shop-reference-topbar>.petal-global-logo{
  display:block!important;
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 6px 11px rgba(21,48,41,.20))!important;
}
#shopSheet .shop-reference-brand{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  max-height:48px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:none!important;
}
#shopSheet .shop-reference-brand>.petal-emerald-wordmark{
  position:static!important;
  display:block!important;
  width:min(100%,205px)!important;
  max-width:205px!important;
  height:48px!important;
  max-height:48px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
#shopSheet .shop-reference-settings{
  justify-self:end!important;
  box-sizing:border-box!important;
  width:44px!important;
  height:44px!important;
  padding:10px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(154,122,68,.22)!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#fffaf0,#eee1c9)!important;
  color:#566344!important;
  box-shadow:0 6px 15px rgba(75,57,31,.09),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
#shopSheet .shop-reference-settings svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#shopSheet .shop-reference-title{display:none!important}

#shopSheet .shop-reference-featured{
  margin:0 0 20px!important;
  border-color:rgba(68,94,61,.22)!important;
  border-radius:23px!important;
  background:linear-gradient(145deg,rgba(250,247,237,.98),rgba(236,239,215,.96))!important;
  box-shadow:0 13px 29px rgba(53,75,56,.13),inset 0 1px 0 rgba(255,255,255,.84)!important;
}
#shopSheet .shop-feature-ribbon{background:linear-gradient(135deg,#80945d,#5f744c)!important}
#shopSheet .shop-feature-copy h3,#shopSheet .shop-season-copy h3{color:#354b38!important}
#shopSheet .shop-feature-copy p,#shopSheet .shop-season-copy p{color:#5d6957!important}
#shopSheet .shop-reference-buy,#shopSheet .shop-season-cta,
#shopSheet .shop-currency-card button,#shopSheet .shop-detail-card button{
  border-color:rgba(61,88,54,.42)!important;
  background:linear-gradient(180deg,#84985e,#60764b)!important;
  color:#fffdf5!important;
  box-shadow:0 5px 12px rgba(53,75,56,.17),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
#shopSheet .shop-reference-section-title{color:#465b40!important}
#shopSheet .shop-reference-section-title i{background:linear-gradient(90deg,transparent,rgba(79,105,67,.35),transparent)!important}
#shopSheet .shop-currency-card,#shopSheet .shop-detail-card,#shopSheet .shop-reference-season{
  border-color:rgba(68,94,61,.20)!important;
  background:linear-gradient(180deg,rgba(250,247,237,.98),rgba(239,238,218,.96))!important;
  box-shadow:0 9px 21px rgba(53,75,56,.09),inset 0 1px 0 rgba(255,255,255,.84)!important;
}
#shopSheet .shop-currency-card strong,#shopSheet .shop-detail-card h4{color:#3f553b!important}
#shopSheet .shop-detail-art::before{background:radial-gradient(circle,#fffdf7 0,#dce6c8 72%,transparent 73%)!important}
#shopSheet .shop-currency-card.wallet-card button,#shopSheet .shop-currency-card.journey-card button{
  background:linear-gradient(180deg,#f2ecd9,#e1e6cb)!important;
  border-color:rgba(70,96,61,.20)!important;
  color:#566d49!important;
  box-shadow:none!important;
}
#shopSheet .shop-season-progress{background:#dfe3d0!important}
#shopSheet .shop-season-progress i{background:#718751!important}
#shopSheet .shop-reference-bottom-nav{background:rgba(248,243,231,.97)!important;border-top-color:rgba(68,94,61,.16)!important}
#shopSheet .shop-reference-bottom-nav button.active{background:rgba(220,230,200,.78)!important;color:#41583d!important}

@media(max-width:560px){
  #shopSheet .shop-reference-topbar{grid-template-columns:40px minmax(0,1fr) 40px!important;height:66px!important;min-height:66px!important;gap:8px!important}
  #shopSheet .shop-reference-topbar>.petal-global-logo{width:40px!important;height:40px!important}
  #shopSheet .shop-reference-settings{width:40px!important;height:40px!important;padding:9px!important}
  #shopSheet .shop-reference-brand>.petal-emerald-wordmark{width:min(100%,176px)!important;max-width:176px!important;height:44px!important;max-height:44px!important}
  #shopSheet .shop-reference-featured{margin-top:2px!important}
}

/* Locked collection cards keep the discovery surprise intact. */
#garden .collection-locked-art{position:relative!important;align-self:center!important;justify-self:center!important;width:70px!important;height:70px!important;display:grid!important;place-items:center!important;border:1px solid rgba(105,117,78,.18)!important;border-radius:50%!important;background:radial-gradient(circle,#f4efdf 0%,#e7e1d0 72%,#ddd5c2 100%)!important;color:#8f947d!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important}
#garden .collection-locked-art svg{width:43px!important;height:43px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;opacity:.48!important}
#garden .collection-locked-art i{position:absolute!important;right:7px!important;bottom:5px!important;width:19px!important;height:19px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#7f8967!important;color:#fffdf4!important;font:800 11px/1 system-ui,sans-serif!important}
#garden .collection-featured-art .collection-locked-art{width:116px!important;height:116px!important}
#garden .collection-featured-art .collection-locked-art svg{width:67px!important;height:67px!important}

/* Wrong placements remain clear even when mobile performance FX are reduced. */
:is(#game,#loadoutStage) .cell.error-pop{animation:errorNudgeV015 .30s ease-out!important;background:rgba(205,61,66,.24)!important;outline:3px solid rgba(190,42,49,.82)!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 2px rgba(255,239,230,.58),0 0 18px rgba(179,40,45,.24)!important}
:is(#game,#loadoutStage) .cell.error-pop::after{display:block!important;inset:1px!important;border:2px solid rgba(226,70,74,.88)!important;box-shadow:0 0 14px rgba(209,54,61,.28)!important;animation:errorRingV015 .50s ease-out forwards!important}
.game-life-pill{height:32px!important;display:inline-flex!important;align-items:center!important;gap:4px!important;padding:0 8px!important;border:1px solid rgba(184,77,85,.18)!important;border-radius:999px!important;background:rgba(255,245,240,.88)!important;color:#a84d55!important;white-space:nowrap!important}.game-life-pill b{font-size:14px!important}.game-life-pill i{font:800 9px/1 system-ui,sans-serif!important;font-style:normal!important}
#game .game-premium-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#game .game-stat-life .game-life-icon{font-size:21px!important;line-height:1!important;color:#b64c55!important}#game .game-stat-life b{font-size:14px!important;white-space:nowrap!important}
@media(max-width:480px){#game .game-premium-stats{padding-left:2px!important;padding-right:2px!important}#game .game-stat{padding-left:2px!important;padding-right:2px!important;gap:3px!important}#game .game-stat-life .game-life-icon{font-size:17px!important}#game .game-stat-life b{font-size:13px!important}}

/* Garden progression: bounded energy and assist upgrades. */
#gardenPlay .gd-resource-lab{margin:0 0 10px!important;padding:13px!important}
#gardenPlay .gd-essence{display:inline-flex!important;align-items:center!important;padding:7px 10px!important;border-radius:999px!important;background:#eef0da!important;color:#657446!important;font:800 11px/1 system-ui,sans-serif!important}
#gardenPlay .gd-resource-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:10px 0!important}
#gardenPlay .gd-resource-summary>span{min-width:0!important;padding:9px 5px!important;border:1px solid rgba(125,110,72,.14)!important;border-radius:13px!important;background:rgba(255,251,242,.8)!important;text-align:center!important;color:#68704f!important}
#gardenPlay .gd-resource-summary b{display:block!important;margin:3px 0!important;font:800 15px/1 system-ui,sans-serif!important}
#gardenPlay .gd-resource-summary small{display:block!important;font:600 7px/1.2 system-ui,sans-serif!important;color:#8b806a!important}
#gardenPlay .gd-resource-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
#gardenPlay .gd-resource-actions button{min-height:47px!important;padding:8px 10px!important;border:1px solid rgba(102,119,67,.22)!important;border-radius:13px!important;background:linear-gradient(180deg,#f4f4df,#e4e8c8)!important;color:#53623d!important;text-align:left!important}
#gardenPlay .gd-resource-actions button:disabled{opacity:.5!important}
#gardenPlay .gd-resource-actions b,#gardenPlay .gd-resource-actions small{display:block!important}
#gardenPlay .gd-resource-actions b{font:750 9px/1.2 system-ui,sans-serif!important}#gardenPlay .gd-resource-actions small{margin-top:4px!important;font:700 8px/1 system-ui,sans-serif!important}
#gardenPlay .gd-resource-note{margin:9px 0 0!important;text-align:center!important;color:#897d68!important;font:600 7.5px/1.35 system-ui,sans-serif!important}
.resource-gate{position:fixed!important;inset:0!important;z-index:12000!important;display:grid!important;place-items:center!important;padding:20px!important;background:rgba(46,37,26,.44)!important;backdrop-filter:blur(5px)!important}.resource-gate.hidden{display:none!important}
.resource-gate-card{width:min(92vw,390px)!important;padding:25px 20px!important;border:1px solid rgba(150,121,70,.24)!important;border-radius:26px!important;background:linear-gradient(180deg,#fffaf0,#eee2cc)!important;text-align:center!important;box-shadow:0 25px 65px rgba(49,37,20,.28)!important;color:#536044!important}
.resource-heart{font-size:39px!important;color:#b84d55!important}.resource-gate-card>small{font:800 8px/1 system-ui,sans-serif!important;letter-spacing:.16em!important}.resource-gate-card h2{margin:8px 0!important;font:400 29px/1 Georgia,serif!important}.resource-gate-card p{font:600 10px/1.5 system-ui,sans-serif!important;color:#746f60!important}.resource-gate-actions{display:grid!important;gap:8px!important;margin-top:16px!important}.resource-gate-actions button{width:100%!important}

/* ===== UX pass 5: Free Bloom one-screen composition ===== */
#free .free-mechanic-card .free-icon svg{display:block!important;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#free .free-mechanic-card .free-icon-shadow .icon-fill{fill:currentColor!important;stroke:none!important;opacity:.28!important}
#free .free-mechanic-card .free-icon-twin{font-size:0!important;background:#f4e8d1!important}
#free .free-mechanic-card.active .free-icon svg{stroke:#fffdf5!important}

/* ===== v0.4.7: unified emerald Garden and corrected image wordmarks ===== */
#home .home-approved-brand{
  align-self:center!important;
  justify-self:center!important;
  width:100%!important;
  height:44px!important;
  max-height:44px!important;
  padding:0!important;
  background:none!important;
}
#home .home-approved-brand>.petal-emerald-wordmark{
  width:min(100%,190px)!important;
  max-width:190px!important;
  height:44px!important;
  max-height:44px!important;
  object-position:center!important;
}

#gardenPlay.garden-page{
  --garden-emerald:#4c6545;
  --garden-emerald-deep:#354b38;
  --garden-sage:#81966a;
  --garden-cream:#f8f1e2;
  --garden-gold:#b9914f;
}
#gardenPlay.garden-page .garden-topbar{
  background:linear-gradient(180deg,#fbf7ed,#f2ead9)!important;
  border-bottom-color:rgba(81,105,69,.18)!important;
}
#gardenPlay.garden-page .garden-brand{
  box-sizing:border-box!important;
  width:100%!important;
  height:46px!important;
  max-height:46px!important;
  padding:0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
#gardenPlay.garden-page .garden-brand>img{
  display:block!important;
  width:min(100%,190px)!important;
  max-width:190px!important;
  height:44px!important;
  max-height:44px!important;
  object-fit:contain!important;
  object-position:center!important;
}
#gardenPlay.garden-page .garden-hero{
  min-height:154px!important;
  background:url("../ui/collection-my-garden-v2.webp") center 58%/cover no-repeat!important;
  border-color:rgba(79,100,61,.26)!important;
  box-shadow:0 15px 32px rgba(53,75,56,.17)!important;
}
#gardenPlay.garden-page .garden-hero::before{
  background:linear-gradient(90deg,rgba(248,243,230,.97) 0%,rgba(248,243,230,.88) 45%,rgba(53,75,56,.12) 73%,rgba(31,48,35,.08) 100%)!important;
}
#gardenPlay.garden-page .garden-hero__kicker{color:#8b6b35!important}
#gardenPlay.garden-page .garden-hero h1{color:var(--garden-emerald-deep)!important}
#gardenPlay.garden-page .garden-hero p{color:#53624f!important}

#gardenPlay.garden-page .gd-wallet,
#gardenPlay.garden-page .gd-water,
#gardenPlay.garden-page .gd-bonus{
  background:linear-gradient(145deg,rgba(248,244,228,.98),rgba(224,230,204,.96))!important;
  border-color:rgba(80,105,67,.22)!important;
  color:var(--garden-emerald-deep)!important;
  box-shadow:0 7px 17px rgba(53,75,56,.10),inset 0 1px 0 rgba(255,255,255,.85)!important;
}
#gardenPlay.garden-page .gd-stat-icon{color:var(--garden-sage)!important}

#gardenPlay.garden-page .gd-resource-trigger{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:68px!important;
  margin:0!important;
  padding:10px 12px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto 12px!important;
  align-items:center!important;
  gap:9px!important;
  text-align:left!important;
  border:1px solid rgba(68,94,61,.26)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#eef1d9 0%,#dce6c7 58%,#cbd9b5 100%)!important;
  color:var(--garden-emerald-deep)!important;
  box-shadow:0 9px 20px rgba(52,75,54,.13),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
#gardenPlay.garden-page .gd-resource-trigger__icon{
  width:38px!important;height:38px!important;display:grid!important;place-items:center!important;
  border-radius:12px!important;background:rgba(248,243,226,.82)!important;color:#70844f!important;font-size:20px!important;
}
#gardenPlay.garden-page .gd-resource-trigger b{display:block!important;font:750 11px/1.2 system-ui,sans-serif!important}
#gardenPlay.garden-page .gd-resource-trigger small{display:block!important;margin-top:4px!important;color:#65725a!important;font:600 8px/1.2 system-ui,sans-serif!important}
#gardenPlay.garden-page .gd-resource-trigger__balance{padding:6px 8px!important;border-radius:999px!important;background:rgba(248,244,230,.78)!important;color:#647947!important;font:800 8px/1 system-ui,sans-serif!important;white-space:nowrap!important}
#gardenPlay.garden-page .gd-resource-trigger>i{font:400 22px/1 Georgia,serif!important;color:#718752!important}

#gardenPlay.garden-page .gd-quick-actions button{
  border-color:rgba(68,94,61,.20)!important;
  background:linear-gradient(145deg,#f8f3e6,#e5ead2)!important;
  color:var(--garden-emerald-deep)!important;
  box-shadow:0 7px 16px rgba(53,75,56,.09)!important;
}
#gardenPlay.garden-page .gd-quick-icon{background:#dce6c8!important;color:#657d4e!important}
#gardenPlay.garden-page .gd-quick-actions i{color:#718752!important}
#gardenPlay.garden-page .gd-section-card{
  border-color:rgba(68,94,61,.20)!important;
  background:linear-gradient(180deg,rgba(250,247,237,.98),rgba(239,238,218,.97))!important;
  box-shadow:0 11px 25px rgba(53,75,56,.10)!important;
}
#gardenPlay.garden-page .gd-section-head h3{color:var(--garden-emerald-deep)!important}
#gardenPlay.garden-page .gd-section-badge,#gardenPlay.garden-page .gd-essence{background:#dde6c9!important;color:#607846!important}
#gardenPlay.garden-page .gd-resource-summary>span{border-color:rgba(74,99,61,.17)!important;background:#f7f4e7!important;color:#5c704d!important}
#gardenPlay.garden-page .gd-resource-actions button{border-color:rgba(65,93,58,.24)!important;background:linear-gradient(145deg,#eef1d8,#dbe5c4)!important;color:#4b623f!important}
#gardenPlay.garden-page .gd-resource-lab{margin:0!important;padding:16px!important}
#gardenPlay.garden-page .gd-resource-lab .gd-section-head{padding-right:35px!important}

@media(max-width:480px){
  #home .home-approved-brand>.petal-emerald-wordmark{width:min(100%,176px)!important;max-width:176px!important}
  #gardenPlay.garden-page .garden-brand>img{width:min(100%,176px)!important;max-width:176px!important}
  #gardenPlay.garden-page .gd-resource-trigger{grid-template-columns:36px minmax(0,1fr) auto 10px!important;padding:9px 10px!important}
  #gardenPlay.garden-page .gd-resource-trigger small{max-width:150px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}
#free .free-mechanic-card.active .free-icon-shadow .icon-fill{fill:#fffdf5!important}

@media(max-width:560px){
  #free{height:100dvh!important;min-height:100dvh!important;padding:0 0 calc(78px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;overflow:hidden!important}
  #free .free-page-shell{
    box-sizing:border-box!important;width:100%!important;height:calc(100dvh - 78px - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
    min-height:0!important;max-height:none!important;padding:3px 10px 7px!important;overflow:hidden!important;
    display:flex!important;flex-direction:column!important;gap:7px!important;
  }
  #free .free-topbar{height:54px!important;min-height:54px!important;margin:0!important;flex:0 0 54px!important}
  #free .free-bloom-intro{flex:0 0 62px!important;padding:1px 8px 4px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  #free .free-bloom-kicker{margin-bottom:3px!important;font-size:7px!important}
  #free .free-bloom-intro h2{font-size:29px!important;line-height:1!important}
  #free .free-bloom-rule{width:62px!important;margin-top:7px!important}
  #free .free-config-card{margin:0!important;padding:8px 9px!important;border-radius:16px!important}
  #free .free-difficulty-block{flex:1 1 198px!important;min-height:188px!important;display:flex!important;flex-direction:column!important}
  #free .free-section-head{margin-bottom:6px!important;align-items:center!important;min-height:30px!important}
  #free .free-section-head small{font-size:6.5px!important}
  #free .free-section-head h3{font-size:16px!important;margin-top:2px!important}
  #free .free-current-badge{padding:5px 8px!important;font-size:7.5px!important}
  #free .difficulty-grid{flex:1!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;gap:5px!important}
  #free .diff-card{min-height:0!important;height:auto!important;padding:4px 7px 4px 10px!important;grid-template-columns:minmax(0,1fr) 58px 20px!important;gap:7px!important;border-radius:12px!important}
  #free .diff-card h4{margin:0!important;font-size:14px!important}
  #free .diff-meta{display:none!important}
  #free .diff-solved{min-width:0!important;margin:0!important;padding:4px 5px!important;font-size:6.5px!important}
  #free .diff-solved b{font-size:9px!important}
  #free .diff-go{width:20px!important;height:20px!important;font-size:10px!important}
  #free .free-mechanic-picker{flex:0 0 105px!important;margin:0!important;padding:7px 8px!important}
  #free .free-mechanic-picker .free-section-head{min-height:25px!important;margin-bottom:4px!important}
  #free .free-mechanic-grid{height:61px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important;overflow:visible!important;padding:0!important}
  #free .free-mechanic-card{min-height:61px!important;height:61px!important;padding:5px 2px 4px!important;border-radius:11px!important}
  #free .free-mechanic-card i{width:26px!important;height:26px!important}
  #free .free-mechanic-card .free-icon svg{width:17px!important;height:17px!important}
  #free .free-mechanic-card b{margin-top:3px!important;min-height:0!important;font-size:6.5px!important;line-height:1!important}
  #free .free-launch-card{flex:0 0 91px!important;min-height:91px!important;margin:0!important;padding:8px 10px!important;grid-template-columns:minmax(0,1fr) 142px!important;gap:8px!important;border-radius:16px!important}
  #free .free-launch-copy small{font-size:6.5px!important}
  #free .free-launch-copy strong{font-size:16px!important;margin-top:2px!important}
  #free .free-launch-copy span{font-size:7px!important;margin-top:3px!important}
  #free #newBloomBtn{min-height:38px!important;padding:0 9px!important;font-size:12px!important}
  #free .free-bottom-nav{height:78px!important;min-height:78px!important;padding:5px 6px max(5px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #free .free-bottom-nav .home-nav-item{min-height:0!important;font-size:8px!important}
}

@media(max-width:370px), (max-height:680px){
  #free .free-page-shell{gap:5px!important}
  #free .free-bloom-intro{flex-basis:52px!important}
  #free .free-bloom-intro h2{font-size:25px!important}
  #free .free-difficulty-block{min-height:174px!important}
  #free .free-mechanic-picker{flex-basis:96px!important}
  #free .free-mechanic-grid{height:54px!important}
  #free .free-mechanic-card{min-height:54px!important;height:54px!important}
  #free .free-launch-card{flex-basis:82px!important;min-height:82px!important}
}

/* ===== UX pass 6: identical navigation + Daily calendar flow ===== */
#home .home-bottom-nav,
#journey .journey-bottom-nav,
#free .free-bottom-nav,
#garden .collection-bottom-nav,
#shopSheet .shop-reference-bottom-nav{
  box-sizing:border-box!important;height:86px!important;min-height:86px!important;
  padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}
#home .home-bottom-nav .home-nav-item,
#journey .journey-bottom-nav .home-nav-item,
#free .free-bottom-nav .home-nav-item,
#garden .collection-bottom-nav .collection-nav-item,
#shopSheet .shop-reference-bottom-nav button{
  min-height:0!important;padding:5px 3px!important;gap:4px!important;
  font:500 9px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#home .home-bottom-nav .home-nav-item svg,
#journey .journey-bottom-nav .home-nav-item svg,
#free .free-bottom-nav .home-nav-item svg,
#garden .collection-bottom-nav .collection-nav-item svg,
#shopSheet .shop-reference-bottom-nav button svg{
  width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;flex:0 0 24px!important;
}

#daily .daily-calendar-card{flex:0 0 82px!important;padding:0!important;overflow:hidden!important}
#daily .daily-calendar-card>span{padding:7px 5px!important}
#daily .daily-calendar-card>strong{font-size:30px!important}
#daily .daily-calendar-card>small{padding:7px 5px!important}
#daily .daily-utility-row{max-width:380px;margin:12px auto 0;padding:7px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:7px;border:1px solid rgba(145,115,69,.16);border-radius:14px;background:rgba(249,244,233,.68)}
#daily .daily-hero-countdown{min-width:0;padding:4px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px}
#daily .daily-hero-countdown span{color:#7b735f;font:700 8px/1.15 system-ui,sans-serif!important;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
#daily .daily-hero-countdown strong{color:#46503a;font:600 14px/1 system-ui,sans-serif!important;font-variant-numeric:tabular-nums;white-space:nowrap}
#daily .daily-calendar-open{min-width:112px;min-height:38px;margin:0;padding:6px 10px;border:1px solid rgba(111,125,74,.25);border-radius:10px;background:#e9edd8;color:#5e6d45;display:flex;align-items:center;justify-content:center;gap:6px;font:700 9px/1 system-ui,sans-serif;white-space:nowrap;cursor:pointer}
#daily .daily-calendar-open svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#daily #dailyPlayBtn.daily-play-premium{width:min(100%,380px)!important;min-height:54px!important;margin:15px auto 3px!important;display:block!important;font-size:19px!important}

.daily-series-modal{position:fixed;inset:0;z-index:3200;display:grid;place-items:center;padding:18px;background:rgba(37,31,22,.36);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.daily-series-modal.hidden{display:none!important}
.daily-series-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:default}
.daily-series-dialog{position:relative;z-index:1;box-sizing:border-box;width:min(100%,430px);padding:20px;border:1px solid rgba(145,115,69,.27);border-radius:25px;background:linear-gradient(155deg,#fffdf7,#f2e7d4);color:#46503a;box-shadow:0 24px 70px rgba(48,38,24,.25),inset 0 1px 0 #fff}
.daily-series-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
.daily-series-kicker{color:#aa7d42;font:700 9px/1 system-ui,sans-serif;letter-spacing:.15em}
.daily-series-dialog h3{margin:5px 0 0;font:400 30px/1 Georgia,"Times New Roman",serif}
.daily-series-close{width:38px;height:38px;padding:9px;border:1px solid rgba(145,115,69,.22);border-radius:50%;background:#faf3e5;color:#5d684a;display:grid;place-items:center}
.daily-series-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.daily-series-summary{display:flex;align-items:baseline;gap:7px;margin:18px 0 13px;padding:11px 14px;border-radius:15px;background:#e9edd8;color:#5d6d43}
.daily-series-summary strong{font:500 25px/1 Georgia,serif}.daily-series-summary span{font:700 10px/1 system-ui,sans-serif}
.daily-calendar-nav{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:10px;text-align:center}
.daily-calendar-nav button{width:34px;height:34px;border:1px solid rgba(145,115,69,.2);border-radius:50%;background:#fbf5e9;color:#64714d;font:400 23px/1 Georgia,serif}
.daily-calendar-nav button:disabled{opacity:.28}.daily-calendar-nav strong{font:500 16px/1.2 Georgia,serif}
.daily-calendar-weekdays,.daily-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.daily-calendar-weekdays{margin-bottom:6px}.daily-calendar-weekdays span{text-align:center;color:#887e69;font:700 8px/1 system-ui,sans-serif}
.daily-calendar-day,.calendar-pad{aspect-ratio:1;display:grid;place-items:center;position:relative;border-radius:11px}
.daily-calendar-day{border:1px solid rgba(145,115,69,.14);background:#f7efe1;color:#7d7768}
.daily-calendar-day b{font:600 11px/1 system-ui,sans-serif}.daily-calendar-day i{position:absolute;right:3px;bottom:2px;font:800 7px/1 system-ui,sans-serif}
.daily-calendar-day.played{background:#dfe8c8;border-color:#a9b77c;color:#52633c}.daily-calendar-day.missed{background:#f0e6d7;color:#a19683}.daily-calendar-day.future{opacity:.42}.daily-calendar-day.today{box-shadow:0 0 0 2px #778653 inset}
.daily-calendar-legend{display:flex;justify-content:center;gap:13px;margin-top:14px;color:#786f5e;font:600 8px/1 system-ui,sans-serif}
.daily-calendar-legend span{display:flex;align-items:center;gap:4px}.daily-calendar-legend i{width:8px;height:8px;border-radius:3px;background:#f0e6d7}.daily-calendar-legend i.played{background:#b8ca8e}.daily-calendar-legend i.future{background:#eee8dc;opacity:.5}
body.daily-calendar-opened{overflow:hidden!important}

@media(max-width:560px){
  #free{padding-bottom:calc(86px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #free .free-page-shell{height:calc(100dvh - 86px - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #free .free-bottom-nav{height:86px!important;min-height:86px!important;padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
  #free .free-bottom-nav .home-nav-item{font-size:9px!important;padding:5px 3px!important}
  #daily .daily-flower-heading{gap:10px!important}
  #daily .daily-calendar-card{flex-basis:73px!important}
  #daily .daily-flower-visual{height:185px!important}
  #daily .daily-flower-cluster{height:180px!important}
  #daily #dailyPlayBtn.daily-play-premium{min-height:50px!important;margin-top:12px!important;font-size:17px!important}
  #daily .daily-utility-row{margin-top:9px;padding:6px;grid-template-columns:minmax(0,1fr) 105px}
  #daily .daily-hero-countdown{padding:4px 7px;display:block}
  #daily .daily-hero-countdown span{display:block;font-size:7px!important}
  #daily .daily-hero-countdown strong{display:block;margin-top:4px;font-size:13px!important}
  #daily .daily-calendar-open{min-width:0;padding:5px 7px;font-size:8px}
}

/* ===== UX pass 3: modal utilities, all nine plots, balanced resources ===== */
#gardenPlay.garden-page .gd-top{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0 0 10px!important;
}
#gardenPlay.garden-page .gd-wallet,
#gardenPlay.garden-page .gd-water,
#gardenPlay.garden-page .gd-bonus{
  box-sizing:border-box!important;min-height:68px!important;padding:9px!important;
  display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;grid-template-rows:22px 18px!important;
  align-content:center!important;align-items:center!important;column-gap:8px!important;
}
#gardenPlay.garden-page .gd-stat-icon{grid-row:1/3!important;width:32px!important;height:32px!important}
#gardenPlay.garden-page .gd-wallet b,
#gardenPlay.garden-page .gd-water b,
#gardenPlay.garden-page .gd-bonus b{
  align-self:end!important;margin:0!important;font:600 17px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:-.02em!important;white-space:nowrap!important;
}
#gardenPlay.garden-page .gd-wallet small,
#gardenPlay.garden-page .gd-water small,
#gardenPlay.garden-page .gd-bonus small{
  align-self:start!important;margin:2px 0 0!important;font:600 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;white-space:nowrap!important;
}

/* Nine plots stay visible as one 3x3 management board. */
#gardenPlay.garden-page .gd-plots-card{padding:12px!important;overflow:visible!important}
#gardenPlay.garden-page .gd-plots-card .gd-section-head{padding:0!important;margin:0 1px 11px!important}
#gardenPlay.garden-page .gd-plots{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;
  gap:7px!important;width:100%!important;padding:0!important;overflow:visible!important;scroll-snap-type:none!important;
}
#gardenPlay.garden-page .gd-plot{
  min-width:0!important;min-height:128px!important;aspect-ratio:auto!important;padding:7px!important;border-radius:16px!important;scroll-snap-align:none!important;
}
#gardenPlay.garden-page .gd-plot-top{min-height:15px!important}
#gardenPlay.garden-page .gd-plot-index{font-size:6.8px!important;letter-spacing:.045em!important}
#gardenPlay.garden-page .gd-state{max-width:48px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:5.8px!important;padding:3px 4px!important}
#gardenPlay.garden-page .gd-plot-visual{min-height:65px!important}
#gardenPlay.garden-page .garden-soil{
  width:68px!important;height:68px!important;border-radius:0!important;
  background:url("../ui/garden-plot-bed-premium.webp") center/contain no-repeat!important;
  box-shadow:none!important;
}
#gardenPlay.garden-page .garden-soil::after{display:none!important}
#gardenPlay.garden-page .gd-seed-action{
  width:28px!important;height:28px!important;border:1px solid rgba(255,255,255,.82)!important;
  background:rgba(251,247,235,.92)!important;box-shadow:0 3px 8px rgba(59,43,23,.15)!important;
}
#gardenPlay.garden-page .gd-seed-action svg{width:15px!important;height:15px!important;stroke-width:1.8!important}
#gardenPlay.garden-page .gd-bloom{max-width:62px!important;width:72%!important}
#gardenPlay.garden-page .gd-plot-copy{gap:2px!important}
#gardenPlay.garden-page .gd-plot-copy b{font-size:8.5px!important;line-height:1.1!important}
#gardenPlay.garden-page .gd-plot-copy small{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:6.8px!important;line-height:1.2!important}
#gardenPlay.garden-page .gd-expand{margin:9px 0 0!important;width:100%!important}

/* Utility contents live only in bottom-sheet modals, never as duplicate page sections. */
#gardenPlay.garden-page .gd-modal{position:fixed!important;inset:0!important;z-index:10060!important;display:none!important;align-items:flex-end!important;justify-content:center!important;padding:0!important}
#gardenPlay.garden-page .gd-modal.is-open{display:flex!important}
#gardenPlay.garden-page .gd-modal-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:rgba(43,35,24,.36)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important}
#gardenPlay.garden-page .gd-modal-panel{position:relative!important;z-index:1!important;width:100%!important;max-width:560px!important;max-height:min(78dvh,720px)!important;margin:0!important;padding:12px 14px calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;overflow-y:auto!important;border-radius:26px 26px 0 0!important;background:linear-gradient(180deg,#fffaf0,#f0e3ce)!important;box-shadow:0 -22px 55px rgba(61,46,25,.22)!important}
#gardenPlay.garden-page .gd-modal-grip{width:42px;height:4px;margin:0 auto 12px;border-radius:999px;background:rgba(86,91,68,.24)}
#gardenPlay.garden-page .gd-modal-panel .gd-section-head{position:relative!important;align-items:center!important;margin-bottom:12px!important;padding-right:46px!important}
#gardenPlay.garden-page .gd-modal-panel .gd-section-head h3{font-size:25px!important}
#gardenPlay.garden-page .gd-modal-panel .gd-section-head p{display:block!important;font-size:9px!important}
#gardenPlay.garden-page .gd-modal-close{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;width:38px!important;height:38px!important;border-radius:50%!important;border:1px solid rgba(151,124,77,.18)!important;background:#f5ead8!important;color:#637052!important;font:400 24px/1 system-ui!important}
#gardenPlay.garden-page .gd-modal .gd-quest-list{display:grid!important;gap:8px!important}
#gardenPlay.garden-page .gd-modal .gd-decor{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}

@media(min-width:700px){
  #gardenPlay.garden-page .gd-modal{align-items:center!important;padding:20px!important}
  #gardenPlay.garden-page .gd-modal-panel{border-radius:26px!important}
  #gardenPlay.garden-page .gd-plot{min-height:150px!important}
  #gardenPlay.garden-page .garden-soil{width:82px!important;height:82px!important}
}

/* ===== v0.4.9: one stable frame for Home, Collection and Shop ===== */
:root{
  --petal-primary-header-h:88px;
  --petal-primary-header-pad:22px;
  --petal-primary-control:40px;
  --petal-primary-wordmark-w:176px;
  --petal-primary-wordmark-h:44px;
  --petal-primary-nav-h:86px;
}
#home .home-approved-head,
body #garden .collection-topbar,
#shopSheet .shop-reference-topbar{
  box-sizing:border-box!important;
  width:100%!important;
  height:var(--petal-primary-header-h)!important;
  min-height:var(--petal-primary-header-h)!important;
  max-height:var(--petal-primary-header-h)!important;
  margin:0 0 12px!important;
  padding:var(--petal-primary-header-pad) 0!important;
  display:grid!important;
  grid-template-columns:var(--petal-primary-control) minmax(0,1fr) var(--petal-primary-control)!important;
  align-items:center!important;
  gap:8px!important;
  position:relative!important;
}
#home .home-approved-head>.petal-global-logo,
body #garden .collection-topbar>.petal-global-logo,
#shopSheet .shop-reference-topbar>.petal-global-logo,
#home .home-approved-settings,
body #garden .collection-settings,
#shopSheet .shop-reference-settings{
  box-sizing:border-box!important;
  width:var(--petal-primary-control)!important;
  min-width:var(--petal-primary-control)!important;
  height:var(--petal-primary-control)!important;
  min-height:var(--petal-primary-control)!important;
  margin:0!important;
}
#home .home-approved-brand,
body #garden .collection-brand,
#shopSheet .shop-reference-brand{
  box-sizing:border-box!important;
  width:100%!important;
  height:var(--petal-primary-wordmark-h)!important;
  min-height:var(--petal-primary-wordmark-h)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:none!important;
}
#home .home-approved-brand>.petal-emerald-wordmark,
body #garden .collection-brand>.petal-emerald-wordmark,
#shopSheet .shop-reference-brand>.petal-emerald-wordmark{
  display:block!important;
  box-sizing:border-box!important;
  width:min(100%,var(--petal-primary-wordmark-w))!important;
  max-width:var(--petal-primary-wordmark-w)!important;
  height:var(--petal-primary-wordmark-h)!important;
  max-height:var(--petal-primary-wordmark-h)!important;
  margin:0 auto!important;
  padding:0!important;
  object-fit:contain!important;
}
#home .home-bottom-nav,
#journey .journey-bottom-nav,
#free .free-bottom-nav,
#garden .collection-bottom-nav,
#shopSheet .shop-reference-bottom-nav{
  box-sizing:border-box!important;
  height:var(--petal-primary-nav-h)!important;
  min-height:var(--petal-primary-nav-h)!important;
  max-height:var(--petal-primary-nav-h)!important;
  padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}

/* v0.4.14 final cascade guard: all five feature pages keep one frame. */
#free .free-topbar,#daily .daily-topbar{height:88px!important;min-height:88px!important;max-height:88px!important;margin:0 0 12px!important;padding:22px 0!important;grid-template-columns:40px minmax(0,1fr) 40px!important}
#free .free-topbar>.petal-global-logo,#daily .daily-topbar>.petal-global-logo,#free .petal-primary-settings,#daily .petal-primary-settings{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;margin:0!important}
#free .free-topbar-brand>.petal-emerald-wordmark,#daily .daily-topbar-brand>.petal-emerald-wordmark{width:min(100%,176px)!important;max-width:176px!important;height:44px!important;max-height:44px!important;margin:0 auto!important;object-fit:contain!important}
#free .free-bottom-nav,#daily .daily-bottom-nav{height:86px!important;min-height:86px!important;max-height:86px!important;padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
#home .home-approved-free .home-approved-bouquet{width:88px!important;height:88px!important;right:14px!important;bottom:9px!important;display:grid!important;place-items:center!important;transform:none!important}
#home .home-approved-free .home-approved-bouquet .home-free-bloom-flower{position:static!important;inset:auto!important;width:84px!important;height:84px!important;margin:auto!important;object-fit:contain!important;object-position:center!important}

/* v0.4.15: remove the retired embedded logo and give Daily the real shared nav. */
#free .free-topbar-brand,
#daily .daily-topbar-brand{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:44px!important;
  padding:0!important;
  justify-self:stretch!important;
  background:none!important;
}
#free .free-topbar>.petal-global-logo,
#daily .daily-topbar>.petal-global-logo{
  display:block!important;
  justify-self:start!important;
  object-fit:contain!important;
}
#daily{
  box-sizing:border-box!important;
  padding:0 0 calc(86px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  overflow-y:auto!important;
}
#daily .daily-bottom-nav{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:0!important;
  z-index:90!important;
  transform:translateX(-50%)!important;
  width:min(100%,760px)!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:start!important;
  gap:2px!important;
  background:linear-gradient(180deg,rgba(251,247,237,.975),rgba(244,235,218,.985))!important;
  border:0!important;
  border-top:1px solid rgba(143,111,59,.18)!important;
  box-shadow:0 -8px 24px rgba(75,57,30,.065)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
#daily .daily-bottom-nav .home-nav-item{
  box-sizing:border-box!important;
  width:calc(100% - 10px)!important;
  max-width:92px!important;
  height:56px!important;
  min-height:56px!important;
  margin:0 auto!important;
  padding:5px 3px 4px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid transparent!important;
  border-radius:17px!important;
  background:transparent!important;
  color:#626c54!important;
  box-shadow:none!important;
  font:500 9.5px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  white-space:nowrap!important;
}
#daily .daily-bottom-nav .home-nav-item svg{
  display:block!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  flex:0 0 24px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
#daily .daily-bottom-nav .home-nav-item span{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font:inherit!important;
  line-height:1.05!important;
}

/* v0.4.16: one literal chrome component; screen content no longer owns it. */
html body #home .petal-shared-head,
html body #free .petal-shared-head,
html body #daily .petal-shared-head,
html body #garden .petal-shared-head,
html body #shopSheet .petal-shared-head{
  box-sizing:border-box!important;
  width:100%!important;
  height:88px!important;
  min-height:88px!important;
  max-height:88px!important;
  margin:0 0 12px!important;
  padding:22px 0!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 40px!important;
  align-items:center!important;
  gap:8px!important;
  position:relative!important;
  inset:auto!important;
}
html body #home .petal-shared-head>.petal-global-logo,
html body #free .petal-shared-head>.petal-global-logo,
html body #daily .petal-shared-head>.petal-global-logo,
html body #garden .petal-shared-head>.petal-global-logo,
html body #shopSheet .petal-shared-head>.petal-global-logo{
  display:block!important;
  box-sizing:border-box!important;
  justify-self:start!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
}
html body #home .petal-shared-brand,
html body #free .petal-shared-brand,
html body #daily .petal-shared-brand,
html body #garden .petal-shared-brand,
html body #shopSheet .petal-shared-brand{
  box-sizing:border-box!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:none!important;
  transform:none!important;
}
html body #home .petal-shared-brand>.petal-emerald-wordmark,
html body #free .petal-shared-brand>.petal-emerald-wordmark,
html body #daily .petal-shared-brand>.petal-emerald-wordmark,
html body #garden .petal-shared-brand>.petal-emerald-wordmark,
html body #shopSheet .petal-shared-brand>.petal-emerald-wordmark{
  display:block!important;
  box-sizing:border-box!important;
  width:min(100%,176px)!important;
  max-width:176px!important;
  height:44px!important;
  max-height:44px!important;
  margin:0 auto!important;
  padding:0!important;
  object-fit:contain!important;
  transform:none!important;
}
html body #home .petal-shared-head>.petal-primary-settings,
html body #free .petal-shared-head>.petal-primary-settings,
html body #daily .petal-shared-head>.petal-primary-settings,
html body #garden .petal-shared-head>.petal-primary-settings,
html body #shopSheet .petal-shared-head>.petal-primary-settings{
  box-sizing:border-box!important;
  position:static!important;
  justify-self:end!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:9px!important;
  border:1px solid rgba(150,128,84,.25)!important;
  border-radius:50%!important;
  background:rgba(249,244,233,.88)!important;
  color:#5b684d!important;
  box-shadow:0 5px 14px rgba(80,66,39,.08)!important;
  transform:none!important;
}
html body #home .petal-shared-head>.petal-primary-settings>svg,
html body #free .petal-shared-head>.petal-primary-settings>svg,
html body #daily .petal-shared-head>.petal-primary-settings>svg,
html body #garden .petal-shared-head>.petal-primary-settings>svg,
html body #shopSheet .petal-shared-head>.petal-primary-settings>svg{
  display:block!important;width:22px!important;height:22px!important;margin:0!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media(max-width:899px){
  html body #home .petal-shared-nav,
  html body #journey .petal-shared-nav,
  html body #free .petal-shared-nav,
  html body #daily .petal-shared-nav,
  html body #garden .petal-shared-nav,
  html body #shopSheet .petal-shared-nav{
    box-sizing:border-box!important;position:fixed!important;left:50%!important;right:auto!important;bottom:0!important;z-index:90!important;
    transform:translateX(-50%)!important;width:min(100%,560px)!important;height:86px!important;min-height:86px!important;max-height:86px!important;
    margin:0!important;padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:start!important;gap:2px!important;
    background:linear-gradient(180deg,rgba(251,247,237,.975),rgba(244,235,218,.985))!important;border:0!important;border-top:1px solid rgba(143,111,59,.18)!important;
    box-shadow:0 -8px 24px rgba(75,57,30,.065)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;
  }
  html body .petal-shared-nav>button{
    box-sizing:border-box!important;width:calc(100% - 10px)!important;max-width:92px!important;height:64px!important;min-height:64px!important;margin:0 auto!important;padding:5px 3px 4px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;border:1px solid transparent!important;border-radius:17px!important;
    background:transparent!important;color:#626c54!important;box-shadow:none!important;font:500 9.5px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif!important;white-space:nowrap!important;
  }
  html body .petal-shared-nav>button>svg{
    display:block!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;flex:0 0 24px!important;margin:0!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  html body .petal-shared-nav>button>span{display:block!important;margin:0!important;padding:0!important;color:inherit!important;font:inherit!important;line-height:1.05!important}
  html body .petal-shared-nav>button.active{color:#52613d!important;background:linear-gradient(180deg,rgba(234,229,207,.78),rgba(229,220,194,.64))!important;border-color:rgba(124,139,80,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.74)!important}
}

/* v0.4.18: screenshot-calibrated Home / Daily / Free chrome contract. */
:root{
  --petal-mobile-screen-top:20px;
  --petal-mobile-screen-x:18px;
  --petal-mobile-header-h:88px;
  --petal-mobile-nav-h:86px;
}
html body #home.home-approved-v1,
html body #free,
html body #daily{
  box-sizing:border-box!important;
  margin:0 auto!important;
  padding-top:max(var(--petal-mobile-screen-top),var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
  padding-left:max(var(--petal-mobile-screen-x),var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(var(--petal-mobile-screen-x),var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
}
html body #free,
html body #daily{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-height:100dvh!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding-bottom:calc(var(--petal-mobile-nav-h) + 8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  gap:0!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior-y:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
}
html body #free.hidden,
html body #daily.hidden{display:none!important}
html body #free>.petal-shared-head,
html body #daily>.petal-shared-head{
  flex:0 0 var(--petal-mobile-header-h)!important;
}
html body #free>.free-page-shell,
html body #daily>.daily-flower-shell{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:520px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
html body #free>.free-page-shell{
  gap:7px!important;
}
@media(max-width:390px){
  :root{--petal-mobile-screen-x:13px}
  html body #home.home-approved-v1,
  html body #free,
  html body #daily{
    padding-left:max(var(--petal-mobile-screen-x),var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
    padding-right:max(var(--petal-mobile-screen-x),var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
  }
}

@media(max-width:899px){
  html body #home .petal-shared-nav,
  html body #journey .petal-shared-nav,
  html body #free .petal-shared-nav,
  html body #daily .petal-shared-nav,
  html body #garden .petal-shared-nav,
  html body #shopSheet .petal-shared-nav{
    height:var(--petal-mobile-nav-h)!important;
    min-height:var(--petal-mobile-nav-h)!important;
    max-height:var(--petal-mobile-nav-h)!important;
    padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  }
  html body #home .petal-shared-nav>button,
  html body #journey .petal-shared-nav>button,
  html body #free .petal-shared-nav>button,
  html body #daily .petal-shared-nav>button,
  html body #garden .petal-shared-nav>button,
  html body #shopSheet .petal-shared-nav>button{
    box-sizing:border-box!important;
    width:calc(100% - 10px)!important;
    max-width:92px!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    margin:0 auto!important;
    padding:5px 3px 4px!important;
    align-self:start!important;
    justify-self:center!important;
    font:500 10px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  }
  html body #home .petal-shared-nav>button>svg,
  html body #journey .petal-shared-nav>button>svg,
  html body #free .petal-shared-nav>button>svg,
  html body #daily .petal-shared-nav>button>svg,
  html body #garden .petal-shared-nav>button>svg,
  html body #shopSheet .petal-shared-nav>button>svg{
    width:27px!important;
    min-width:27px!important;
    height:27px!important;
    min-height:27px!important;
    flex:0 0 27px!important;
  }
  html body #home .petal-shared-nav>button>span,
  html body #journey .petal-shared-nav>button>span,
  html body #free .petal-shared-nav>button>span,
  html body #daily .petal-shared-nav>button>span,
  html body #garden .petal-shared-nav>button>span,
  html body #shopSheet .petal-shared-nav>button>span{
    font:inherit!important;
    line-height:1.05!important;
  }
}

/* v0.4.19: Collection and Shop join the same literal chrome contract as Home.
   Header rect, page gutters, scroll behaviour and bottom nav are now one system
   across Home / Journey / Collection / Shop / Daily Flower / Free Bloom. */
html body #garden.collection-premium-page,
html body #shopSheet .shop-reference-shell{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  min-height:100dvh!important;
  height:100dvh!important;
  max-height:100dvh!important;
  margin:0 auto!important;
  padding-top:max(var(--petal-mobile-screen-top),var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
  padding-left:max(var(--petal-mobile-screen-x),var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(var(--petal-mobile-screen-x),var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
  padding-bottom:calc(var(--petal-mobile-nav-h) + 8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  gap:0!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior-y:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
}
html body #garden.collection-premium-page.hidden{display:none!important}
html body #shopSheet.hidden,
html body #shopSheet.hidden .shop-reference-shell{display:none!important}
html body #home>.petal-shared-head,
html body #free>.petal-shared-head,
html body #daily>.petal-shared-head,
html body #garden>.petal-shared-head,
html body #shopSheet .shop-reference-shell>.petal-shared-head{
  order:-1!important;
  flex:0 0 var(--petal-mobile-header-h)!important;
  width:100%!important;
  margin:0 0 12px!important;
}
html body #garden>.collection-premium-shell,
html body #shopSheet .shop-reference-shell>.shop-reference-scroll{
  box-sizing:border-box!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  /* flex-shrink must stay 0: the shell used to be squeezed below its content
     height, which capped the scroll range and hid the last row of cards. */
  flex:1 0 auto!important;
}
@media(max-width:390px){
  html body #garden.collection-premium-page,
  html body #shopSheet .shop-reference-shell{
    padding-left:max(var(--petal-mobile-screen-x),var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
    padding-right:max(var(--petal-mobile-screen-x),var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
  }
}
/* Shop lives in an overlay: strip the sheet chrome so its panel is the screen. */
html body #shopSheet.shop-reference-page{
  padding:0!important;
  background:var(--petal-page-bg)!important;
  place-items:stretch!important;
}
/* The four tabs are one component at every width, not only on phones. */
html body #home .petal-shared-nav.petal-shared-nav,
html body #journey .petal-shared-nav.petal-shared-nav,
html body #free .petal-shared-nav.petal-shared-nav,
html body #daily .petal-shared-nav.petal-shared-nav,
html body #garden .petal-shared-nav.petal-shared-nav,
html body #shopSheet .petal-shared-nav.petal-shared-nav{
  box-sizing:border-box!important;
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:0!important;
  z-index:90!important;
  transform:translateX(-50%)!important;
  width:min(100%,560px)!important;
  height:var(--petal-mobile-nav-h)!important;
  min-height:var(--petal-mobile-nav-h)!important;
  max-height:var(--petal-mobile-nav-h)!important;
  margin:0!important;
  padding:7px 12px max(7px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:start!important;
  gap:2px!important;
  background:linear-gradient(180deg,rgba(251,247,237,.975),rgba(244,235,218,.985))!important;
  border:0!important;
  border-top:1px solid rgba(143,111,59,.18)!important;
  box-shadow:0 -8px 24px rgba(75,57,30,.065)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
html body #home .petal-shared-nav.petal-shared-nav>button.home-nav-item,
html body #journey .petal-shared-nav.petal-shared-nav>button.home-nav-item,
html body #free .petal-shared-nav.petal-shared-nav>button.home-nav-item,
html body #daily .petal-shared-nav.petal-shared-nav>button.home-nav-item,
html body #garden .petal-shared-nav.petal-shared-nav>button.home-nav-item,
html body #shopSheet .petal-shared-nav.petal-shared-nav>button.home-nav-item{
  box-sizing:border-box!important;
  width:calc(100% - 10px)!important;
  max-width:92px!important;
  height:56px!important;
  min-height:56px!important;
  max-height:56px!important;
  margin:0 auto!important;
  padding:5px 3px 4px!important;
  align-self:start!important;
  justify-self:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid transparent!important;
  border-radius:17px!important;
  background:transparent!important;
  color:#626c54!important;
  box-shadow:none!important;
  font:500 10px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  white-space:nowrap!important;
}
html body #home .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg,
html body #journey .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg,
html body #free .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg,
html body #daily .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg,
html body #garden .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg,
html body #shopSheet .petal-shared-nav.petal-shared-nav>button.home-nav-item>svg{
  display:block!important;
  width:27px!important;
  min-width:27px!important;
  height:27px!important;
  min-height:27px!important;
  flex:0 0 27px!important;
  margin:0!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
html body #home .petal-shared-nav.petal-shared-nav>button.home-nav-item>span,
html body #journey .petal-shared-nav.petal-shared-nav>button.home-nav-item>span,
html body #free .petal-shared-nav.petal-shared-nav>button.home-nav-item>span,
html body #daily .petal-shared-nav.petal-shared-nav>button.home-nav-item>span,
html body #garden .petal-shared-nav.petal-shared-nav>button.home-nav-item>span,
html body #shopSheet .petal-shared-nav.petal-shared-nav>button.home-nav-item>span{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font:inherit!important;
  line-height:1.05!important;
}
html body #home .petal-shared-nav.petal-shared-nav>button.home-nav-item.active,
html body #journey .petal-shared-nav.petal-shared-nav>button.home-nav-item.active,
html body #free .petal-shared-nav.petal-shared-nav>button.home-nav-item.active,
html body #daily .petal-shared-nav.petal-shared-nav>button.home-nav-item.active,
html body #garden .petal-shared-nav.petal-shared-nav>button.home-nav-item.active,
html body #shopSheet .petal-shared-nav.petal-shared-nav>button.home-nav-item.active{
  color:#52613d!important;
  background:linear-gradient(180deg,rgba(234,229,207,.78),rgba(229,220,194,.64))!important;
  border-color:rgba(124,139,80,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74)!important;
}

/* v0.4.19b: one paper and one settings glyph.
   Collection/Shop were painting --petal-page-bg twice AND with
   background-attachment:fixed inside their own scroll container, which is what
   turned their page into a grey wash. Daily and Free already paint it once with
   the default scroll attachment, so the two remaining screens now do the same. */
html body #garden.collection-premium-page,
html body #shopSheet .shop-reference-shell{
  background:var(--petal-page-bg)!important;
  background-attachment:scroll!important;
}
/* The Collection screen inherited the old night-theme veil from the retired
   "My Garden" layout (#garden::before/::after paint a dark navy wash). The card
   used to hide it; now that the page is full-bleed it showed as grey edges. */
html body #garden.collection-premium-page::before,
html body #garden.collection-premium-page::after{
  content:none!important;
  display:none!important;
  background:none!important;
  opacity:0!important;
}
html body #shopSheet.shop-reference-page{
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body #garden>.collection-premium-shell,
html body #shopSheet .shop-reference-shell>.shop-reference-scroll{
  background:none!important;
  background-color:transparent!important;
}
/* The gear was drawn in a 40px circle whose 9px padding left a 20px content box
   for a 22px glyph, so it always sat 1px right of centre. Centre it properly. */
html body #home .petal-shared-head>.petal-primary-settings,
html body #journey .petal-shared-head>.petal-primary-settings,
html body #free .petal-shared-head>.petal-primary-settings,
html body #daily .petal-shared-head>.petal-primary-settings,
html body #garden .petal-shared-head>.petal-primary-settings,
html body #shopSheet .petal-shared-head>.petal-primary-settings{
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  place-content:center!important;
  line-height:0!important;
  overflow:hidden!important;
}
html body #home .petal-shared-head>.petal-primary-settings>svg,
html body #journey .petal-shared-head>.petal-primary-settings>svg,
html body #free .petal-shared-head>.petal-primary-settings>svg,
html body #daily .petal-shared-head>.petal-primary-settings>svg,
html body #garden .petal-shared-head>.petal-primary-settings>svg,
html body #shopSheet .petal-shared-head>.petal-primary-settings>svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
  margin:0!important;
  grid-area:1/1!important;
  justify-self:center!important;
  align-self:center!important;
}

/* ==================================================================
   v0.4.20 — visual pass
   One radius scale, one shadow scale, one green. Lives leave the board.
   The play surface, Collection, Shop, Journey and Home all get the same
   botanical treatment instead of five slightly different ones.
   ================================================================== */
:root{
  --petal-r-card:20px;
  --petal-r-inner:14px;
  --petal-r-pill:999px;
  --petal-shadow-sm:0 2px 6px rgba(76,57,30,.05);
  --petal-shadow-md:0 8px 20px rgba(76,57,30,.08);
  --petal-shadow-lg:0 16px 34px rgba(76,57,30,.12);
  --petal-green:#6f8046;
  --petal-green-deep:#5b6a38;
  --petal-green-soft:rgba(111,128,70,.14);
  --petal-gold:#a9884a;
}

/* ---------- Journey: the heart moved here ---------- */
html body #journey .journey-top-stack{
  position:absolute!important;
  left:10px!important;right:10px!important;top:10px!important;
  z-index:20!important;
  display:grid!important;
  gap:8px!important;
}
html body #journey .journey-top-stack>.journey-premium-hud{
  position:static!important;
  left:auto!important;right:auto!important;top:auto!important;
  width:100%!important;
  margin:0!important;
}
html body #journey .journey-lives-head::before{content:"Can"!important;margin-right:2px!important;color:#8a7657!important;font:700 9.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.1em!important;text-transform:uppercase!important}
html body #journey .journey-hud-lives{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
  padding:7px 14px!important;
  border:1px solid rgba(150,128,84,.22)!important;
  border-radius:var(--petal-r-inner)!important;
  background:linear-gradient(180deg,rgba(255,251,243,.94),rgba(247,239,223,.92))!important;
  box-shadow:var(--petal-shadow-sm),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
html body #journey .journey-lives-head{
  display:flex!important;align-items:center!important;gap:5px!important;
  color:#8d4f4c!important;
}
html body #journey .journey-lives-head svg{
  width:15px!important;height:15px!important;flex:0 0 15px!important;
  fill:#b46a63!important;stroke:none!important;
}
html body #journey .journey-lives-head b{
  font:700 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#5b4a33!important;
}
html body #journey .journey-lives-pips{display:flex!important;gap:3px!important}
html body #journey .journey-lives-pips i{
  width:6px!important;height:6px!important;border-radius:50%!important;
  background:rgba(140,116,86,.22)!important;
}
html body #journey .journey-lives-pips i.on{background:#b46a63!important}
html body #journey .journey-hud-lives small{
  margin-left:auto!important;
  font:600 9.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.04em!important;color:#8a7657!important;
}
html body #journey .journey-hud-lives.full small{color:#6f8046!important}
/* The chapter arrows were almost invisible against the artwork. */
html body #journey .journey-hud-nav{
  border:1px solid rgba(150,128,84,.34)!important;
  background:rgba(255,252,245,.92)!important;
  color:#5b6a38!important;
  box-shadow:var(--petal-shadow-sm)!important;
  opacity:1!important;
}
html body #journey .journey-hud-nav:disabled{opacity:.34!important}
/* The map used to stop dead against the tab bar. */
/* v0.4.24 — the bottom fade read as a stray white haze; the artwork now runs
   straight to the tab bar again. */
html body #journey .journey-map{position:relative!important}

/* ---------- Game: calm board, one clear rhythm ---------- */
/* Spare space is split evenly above the board and above the dock instead of
   pooling in one unexplained void. */
html body :is(#game,#loadoutStage) .board-stage{
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
}
/* The board carried margin:auto, which ate the stage's free space and left the
   progress strip stranded at the bottom. Centre the pair instead. */
html body :is(#game,#loadoutStage) .board{margin:0 auto!important}
html body #game .hud-strip{
  order:2!important;
  width:min(100%,var(--board-size,100%))!important;
  margin:0 auto!important;
}
html body:not(.timer-on) #game .game-premium-stats,
html body.timer-on #game .game-premium-stats{
  display:flex!important;
  align-items:center!important;
  justify-content:space-evenly!important;
  gap:0!important;
}
html body:not(.timer-on) #game .game-premium-stats>.game-stat,
html body.timer-on #game .game-premium-stats>.game-stat{
  flex:1 1 0!important;
  min-width:0!important;
}
html body #game .progress-mini{
  height:7px!important;border-radius:var(--petal-r-pill)!important;
  background:rgba(140,116,86,.16)!important;overflow:hidden!important;
  box-shadow:inset 0 1px 2px rgba(76,57,30,.08)!important;
}
html body #game .progress-mini>i{
  background:linear-gradient(90deg,var(--petal-green),var(--petal-green-deep))!important;
  border-radius:var(--petal-r-pill)!important;
}
/* Three stats, three equal columns, all centred on the same baseline. */
html body #game .game-premium-stats{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  border-radius:var(--petal-r-inner)!important;
  box-shadow:var(--petal-shadow-md),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
html body #game .game-premium-stats>.game-stat{
  display:flex!important;align-items:center!important;justify-content:center!important;
  gap:7px!important;min-width:0!important;
}
html body #game .game-premium-stats>.game-stat+.game-stat{
  border-left:1px solid rgba(150,128,84,.16)!important;
}
/* A warm frame instead of the old neutral grey slab. */
html body :is(#game,#loadoutStage) .board{
  max-width:100%!important;max-height:100%!important;
  border-radius:var(--petal-r-card)!important;
  padding:6px!important;
  background:linear-gradient(180deg,#9aa473 0%,#87925f 100%)!important;
  border:1px solid rgba(94,106,62,.46)!important;
  box-shadow:var(--petal-shadow-lg),0 0 0 4px rgba(252,247,238,.86),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
html body :is(#game,#loadoutStage) .cell{
  background:#f7efdf!important;
  border-color:rgba(150,128,84,.18)!important;
  border-radius:5px!important;
}
html body :is(#game,#loadoutStage) .cell.given{background:#efe4cd!important}
/* Real 3x3 blocks: a visible channel, not a hairline. */
html body :is(#game,#loadoutStage) .cell.c3,
html body :is(#game,#loadoutStage) .cell.c6{margin-right:3px!important;border-right:0!important}
html body :is(#game,#loadoutStage) .cell.r3,
html body :is(#game,#loadoutStage) .cell.r6{margin-bottom:3px!important;border-bottom:0!important}
/* Palette: the count is information, so let it be readable. */
html body #game .palette .color-btn .remain-badge{
  min-width:17px!important;height:17px!important;
  border-radius:var(--petal-r-pill)!important;
  background:#fffaf0!important;
  border:1.5px solid rgba(91,74,51,.55)!important;
  color:#4a3f2c!important;
  font:700 10px/17px system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:var(--petal-shadow-sm)!important;
}
/* Clear is a different kind of action, so it should not look like a tenth flower. */
html body #game .palette .color-btn.clear-btn{
  background:linear-gradient(180deg,rgba(243,234,218,.96),rgba(234,222,200,.96))!important;
  border:1px dashed rgba(139,113,70,.44)!important;
  color:#7a6647!important;
}

/* ---------- Collection ---------- */
/* "Mevsimlik" used to be clipped by the right gutter. */
html body #garden .collection-filter-row{
  overflow-x:auto!important;
  scrollbar-width:none!important;
  padding-right:18px!important;
  margin-right:-18px!important;
  scroll-padding-right:18px!important;
}
html body #garden .collection-filter-row::-webkit-scrollbar{display:none!important}
html body #garden .collection-filter{flex:0 0 auto!important}
/* White type straight onto artwork needed a scrim to stay readable. */
html body #garden .collection-garden-card{position:relative!important;isolation:isolate!important}
html body #garden .collection-garden-card::after{
  content:""!important;position:absolute!important;inset:auto 0 0 0!important;
  height:62%!important;z-index:0!important;pointer-events:none!important;
  border-radius:0 0 var(--petal-r-card) var(--petal-r-card)!important;
  background:linear-gradient(180deg,rgba(24,32,18,0),rgba(24,32,18,.30) 46%,rgba(20,28,15,.62))!important;
}
html body #garden .collection-garden-card__copy,
html body #garden .collection-garden-card__action{position:relative!important;z-index:1!important}
/* The undiscovered plate was the largest, emptiest block on the page. */
html body #garden .collection-featured-art{min-height:150px!important}

/* ---------- Shop ---------- */
/* Every cosmetic bloom to the same optical size. */
html body #shopSheet .shop-reference-cosmetics img{
  width:78px!important;height:78px!important;object-fit:contain!important;margin:0 auto!important;
}
html body #shopSheet .shop-reference-section-title{
  display:grid!important;grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;gap:12px!important;
}
html body #shopSheet .shop-reference-section-title i{
  display:block!important;height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(150,128,84,.34))!important;
}
html body #shopSheet .shop-reference-section-title i:last-child{
  background:linear-gradient(90deg,rgba(150,128,84,.34),transparent)!important;
}

/* ---------- Daily ---------- */
/* Every other kicker in the app is gold; this one was the lone grey. */
html body #daily .daily-kicker{
  background:linear-gradient(180deg,rgba(245,232,203,.95),rgba(238,222,187,.95))!important;
  border:1px solid rgba(160,132,74,.28)!important;
  color:#8a6f3c!important;
}

/* The mistake meter kept its own inline label layout, so it never lined up with
   Süre and Hamle. One stack for all three. */
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
}
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter>span{
  order:0!important;
  font:600 9.5px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.05em!important;color:#8a7657!important;
}
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter>b{
  order:1!important;
  font:400 19px/1.05 Georgia,"Times New Roman",serif!important;color:#4f5b3a!important;
}
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter>em{order:2!important;display:flex!important;gap:3px!important}
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter.danger>b{color:#a6704c!important}
html body #game .game-premium-stats .game-stat-mistake #mistakeMeter.failed>b{color:#a6564c!important}

/* ---------- Home / Free Bloom: stop the page ending in dead air ---------- */
/* The summary card now anchors above the tab bar, so the leftover height reads
   as deliberate spacing rather than an unfinished page. */
html body #home.home-approved-v1{
  gap:16px!important;
  justify-content:space-between!important;
}
/* Free Bloom had no counterpart to Daily's countdown row, so its card was
   bottom-heavy with an empty half. */
html body #home .home-free-meta{margin-top:10px!important}
html body #home .home-free-meta b{color:#5b6a38!important}
html body #home .home-approved-free .home-approved-bouquet{
  width:78px!important;height:78px!important;align-self:end!important;
}
/* Free Bloom's column is short; centring it between the masthead and the tab
   bar beats letting the page trail off into empty paper. */
html body #free>.free-page-shell{margin-top:auto!important;margin-bottom:auto!important}

/* ---------- Shop: the blooms were oversized and ran into their titles ------ */
html body #shopSheet .shop-reference-cosmetics img{
  width:60px!important;height:60px!important;margin:0 auto 6px!important;
}

/* ---------- Collection hero: a scrim, not a visible seam ---------- */
html body #garden .collection-garden-card::after{
  border:0!important;
  height:70%!important;
  background:linear-gradient(180deg,rgba(24,32,18,0) 0%,rgba(24,32,18,.10) 38%,rgba(22,30,16,.42) 74%,rgba(20,28,15,.66) 100%)!important;
}

/* ---------- Journey: readable chapter arrows, softer map edge ---------- */
html body #journey .journey-hud-chapter-nav .journey-hud-nav{
  width:34px!important;height:34px!important;
  border:1px solid rgba(120,100,62,.42)!important;
  background:linear-gradient(180deg,#fffdf7,#f4ecda)!important;
  color:#4f5b3a!important;
  font-size:20px!important;
  box-shadow:0 3px 8px rgba(76,57,30,.10),inset 0 1px 0 #fff!important;
}
html body #journey .journey-hud-chapter-nav .journey-hud-nav:not(:disabled){
  border-color:rgba(104,86,52,.55)!important;
  color:#3f4a2c!important;
}

/* ==================================================================
   v0.4.21 — layout corrections
   ================================================================== */
/* Home: one centred column between the masthead and the tab bar, rather than a
   spread that pushed Bahçe Özeti to the floor. */
html body #home.home-approved-v1{
  gap:14px!important;
  justify-content:flex-start!important;
}
/* The masthead stays pinned to the top; everything below it is centred in the
   space that is left between it and the tab bar. */
html body #home>.home-approved-resume{margin-top:auto!important}
html body #home>.home-approved-summary{margin-top:0!important;margin-bottom:auto!important}
/* The rule above "Kalan Süre" was drawing a stray line across the card. */
html body #home .home-approved-time{
  border-top:0!important;
  left:12px!important;
  bottom:11px!important;
  max-width:none!important;
  padding:0!important;
  column-gap:5px!important;
  grid-template-columns:17px minmax(0,1fr)!important;
  background:none!important;
}
html body #home .home-approved-time>span{font-size:16px!important;justify-self:center!important}
html body #home .home-approved-time small{font-size:8px!important}
html body #home .home-approved-time b{font-size:11.5px!important}
html body #home .home-free-meta{margin-top:0!important}

/* Game: the timer is a setting, so the row is two stats until it is switched on. */
html body:not(.timer-on) #game .game-stat-time{display:none!important}

/* Daily: one screen, no scroll. The prose between the difficulty chip and the
   CTA was the only thing standing between "a card" and "a page". */
html body #daily .daily-flower-description{display:none!important}
html body #daily .daily-ornament{display:none!important}
html body #daily .daily-flower-visual{
  height:clamp(104px,21dvh,185px)!important;
  min-height:0!important;
  margin:2px auto 6px!important;
}
html body #daily .daily-flower-cluster{
  width:auto!important;
  height:100%!important;
  aspect-ratio:1.15!important;
}
html body #daily #dailyFlowerArt{
  width:auto!important;
  height:88%!important;
  max-width:100%!important;
  object-fit:contain!important;
}
html body #daily .daily-flower-cluster .daily-flower-copy.side{
  height:52%!important;width:auto!important;object-fit:contain!important;
}
html body #daily .daily-flower-heading{margin-bottom:8px!important}
html body #daily .daily-utility-row{margin-bottom:8px!important}
html body #daily .daily-diff{margin:0 auto 8px!important}
html body #daily .daily-play-premium{margin-bottom:10px!important}
html body #daily .daily-reward h3{margin-bottom:6px!important}
html body #daily>.daily-flower-shell{margin-top:auto!important;margin-bottom:auto!important}
/* Short viewports: the card compresses rather than spilling into a scroll. */
@media(max-height:820px){
  html body #daily .daily-flower-card-inner{padding-top:15px!important;padding-bottom:15px!important}
  html body #daily .daily-flower-heading h2{font-size:27px!important;line-height:1.08!important}
  html body #daily .daily-flower-visual{height:clamp(84px,15dvh,138px)!important}
  html body #daily .daily-utility-row{margin-bottom:6px!important}
  html body #daily .daily-play-premium{min-height:46px!important;margin-bottom:8px!important}
  html body #daily .daily-reward .daily-reward-icon{width:32px!important;height:32px!important}
  html body #daily .daily-reward .daily-reward-icon svg,
  html body #daily .daily-reward .daily-reward-icon img{width:100%!important;height:100%!important}
}
@media(max-height:690px){
  html body #daily .daily-flower-card-inner{padding-top:11px!important;padding-bottom:11px!important}
  html body #daily .daily-flower-heading{margin-bottom:5px!important}
  html body #daily .daily-flower-heading h2{font-size:23px!important}
  html body #daily .daily-flower-visual{height:clamp(72px,13dvh,110px)!important}
  html body #daily .daily-utility-row{margin-bottom:5px!important}
  html body #daily .daily-diff{margin-bottom:5px!important}
  html body #daily .daily-play-premium{min-height:42px!important;margin-bottom:6px!important}
  html body #daily .daily-reward h3{font-size:14px!important;margin-bottom:4px!important}
  html body #daily .daily-reward .daily-reward-icon{width:27px!important;height:27px!important}
}

/* Free Bloom had no title of its own, so nothing told you which screen you were
   on, and the column left far too much paper showing. */
html body #free .free-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 104px!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 4px!important;
  padding:0 2px!important;
  text-align:left!important;
}
html body #free .free-hero-copy{display:grid!important;justify-items:start!important;gap:6px!important}
html body #free .free-hero-art{
  width:104px!important;height:104px!important;
  object-fit:contain!important;
  justify-self:end!important;
  filter:drop-shadow(0 8px 14px rgba(66,52,28,.16))!important;
}
html body #free .free-hero-kicker{
  display:inline-block!important;
  padding:5px 14px!important;
  border-radius:var(--petal-r-pill)!important;
  background:linear-gradient(180deg,rgba(245,232,203,.95),rgba(238,222,187,.95))!important;
  border:1px solid rgba(160,132,74,.28)!important;
  color:#8a6f3c!important;
  font:700 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body #free .free-hero h2{
  margin:0!important;
  font:400 25px/1.1 Georgia,"Times New Roman",serif!important;
  color:#3f4a2c!important;
}
html body #free .free-hero p{
  margin:0!important;
  max-width:26ch!important;
  font:400 12.5px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#7b7261!important;
}
html body #free>.free-page-shell{gap:12px!important}
html body #free .free-launch-card{margin-bottom:0!important}

/* ==================================================================
   v0.4.25
   ================================================================== */
/* Home: the column sits under the masthead instead of floating mid-screen. */
html body #home.home-approved-v1{
  gap:16px!important;
  justify-content:flex-start!important;
}
html body #home>.home-approved-resume{margin-top:0!important}
html body #home>.home-approved-summary{margin-top:0!important;margin-bottom:0!important}
html body #home>.petal-shared-head{margin-bottom:4px!important}
/* The rule above "Kalan Süre" is set by a higher-specificity shell rule, so it
   has to be unset at the same level. */
html body #home .home-approved-daily .home-approved-time,
html body #home .home-approved-free .home-approved-time{
  border:0!important;
  border-top:0!important;
  left:12px!important;
  width:auto!important;
  max-width:112px!important;
  padding:0!important;
  column-gap:5px!important;
  grid-template-columns:17px minmax(0,1fr)!important;
  background:none!important;
}

/* Daily: top-aligned like Home, and it gets a line of copy back. */
html body #daily>.daily-flower-shell{margin-top:0!important;margin-bottom:auto!important}
html body #daily .daily-flower-description{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  margin:0 auto 8px!important;
  max-width:34ch!important;
  font:400 12px/1.42 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#7b7261!important;
  text-align:center!important;
}
@media(max-height:820px){
  html body #daily .daily-flower-visual{height:clamp(78px,13dvh,124px)!important}
}
@media(max-height:760px){
  html body #daily .daily-flower-description{margin-bottom:5px!important;font-size:11.5px!important}
  html body #daily .daily-flower-visual{height:clamp(70px,11dvh,104px)!important}
  html body #daily .daily-flower-card-inner{padding-top:12px!important;padding-bottom:12px!important}
}
@media(max-height:710px){
  html body #daily .daily-flower-description{display:none!important}
  html body #daily .daily-flower-visual{height:clamp(64px,10dvh,92px)!important}
}

/* My Garden used a mint palette of its own; it now uses the same cream paper,
   warm hairline and green-as-accent rule as every other screen. */
html body #gardenPlay.garden-page .gd-wallet,
html body #gardenPlay.garden-page .gd-water,
html body #gardenPlay.garden-page .gd-bonus,
html body #gardenPlay.garden-page .gd-quick-actions>button,
html body #gardenPlay.garden-page .gd-section-card,
html body #gardenPlay.garden-page .gd-resource-trigger{
  background:linear-gradient(180deg,#fffaf2,#f6efe0)!important;
  border:1px solid rgba(171,132,65,.31)!important;
  box-shadow:0 8px 20px rgba(76,57,30,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
  color:#46543a!important;
}
html body #gardenPlay.garden-page .gd-resource-trigger{
  background:linear-gradient(180deg,#fdf6e6,#f3e8cf)!important;
  border-color:rgba(160,132,74,.38)!important;
}
html body #gardenPlay.garden-page .gd-stat-icon,
html body #gardenPlay.garden-page .gd-quick-icon,
html body #gardenPlay.garden-page .gd-resource-trigger__icon{
  background:rgba(249,244,233,.92)!important;
  border:1px solid rgba(150,128,84,.24)!important;
  color:#6f8046!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}
html body #gardenPlay.garden-page .gd-water .gd-stat-icon{color:#5d7f88!important}
html body #gardenPlay.garden-page .gd-bonus .gd-stat-icon{color:#a9884a!important}
html body #gardenPlay.garden-page .gd-section-badge,
html body #gardenPlay.garden-page .gd-resource-trigger__balance{
  background:linear-gradient(180deg,rgba(245,232,203,.95),rgba(238,222,187,.95))!important;
  border:1px solid rgba(160,132,74,.28)!important;
  color:#8a6f3c!important;
}
html body #gardenPlay.garden-page .gd-state{
  background:rgba(245,236,215,.9)!important;
  border:1px solid rgba(160,132,74,.22)!important;
  color:#7d6d4f!important;
}
html body #gardenPlay.garden-page .gd-ready .gd-state{background:linear-gradient(180deg,#f5e6bd,#eedaa8)!important;color:#87672d!important}
html body #gardenPlay.garden-page .gd-growing .gd-state{background:linear-gradient(180deg,#e9efdb,#dfe8c9)!important;color:#5f7448!important}

/* ==================================================================
   v0.4.26
   ================================================================== */
/* Collection: progress first, then a centred filter row whose inactive chips
   are actually readable against the paper. */
html body #garden .collection-filter-row{
  justify-content:center!important;
  margin:0 0 12px!important;
}
html body #garden .collection-progress-card{margin:0 0 12px!important}
html body #garden .collection-filter{
  background:linear-gradient(180deg,#fffaf2,#f4ecda)!important;
  border:1px solid rgba(160,132,74,.34)!important;
  color:#5c5540!important;
  box-shadow:0 2px 6px rgba(76,57,30,.06),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
html body #garden .collection-filter .collection-filter-label{color:inherit!important}
html body #garden .collection-filter.active{
  background:linear-gradient(180deg,#7d8c52,#6b7a45)!important;
  border-color:#63723e!important;
  color:#fffdf6!important;
  box-shadow:0 5px 12px rgba(76,88,45,.22),inset 0 1px 0 rgba(255,255,255,.28)!important;
}
html body #garden .collection-filter.active .collection-filter-label{color:#fffdf6!important}

/* My Garden: one console instead of six floating tiles. */
html body #gardenPlay.garden-page .gd-console{
  display:grid!important;
  gap:10px!important;
  margin:0 0 12px!important;
  padding:12px!important;
  border:1px solid rgba(171,132,65,.31)!important;
  border-radius:var(--petal-r-card)!important;
  background:linear-gradient(180deg,#fffaf2,#f6efe0)!important;
  box-shadow:0 8px 20px rgba(76,57,30,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
html body #gardenPlay.garden-page .gd-console-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
html body #gardenPlay.garden-page .gd-console-actions>button{
  display:grid!important;
  justify-items:center!important;
  gap:3px!important;
  min-height:74px!important;
  padding:9px 5px!important;
  border:1px solid rgba(160,132,74,.28)!important;
  border-radius:var(--petal-r-inner)!important;
  background:linear-gradient(180deg,#fdf6e6,#f3e8cf)!important;
  color:#4c5a3c!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
html body #gardenPlay.garden-page .gd-console-actions>button:active{transform:scale(.975)!important}
html body #gardenPlay.garden-page .gd-console-icon{
  display:grid!important;place-items:center!important;
  width:30px!important;height:30px!important;
  border-radius:50%!important;
  background:rgba(255,252,245,.95)!important;
  border:1px solid rgba(150,128,84,.24)!important;
  color:#6f8046!important;
  font:400 15px/1 Georgia,serif!important;
}
html body #gardenPlay.garden-page .gd-console-icon svg{width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important}
html body #gardenPlay.garden-page .gd-console-actions>button b{font:600 11px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#46543a!important}
html body #gardenPlay.garden-page .gd-console-actions>button small{font:600 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#8a7657!important}
html body #gardenPlay.garden-page .gd-console-stats{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  padding-top:9px!important;
  border-top:1px solid rgba(160,132,74,.20)!important;
}
html body #gardenPlay.garden-page .gd-console-stat{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:0!important;
  color:#46543a!important;
}
html body #gardenPlay.garden-page .gd-console-stat+.gd-console-stat{border-left:1px solid rgba(160,132,74,.18)!important}
html body #gardenPlay.garden-page .gd-console-stat svg{width:16px!important;height:16px!important;flex:0 0 16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;color:#6f8046!important}
html body #gardenPlay.garden-page .gd-console-water svg{color:#5d7f88!important}
html body #gardenPlay.garden-page .gd-console-bonus svg{color:#a9884a!important}
html body #gardenPlay.garden-page .gd-console-stat{
  background:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important;
}
html body #gardenPlay.garden-page .gd-console-stat b{font:600 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important}
html body #gardenPlay.garden-page .gd-console-stat small{font:500 9.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#8a7657!important}

/* Plots: the same instruction was repeated nine times; it now lives once, under
   the section heading. */
html body #gardenPlay.garden-page .gd-plots{gap:7px!important}
html body #gardenPlay.garden-page .gd-plot{
  min-height:0!important;
  padding:8px 7px!important;
  gap:5px!important;
  border-radius:var(--petal-r-inner)!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-plot-visual{min-height:66px!important}
html body #gardenPlay.garden-page .gd-empty .gd-plot-copy,
html body #gardenPlay.garden-page .gd-locked .gd-plot-copy{display:none!important}

/* Seed picker: a centred dialog over a blurred garden, like every other overlay. */
html body #seedSheet.garden-seed-sheet{
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  background:rgba(43,35,24,.38)!important;
  backdrop-filter:blur(9px) saturate(.96)!important;
  -webkit-backdrop-filter:blur(9px) saturate(.96)!important;
}
html body #seedSheet.garden-seed-sheet .sheet-panel{
  width:100%!important;
  max-width:430px!important;
  max-height:80dvh!important;
  border-radius:var(--petal-r-card)!important;
  padding:16px 14px!important;
  box-shadow:0 26px 60px rgba(45,34,17,.34),inset 0 1px 0 rgba(255,255,255,.9)!important;
}

/* Home: both meta rows sit hard against the left edge of their own card. */
html body #home .home-approved-daily .home-approved-time,
html body #home .home-approved-free .home-approved-time{
  left:8px!important;
  column-gap:4px!important;
  grid-template-columns:15px minmax(0,1fr)!important;
}
html body #home .home-approved-daily .home-approved-time>span,
html body #home .home-approved-free .home-approved-time>span{justify-self:start!important}
html body #home .home-approved-time small,
html body #home .home-approved-time b{text-align:left!important;justify-self:start!important}

html body #gardenPlay.garden-page .gd-plots-card .gd-section-head p{
  display:block!important;
  margin:3px 0 0!important;
  font:400 11px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#7f7663!important;
}
/* The garden page head now matches the shared chrome instead of its own bar. */
html body #gardenPlay.garden-page .page-head{
  box-sizing:border-box!important;
  height:88px!important;min-height:88px!important;
  margin:0 0 12px!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 40px!important;
  align-items:center!important;
  gap:8px!important;
}
html body #gardenPlay.garden-page .garden-back,
html body #gardenPlay.garden-page .garden-shop{
  width:40px!important;height:40px!important;min-width:40px!important;
  padding:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(150,128,84,.25)!important;
  border-radius:50%!important;
  background:rgba(249,244,233,.88)!important;
  color:#5b684d!important;
  box-shadow:0 5px 14px rgba(80,66,39,.08)!important;
}
html body #gardenPlay.garden-page .garden-back{justify-self:start!important}
html body #gardenPlay.garden-page .garden-shop{justify-self:end!important}
html body #gardenPlay.garden-page .garden-back svg,
html body #gardenPlay.garden-page .garden-shop svg{width:22px!important;height:22px!important}
html body #gardenPlay.garden-page .gd-plots-card .gd-section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:8px!important;
}
html body #gardenPlay.garden-page .gd-plots-card .gd-section-head>div{min-width:0!important}
html body #gardenPlay.garden-page .gd-plots-card .gd-section-badge{white-space:nowrap!important}
/* Four chips have to fit the gutter before centring means anything. */
html body #garden .collection-filter-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  width:100%!important;
  overflow:visible!important;
  padding:0!important;
  margin:0 auto 12px!important;
}
html body #garden .collection-filter{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  padding:0 5px!important;
  gap:4px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:var(--petal-r-pill)!important;
  font:600 9.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
html body #garden .collection-filter>span{font-size:11px!important;flex:0 0 auto!important;display:grid!important;place-items:center!important}
html body #garden .collection-filter>span>svg,
html body #garden .collection-filter .petal-ui-icon{width:13px!important;height:13px!important;flex:0 0 13px!important}
html body #garden .collection-filter .collection-filter-label{
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  font:inherit!important;
}
/* Seed cards: the stock badge used to sit on top of the watering line. */
html body #seedSheet.garden-seed-sheet .seed-card{
  display:grid!important;
  align-content:start!important;
  gap:6px!important;
  padding:10px!important;
}
html body #seedSheet.garden-seed-sheet .seed-card>*{position:static!important;grid-column:1!important}
html body #seedSheet.garden-seed-sheet .seed-card .seed-stock,
html body #seedSheet.garden-seed-sheet .seed-card .seed-lock{
  justify-self:start!important;
  margin-top:2px!important;
}


/* Resource actions must respect runtime availability. */
#noLivesGate button[hidden], #mistakeFailAd[hidden]{display:none!important}

#noLivesGate button[hidden], #mistakeFailAd[hidden]{display:none!important}

/* ===== intro.css ===== */
/* Four-second intro. All artwork remains at a fixed size and position. */
html body #appSplash.pg-intro{position:fixed!important;inset:0!important;z-index:99999!important;width:100%!important;max-width:none!important;height:100%!important;height:100dvh!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;transform:none!important;filter:none!important;isolation:isolate;overflow:hidden!important;cursor:pointer;background:#18392d!important;color:#f5e7c7!important;opacity:1;visibility:visible;transition:opacity .5s ease,visibility .5s ease!important;-webkit-tap-highlight-color:transparent;--pg-light:255,224,165;--pg-light-x:64%;--pg-light-y:22%}
#appSplash.pg-intro::before,#appSplash.pg-intro::after{display:none!important}
html body #appSplash.pg-intro.is-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
#appSplash.pg-intro:focus-visible{outline:2px solid #f0d7a0;outline-offset:-7px}
#appSplash .pg-world{position:absolute;inset:0;overflow:hidden;pointer-events:none}
#appSplash .pg-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;transform:none;filter:none}
#appSplash .pg-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,28,23,.1),rgba(8,25,21,.12) 45%,rgba(7,25,19,.52)),radial-gradient(ellipse at 50% 43%,rgba(12,34,25,.15),transparent 64%)}
#appSplash[data-scene="6"]{--pg-light:255,220,162;--pg-light-x:74%;--pg-light-y:18%}
#appSplash[data-scene="11"]{--pg-light:210,234,255;--pg-light-x:68%;--pg-light-y:14%}
#appSplash[data-scene="16"]{--pg-light:255,233,187;--pg-light-x:28%;--pg-light-y:24%}
#appSplash[data-scene="21"]{--pg-light:239,217,255;--pg-light-x:50%;--pg-light-y:18%}
#appSplash .pg-warmth{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(ellipse at var(--pg-light-x) var(--pg-light-y),rgba(var(--pg-light),.48),rgba(var(--pg-light),.17) 36%,transparent 74%);animation:pgLight 2.8s ease both}
#appSplash .pg-brand{position:absolute;left:50%;top:46%;width:min(76vw,350px);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;pointer-events:none}
#appSplash .pg-logo-wrap{position:relative;width:clamp(116px,35vw,174px);aspect-ratio:1;margin-bottom:17px;flex:none}
#appSplash .pg-logo,#appSplash .pg-outline{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;transform:none;filter:none}
#appSplash .pg-outline{overflow:visible;fill:none;stroke:#f4d48b;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;animation:pgOutlineFade .6s ease 1.5s both}
#appSplash .pg-outline path{stroke-dasharray:1;stroke-dashoffset:1;animation:pgDraw 1.25s cubic-bezier(.4,0,.25,1) .15s both}
#appSplash .pg-logo{opacity:0;animation:pgFill .8s ease 1.45s both}
#appSplash .pg-wordmark-wrap{position:relative;width:100%;isolation:isolate;clip-path:inset(0 100% 0 0);animation:pgWrite .85s cubic-bezier(.4,0,.2,1) 2.05s both}
#appSplash .pg-wordmark-wrap::before{display:none}
#appSplash .pg-wordmark{display:block;width:100%;height:auto;filter:drop-shadow(0 1px 0 rgba(255,239,195,.8)) drop-shadow(0 2px 0 rgba(11,29,19,.65));transform:none}
#appSplash .pg-divider{width:64px;height:1px;background:linear-gradient(90deg,transparent,#e7cea0,transparent);margin:4px 0 12px;animation:pgFill .45s ease 2.65s both}
#appSplash .pg-chapter{color:#fff8e7;font:400 clamp(15px,3.8vw,20px)/1.4 Georgia,serif;letter-spacing:.025em;text-shadow:0 1px 3px #102a1e;animation:pgFill .45s ease 2.65s both}
#appSplash .pg-skip{position:absolute;left:50%;bottom:max(18px,calc(env(safe-area-inset-bottom,0px) + 12px));transform:translateX(-50%);min-height:44px;display:flex;align-items:center;white-space:nowrap;color:#fff3d7;font:400 14px/1.4 Georgia,serif;letter-spacing:.04em;text-shadow:0 1px 3px #122c21}
#appSplash:not(.is-running) *,#appSplash:not(.is-running) *::before{animation-play-state:paused!important}
#appSplash.pg-scene-unavailable .pg-scene{visibility:hidden}
@keyframes pgDraw{to{stroke-dashoffset:0}}
@keyframes pgOutlineFade{from{opacity:1}to{opacity:0}}
@keyframes pgFill{from{opacity:0}to{opacity:1}}
@keyframes pgWrite{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes pgLight{from{opacity:.2}to{opacity:1}}
@media(max-height:560px){#appSplash .pg-brand{width:min(60vw,280px);top:44%}#appSplash .pg-logo-wrap{width:clamp(68px,23dvh,112px);margin-bottom:5px}#appSplash .pg-divider{margin:2px 0 6px}#appSplash .pg-chapter{font-size:15px}#appSplash .pg-skip{bottom:max(3px,env(safe-area-inset-bottom,0px));font-size:13px}}
@media(prefers-reduced-motion:reduce){html body #appSplash.pg-intro{transition:none!important}#appSplash *,#appSplash *::before{animation:none!important}#appSplash .pg-outline{display:none}#appSplash .pg-logo{opacity:1}#appSplash .pg-wordmark-wrap{clip-path:none}}

/* ===== visual-polish.css ===== */
/* v0.5.7 — scoped layout and legibility corrections.
   Loaded after the legacy styles so old fixed desktop widths cannot win. */

/* Garden: remove obsolete named grid areas and the empty second plot column. */
html body #gardenPlay.garden-page .page-card.garden-page-shell {
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  min-width:0!important;margin-inline:auto!important;
}
html body #gardenPlay.garden-page #gardenScreen {
  width:100%!important;min-width:0!important;display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;
  grid-template-areas:none!important;gap:12px!important;align-items:start!important;
}
html body #gardenPlay.garden-page #gardenScreen > :not(.gd-modal) {
  min-width:0!important;max-width:100%!important;grid-area:auto!important;
  box-sizing:border-box!important;
}
html body #gardenPlay.garden-page .gd-main-grid {
  width:100%!important;min-width:0!important;
  grid-template-columns:minmax(0,1fr)!important;grid-template-areas:none!important;
}
html body #gardenPlay.garden-page .gd-plots {
  grid-area:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
html body #gardenPlay.garden-page .gd-console {margin:0!important}
html body #gardenPlay.garden-page .gd-console-actions > button {min-width:0!important}
html body #gardenPlay.garden-page .gd-console-actions > button b {
  font-size:12px!important;line-height:1.25!important;white-space:normal!important;
}
html body #gardenPlay.garden-page .gd-console-actions > button small,
html body #gardenPlay.garden-page .gd-console-stat small {
  font-size:11px!important;line-height:1.25!important;color:#605a45!important;
}
html body #gardenPlay.garden-page .gd-plot-top {flex-wrap:wrap!important;gap:3px!important}
html body #gardenPlay.garden-page .gd-plot-index {
  font-size:9px!important;line-height:1.2!important;letter-spacing:.02em!important;color:#595540!important;
}
html body #gardenPlay.garden-page .gd-state {
  font-size:9px!important;line-height:1.2!important;max-width:none!important;
  padding:3px 5px!important;
}
html body #gardenPlay.garden-page .gd-plot-copy b {font-size:11px!important;line-height:1.25!important}
html body #gardenPlay.garden-page .gd-plot-copy small {font-size:10px!important;line-height:1.3!important}
@media(min-width:900px) {
  html body #gardenPlay.garden-page #gardenScreen {
    grid-template-columns:minmax(0,1fr) minmax(280px,.65fr)!important;gap:16px!important;
  }
  html body #gardenPlay.garden-page #gardenScreen > .garden-hero {grid-column:1!important;margin:0!important}
  html body #gardenPlay.garden-page #gardenScreen > .gd-console {grid-column:2!important;align-self:stretch!important}
  html body #gardenPlay.garden-page #gardenScreen > .gd-main-grid {grid-column:1/-1!important}
  html body #gardenPlay.garden-page .gd-plots-card {padding:18px!important}
  html body #gardenPlay.garden-page .gd-plots {gap:12px!important}
  html body #gardenPlay.garden-page .gd-plot {min-height:142px!important;padding:12px!important}
  html body #gardenPlay.garden-page .garden-soil {width:86px!important;height:86px!important}
  html body #gardenPlay.garden-page .gd-plot-index {font-size:11px!important}
}

/* Home: keep desktop content proportionate instead of stretching to the floor. */
@media(min-width:1200px) and (min-height:720px) {
  html body #home.home-approved-v1 {
    grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr)!important;
    grid-template-rows:88px auto 136px!important;align-content:center!important;
    justify-content:normal!important;gap:18px!important;
  }
  html body #home .home-approved-head {grid-row:1!important;margin:0!important}
  html body #home .home-approved-resume {
    grid-row:2/4!important;min-height:440px!important;height:auto!important;
    align-self:stretch!important;display:flex!important;flex-direction:column!important;
    justify-content:center!important;padding:30px!important;gap:20px!important;
  }
  html body #home .home-approved-resume-copy {
    position:relative!important;inset:auto!important;width:54%!important;
    padding:0!important;margin:0!important;flex:0 0 auto!important;
  }
  html body #home .home-approved-resume h2 {
    font-size:36px!important;line-height:1.12!important;max-width:none!important;
  }
  html body #home .home-approved-resume p {
    font-size:14px!important;line-height:1.55!important;max-width:none!important;
  }
  html body #home .home-approved-progress {
    position:static!important;margin:20px 0 0!important;gap:9px!important;
  }
  html body #home .home-approved-continue {
    position:relative!important;inset:auto!important;transform:none!important;
    width:190px!important;min-width:190px!important;max-width:54%!important;
    height:48px!important;min-height:48px!important;margin:0!important;flex:0 0 auto!important;
  }
  html body #home .home-approved-continue b {font-size:17px!important}
  html body #home .home-approved-feature-row {
    grid-row:2!important;grid-template-rows:repeat(2,minmax(142px,auto))!important;
    gap:14px!important;align-self:stretch!important;
  }
  html body #home .home-approved-feature {padding:20px!important;min-height:142px!important}
  html body #home .home-approved-feature h3 {font-size:24px!important}
  html body #home .home-approved-feature p {font-size:13px!important;line-height:1.45!important}
  html body #home .home-approved-summary {grid-row:3!important;height:136px!important;min-height:136px!important}
  html body #home .home-approved-daily .home-approved-time,
  html body #home .home-approved-free .home-approved-time {left:20px!important;bottom:14px!important}
}

/* Small supporting text: selective changes, never a blanket scale on controls. */
html body #home .home-approved-kicker {font-size:12px!important;color:#705b35!important}
html body #home .home-approved-time small {
  font-size:10px!important;line-height:1.2!important;color:#5f624d!important;
}
html body #home .home-approved-time b {font-size:12px!important;line-height:1.25!important}
html body #home .home-approved-time {grid-template-rows:auto auto!important;min-height:30px!important}
html body #home .home-approved-summary-stats small {font-size:11px!important;color:#5d634e!important}
html body #journey .journey-hud-kicker,
html body #journey .journey-hud-progress {font-size:11px!important;line-height:1.25!important;color:#596143!important}
html body #garden .collection-filter {font-size:11px!important}
html body #garden .collection-filter-help,
html body #garden .collection-grid-title-copy small {font-size:11px!important;line-height:1.35!important;color:#655a42!important}
html body #garden .collection-chapter-picker select {font-size:12px!important}
html body #garden .collection-flower-card small {font-size:11px!important;line-height:1.3!important}
html body #garden .collection-flower-card.locked b,
html body #garden .collection-flower-card.locked small {color:#706952!important}
html body #free .free-section-head small,
html body #free .free-launch-copy small,
html body #free .diff-solved b {font-size:11px!important;line-height:1.2!important;color:#62614b!important}
html body #daily .daily-reward-item small,
html body #daily .daily-hero-countdown span {font-size:11px!important;line-height:1.25!important;color:#605b46!important}
html body .daily-calendar-weekdays span,
html body .daily-calendar-legend {font-size:11px!important;line-height:1.25!important;color:#645d48!important}
html body .daily-calendar-day b {font-size:13px!important}
html body #game .tool-lbl {font-size:12px!important;line-height:1.2!important}
html body #game .game-stat > span > small {font-size:11px!important;line-height:1.2!important}
html body #settingsSheet .setting-note,
html body #settingsSheet .volume-copy,
html body #settingsSheet .release-version,
html body #profileSheet .profile-note {
  font-size:12px!important;line-height:1.45!important;color:#5e604d!important;
}
html body #gardenPlay.garden-page .gd-modal-panel .gd-section-head p,
html body #gardenPlay.garden-page .gd-q-meta {
  font-size:11px!important;line-height:1.4!important;color:#615c48!important;
}
html body #gardenPlay.garden-page .gd-q-body b {font-size:12px!important;line-height:1.3!important}
html body #gardenPlay.garden-page .gd-q-claim {font-size:11px!important;line-height:1.2!important}
@media(max-width:380px) {
  html body #game .tool-lbl {font-size:11px!important}
  html body #garden .collection-filter {font-size:10px!important}
  html body #gardenPlay.garden-page .gd-console-stat {gap:3px!important}
}

/* v0.5.8 — Journey, Collection and Store presentation. */
/* Keep perspective and hit areas; change only marker materials. */
html body #journey[data-journey-theme] .journey-soft-node:not(.locked):not(.done) .journey-soft-circle {
  color:#fff8e5!important;text-shadow:0 1px 2px #183e32!important;font-weight:700!important;
}
html body #journey[data-journey-theme] .journey-soft-node:not(.locked):not(.done) .journey-soft-circle::before {
  background:linear-gradient(150deg,#46745b,#234e3e)!important;
  border:2px solid #d7bc78!important;
  box-shadow:inset 0 1px 2px #ffffff55,0 2px 5px #16382a55!important;
}
html body #journey[data-journey-theme] .journey-soft-node.selected:not(.locked) .journey-soft-circle::before {
  border-color:#f3d990!important;
  box-shadow:0 0 0 2px #f3d99077,inset 0 1px 2px #ffffff66,0 3px 7px #16382a66!important;
}
html body #journey[data-journey-theme] .journey-soft-node.locked .journey-soft-circle {
  color:#676557!important;text-shadow:0 1px 0 #fff9ed!important;
}
html body #journey[data-journey-theme] .journey-soft-node.locked .journey-soft-circle::before {
  background:linear-gradient(150deg,#ede9dc,#d0ccbd)!important;
  border:1px solid #aca58e!important;box-shadow:inset 0 1px 0 #fff9,0 2px 3px #302c2029!important;
}
html body #journey[data-journey-theme] .journey-soft-node.locked.selected .journey-soft-circle::before {
  border-color:#867b5d!important;
}
html body #journey .journey-lock-badge {color:#565644!important;background:#f3eedf!important}

/* A compact unknown-flower preview and a single chapter name. */
html body #garden .collection-featured.locked {
  height:auto!important;min-height:0!important;align-self:start!important;
  grid-template-columns:96px minmax(0,1fr)!important;grid-template-rows:auto!important;
}
html body #garden .collection-featured.locked .collection-featured-art {
  min-height:100px!important;height:auto!important;border:0!important;
}
html body #garden .collection-featured.locked .collection-featured-copy {padding:14px!important;min-width:0!important}
html body #garden .collection-featured.locked h2 {font-size:22px!important;line-height:1.15!important}
html body #garden .collection-featured.locked .collection-featured-description {
  margin:7px 0!important;font-size:12px!important;line-height:1.45!important;
}
html body #garden .collection-featured.locked .collection-featured-stats {flex-wrap:wrap!important;gap:5px 10px!important}
html body #garden .collection-featured.locked .collection-rarity {margin:8px 0!important}
html body #garden .collection-grid-head-v2 {gap:8px!important;margin:8px 0 10px!important;padding:12px!important}
html body #garden .collection-grid-title-copy h2 {font-size:21px!important;line-height:1.2!important}
html body #garden #collectionChapterKicker {display:none!important}
html body #garden .collection-filter.active {background:linear-gradient(180deg,#466a51,#2e523f)!important;border-color:#294b39!important}
html body #garden .collection-flower-card.selected {outline:2px solid #486e51!important;outline-offset:1px!important}
html body #garden .collection-card-ribbon {background:#70562f!important;color:#fff5da!important}
@media(min-width:1200px) and (min-height:720px) {
  html body #garden .collection-filter-row {align-self:end!important;margin:0!important}
  html body #garden .collection-grid-head-v2 {grid-row:3!important;margin:0!important;align-self:start!important}
  html body #garden .collection-flower-grid,
  html body #garden .collection-empty {grid-row:4/6!important;align-self:stretch!important}
  html body #garden .collection-featured.locked {grid-template-columns:110px minmax(0,1fr)!important}
}

/* Opaque paper backdrop removes competing page chrome behind the store. */
html body #shopSheet.shop-reference-page {
  background:#eee6d5!important;
}
html body #shopSheet .shop-detail-card {display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important}
html body #shopSheet .shop-detail-card h4 {margin:4px 0 0!important;line-height:1.25!important}
html body #shopSheet .shop-detail-card p {margin:0 0 6px!important;line-height:1.4!important}
html body #shopSheet .shop-detail-card > button {margin-top:auto!important}
html body #shopSheet .shop-detail-card > button:disabled {background:#e6e5d7!important;color:#646853!important;box-shadow:none!important}
html body #shopSheet .shop-detail-art {width:100%!important;height:106px!important;margin:0 0 6px!important}
html body #shopSheet .shop-detail-art:has(.shop-board-preview)::before {display:none!important}
html body #shopSheet .shop-board-preview {
  --frame-glow:rgba(238,192,80,.42);
  box-sizing:border-box;width:96px;height:96px;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));
  grid-template-rows:repeat(9,minmax(0,1fr));padding:4px;border:2px solid #69764d;border-radius:10px;
  background:#f7f2e5;overflow:hidden;
  box-shadow:0 0 0 2px var(--frame-glow),0 6px 12px #26342430,0 0 12px var(--frame-glow);
}
html body #shopSheet .shop-board-preview[data-preview-skin="sakura"] {--frame-glow:rgba(242,137,191,.38)}
html body #shopSheet .shop-board-preview[data-preview-skin="emerald"] {--frame-glow:rgba(89,211,151,.34)}
html body #shopSheet .shop-board-cell {
  display:grid;place-items:center;min-width:0;min-height:0;
  border-right:1px solid #adb69b55;border-bottom:1px solid #adb69b55;
}
html body #shopSheet .shop-board-cell:nth-child(3n) {border-right-color:#6b785c}
html body #shopSheet .shop-board-cell:nth-child(9n) {border-right:0}
html body #shopSheet .shop-board-cell:nth-child(n+19):nth-child(-n+27),
html body #shopSheet .shop-board-cell:nth-child(n+46):nth-child(-n+54) {border-bottom-color:#6b785c}
html body #shopSheet .shop-board-cell:nth-child(n+73) {border-bottom:0}
html body #shopSheet .shop-reference-cosmetics .shop-board-cell img {
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;object-fit:contain!important;
}
@media(max-width:380px) {
  html body #shopSheet .shop-board-preview {width:78px;height:78px}
  html body #shopSheet .shop-detail-art {height:88px!important}
  html body #garden .collection-featured.locked {grid-template-columns:76px minmax(0,1fr)!important}
}
html body #garden .collection-featured.locked .collection-locked-art {width:64px!important;height:64px!important}
html body #garden .collection-featured.locked .collection-locked-art svg {width:40px!important;height:40px!important}
html body #shopSheet .shop-board-preview {max-width:100%;height:auto;aspect-ratio:1}

/* v0.5.9 — remaining visual refinements. */
/* Free Bloom: calm inactive surfaces, matching icon footprints. */
html body #free .free-config-card {box-shadow:0 3px 10px #584d3110!important;border-color:#a3947133!important}
html body #free .diff-solved.is-empty {visibility:hidden!important}
html body #free .diff-card.active {border-color:#55724a!important;box-shadow:inset 0 0 0 1px #55724a44!important}
html body #free .free-mechanic-card:not(.active) {box-shadow:none!important;border-color:#a3947133!important}
html body #free .free-mechanic-card.active {background:#e4ecd9!important;border-color:#55724a!important;box-shadow:inset 0 0 0 1px #55724a44!important}
html body #free .free-mechanic-card .free-icon {width:30px!important;height:30px!important;flex:0 0 30px!important}
html body #free .free-mechanic-card .free-icon svg {width:20px!important;height:20px!important}
html body #free .free-mechanic-card b {font-size:10px!important;line-height:1.2!important}

/* Daily: separate the reward group from the primary action. */
html body #daily .daily-reward {margin-top:16px!important;padding-top:0!important}
html body #daily .daily-reward-grid {gap:12px!important;align-items:start!important}
html body #daily .daily-reward-item {gap:4px!important}
html body #daily .daily-flower-description {color:#645c48!important}
@media(min-height:820px) {
  html body #daily .daily-flower-description {display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;max-width:42ch!important}
}
@media(max-height:710px) {
  html body #daily .daily-reward {margin-top:10px!important}
}

/* Clear selection outline without covering rule marks or flower tokens. */
html body :is(#game,#loadoutStage) .cell.selected {
  outline:2px solid #315b45!important;outline-offset:-2px!important;
  box-shadow:inset 0 0 0 3px #fffdf18c!important;
}
html body :is(#game,#loadoutStage) .flower-token.has-image[style*="core-04-black-blossom"] {
  filter:brightness(1.16) contrast(1.04) drop-shadow(0 1px 2px #443b3229)!important;
}
html body :is(#game,#loadoutStage) .flower-token.has-image[style*="core-06-grey-lily"] {
  filter:contrast(1.12) drop-shadow(0 1px 2px #443b3238)!important;
}
html body #game .dock-tools .tool-ico {display:grid!important;place-items:center!important}
html body #game .dock-tools .tool-ico svg {width:24px!important;height:24px!important}

/* Calendar states use a border and a fill, not opacity alone. */
html body .daily-calendar-day.played {background:#dfead2;border-color:#779369;color:#36513b}
html body .daily-calendar-day.missed {background:#f0e7d7;border-color:#c5b89e;color:#6c6049}
html body .daily-calendar-day.future {opacity:1;background:#f4f0e7;border:1px dashed #d1c9b9;color:#898476}
html body .daily-calendar-day.today {box-shadow:inset 0 0 0 2px #3f674a;font-weight:700}
html body .daily-calendar-legend {flex-wrap:wrap;gap:8px 12px}
html body .daily-calendar-legend i.played {background:#9ebc89;border:1px solid #779369}
html body .daily-calendar-legend i.future {opacity:1;background:#f4f0e7;border:1px dashed #aaa18e}

/* Settings keep their existing controls, with a readable visual hierarchy. */
html body #settingsSheet .settings-group-title {
  margin:20px 0 6px;padding:0 0 7px;border-bottom:1px solid #a9997040;
  color:#466047;font:600 13px/1.3 system-ui,sans-serif;letter-spacing:.02em;
}
html body #settingsSheet .settings-group-title:first-child {margin-top:2px}
html body #settingsSheet .volume-panel {padding:10px 12px!important;gap:8px!important;margin:8px 0 4px!important}
html body #settingsSheet .volume-row {gap:3px!important}
html body #settingsSheet .volume-copy {display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
html body #settingsSheet .volume-copy output {min-width:42px;text-align:right;font-variant-numeric:tabular-nums}
html body #settingsSheet .volume-slider {height:24px!important;accent-color:#60794b!important}
html body #settingsSheet .sr-label {font-size:13px!important;line-height:1.35!important}
html body #profileSheet .profile-avatar-option {display:grid!important;place-items:center!important}
html body #profileSheet .profile-avatar-option img {width:80%!important;height:80%!important;object-fit:contain!important;object-position:center!important}
html body #profileSheet .sheet-head,
html body #settingsSheet .sheet-head,
html body #dailySeriesModal .daily-series-dialog-head {gap:12px!important;align-items:center!important}
@media(max-width:380px) {
  html body #free .free-mechanic-card b {font-size:9px!important}
  html body #game .dock-tools .tool-ico svg {width:21px!important;height:21px!important}
}

/* ===== atelier.css ===== */
/* v0.6.0 — collectible boards and four nine-flower atlases. */
/* Legacy saves or old cached markup may still request "neon" directly.
   Point that state at a verified atlas so it can never blank the board. */
html[data-flower-skin="neon"] {--equipped-flower-atlas:url("../cosmetics/crystal.webp")}
html[data-flower-skin="botanical"] {--equipped-flower-atlas:url("../cosmetics/botanical.webp")}
html[data-flower-skin="porcelain"] {--equipped-flower-atlas:url("../cosmetics/porcelain.webp")}
html[data-flower-skin="crystal"] {--equipped-flower-atlas:url("../cosmetics/crystal.webp")}
html[data-flower-skin]:not([data-flower-skin="default"]) body :is(#game,#loadoutStage) .flower-token.has-image[data-flower-index] {
  background-image:var(--equipped-flower-atlas)!important;
  background-size:300% 300%!important;background-position:var(--flower-x) var(--flower-y)!important;
  background-repeat:no-repeat!important;
}
/* One quiet selection glow; never animate all 81 cells. */
html[data-flower-skin="neon"] body :is(#game,#loadoutStage) .cell.selected .flower-token.has-image {
  filter:drop-shadow(0 0 3px #74e7df88) brightness(1.08)!important;
}
html[data-board-skin="night-conservatory"] {--atelier-frame:url("../cosmetics/night-frame.webp");--atelier-board:#566f72;--atelier-paper:#e8eff0;--atelier-given:#dce6e7;--atelier-edge:#bac9c4}
html[data-board-skin="ivory-palace"] {--atelier-frame:url("../cosmetics/ivory-frame.webp");--atelier-board:#b39b63;--atelier-paper:#fffaf0;--atelier-given:#f4ecd9;--atelier-edge:#d6c99f}
html:is([data-board-skin="night-conservatory"],[data-board-skin="ivory-palace"]) body :is(#game,#loadoutStage) .board {
  border:clamp(12px,3vw,20px) solid transparent!important;
  border-image-source:var(--atelier-frame)!important;border-image-slice:22%!important;
  border-image-width:1!important;border-image-repeat:stretch!important;
  border-radius:0!important;padding:3px!important;background:var(--atelier-board)!important;
  box-shadow:0 8px 24px #263c3838,0 0 0 1px var(--atelier-edge)!important;
}
html:is([data-board-skin="night-conservatory"],[data-board-skin="ivory-palace"]) body :is(#game,#loadoutStage) .cell:not(.selected):not(.peer):not(.same):not(.in-zone):not(.in-fence):not(.spectrum-cell):not(.error-pop) {background:var(--atelier-paper)!important}
html:is([data-board-skin="night-conservatory"],[data-board-skin="ivory-palace"]) body :is(#game,#loadoutStage) .cell.given:not(.selected):not(.peer):not(.same):not(.in-zone):not(.in-fence):not(.spectrum-cell):not(.error-pop) {background:var(--atelier-given)!important}
html body #shopSheet #shopCosmetics {display:block!important}
html body #shopSheet .atelier-section-title {margin:24px 0 12px;color:#43583e;font:400 23px/1.2 Georgia,serif}
html body #shopSheet .atelier-section-title:first-child {margin-top:8px}
html body #shopSheet .atelier-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
html body #shopSheet .atelier-classic-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
html body #shopSheet .atelier-card {padding:14px!important;border:1px solid #b6a27366!important;background:linear-gradient(150deg,#fffdf7,#f1e9d9)!important;border-radius:18px!important;overflow:hidden}
html body #shopSheet .atelier-card .shop-detail-art {height:auto!important;aspect-ratio:1;max-width:240px!important;margin-bottom:8px!important}
html body #shopSheet .atelier-card .shop-detail-art::before {display:none!important}
html body #shopSheet .shop-reference-cosmetics .atelier-flower-sheet {width:100%!important;height:100%!important;margin:0!important;object-fit:contain!important}
html body #shopSheet .atelier-card h4 {font-size:19px!important;text-align:center!important}
html body #shopSheet .atelier-card p {font:400 12px/1.5 system-ui,sans-serif!important;color:#635d4b!important;text-align:center!important;min-height:3em!important}
html body #shopSheet .atelier-card > button {min-height:40px!important;font:600 12px/1.3 system-ui,sans-serif!important;padding:8px!important}
html body #shopSheet .atelier-card .shop-board-preview {width:100%!important;max-width:224px!important;border-width:16px!important;border-image-slice:22%!important;border-image-width:1!important;border-image-repeat:stretch!important;border-radius:0!important;padding:3px!important}
html body #shopSheet .shop-board-preview[data-preview-skin="night-conservatory"] {border-image-source:url("../cosmetics/night-frame.webp")!important;background:#e8eff0!important;box-shadow:0 6px 16px #263c3838!important}
html body #shopSheet .shop-board-preview[data-preview-skin="ivory-palace"] {border-image-source:url("../cosmetics/ivory-frame.webp")!important;background:#fffaf0!important;box-shadow:0 6px 16px #65502830!important}
html body #shopSheet .atelier-default-flowers {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:84px;height:84px}
html body #shopSheet .shop-reference-cosmetics .atelier-default-flowers img {width:100%!important;height:100%!important;margin:0!important;object-fit:contain!important}
@media(max-width:380px) {
 html body #shopSheet .atelier-grid {gap:9px}
 html body #shopSheet .atelier-card {padding:9px!important}
 html body #shopSheet .atelier-card h4 {font-size:16px!important}
 html body #shopSheet .atelier-card .shop-board-preview {border-width:11px!important}
}

/* v0.6.1 — reserve separate rows for the flower and remaining count. */
html body #game .palette .color-btn:not(.clear-btn) {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) 18px!important;
  align-items:center!important;justify-items:center!important;row-gap:5px!important;
  height:64px!important;min-height:64px!important;padding:5px 2px!important;
}
html body #game .palette .color-btn:not(.clear-btn) > .flower-token {
  position:relative!important;inset:auto!important;margin:0!important;
  grid-column:1!important;grid-row:1!important;align-self:center!important;
  width:min(100%,30px)!important;height:auto!important;aspect-ratio:1!important;
  max-width:30px!important;max-height:100%!important;transform:none!important;
}
html body #game .palette .color-btn > .remain-badge {
  position:static!important;inset:auto!important;transform:none!important;
  grid-column:1!important;grid-row:2!important;align-self:center!important;
  justify-content:center!important;align-items:center!important;
  width:18px!important;min-width:18px!important;height:18px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:5px!important;
  background:#eee9db!important;color:#46533d!important;box-shadow:none!important;
  font:600 11px/18px system-ui,sans-serif!important;font-variant-numeric:tabular-nums;
}
html body #game .palette .clear-btn {height:64px!important;min-height:64px!important}
@media(max-height:710px) {
  html body #game .palette .color-btn:not(.clear-btn) {
    height:56px!important;min-height:56px!important;padding:4px 2px!important;
    grid-template-rows:minmax(0,1fr) 16px!important;row-gap:5px!important;
  }
  html body #game .palette .color-btn:not(.clear-btn) > .flower-token {max-width:25px!important}
  html body #game .palette .color-btn > .remain-badge {height:16px!important;line-height:16px!important}
  html body #game .palette .clear-btn {height:56px!important;min-height:56px!important}
}

/* v0.6.2 — complete classic themes and permanent cosmetic bundles. */
html[data-board-skin="moon-gilt"], [data-preview-skin="moon-gilt"] {--classic-rail:#b59a52;--classic-edge:#e6d29b;--classic-paper:#fff8e4}
html[data-board-skin="sakura"], [data-preview-skin="sakura"] {--classic-rail:#ac7785;--classic-edge:#eed0d8;--classic-paper:#fff5f6}
html[data-board-skin="emerald"], [data-preview-skin="emerald"] {--classic-rail:#487c69;--classic-edge:#a5c5af;--classic-paper:#eff8ef}
html:is([data-board-skin="moon-gilt"],[data-board-skin="sakura"],[data-board-skin="emerald"]) body :is(#game,#loadoutStage) .board {
 background:var(--classic-rail)!important;border:3px solid var(--classic-edge)!important;
 box-shadow:0 0 0 2px var(--classic-rail),0 8px 20px #283b3028!important;
}
html:is([data-board-skin="moon-gilt"],[data-board-skin="sakura"],[data-board-skin="emerald"]) body :is(#game,#loadoutStage) .cell:not(.selected):not(.peer):not(.same):not(.in-zone):not(.in-fence):not(.spectrum-cell):not(.error-pop) {background:var(--classic-paper)!important}
html body #shopSheet .shop-board-preview:is([data-preview-skin="moon-gilt"],[data-preview-skin="sakura"],[data-preview-skin="emerald"]) {
 background:var(--classic-paper)!important;border:4px solid var(--classic-rail)!important;box-shadow:0 0 0 2px var(--classic-edge),0 5px 12px #283b3020!important;
}
html body #shopSheet .shop-board-preview[data-preview-skin="default"] {box-shadow:none!important}
html body #shopSheet .atelier-classic-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
html body #shopSheet .atelier-classic-grid .shop-detail-card {padding:14px 10px!important;min-width:0!important}
html body #shopSheet .shop-detail-card h4 {white-space:normal!important;text-overflow:clip!important;overflow:visible!important;font-size:18px!important;line-height:1.25!important;min-height:2.5em!important}
html body #shopSheet .atelier-classic-grid .shop-detail-art {width:100%!important;max-width:180px!important;height:auto!important;aspect-ratio:1;margin:0 auto 12px!important}
html body #shopSheet .atelier-classic-grid .shop-detail-art::before {display:none!important}
html body #shopSheet .atelier-default-flowers {width:100%!important;height:100%!important;gap:3px}
html body #shopSheet .atelier-classic-grid .shop-detail-art > .shop-board-preview {width:90%!important;height:auto!important;aspect-ratio:1}
html body #shopSheet .atelier-classic-grid p {font:400 12px/1.4 system-ui,sans-serif!important;min-height:2.8em!important}
html body #shopSheet .atelier-classic-grid button {font:600 12px/1.4 system-ui,sans-serif!important;min-height:40px!important}
.finish-skin-art {--finish-ink:#9b8043;--finish-fill:#f1db9a;--finish-wash:#faf4df;display:grid;place-items:center;background:radial-gradient(ellipse,var(--finish-wash),transparent 72%);width:100%;height:100%}
.finish-skin-art svg {width:72%;height:72%;max-width:120px;fill:var(--finish-fill);stroke:var(--finish-ink);stroke-width:2;stroke-linejoin:round;filter:drop-shadow(0 5px 5px #57412c25)}
.finish-skin-art[data-finish-preview="lantern"] {--finish-ink:#a56820;--finish-fill:#f6d083;--finish-wash:#fce3a9}
.finish-skin-art[data-finish-preview="prism"] {--finish-ink:#736099;--finish-fill:#d9cced;--finish-wash:#e2daf4}
.finish-skin-art[data-finish-preview="sakura"] {--finish-ink:#ad617c;--finish-fill:#f4c6d6;--finish-wash:#fce0e8}
html body #finish #finishCosmeticArt {height:66px;width:100px;margin:0 auto 4px;pointer-events:none}
html[data-finish-skin="default"] body #finish #finishCosmeticArt {display:none}
html[data-finish-skin="lantern"] body #finish .result-reference-panel {background:linear-gradient(150deg,#fffaf0,#f6e8c8)!important;border:1px solid #cba65e!important;box-shadow:inset 0 0 28px #edc77938!important}
html[data-finish-skin="prism"] body #finish .result-reference-panel {background:linear-gradient(125deg,#faf5ff,#e9edf8 48%,#f7e9ef)!important;border:1px solid #afa0cd!important;box-shadow:inset 0 0 28px #c4b6de38!important}
html[data-finish-skin="sakura"] body #finish .result-reference-panel {background:radial-gradient(ellipse at top right,#f6dce5,transparent 60%),#fff8f8!important;border:1px solid #d5a2b4!important;box-shadow:inset 0 0 28px #e9bac938!important}
html body #shopSheet #shopPremium {display:block!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;min-height:0!important;overflow:visible!important}
html body #shopSheet #shopPremium::before,html body #shopSheet #shopPremium::after {display:none!important}
html body #shopSheet .bundle-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
html body #shopSheet .bundle-card {display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:16px;background:linear-gradient(145deg,#fffdf7,#eee7d4);border:1px solid #c7b887;border-radius:20px;box-shadow:0 5px 16px #49432812;color:#405139}
html body #shopSheet .bundle-art {display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center;margin-bottom:14px;min-width:0}
html body #shopSheet .bundle-art > img {width:100%;height:auto;min-width:0;object-fit:contain}
html body #shopSheet .bundle-art .shop-board-preview {width:100%!important;height:auto!important;aspect-ratio:1;min-width:0;border-width:9px!important;padding:2px!important}
html body #shopSheet .bundle-art .shop-board-preview:is([data-preview-skin="night-conservatory"],[data-preview-skin="ivory-palace"]) {border-image-slice:22%!important;border-image-width:1!important;border-image-repeat:stretch!important;border-radius:0!important}
html body #shopSheet .bundle-card small {font:600 10px/1.5 system-ui,sans-serif;letter-spacing:.05em;color:#756845}
html body #shopSheet .bundle-card h3 {font:400 22px/1.2 Georgia,serif;margin:7px 0 10px;white-space:normal}
html body #shopSheet .bundle-card ul {font:500 12px/1.7 system-ui,sans-serif;padding:0;margin:0;list-style:none}
html body #shopSheet .bundle-card p {font:400 11px/1.5 system-ui,sans-serif;color:#726851;margin:10px 0 14px}
html body #shopSheet .bundle-card button {margin-top:auto;min-height:44px;padding:10px 8px;border-radius:24px;border:1px solid #7b8956;background:linear-gradient(#91a36a,#627744);color:#fffaf0;font:600 13px/1.4 system-ui,sans-serif;cursor:pointer}
html body #shopSheet .bundle-card button:disabled {background:#e6e6d5;color:#68715b;cursor:default;border-color:#c3c9ad}
html body #shopSheet .bundle-card del {opacity:.7;font-size:11px;margin-right:4px}
html body #shopSheet #shopPremium .bundle-card {display:grid;grid-template-columns:minmax(110px,38%) 1fr;column-gap:18px}
html body #shopSheet #shopPremium .bundle-art {grid-column:1;grid-row:1/6;grid-template-columns:1fr;gap:6px;margin:0}
html body #shopSheet #shopPremium .bundle-art>img {max-width:115px;justify-self:center}
html body #shopSheet #shopPremium .bundle-card > :not(.bundle-art) {grid-column:2}
@media(max-width:450px) {
 html body #shopSheet .bundle-grid {grid-template-columns:1fr}
 html body #shopSheet .bundle-grid .bundle-art {max-width:270px;align-self:center;width:100%}
 html body #shopSheet #shopPremium .bundle-card {column-gap:12px;padding:13px}
 html body #shopSheet #shopPremium .bundle-card h3 {font-size:22px}
}
html body #shopSheet .bundle-art .shop-board-cell img {width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;object-fit:contain!important}

/* ===== garden-renewal.css ===== */
/* A quiet conservatory, scoped entirely to My Garden. */
html body #gardenPlay.garden-page {background:radial-gradient(ellipse at 100% 0,#dce5ce80,transparent 45%),#f4f1e7!important;color:#344b3c!important}
html body #gardenPlay.garden-page .page-card.garden-page-shell {max-width:980px!important;padding:12px!important;background:transparent!important;box-shadow:none!important;border:0!important}
html body #gardenPlay.garden-page #gardenScreen {gap:14px!important}
html body #gardenPlay.garden-page .garden-hero {min-height:180px!important;border-radius:24px!important;background:url('../ui/collection-my-garden-v2.webp') center 55%/cover!important;border:1px solid #9eaa8944!important;box-shadow:0 8px 24px #29473317!important}
html body #gardenPlay.garden-page .garden-hero::before {background:linear-gradient(90deg,#183d30ed,#1e4033a8 55%,#1c3b3122)!important}
html body #gardenPlay.garden-page .garden-hero__copy {width:100%!important;padding:22px!important;box-sizing:border-box!important}
html body #gardenPlay.garden-page .garden-hero__kicker {color:#e4d5a7!important;font-size:9px!important;letter-spacing:.18em!important;margin-bottom:10px!important}
html body #gardenPlay.garden-page .garden-hero h1 {color:#fff9e9!important;font:400 38px/1.05 Georgia,serif!important;letter-spacing:-.025em!important}
html body #gardenPlay.garden-page .garden-hero p {max-width:265px!important;color:#f0f2df!important;font:400 12px/1.5 system-ui,sans-serif!important;margin:10px 0 14px!important}
html body #gardenPlay.garden-page .garden-hero__stat {background:#16372ba8!important;border:1px solid #e6d7ac55!important;color:#fff7dd!important;box-shadow:none!important;font-size:10px!important;height:26px!important}
html body #gardenPlay.garden-page .garden-hero__stat:last-child {display:none!important}
html body #gardenPlay.garden-page .gd-console {display:flex!important;flex-direction:column!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;gap:10px!important}
html body #gardenPlay.garden-page .gd-console-stats {order:-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;border:1px solid #cbd0bd!important;border-radius:18px!important;background:#fffcf3!important;padding:12px 4px!important}
html body #gardenPlay.garden-page .gd-console-stat {display:grid!important;grid-template-columns:20px auto!important;justify-content:center!important;column-gap:6px!important;row-gap:3px!important;padding:0 4px!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-width:0!important}
html body #gardenPlay.garden-page .gd-console-stat+.gd-console-stat {border-left:1px solid #dedfce!important}
html body #gardenPlay.garden-page .gd-console-stat svg {width:18px!important;height:18px!important;grid-column:1!important;grid-row:1!important;color:#71805e!important}
html body #gardenPlay.garden-page .gd-console-stat b {grid-column:2!important;grid-row:1!important;font:600 17px/1.2 system-ui,sans-serif!important;color:#3c5541!important}
html body #gardenPlay.garden-page .gd-console-stat small {grid-column:1/-1!important;text-align:center!important;font:500 10px/1.3 system-ui,sans-serif!important;color:#69735e!important;text-transform:none!important}
html body #gardenPlay.garden-page .gd-console-actions {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;padding:0!important}
html body #gardenPlay.garden-page .gd-console-actions>button {display:grid!important;grid-template-columns:26px 1fr!important;gap:3px 5px!important;text-align:left!important;align-items:center!important;padding:10px 8px!important;border-radius:14px!important;background:#e8ecdf!important;border:1px solid #c8d2bb!important;box-shadow:none!important;min-height:57px!important}
html body #gardenPlay.garden-page .gd-console-icon {grid-row:1/3!important;width:24px!important;height:24px!important;background:none!important;color:#5c7357!important}
html body #gardenPlay.garden-page .gd-console-icon svg {width:22px!important;height:22px!important}
html body #gardenPlay.garden-page .gd-console-actions>button b {font:600 10px/1.2 system-ui,sans-serif!important;color:#344e3b!important}
html body #gardenPlay.garden-page .gd-console-actions>button small {font:400 10px/1.2 system-ui,sans-serif!important;color:#647357!important}
html body #gardenPlay.garden-page .gd-plots-card {padding:14px!important;border:1px solid #b8c5a5!important;border-radius:24px!important;background:linear-gradient(145deg,#e1e7d4,#cad7bb)!important;box-shadow:inset 0 1px 0 #ffffffe0,0 9px 24px #3c57351c!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head {margin:0 0 14px!important;align-items:start!important;gap:8px!important}
html body #gardenPlay.garden-page .gd-plots-card h3 {font:400 25px/1.15 Georgia,serif!important;color:#334c37!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head p {font:400 10px/1.5 system-ui,sans-serif!important;color:#596c4e!important;max-width:240px!important;margin-top:5px!important}
html body #gardenPlay.garden-page .gd-section-badge {white-space:nowrap!important;background:#f7f8ed!important;border:1px solid #b3c19e!important;color:#4b6344!important;padding:6px 8px!important;font:600 10px/1.3 system-ui,sans-serif!important}
html body #gardenPlay.garden-page .gd-plots {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:0!important;overflow:visible!important;max-height:none!important}
html body #gardenPlay.garden-page .gd-plot {display:flex!important;flex-direction:column!important;min-width:0!important;min-height:150px!important;aspect-ratio:auto!important;padding:8px 6px!important;border-radius:15px!important;border:1px solid #b1bea0!important;background:linear-gradient(#f6f6e8,#e8eedb)!important;box-shadow:0 3px 0 #a5b29244,inset 0 1px 0 #fff9!important;gap:4px!important;opacity:1!important}
html body #gardenPlay.garden-page .gd-plot-top {display:flex!important;flex-direction:column!important;align-items:center!important;gap:4px!important;min-height:29px!important}
html body #gardenPlay.garden-page .gd-plot-index {font:600 8px/1.1 system-ui,sans-serif!important;color:#69755e!important;letter-spacing:.10em!important}
html body #gardenPlay.garden-page .gd-state {padding:3px 5px!important;font:600 8px/1.2 system-ui,sans-serif!important;border-radius:6px!important;background:#e3e9d4!important;color:#536442!important;white-space:nowrap!important}
html body #gardenPlay.garden-page .gd-plot-visual {position:relative!important;display:grid!important;place-items:center!important;min-height:58px!important;height:58px!important;flex:1!important;isolation:isolate}
html body #gardenPlay.garden-page .gd-plot-visual::before {content:'';position:absolute;bottom:0;left:0;right:0;height:40px;background:url('../ui/garden-bed.svg') center bottom/contain no-repeat;z-index:-1}
html body #gardenPlay.garden-page .garden-soil {display:none!important}
html body #gardenPlay.garden-page .gd-seed-action {width:30px!important;height:30px!important;border-radius:50%!important;background:#faf4df!important;border:1px solid #bdab74!important;box-shadow:0 3px 6px #403a2725!important;top:10px!important}
html body #gardenPlay.garden-page .gd-seed-action svg {width:19px!important;height:19px!important}
html body #gardenPlay.garden-page .gd-bloom {position:relative!important;inset:auto!important;display:block!important;max-width:76px!important;width:85%!important;height:68px!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;transform-origin:50% 85%!important;filter:drop-shadow(0 3px 2px #35402c30)!important;margin-top:-10px!important}
html body #gardenPlay.garden-page .gd-ring {height:3px!important;width:88%!important;margin:1px auto 3px!important;background:#cfd8bf!important;border:0!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-ring i {background:#7b995f!important}
html body #gardenPlay.garden-page .gd-plot-copy {min-height:28px!important;text-align:center!important;display:grid!important;gap:3px!important}
html body #gardenPlay.garden-page .gd-plot-copy b {font:600 10px/1.2 system-ui,sans-serif!important;white-space:normal!important;color:#3d543c!important}
html body #gardenPlay.garden-page .gd-plot-copy small {font:500 9px/1.35 system-ui,sans-serif!important;color:#586b4c!important;overflow-wrap:anywhere}
html body #gardenPlay.garden-page .gd-ready {background:linear-gradient(#fffbeb,#f3e6ba)!important;border-color:#b59b54!important;box-shadow:0 3px 0 #b29c6038,inset 0 0 0 1px #fff7!important}
html body #gardenPlay.garden-page .gd-ready .gd-state {background:#e6d394!important;color:#665122!important}
html body #gardenPlay.garden-page .gd-locked {background:#c4ceb74d!important;border:1px dashed #9dab8e!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-locked .gd-plot-visual::before {opacity:.25;filter:grayscale(.7)}
html body #gardenPlay.garden-page .gd-lock {width:28px!important;height:28px!important;background:none!important;box-shadow:none!important;color:#78846b!important}
html body #gardenPlay.garden-page .gd-lock svg {width:24px!important;height:24px!important}
html body #gardenPlay.garden-page .gd-expand {width:100%!important;margin-top:14px!important;min-height:42px!important;border-radius:12px!important;background:#405e43!important;color:#fff8e4!important;border:1px solid #355239!important;box-shadow:none!important;font-size:12px!important}
html body #gardenPlay.garden-page .gd-expand b {color:#f3db9d!important}
html body #gardenPlay.garden-page button:focus-visible {outline:3px solid #bd9147!important;outline-offset:3px!important}
@media(min-width:900px) {
 html body #gardenPlay.garden-page #gardenScreen {grid-template-columns:minmax(0,1fr) minmax(280px,.7fr)!important}
 html body #gardenPlay.garden-page .garden-hero {height:100%!important;min-height:190px!important}
 html body #gardenPlay.garden-page .gd-plot {min-height:180px!important}
 html body #gardenPlay.garden-page .gd-plot-visual {min-height:82px!important}
 html body #gardenPlay.garden-page .gd-bloom {height:88px!important;max-width:100px!important}
 html body #gardenPlay.garden-page .gd-plot-visual::before {height:52px!important}
}
@media(max-width:360px) {
 html body #gardenPlay.garden-page .page-card.garden-page-shell {padding:8px!important}
 html body #gardenPlay.garden-page .gd-plots-card {padding:10px!important}
 html body #gardenPlay.garden-page .gd-plots {gap:5px!important}
 html body #gardenPlay.garden-page .gd-console-actions>button {grid-template-columns:1fr!important;text-align:center!important;padding:7px 3px!important}
 html body #gardenPlay.garden-page .gd-console-icon {display:none!important}
}

/* ===== compact-surfaces.css ===== */
/* v0.6.4: explicit in-flow garden header and a category-based compact shop. */
html body #gardenPlay.garden-page .page-card.garden-page-shell {display:block!important;padding:0 12px calc(16px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;background:#f7f4ea!important}
html body #gardenPlay.garden-page .page-head.garden-topbar {position:relative!important;inset:auto!important;transform:none!important;float:none!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px!important;height:68px!important;min-height:68px!important;max-height:none!important;margin:0 0 6px!important;padding:8px 0!important;background:#f7f4ea!important;z-index:1!important;box-sizing:border-box!important}
html body #gardenPlay.garden-page .garden-brand {position:static!important;inset:auto!important;transform:none!important;height:42px!important;max-height:42px!important;align-self:center!important}
html body #gardenPlay.garden-page .garden-brand>img {width:min(100%,160px)!important;max-width:160px!important;height:38px!important;max-height:38px!important;margin:0 auto!important;transform:none!important}
html body #gardenPlay.garden-page #gardenScreen {grid-template-columns:minmax(0,1fr)!important;gap:10px!important;margin:0!important}
html body #gardenPlay.garden-page #gardenScreen>.gd-console,html body #gardenPlay.garden-page #gardenScreen>.gd-main-grid {grid-column:1!important}
html body #gardenPlay.garden-page .garden-quiet-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 6px}
html body #gardenPlay.garden-page .garden-quiet-heading h1 {font:400 27px/1.15 Georgia,serif;color:#3b523d;margin:0}
html body #gardenPlay.garden-page .garden-quiet-heading p {font:400 10px/1.4 system-ui,sans-serif;color:#717565;margin:4px 0 0}
html body #gardenPlay.garden-page .garden-quiet-heading>span {font:500 10px/1.3 system-ui,sans-serif;color:#667250;text-align:right;max-width:76px}
html body #gardenPlay.garden-page .gd-console-stats {padding:9px 3px!important;border-radius:13px!important;background:#fffcf5!important}
html body #gardenPlay.garden-page .gd-console-stat b {font-size:15px!important}
html body #gardenPlay.garden-page .gd-console-actions>button {min-height:48px!important;padding:8px 6px!important;border-radius:12px!important;background:#eeefe4!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-console-icon {border:0!important;border-radius:0!important}
html body #gardenPlay.garden-page .gd-plots-card {padding:12px!important;background:#eeeede!important;border:1px solid #cfd2bd!important;border-radius:18px!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head {margin-bottom:10px!important}
html body #gardenPlay.garden-page .gd-plots-card h3 {font-size:20px!important}
html body #gardenPlay.garden-page .gd-plots-card .gd-section-head p {display:none!important}
html body #gardenPlay.garden-page .gd-plots {gap:7px!important;grid-auto-rows:minmax(126px,auto)!important}
html body #gardenPlay.garden-page .gd-plot {min-height:126px!important;padding:7px 5px!important;gap:3px!important;border-radius:12px!important;background:#faf9f0!important;border:1px solid #d4d7c3!important;box-shadow:0 2px 3px #53603f0a!important}
html body #gardenPlay.garden-page .gd-plot .gd-plot-visual {min-height:48px!important;height:48px!important;max-height:48px!important;flex:0 0 48px!important;width:100%!important;margin:auto 0 0!important}
html body #gardenPlay.garden-page .gd-plot .gd-plot-visual::before {inset:auto 5% -6px!important;height:46px!important;background:url('../ui/garden-soil-natural.webp') center center/100% auto no-repeat!important;opacity:.88!important;filter:none!important}
html body #gardenPlay.garden-page .gd-plot .gd-seed-action {position:relative!important;inset:auto!important;transform:none!important;width:26px!important;height:26px!important;margin:0 0 8px!important;box-shadow:0 2px 3px #584c2920!important;background:#f8f5e5!important}
html body #gardenPlay.garden-page .gd-plot .gd-bloom {height:52px!important;width:75%!important;max-width:66px!important;margin:-10px 0 0!important}
html body #gardenPlay.garden-page .gd-empty .gd-plot-copy {display:grid!important;min-height:15px!important;gap:0!important;margin-top:4px!important}
html body #gardenPlay.garden-page .gd-empty .gd-plot-copy small {display:none!important}
html body #gardenPlay.garden-page .gd-plot-copy {min-height:16px!important}
html body #gardenPlay.garden-page .gd-plot-copy b {font-size:10px!important}
html body #gardenPlay.garden-page .gd-plot-copy small {display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;font-size:9px!important;line-height:1.4!important}
html body #gardenPlay.garden-page .gd-locked {background:#e8eadc!important;border:1px dashed #bdc5ae!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-locked .gd-plot-visual::before {display:none!important}
html body #gardenPlay.garden-page .gd-locked .gd-plot-visual {margin:auto 0!important}
html body #gardenPlay.garden-page .gd-ready {background:#faf4de!important;border-color:#c7b678!important;box-shadow:none!important}
html body #gardenPlay.garden-page .gd-expand {min-height:40px!important;margin-top:10px!important;border-radius:11px!important;font-size:11px!important}

html body #shopSheet #shopBundles[hidden],html body #shopSheet #shopCosmetics[hidden] {display:none!important}
html body #shopSheet .shop-reference-shell>.home-approved-head {min-height:68px!important;height:68px!important;max-height:68px!important;padding-block:8px!important;margin-block:0!important}
html body #shopSheet .shop-reference-shell>.shop-reference-scroll {padding-top:8px!important}
html body #shopSheet .shop-compact-heading {display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;color:#3f553d}
html body #shopSheet .shop-compact-heading h2 {font:400 25px/1.2 Georgia,serif;margin:0}
html body #shopSheet .shop-compact-wallet {font:500 12px/1.2 system-ui,sans-serif;background:#eeeeda;border:1px solid #ced2b7;border-radius:20px;padding:8px 11px;white-space:nowrap}
html body #shopSheet .shop-category-bar {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;background:#eaeadd;border:1px solid #d1d5c2;border-radius:13px;margin-bottom:12px}
html body #shopSheet .shop-category-bar button {min-width:0;min-height:40px;padding:7px 3px;font:600 12px/1.2 system-ui,sans-serif;border:1px solid transparent;border-radius:9px;background:transparent;color:#627054;box-shadow:none;cursor:pointer}
html body #shopSheet .shop-category-bar button[aria-pressed="true"] {background:#fffcf3;color:#344e38;border-color:#c8ceb5;box-shadow:0 2px 4px #51604410}
html body #shopSheet .shop-category-note {font:400 11px/1.4 system-ui,sans-serif;color:#727762;margin:0 2px 10px}
html body #shopSheet .bundle-grid,html body #shopSheet .shop-compact-products {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
html body #shopSheet .bundle-card {display:grid!important;grid-template-columns:84px minmax(0,1fr)!important;column-gap:12px!important;row-gap:3px!important;align-items:start!important;padding:12px!important;border:1px solid #d0d0ba!important;border-radius:15px!important;background:#fbf9f0!important;box-shadow:none!important}
html body #shopSheet .bundle-card .bundle-art {grid-column:1!important;grid-row:1/7!important;display:grid!important;grid-template-columns:1fr!important;gap:2px!important;align-self:center!important;width:84px!important;max-width:84px!important;height:auto!important;margin:0!important}
html body #shopSheet .bundle-card .bundle-art>.shop-board-preview {width:60px!important;height:60px!important;justify-self:center!important;border-width:5px!important;padding:1px!important}
html body #shopSheet .bundle-card .bundle-art>img {width:64px!important;height:64px!important;justify-self:center!important;object-fit:contain!important}
html body #shopSheet .bundle-card>:not(.bundle-art) {grid-column:2!important}
html body #shopSheet .bundle-card small {font:500 8px/1.3 system-ui,sans-serif!important;letter-spacing:.04em!important}
html body #shopSheet .bundle-card h3 {font:400 19px/1.2 Georgia,serif!important;margin:1px 0 3px!important}
html body #shopSheet .bundle-card ul {font:400 11px/1.4 system-ui,sans-serif!important;margin:0!important}
html body #shopSheet .bundle-card p {font:400 10px/1.4 system-ui,sans-serif!important;margin:3px 0 5px!important}
html body #shopSheet .bundle-card button {min-height:36px!important;padding:7px 12px!important;width:auto!important;justify-self:start!important;font-size:11px!important;margin:0!important}
html body #shopSheet .shop-compact-products .shop-detail-card {display:grid!important;grid-template-columns:72px minmax(0,1fr) auto!important;gap:4px 10px!important;align-items:center!important;padding:12px!important;background:#fbf9f0!important;border:1px solid #d0d0ba!important;border-radius:15px!important;box-shadow:none!important;min-height:98px!important;overflow:visible!important}
html body #shopSheet .shop-compact-products .shop-detail-art {grid-column:1!important;grid-row:1/4!important;width:72px!important;height:72px!important;max-width:72px!important;aspect-ratio:1!important;margin:0!important}
html body #shopSheet .shop-compact-products .shop-detail-art::before {display:none!important}
html body #shopSheet .shop-compact-products .shop-detail-art>.shop-board-preview {width:68px!important;height:68px!important;border-width:5px!important;padding:1px!important}
html body #shopSheet .shop-compact-products h4 {grid-column:2!important;grid-row:1!important;font:400 18px/1.2 Georgia,serif!important;text-align:left!important;min-height:0!important;margin:0!important}
html body #shopSheet .shop-compact-products p {grid-column:2!important;grid-row:2/4!important;font:400 10px/1.4 system-ui,sans-serif!important;text-align:left!important;min-height:0!important;margin:0!important;color:#747461!important}
html body #shopSheet .shop-compact-products button {grid-column:3!important;grid-row:1/4!important;align-self:center!important;min-height:36px!important;width:auto!important;padding:7px 9px!important;font:600 10px/1.3 system-ui,sans-serif!important;margin:0!important;max-width:88px!important}
html body #shopSheet .shop-earn-details {margin:14px 0;border:1px solid #d4d5c2;border-radius:12px;background:#f6f5eb;padding:0 12px}
html body #shopSheet .shop-earn-details summary {cursor:pointer;padding:13px 0;color:#586b4f;font:600 12px/1.3 system-ui,sans-serif}
html body #shopSheet .shop-earn-details .shop-reference-currency {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;padding:0 0 10px!important}
html body #shopSheet .shop-earn-details .shop-currency-card {padding:8px 3px!important;min-height:0!important;border:0!important;box-shadow:none!important;background:transparent!important;gap:5px!important}
html body #shopSheet .shop-earn-details .shop-currency-art {display:none!important}
html body #shopSheet .shop-earn-details .shop-currency-card strong {font-size:20px!important;margin:4px 0!important}
html body #shopSheet .shop-earn-details .shop-currency-card small {font-size:10px!important}
html body #shopSheet .shop-earn-details .shop-currency-card button {min-height:36px!important;padding:6px 4px!important;font:500 10px/1.3 system-ui,sans-serif!important}
html body #shopSheet .shop-category-bar button:focus-visible {outline:2px solid #987a3e;outline-offset:2px}
@media(max-width:370px) {
 html body #shopSheet .shop-compact-products .shop-detail-card {grid-template-columns:62px minmax(0,1fr)!important}
 html body #shopSheet .shop-compact-products .shop-detail-art {width:62px!important;height:62px!important}
 html body #shopSheet .shop-compact-products .shop-detail-art>.shop-board-preview {width:58px!important;height:58px!important}
 html body #shopSheet .shop-compact-products p {grid-row:2!important}
 html body #shopSheet .shop-compact-products button {grid-column:2!important;grid-row:3!important;justify-self:start!important}
 html body #shopSheet .shop-compact-products h4 {font-size:16px!important}
}
@media(min-width:760px) {
 html body #shopSheet .bundle-grid,html body #shopSheet .shop-compact-products {grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ===== five-screen-polish.css ===== */
/* v0.6.5 — hierarchy and botanical consistency, five approved surfaces only. */
html body #gardenPlay.garden-page .gd-empty .gd-state {display:none!important}
html body #gardenPlay.garden-page .gd-plot-top {flex-direction:row!important;justify-content:space-between!important;align-items:center!important;min-height:19px!important}
html body #gardenPlay.garden-page .gd-plot-index {font:500 9px/1.2 system-ui,sans-serif!important;letter-spacing:0!important;color:#858775!important}
html body #gardenPlay.garden-page .gd-plot .gd-plot-visual::before {inset:auto 16% -7px!important;height:32px!important;opacity:.65!important}
html body #gardenPlay.garden-page .gd-growing .gd-plot-visual::before,html body #gardenPlay.garden-page .gd-ready .gd-plot-visual::before {opacity:.5!important}
html body #gardenPlay.garden-page .gd-plot .gd-bloom {width:85%!important;max-width:76px!important;height:62px!important;margin:-14px 0 0!important}
html body #gardenPlay.garden-page .gd-empty .gd-seed-action {border:0!important;background:transparent!important;box-shadow:none!important;color:#698054!important;width:30px!important;height:30px!important}
html body #gardenPlay.garden-page .gd-empty .gd-seed-action svg {width:25px!important;height:25px!important}
html body #gardenPlay.garden-page .gd-empty .gd-plot-copy b {font-weight:500!important;color:#667454!important}
html body #gardenPlay.garden-page .gd-locked {background:#eeefe6!important;border-color:#d5d9c8!important}
html body #gardenPlay.garden-page .gd-locked .gd-state {background:transparent!important;color:#868b79!important;font-weight:400!important}
html body #gardenPlay.garden-page .gd-locked .gd-lock {opacity:.55!important}
html body #gardenPlay.garden-page .gd-ready .gd-plot-copy b {color:#6d572b!important}

html body #home .home-approved-resume {border:1px solid #b9b68c!important;box-shadow:0 7px 20px #4354361c!important}
html body #home .home-approved-continue {background:linear-gradient(150deg,#66835b,#36533d)!important;border:1px solid #35503a!important;box-shadow:0 4px 9px #29422f26!important;color:#fff9e9!important}
html body #home .home-approved-continue b {color:#fff9e9!important}
html body #home .home-approved-feature {background:#f5f3e9!important;border:1px solid #d8dac9!important;box-shadow:none!important}
html body #home .home-approved-feature::before,html body #home .home-approved-feature::after {opacity:.18!important}
html body #home .home-approved-feature .home-approved-flower-art {width:clamp(54px,17vw,88px)!important;height:auto!important;max-height:100px!important;object-fit:contain!important;filter:none!important}
html body #home .home-approved-bouquet {width:clamp(54px,17vw,88px)!important;max-height:100px!important;filter:none!important}
html body #home .home-approved-bouquet img {width:100%!important;height:auto!important;object-fit:contain!important}
html body #home .home-approved-feature h3 {color:#4c6046!important}
html body #home .home-approved-summary {background:#efefe3!important;border:1px solid #d3d7c3!important;box-shadow:none!important}
html body #home .home-approved-summary>img {filter:saturate(.7)!important;opacity:.85!important}
html body #home .home-approved-summary h3 {color:#58684d!important}

html body #journey[data-journey-theme] .journey-soft-node.selected:not(.locked) {z-index:8!important;overflow:visible!important}
html body #journey[data-journey-theme] .journey-soft-node.selected:not(.locked) .journey-soft-circle::before {border:2px solid #f4df9d!important;box-shadow:0 0 0 3px #34553ddd,0 0 0 5px #ecd596,inset 0 1px 2px #fff6!important}
html body #journey .journey-current-label {position:absolute;left:50%;bottom:calc(100% + 4px);transform:translateX(-50%);display:block;padding:4px 7px;border:1px solid #d8c38a;border-radius:7px;background:#f9f4e4;color:#35533d;font:600 10px/1.2 system-ui,sans-serif;white-space:nowrap;pointer-events:none;box-shadow:0 2px 5px #233c3025}

html body #shopSheet .shop-inspect-art {position:relative;cursor:zoom-in;border-radius:7px}
html body #shopSheet .shop-inspect-art::after {content:'＋';position:absolute;right:0;bottom:0;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fffbed;color:#4d6344;border:1px solid #c0c7a9;font:500 15px/1 system-ui,sans-serif}
html body #shopSheet .shop-inspect-art:focus-visible {outline:2px solid #89733f;outline-offset:3px}
html body #shopSheet #shopDesignPreview {position:fixed;inset:0;width:min(92vw,580px);max-width:580px;max-height:88dvh;height:fit-content;margin:auto;padding:0;border:1px solid #b8bd9f;border-radius:22px;background:#fbf8ef;color:#40553e;box-shadow:0 18px 60px #122d3340;overflow:auto;overscroll-behavior:contain}
html body #shopSheet #shopDesignPreview:not([open]) {display:none!important}
html body #shopSheet #shopDesignPreview::backdrop {background:#172e2b9e}
html body #shopSheet .design-preview-content {padding:18px}
html body #shopSheet .design-preview-content>header {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
html body #shopSheet .design-preview-content h2 {font:400 24px/1.2 Georgia,serif;margin:0}
html body #shopSheet .design-preview-close {flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid #c8cdb6;border-radius:50%;background:#efefe1;color:#516547;font:400 26px/1 system-ui,sans-serif;cursor:pointer}
html body #shopSheet .design-preview-items {display:grid;gap:18px}
html body #shopSheet .design-preview-items figure {margin:0}
html body #shopSheet .design-preview-art {width:min(100%,310px);aspect-ratio:1;margin:auto;display:grid;place-items:center;background:radial-gradient(ellipse,#e6e9d566,transparent 72%)}
html body #shopSheet .design-preview-art>.shop-board-preview {width:90%!important;height:90%!important;padding:4px!important;border-width:14px!important}
html body #shopSheet .design-preview-art>.shop-board-preview:is([data-preview-skin="night-conservatory"],[data-preview-skin="ivory-palace"]) {border-image-slice:22%!important;border-image-width:1!important;border-image-repeat:stretch!important;border-radius:0!important}
html body #shopSheet .design-preview-art .shop-board-cell img {width:100%!important;height:100%!important;object-fit:contain!important;min-width:0!important;min-height:0!important;margin:0!important}
html body #shopSheet .design-flower-sheet {width:100%;height:100%;object-fit:contain}
html body #shopSheet .design-preview-art .atelier-default-flowers {display:grid;grid-template-columns:repeat(3,1fr);width:100%;height:100%}
html body #shopSheet .design-preview-art .atelier-default-flowers img {width:100%;height:100%;object-fit:contain}
html body #shopSheet .design-preview-art .finish-skin-art svg {max-width:220px}
html body #shopSheet .design-preview-items figcaption {text-align:center;margin-top:8px}
html body #shopSheet .design-preview-items figcaption b {font:500 17px/1.3 Georgia,serif}
html body #shopSheet .design-preview-items p,html body #shopSheet .design-preview-note {font:400 12px/1.5 system-ui,sans-serif;color:#72745f;margin:6px 0}
html body #shopSheet .design-preview-note {border-top:1px solid #d9dac9;padding-top:12px;margin-top:16px}

/* ===== remaining-screen-polish.css ===== */
/* v0.6.6 — collection, daily, free, gameplay and result/settings hierarchy. */
html body #garden #collectionGardenCta.collection-garden-card {display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:64px!important;height:auto!important;margin:0 0 10px!important;padding:10px 12px!important;border:1px solid #cfd4bd!important;border-radius:14px!important;background:#eef0e3!important;box-shadow:none!important}
html body #garden #collectionGardenCta::before,html body #garden #collectionGardenCta::after {display:none!important}
html body #garden #collectionGardenCta .collection-garden-card__copy {width:auto!important;min-height:0!important;padding:0!important;display:block!important}
html body #garden #collectionGardenCta .collection-garden-card__copy b {font:400 21px/1.2 Georgia,serif!important;color:#40563b!important;text-shadow:none!important}
html body #garden #collectionGardenCta .collection-garden-card__copy small {font:400 11px/1.4 system-ui,sans-serif!important;color:#66715a!important;text-shadow:none!important;margin:3px 0 0!important;max-width:260px!important}
html body #garden #collectionGardenCta .collection-garden-card__action {position:static!important;inset:auto!important;flex:0 0 34px!important;width:34px!important;height:34px!important;min-width:34px!important;padding:7px!important;margin-left:10px!important;box-shadow:none!important;background:#fbfaf0!important}
html body #garden #collectionGardenCta .collection-garden-card__action>span {display:none!important}
html body #garden .collection-featured {min-height:0!important;padding:12px!important;margin-block:10px!important;gap:12px!important;grid-template-columns:86px minmax(0,1fr)!important}
html body #garden .collection-featured-art {width:86px!important;height:96px!important;min-height:0!important}
html body #garden .collection-featured-art img {width:100%!important;height:100%!important;object-fit:contain!important}
html body #garden .collection-featured-copy h2 {font-size:21px!important;line-height:1.2!important;margin:0 0 4px!important}
html body #garden .collection-featured-description {font:400 11px/1.4 system-ui,sans-serif!important;margin:5px 0!important}
html body #garden .collection-featured-meta,html body #garden .collection-featured-stats {font-size:10px!important;line-height:1.4!important}
html body #garden .collection-grid-head {margin-block:10px!important}

html body #daily .daily-flower-cluster .daily-flower-copy.side,html body #daily .daily-petal {display:none!important}
html body #daily .daily-flower-cluster {position:relative!important;display:grid!important;place-items:center!important;aspect-ratio:1!important;width:auto!important;height:100%!important;margin:auto!important;transform:none!important}
html body #daily #dailyFlowerArt {position:relative!important;inset:auto!important;transform:none!important;display:block!important;width:auto!important;height:94%!important;max-width:100%!important;object-fit:contain!important;filter:drop-shadow(0 6px 6px #4e5d3520)!important}
html body #daily .daily-utility-row {gap:10px!important;background:#f1f1e6!important;padding:9px 11px!important;border:1px solid #d9dccb!important;border-radius:12px!important;box-shadow:none!important}
html body #daily .daily-calendar-card {box-shadow:none!important;background:#f5f4e8!important;border-color:#d5d8c2!important}
html body #daily .daily-calendar-open {box-shadow:none!important;background:transparent!important;min-height:36px!important}
html body #daily .daily-hero-countdown strong {font-variant-numeric:tabular-nums!important;font-size:15px!important}

html body #free .free-hero {min-height:0!important;padding:10px 12px!important;gap:8px!important}
html body #free .free-hero-art {width:56px!important;height:56px!important;max-width:56px!important;max-height:56px!important;object-fit:contain!important}
html body #free .free-hero h2 {font-size:23px!important;line-height:1.15!important}
html body #free .free-hero p {font-size:11px!important;line-height:1.35!important;margin-top:4px!important}
html body #free .free-config-card {padding:9px!important}
html body #free .free-mechanic-grid {height:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:auto!important;gap:5px!important}
html body #free .free-mechanic-card {height:auto!important;min-height:42px!important;padding:6px 4px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;border-radius:10px!important}
html body #free .free-mechanic-card b {font:600 11px/1.25 system-ui,sans-serif!important;margin:0!important;min-height:0!important;white-space:normal!important}
html body #free .free-mechanic-card .free-icon {width:21px!important;height:21px!important;flex:0 0 21px!important;margin:0!important}
html body #free .free-mechanic-card .free-icon svg {width:18px!important;height:18px!important}
html body #free .free-mechanic-card.active {border:2px solid #617b4d!important;background:#e6edd9!important;box-shadow:none!important}
html body #free .diff-card.active {border-color:#617b4d!important;background:#e6edd9!important;box-shadow:inset 3px 0 #617b4d!important}
html body #free .free-section-head {margin-bottom:6px!important}
@media(max-height:720px) {
 html body #free .free-hero-art,html body #free .free-hero p {display:none!important}
 html body #free .free-hero {padding:6px 9px!important}
 html body #free .free-hero h2 {font-size:20px!important}
 html body #free .free-page-shell {gap:6px!important}
 html body #free .free-config-card {padding:6px!important}
}

/* Keep existing board sizing and palette geometry; bring the board near tools. */
html body :is(#game,#loadoutStage) .board-stage {justify-content:flex-end!important;gap:7px!important;padding-bottom:8px!important}
html body #game .dock {box-shadow:0 3px 9px #49533b14!important;background:#f7f4e9!important;border-color:#d4d6c3!important}
html body #game .game-premium-stats {box-shadow:none!important;border-color:#d5d7c5!important}
html body #game .dock-tools .tool:not(.active):not(:disabled) {background:#fcfaf3!important;border-color:#d6d8c8!important;box-shadow:none!important}

html body #finish .result-reference-panel {padding:18px!important}
html body #finish .result-reference-heading {font:400 27px/1.15 Georgia,serif!important;margin:0 0 8px!important;color:#40573e!important}
html body #finish .result-reference-bouquet {height:88px!important;max-height:88px!important;width:150px!important;max-width:150px!important;margin:8px auto!important;overflow:hidden!important}
html body #finish #finishTitle {font:400 23px/1.2 Georgia,serif!important;margin:9px 0 6px!important}
html body #finish #finishText {font:400 12px/1.5 system-ui,sans-serif!important;color:#6a705c!important;margin:0 0 12px!important}
html body #finish .result-reference-stats {padding:10px 4px!important;box-shadow:none!important}
html body #finish .result-reference-stats small {font:500 11px/1.3 system-ui,sans-serif!important}
html body #finish .result-reference-next {min-height:68px!important;box-shadow:none!important;margin-block:12px!important}
html body #finish .result-reference-rewards {padding:12px!important;background:#eef0df!important;border:1px solid #c7cfb3!important;border-radius:13px!important}
html body #finish .result-reference-continue {min-height:44px!important;background:linear-gradient(#70895a,#425f42)!important;color:#fff9e9!important;font-size:16px!important}
html body #finish .result-reference-replay {min-height:40px!important;font-size:12px!important;box-shadow:none!important}
html body #finish #finishCosmeticArt {height:40px!important;margin:0 auto 4px!important}
html body #settingsSheet .sheet-panel,html body #profileSheet .sheet-panel {padding:18px!important;border-radius:20px!important;box-sizing:border-box!important}
html body #settingsSheet .sheet-head,html body #profileSheet .sheet-head {min-height:44px!important;margin-bottom:14px!important;align-items:center!important;gap:12px!important}
html body #settingsSheet .sheet-head h3,html body #profileSheet .sheet-head h3 {font:400 25px/1.2 Georgia,serif!important;margin:0!important}
html body #settingsSheet .sheet-head button,html body #profileSheet .sheet-head button {min-width:40px!important;min-height:40px!important;padding:6px!important}
html body #settingsSheet .setting-row {min-height:46px!important;padding-block:8px!important;gap:10px!important}
html body #settingsSheet .sr-ico {width:26px!important;height:26px!important;flex:0 0 26px!important}
html body #settingsSheet .sr-label {font-size:13px!important;line-height:1.4!important}
html body #settingsSheet .legal-actions {gap:7px!important}
html body #settingsSheet .legal-actions button {min-height:40px!important;font:500 12px/1.3 system-ui,sans-serif!important;box-shadow:none!important}
html body #finish .result-reference-bouquet .bouquet-flower {width:50px!important;height:50px!important;object-fit:contain!important}
html body #finish .result-reference-bouquet .bf-a {left:10px!important;top:10px!important;right:auto!important}
html body #finish .result-reference-bouquet .bf-b {left:50px!important;top:0!important;right:auto!important}
html body #finish .result-reference-bouquet .bf-c {right:10px!important;left:auto!important;top:12px!important}
html body #finish .result-reference-bouquet .bf-d {left:34px!important;top:35px!important;right:auto!important}
html body #finish .result-reference-bouquet .bf-e {right:34px!important;top:35px!important;left:auto!important}
html body #finish .result-reference-bouquet .bouquet-leaf,html body #finish .result-reference-bouquet .bouquet-wrap {display:none!important}

/* ===== screenshot-fixes.css ===== */
/* v0.6.7 — bounded artwork and shared header geometry. */
html body #garden #collectionFeatured {align-items:center!important;grid-template-columns:86px minmax(0,1fr)!important}
html body #garden #collectionFeatured .collection-featured-art {box-sizing:border-box!important;position:relative!important;display:grid!important;place-items:center!important;align-self:center!important;width:86px!important;min-width:86px!important;max-width:86px!important;height:100px!important;min-height:100px!important;max-height:100px!important;padding:5px!important;overflow:hidden!important;border-radius:12px!important;background:#efeee1!important}
html body #garden #collectionFeatured .collection-featured-art::before,html body #garden #collectionFeatured .collection-featured-art::after {display:none!important}
html body #garden #collectionFeatured .collection-locked-art {box-sizing:border-box!important;width:64px!important;min-width:0!important;height:64px!important;min-height:0!important;margin:0!important}
html body #garden #collectionFeatured .collection-locked-art svg {width:40px!important;height:40px!important}
html body #garden #collectionFeatured .collection-featured-art>img {position:static!important;width:76px!important;height:88px!important;min-width:0!important;min-height:0!important;max-width:76px!important;max-height:88px!important;object-fit:contain!important}
html body #garden #collectionGardenCta.collection-garden-card {position:relative!important;isolation:isolate!important;min-height:100px!important;padding:15px!important;background:linear-gradient(90deg,#193d2bef,#193d2b80),url('../ui/collection-my-garden-v2.webp') center 55%/cover!important;border-color:#839579!important;overflow:hidden!important}
html body #garden #collectionGardenCta .collection-garden-card__copy {max-width:68%!important}
html body #garden #collectionGardenCta .collection-garden-card__copy b {color:#fff9e9!important;font-size:25px!important}
html body #garden #collectionGardenCta .collection-garden-card__copy small {color:#eef1df!important;font-size:11px!important}
html body #garden #collectionGardenCta .collection-garden-card__action {display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;flex:0 0 auto!important;width:auto!important;height:36px!important;min-width:0!important;padding:7px 10px!important;background:#f8f3df!important;border-radius:20px!important;color:#36543a!important;box-sizing:border-box!important}
html body #garden #collectionGardenCta .collection-garden-card__action>span {display:block!important;font:600 11px/1.2 system-ui,sans-serif!important;white-space:nowrap!important}
html body #garden #collectionGardenCta .collection-garden-card__action svg {display:block!important;width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important}
html body #home>.petal-shared-head,html body #garden>.petal-shared-head,html body #shopSheet .shop-reference-shell>.petal-shared-head {box-sizing:border-box!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px!important;align-items:center!important;height:var(--petal-mobile-header-h)!important;min-height:var(--petal-mobile-header-h)!important;max-height:var(--petal-mobile-header-h)!important;flex:0 0 var(--petal-mobile-header-h)!important;padding:0!important;margin:0 0 12px!important;gap:8px!important}
html body #shopSheet .shop-compact-heading h2 {font:400 27px/1.1 Georgia,serif!important;color:#39583f!important;letter-spacing:.025em!important;position:relative!important;padding-bottom:10px!important}
html body #shopSheet .shop-compact-heading h2::after {content:'❧';display:block;position:absolute;bottom:-7px;left:0;width:100%;text-align:center;color:#aa8d50;font:400 19px/1 Georgia,serif;background:linear-gradient(#aa8d5055,#aa8d5055) center/100% 1px no-repeat}
html body #daily .daily-flower-visual {display:grid!important;place-items:center!important;position:relative!important;box-sizing:border-box!important;height:clamp(88px,16dvh,140px)!important;min-height:0!important;max-height:140px!important;flex:0 0 auto!important;overflow:hidden!important;margin:8px 0!important;padding:0!important}
html body #daily .daily-flower-visual .daily-flower-cluster {width:clamp(88px,16dvh,140px)!important;min-width:0!important;max-width:140px!important;height:clamp(88px,16dvh,140px)!important;min-height:0!important;max-height:140px!important;aspect-ratio:1!important;position:relative!important;inset:auto!important;margin:0!important;transform:none!important}
html body #daily .daily-flower-visual #dailyFlowerArt {box-sizing:border-box!important;position:static!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:140px!important;max-height:140px!important;object-fit:contain!important;margin:0!important;padding:5px!important;transform:none!important}
html body #free .free-hero p {display:none!important}
html body #free {height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;justify-content:flex-start!important;gap:0!important}
html body #free>.free-page-shell {flex:1 1 0!important;min-height:0!important;height:auto!important;max-height:none!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:7px!important;overflow:hidden!important}
html body #free .free-hero {flex:0 0 auto!important;height:auto!important;min-height:0!important;padding:5px 9px!important}
html body #free .free-hero-art {width:40px!important;height:40px!important}
html body #free .free-hero h2 {font-size:22px!important;margin:4px 0!important}
html body #free .free-config-card {flex:0 0 auto!important;min-height:0!important;height:auto!important;padding:8px!important}
html body #free .difficulty-grid {display:grid!important;flex:none!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,42px)!important;gap:5px!important;height:auto!important}
html body #free .diff-card {box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;height:42px!important;min-height:42px!important;padding:7px 9px!important;gap:4px!important}
html body #free .diff-card h4 {font-size:16px!important;margin:0!important}
html body #free .diff-card .diff-solved {display:none!important}
html body #free .free-section-head h3 {font-size:18px!important;line-height:1.15!important;margin:0!important}
html body #free .free-section-head small {font-size:10px!important}
html body #free .free-mechanic-grid {grid-template-rows:repeat(2,40px)!important;gap:5px!important}
html body #free .free-mechanic-card {min-height:40px!important;height:40px!important;padding:4px!important}
html body #free .free-launch-card {flex:0 0 auto!important;min-height:54px!important;height:auto!important;padding:8px 10px!important;margin:0!important}
html body #free .free-launch-copy strong {font-size:16px!important}
html body #free #newBloomBtn {min-height:38px!important;padding:7px 10px!important;font-size:12px!important}
@media(max-height:650px) {
 html body #free .free-hero-art,html body #free .free-hero-kicker,html body #free .free-section-head small,html body #free .free-launch-copy>small,html body #free #freeSelectionMeta {display:none!important}
 html body #free>.free-page-shell {gap:4px!important}
 html body #free .free-config-card {padding:6px!important}
 html body #free .free-hero h2 {font-size:19px!important}
}

/* v0.6.8 — use available height and prevent inherited column layout clipping. */
html body #free>.free-page-shell {display:grid!important;grid-template-rows:auto minmax(124px,1fr) minmax(128px,1fr) auto!important;align-content:stretch!important;justify-content:stretch!important;gap:10px!important;padding:6px 0 10px!important;box-sizing:border-box!important}
html body #free .free-config-card {display:flex!important;flex-direction:column!important;min-height:0!important;height:100%!important;box-sizing:border-box!important;padding:10px!important}
html body #free .difficulty-grid {flex:1 1 auto!important;height:auto!important;grid-template-rows:repeat(2,minmax(40px,1fr))!important}
html body #free .diff-card {height:100%!important;min-height:40px!important}
html body #free #freeMechanicGrid {flex:1 1 auto!important;height:auto!important;min-height:0!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(42px,1fr))!important;gap:6px!important;overflow:visible!important}
html body #free #freeMechanicGrid .free-mechanic-card {box-sizing:border-box!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;height:100%!important;min-height:42px!important;max-height:none!important;padding:6px 4px!important;gap:4px!important;overflow:visible!important}
html body #free #freeMechanicGrid .free-mechanic-card b {position:static!important;display:block!important;flex:0 1 auto!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;font:600 12px/1.3 system-ui,sans-serif!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;transform:none!important}
html body #free #freeMechanicGrid .free-mechanic-card i {position:relative!important;inset:auto!important;flex:0 0 22px!important;width:22px!important;height:22px!important;margin:0!important;transform:none!important}
@media(max-height:650px) {
 html body #free>.free-page-shell {gap:5px!important;padding:0 0 5px!important;grid-template-rows:auto minmax(116px,1fr) minmax(116px,1fr) auto!important}
 html body #free .free-config-card {padding:6px!important}
 html body #free #freeMechanicGrid .free-mechanic-card b {font-size:11px!important}
}

/* ===== large-screen.css ===== */
/* ==========================================================================
   Petalattice — Büyük ekran (tablet / masaüstü) uyum katmanı
   v0.7.0  ·  en son yüklenen stil dosyası

   NEDEN VAR
   Uygulama telefon için tasarlandı. Zamanla eklenen katmanlar (app-core,
   app-shell, app-performance, screenshot-fixes ...) genişlik için birbirinden
   habersiz dört ayrı sayı kullanıyordu: 480, 560, 760/860 ve 1180px. Aynı
   ekranda kabuk 1180, alt çubuk 560 olabiliyordu; ekranlar bu yüzden kayık
   duruyordu.

   NE YAPAR
   Genişlik için TEK doğruluk kaynağı tanımlar: --pl-w. Eski jetonlar
   (--petal-desktop-shell, --petal-shell-width, --petal-desktop-v04) artık
   --pl-w'ye bağlanır, böylece hiçbir katman farklı bir sayıya kaçamaz.

   GÖRSEL KALİTE
   Burada hiçbir görsel yeniden ölçeklenmez, kırpılmaz, esnetilmez veya
   yeniden sıkıştırılmaz. Yalnızca kapsayıcı genişlikleri, hizalama ve dikey
   boşluklar düzenlenir.

   TÜRETİLEN JETONLAR
     --pl-w          içerik kolonunun dış genişliği
     --pl-nav-w      alt gezinme çubuğu (kolon eksi 18px yan boşluk)
     --pl-journey-w  Yolculuk sahnesi (941x1672 oranı korunur)
   ========================================================================== */

/* --- 1. Tek yetkili kolon genişliği -------------------------------------- */

:root{
  --pl-w:100%;
}

@media (min-width:620px){  :root{ --pl-w:min(560px, calc(100vw - 28px)); } }
@media (min-width:820px){  :root{ --pl-w:min(640px, calc(100vw - 40px)); } }
@media (min-width:1000px){ :root{ --pl-w:min(760px, calc(100vw - 56px)); } }
/* Geniş masaüstü: uygulamanın kendi iki kolonlu 1180px tasarımı. */
@media (min-width:1200px) and (min-height:720px){
  :root{ --pl-w:min(1180px, calc(100vw - 64px)); }
}

/* Eski katmanlardaki genişlik jetonları artık --pl-w'den türer.
   Böylece 480 / 560 / 760 / 860 / 1180 çelişkisi tek yerden yönetilir. */
@media (min-width:620px){
  :root{
    --petal-desktop-shell:var(--pl-w);
    --petal-shell-width:var(--pl-w);
    --petal-desktop-v04:var(--pl-w);
  }
}

/* Alt çubuk, ekranın iç boşluğu kadar daralarak içerik kolonuyla
   birebir aynı genişlikte durur. */
:root{
  --pl-nav-w:calc(var(--pl-w) - 2 * var(--petal-mobile-screen-x, 18px));
}

/* Yolculuk sahnesi 941×1672 oranını korur: genişliği yükseklikten türetilir,
   böylece görsel asla esnetilmez veya kırpılmaz. */
:root{
  --pl-journey-w:min(
    var(--pl-w),
    calc((100dvh - var(--petal-mobile-nav-h, 86px)) * 941 / 1672)
  );
}

/* --- 2. Tüm ekranlar aynı kolonu kullanır -------------------------------- */

@media (min-width:620px){
  html body #home.home-approved-v1,
  html body #free,
  html body #daily,
  html body #garden.collection-premium-page,
  html body #gardenPlay,
  html body #game,
  html body #game:not(.hidden){
    width:min(100%, var(--pl-w))!important;
    max-width:var(--pl-w)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html body #journey,
  html body #journey:not(.hidden){
    width:min(100%, var(--pl-journey-w))!important;
    max-width:var(--pl-journey-w)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Mağaza paneli #shopSheet içinde bir grid öğesi; yüzde genişlik burada
     kendi içeriğine göre çözülüp 612px'te kalıyordu. Görünüm alanına bağlı
     mutlak bir genişlik veriliyor ki panel de kolonu doldursun. */
  html body #shopSheet .shop-reference-shell,
  html body #shopSheet .sheet-panel,
  html body #shopSheet .monetization-panel{
    width:min(calc(100vw - 32px), var(--pl-w))!important;
    max-width:var(--pl-w)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* --- 3. Alt gezinme çubuğu her zaman kolonla aynı hizada -----------------
   app-performance.css içindeki birleşik kural çubuğu her ekranda 560px'e
   sabitliyordu; kolon 480 ya da 1180 olduğunda çubuk kayık duruyordu. */

@media (min-width:620px){
  html body #home .petal-shared-nav.petal-shared-nav,
  html body #free .petal-shared-nav.petal-shared-nav,
  html body #daily .petal-shared-nav.petal-shared-nav,
  html body #garden .petal-shared-nav.petal-shared-nav{
    width:min(100%, var(--pl-nav-w))!important;
    max-width:var(--pl-nav-w)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }
  html body #journey .petal-shared-nav.petal-shared-nav{
    width:min(100%, var(--pl-journey-w))!important;
    max-width:var(--pl-journey-w)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }
  html body #shopSheet .petal-shared-nav.petal-shared-nav{
    width:min(calc(100vw - 32px), var(--pl-nav-w))!important;
    max-width:var(--pl-nav-w)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }

  /* Geniş kolonda dört düğme uçlara savrulmaz, ortada toplanır. */
  html body #home .petal-shared-nav.petal-shared-nav,
  html body #free .petal-shared-nav.petal-shared-nav,
  html body #daily .petal-shared-nav.petal-shared-nav,
  html body #garden .petal-shared-nav.petal-shared-nav,
  html body #journey .petal-shared-nav.petal-shared-nav,
  html body #shopSheet .petal-shared-nav.petal-shared-nav{
    grid-template-columns:repeat(4, minmax(0, 168px))!important;
    justify-content:center!important;
    column-gap:clamp(8px, 2vw, 40px)!important;
  }
}

/* --- 4. Ana ekran: metin ile alt bilgi satırı üst üste binmez ------------
   Hızlı kartlardaki "Kalan Süre / Son seçim" satırı mutlak konumluydu; kart
   genişleyip metin iki satıra düştüğünde üzerine biniyordu. Artık akışta. */

@media (min-width:620px){
  html body #home .home-approved-feature .home-approved-feature-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    height:100%!important;
    min-height:0!important;
  }
  html body #home .home-approved-feature .home-approved-feature-copy>p{
    margin-bottom:10px!important;
    max-width:min(100%, 30ch)!important;
  }
  /* v0.7.3: kartlar uzayınca alt bilgi satırı en dibe itiliyor, ortada
     kocaman bir boşluk kalıyordu; artık metnin hemen altında duruyor. */
  html body #home .home-approved-feature .home-approved-time{
    position:static!important;
    margin-top:14px!important;
    width:max-content!important;
    max-width:100%!important;
    padding:0!important;
    background:none!important;
  }

  /* "Başla" düğmesi kartın içinde kalır; "Bölüm 1" başlığı kırpılmaz.
     v0.7.3: kart tam yükseklik olduğunda metin bloğu tepeye yapışıyordu;
     artık dikeyde ortalanıp alt düğmeye pay bırakıyor. */
  html body #home .home-approved-resume{
    overflow:hidden!important;
    align-items:flex-start!important;
    justify-content:center!important;
  }
  html body #home .home-approved-resume .home-approved-resume-art{
    align-self:stretch!important;
  }
  html body #home .home-approved-resume .home-approved-resume-copy{
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding-top:0!important;
    padding-bottom:clamp(84px, 10vh, 132px)!important;
  }
  html body #home .home-approved-resume .home-approved-continue{
    bottom:clamp(16px, 2.4vh, 28px)!important;
  }
  /* İlerleme çubuğu düğmenin üstünde kalır. */
  html body #home .home-approved-resume .home-approved-progress{
    bottom:calc(clamp(16px, 2.4vh, 28px) + 58px)!important;
  }
}

/* --- 5. Dikey tabletlerde içerik dikeyde ortalanır ----------------------- */

@media (min-width:761px) and (orientation:portrait){
  html body #home.home-approved-v1{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:clamp(12px, 1.6vh, 22px)!important;
    padding-bottom:calc(var(--petal-mobile-nav-h, 86px) + 18px)!important;
  }
  html body #home .home-approved-head{ flex:0 0 auto!important; }
  html body #home .home-approved-resume{
    height:auto!important;
    min-height:clamp(300px, 30dvh, 430px)!important;
    flex:0 0 auto!important;
  }
  html body #home .home-approved-feature-row{
    height:auto!important;
    min-height:clamp(158px, 15dvh, 210px)!important;
    flex:0 0 auto!important;
  }
  html body #home .home-approved-feature{
    height:auto!important;
    min-height:clamp(158px, 15dvh, 210px)!important;
  }
  html body #home .home-approved-summary{
    height:auto!important;
    min-height:clamp(118px, 11dvh, 160px)!important;
    flex:0 0 auto!important;
  }
}

/* --- 6. Yolculuk sahnesi kolonu doldurur --------------------------------- */

@media (min-width:620px){
  html body #journey .card.page-card,
  html body #journey .journey-map,
  html body #journey .map-grid,
  html body #journey .journey-scroll,
  html body #journey .journey-immersive-wrap{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body #journey .journey-immersive-stage.journey-immersive-stage{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:941 / 1672!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background-size:100% 100%!important;
    background-position:center top!important;
  }
  html body #journey .journey-premium-hud,
  html body #journey .journey-head,
  html body #journey .journey-chapter-card{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

/* --- 7. Oyun ekranı: tahta boşluğu doldurur, alt panel kırpılmaz --------- */

@media (min-width:620px){
  html body #game:not(.hidden){
    display:flex!important;
    flex-direction:column!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
  }
  html body :is(#game,#loadoutStage) .board-stage{
    flex:1 1 0!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
  }
}

/* --- 8. Koleksiyon: sağ kolon sol kolonla aynı hizadan başlar ------------ */

@media (min-width:1200px) and (min-height:720px){
  html body #garden .collection-filter-row{
    align-self:start!important;
    margin-top:0!important;
  }
  html body #garden .collection-garden-card,
  html body #garden .collection-title-block{
    align-self:start!important;
    margin-top:0!important;
  }
}

/* --- 9. Geniş yatay ekranda oyun: tahta büyür, araçlar sağ kolona geçer ---
   .side-column zaten HTML'de var (display:contents ile mobilde şeffaf).
   Geniş ekranda gerçek bir sağ kolona dönüşüyor; tahta kalan tüm alanı
   kaplıyor. Çiçek paleti ve ipucu/not/geri araçları yukarıdan aşağıya
   sıralanıyor. */

@media (min-width:1100px) and (min-height:640px) and (orientation:landscape){
  html body #game:not(.hidden){
    width:min(calc(100vw - 48px), 1560px)!important;
    max-width:min(calc(100vw - 48px), 1560px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body #game .game-shell{
    flex-direction:row!important;
    align-items:stretch!important;
    max-width:100%!important;
    width:100%!important;
    gap:clamp(14px, 1.6vw, 26px)!important;
    min-height:0!important;
  }

  html body :is(#game,#loadoutStage) .board-stage{
    order:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
  }

  html body #game .side-column{
    display:flex!important;
    order:2!important;
    flex:0 0 clamp(268px, 23vw, 350px)!important;
    flex-direction:column!important;
    gap:clamp(10px, 1.2vh, 16px)!important;
    min-height:0!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
  }

  html body #game .side-column>.hud,
  html body #game .side-column>.game-premium-stats,
  html body #game .side-column>.dock{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    flex:0 0 auto!important;
    position:static!important;
  }

  /* Üst bilgi çubuğu sağ kolonda iki satıra yayılır. */
  html body #game .side-column>.hud{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    grid-template-rows:auto auto!important;
    gap:10px!important;
    align-items:center!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    inset:auto!important;
  }
  html body #game .side-column>.hud>.game-menu-trigger{
    grid-area:1 / 1 / 2 / 2!important;
    align-self:center!important;
    justify-self:start!important;
  }
  html body #game .side-column>.hud>.hud-title{
    grid-area:1 / 2 / 2 / 3!important;
    text-align:center!important;
    min-width:0!important;
    margin:0!important;
  }
  html body #game .side-column>.hud>.gameplay-settings-source{
    grid-area:1 / 3 / 2 / 4!important;
    align-self:center!important;
    justify-self:end!important;
  }
  html body #game .side-column>.hud>.game-quick-actions{
    grid-area:2 / 1 / 3 / 4!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    position:static!important;
    margin:0!important;
  }

  /* İstatistikler alt alta değil, üç sütun; yer kaplamasın. */
  html body #game .side-column>.game-premium-stats{
    display:grid!important;
    grid-template-columns:repeat(3, minmax(0,1fr))!important;
    gap:8px!important;
  }

  /* Araç ve palet blokları dikeyde sıralanır. */
  html body #game .side-column>.dock{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    --dock-w:100%!important;
    padding:0!important;
    background:none!important;
    box-shadow:none!important;
    border:0!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  html body #game .side-column>.dock .dock-tools{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:8px!important;
  }
  html body #game .side-column>.dock .palette{
    display:grid!important;
    grid-template-columns:repeat(3, minmax(0,1fr))!important;
    gap:8px!important;
  }
  html body #game .side-column>.dock .palette .color-btn{
    height:auto!important;
    min-height:clamp(58px, 7.4vh, 82px)!important;
    aspect-ratio:1 / 1!important;
  }

  /* app-shell.css oyun kabuğunu 760px'e sabitliyordu. */
  html body #game .game-premium-stats,
  html body #game .dock{
    max-width:100%!important;
  }
}

/* v0.7.2: selected rule stays readable; compact enough for the phone layout. */
html body #free #freeRuleDescription{display:block!important;margin:6px 4px 0!important;font:400 13px/1.4 system-ui,sans-serif!important;color:#46543b!important}
html body #journey .journey-current-label{display:none!important}
@media(min-width:1100px) and (min-height:640px) and (orientation:landscape){
  /* Enlarge only full-size flowers, never pencil notes or overlays. */
  html body :is(#game,#loadoutStage) .cell > .flower-token.tok-lg{width:94%!important;height:94%!important;max-width:94%!important;max-height:94%!important}
  html body #game .palette .color-btn:not(.clear-btn) > .flower-token{width:clamp(42px,4.2vw,58px)!important;height:clamp(42px,4.2vw,58px)!important;max-width:58px!important;max-height:58px!important;flex-shrink:0!important}
  html body #game .side-column>.hud>.game-quick-actions{display:none!important}
  html body #game .side-column>.hud{grid-template-rows:auto!important}
  html body #game .side-column>.dock .dock-tools{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body #game .side-column>.dock .dock-tools .tool{font-size:13px!important;min-height:44px!important}
  html body #game .palette .clear-btn{grid-column:1/-1!important;aspect-ratio:auto!important;min-height:40px!important;height:40px!important}
}
@media(min-width:1200px) and (min-height:720px){
  html body #home.home-approved-v1{align-content:start!important;justify-content:flex-start!important;padding-top:28px!important}
  html body #home .home-approved-head{margin-top:0!important}
  html body #shopSheet #shopPremium .bundle-card{grid-template-columns:152px minmax(0,1fr)!important;column-gap:20px!important;padding:18px!important}
  html body #shopSheet #shopPremium .bundle-card .bundle-art{width:152px!important;max-width:152px!important;gap:8px!important}
  html body #shopSheet #shopPremium .bundle-card .bundle-art>.shop-board-preview{width:112px!important;height:112px!important}
  html body #shopSheet #shopPremium .bundle-card .bundle-art>img{width:132px!important;height:132px!important}
  html body #shopSheet #shopPremium .bundle-card small{font-size:10px!important}
  html body #shopSheet #shopPremium .bundle-card ul,html body #shopSheet #shopPremium .bundle-card p{font-size:13px!important}
  html body #shopSheet #shopPremium .bundle-card button{font-size:13px!important;min-height:42px!important}
}

@media(min-width:1200px) and (min-height:720px){
html body #home.home-approved-v1{grid-template-rows:72px minmax(0,1fr) 180px!important}
html body #home .home-approved-head{height:72px!important;min-height:72px!important;align-self:start!important}
}

/* --- 10. Çiçek avlusu: toprak şeridi ile fidan ikonu ayrışır --------------
   .gd-plot-visual grid + place-items:center olduğu için ikon dikeyde
   ortalanıyor, toprak ise ::before ile alta yaslanıyordu; ikinin alanı
   çakışıyordu. İkon toprağın üstüne alınıp arada nefes payı bırakılıyor. */

html body #gardenPlay.garden-page .gd-plot .gd-plot-visual{
  height:66px!important;
  min-height:66px!important;
  max-height:66px!important;
  flex:0 0 66px!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-plot-visual::before{
  inset:auto 16% 0!important;
  height:30px!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-seed-action{
  align-self:start!important;
  margin:0 0 0!important;
}
html body #gardenPlay.garden-page .gd-locked .gd-plot-visual{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  flex:0 1 auto!important;
}

/* --- 11. Koleksiyon: iki bağımsız kolon ---------------------------------
   Sol ve sağ blok tek bir CSS ızgarasının satırlarını paylaşıyordu; sağdaki
   "Çiçek Koleksiyonu" bloğu, soldaki kartların boyuna göre aşağı itilip
   filtre satırının altında ~100px boşluk bırakıyordu. Artık her kolon kendi
   dikey akışına sahip. Bahçem kartı da bu sayede serbestçe büyüyebiliyor. */

@media (min-width:1200px) and (min-height:720px){
  html body #garden .collection-premium-shell{
    display:grid!important;
    grid-template-columns:minmax(340px,.78fr) minmax(0,1.35fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    align-items:stretch!important;
    column-gap:22px!important;
    row-gap:0!important;
  }
  html body #garden .collection-col{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    min-height:0!important;
    min-width:0!important;
  }
  html body #garden .collection-col-left{ grid-column:1!important; }
  html body #garden .collection-col-right{ grid-column:2!important; }

  /* Kolon içindeki kartlar artık ızgara satırına değil akışa göre dizilir. */
  html body #garden .collection-col>*{
    grid-column:auto!important;
    grid-row:auto!important;
    margin:0!important;
    align-self:auto!important;
  }

  /* Bahçem kartı: sol kolonun üst bloğu. Dar bir şeritti; artık belirgin,
     kareye yakın bir kapak. (screenshot-fixes.css iki id'lik seçici
     kullandığı için aynı özgüllük burada da gerekiyor.) */
  html body #garden #collectionGardenCta.collection-garden-card{
    flex:0 0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-end!important;
    gap:14px!important;
    height:clamp(240px, 30vh, 340px)!important;
    min-height:clamp(240px, 30vh, 340px)!important;
    margin:0!important;
    padding:22px 24px!important;
    border-radius:22px!important;
  }
  html body #garden #collectionGardenCta .collection-garden-card__copy{
    max-width:100%!important;
    width:100%!important;
  }
  html body #garden #collectionGardenCta .collection-garden-card__copy b{
    font-size:clamp(28px, 2.4vw, 38px)!important;
    line-height:1.1!important;
  }
  html body #garden #collectionGardenCta .collection-garden-card__copy small{
    font-size:13px!important;
    line-height:1.45!important;
  }
  html body #garden #collectionGardenCta .collection-garden-card__action{
    height:42px!important;
    padding:9px 16px!important;
  }
  html body #garden #collectionGardenCta .collection-garden-card__action>span{
    font-size:13px!important;
  }
  html body #garden .collection-col-left .collection-progress-card{
    flex:0 0 auto!important;
  }
  /* Öne çıkan çiçek kartı içeriği kadar yer kaplar; kalan alanı doldurup
     ortasında boşluk bırakmaz. */
  html body #garden .collection-col-left .collection-featured{
    flex:0 0 auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  /* Sağ kolon: filtreler üstte, başlık hemen altında, ızgara kalanı doldurur. */
  html body #garden .collection-col-right .collection-filter-row{ flex:0 0 auto!important; }
  html body #garden .collection-col-right .collection-grid-head-v2{ flex:0 0 auto!important; }
  html body #garden .collection-col-right .collection-flower-grid{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
  }
}

/* Dar ekranlarda sarmalayıcılar şeffaflaşır; eski sıralama birebir korunur. */
@media (max-width:1199px), (max-height:719px){
  /* display:contents ile sarmalayıcılar kaybolur; order'ın işlemesi için
     kabuğun kendisi tek kolonlu bir flex olmalı. */
  html body #garden .collection-premium-shell{
    display:flex!important;
    flex-direction:column!important;
  }
  html body #garden .collection-col{ display:contents!important; }
  html body #garden .collection-garden-card{ order:1!important; }
  html body #garden .collection-progress-card{ order:2!important; }
  html body #garden .collection-filter-row{ order:3!important; }
  html body #garden .collection-featured{ order:4!important; }
  html body #garden .collection-grid-head-v2{ order:5!important; }
  html body #garden .collection-flower-grid{ order:6!important; }
  html body #garden .collection-empty{ order:7!important; }
}

/* ===== board-theme.css ===== */
/* ==========================================================================
   Petalattice — Oyun zemini: bölüm sahnesi + tahta tonu
   v0.7.4  ·  index.html'de en son yüklenen stil dosyası

   NEDEN VAR
   --game-scene-art değişkeni oyuna girildiğinde bölümün sahnesini zaten
   alıyordu (applyGameScene → sceneForGame). Ancak app-core.css içindeki
   "oyun yüzeyini sakinleştir" kuralı sahnenin üstüne %94-97 opak krem bir
   katman koyduğu için sahne hiç görünmüyordu; arka plan her bölümde aynıydı.

   NE YAPAR
   O sabit katman --game-veil jetonuna çevrildi. Sahne bölüme ait kalır,
   perdenin rengi ve yoğunluğu ise takılı tahta derisine göre değişir.
   Böylece "Boğaz bölümünü Gece Serası tahtasıyla oynuyorum" hissi doğar.

   MALİYET
   Yeni görsel dosya yok. Mevcut sahneler ve mevcut deri paleti kullanılır;
   paket boyutu ve indirme süresi değişmez.

   OKUNABİLİRLİK
   Perde, 81 hücrenin okunmasını zorlaştırmayacak yoğunlukta tutulur ve
   tahtanın altına ayrı bir ayrışma gölgesi eklenir.
   ========================================================================== */

#game{
  /* Varsayılan (deri takılı değilken): sıcak krem, sahne hafifçe sezilir. */
  --game-veil-top:rgba(255,255,255,.58);
  --game-veil-a:rgba(251,248,241,.86);
  --game-veil-b:rgba(243,234,219,.92);
  --game-board-halo:0 18px 40px rgba(84,63,31,.16);
  /* Bölüm rengi JS tarafından yazılır; yazılmazsa görünmez kalır. */
  --game-chapter-wash:rgba(0,0,0,0);
  --game-chapter-glow:rgba(0,0,0,0);
}

/* --- Tahta derileri --------------------------------------------------- */

/* Ay Altını — sıcak altın ışık */
html[data-board-skin="moon-gilt"] #game{
  --game-veil-top:rgba(255,246,224,.60);
  --game-veil-a:rgba(250,242,224,.85);
  --game-veil-b:rgba(238,222,187,.92);
  --game-board-halo:0 18px 42px rgba(238,192,80,.26);
}

/* Sakura — pembe şafak */
html[data-board-skin="sakura"] #game{
  --game-veil-top:rgba(255,244,249,.60);
  --game-veil-a:rgba(252,240,245,.85);
  --game-veil-b:rgba(244,222,233,.92);
  --game-board-halo:0 18px 42px rgba(242,137,191,.24);
}

/* Zümrüt — serin yeşil */
html[data-board-skin="emerald"] #game{
  --game-veil-top:rgba(240,252,246,.58);
  --game-veil-a:rgba(238,248,242,.85);
  --game-veil-b:rgba(218,238,228,.92);
  --game-board-halo:0 18px 42px rgba(89,211,151,.22);
}

/* Gece Serası — soğuk mavi-yeşil, akşam ışığı */
html[data-board-skin="night-conservatory"] #game{
  --game-veil-top:rgba(226,240,242,.44);
  --game-veil-a:rgba(196,216,219,.80);
  --game-veil-b:rgba(150,177,181,.90);
  --game-board-halo:0 18px 44px rgba(38,60,56,.34);
}

/* Fildişi Saray — sıcak fildişi ve altın */
html[data-board-skin="ivory-palace"] #game{
  --game-veil-top:rgba(255,251,240,.62);
  --game-veil-a:rgba(253,247,233,.86);
  --game-veil-b:rgba(240,228,199,.93);
  --game-board-halo:0 18px 42px rgba(179,155,99,.30);
}

/* --- Zemin ------------------------------------------------------------
   Sahne katmanı ayrı bir sözde öğede durur ki perdeden bağımsız olarak
   filtrelenebilsin; perde onun üstünde, içerik ise ikisinin de üstünde. */

/* app-shell.css'te #game:not(.hidden) için background shorthand'i var;
   aynı pseudo-sınıfı burada da kullanmak gerekiyor. */
html body #game,
html body #game:not(.hidden){
  position:fixed!important;
  isolation:isolate!important;
  background-color:#f4ebda!important;
  background-image:
    radial-gradient(circle at 50% -12%, var(--game-veil-top), transparent 46%),
    radial-gradient(120% 70% at 50% 0%, var(--game-chapter-glow), transparent 62%),
    linear-gradient(180deg, var(--game-chapter-wash), transparent 58%),
    linear-gradient(180deg, var(--game-veil-a), var(--game-veil-b))!important;
  background-size:auto!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

/* Eski dekoratif katmanlar kapalı kalır. */
html body #game::before,
html body #game:not(.hidden)::before,
html body #game::after,
html body #game:not(.hidden)::after{
  content:none!important;
  display:none!important;
}

/* Tahta zeminden net ayrışsın. */
html body :is(#game,#loadoutStage) .board,
html body #game:not(.hidden) .board{
  box-shadow:var(--game-board-halo), 0 0 0 1px rgba(255,255,255,.35)!important;
}

/* Hareket azaltma tercihinde ekstra bir şey yapılmaz; katmanlar statiktir. */

/* ===== game-feel.css ===== */
/* ==========================================================================
   Petalattice — Oyun hissi ve okunabilirlik
   v0.7.6  ·  index.html'de en son yüklenen stil dosyası

   Bu dosya oyun ekranındaki dokunsal/görsel ayrıntıları toplar:
   tahtanın dikey konumu, ilerleme çubuğu, palet düğmeleri ve açılış
   ekranındaki logo okunabilirliği.
   ========================================================================== */

/* --- 1. Tahta dikeyde ortalanır -----------------------------------------
   .board-stage justify-content:flex-end idi; tahta üst bilgiyle arasında
   büyük bir boşluk bırakıp aşağı kayıyordu. Tahta + ilerleme çubuğu artık
   kalan alanın ortasında durur. */

html body :is(#game,#loadoutStage) .board-stage{
  justify-content:center!important;
}

/* --- 2. İlerleme çubuğu --------------------------------------------------
   3px'lik soluk bir çizgiydi. Artık biraz daha belirgin, yumuşak uçlu ve
   dolarken akıcı; tamamlandığında altına döner. */

html body #game .hud-strip{
  height:auto!important;
}
html body #game .progress-mini{
  height:6px!important;
  border-radius:999px!important;
  background:
    linear-gradient(180deg, rgba(96,84,58,.10), rgba(96,84,58,.16))!important;
  box-shadow:inset 0 1px 2px rgba(74,62,38,.14)!important;
  border:0!important;
  overflow:hidden!important;
}
html body #game .progress-mini>i{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.34), rgba(255,255,255,0) 58%),
    linear-gradient(90deg, #7f9350 0%, #6d8144 55%, #93a75c 100%)!important;
  box-shadow:
    0 0 8px rgba(126,148,79,.42),
    inset 0 -1px 0 rgba(52,66,30,.28)!important;
  transition:width .42s cubic-bezier(.22,.9,.28,1)!important;
}
/* Tahta dolduğunda çubuk altına döner. */
html body #game .progress-mini>i[style*="width: 100%"],
html body #game .progress-mini>i[style*="width:100%"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.46), rgba(255,255,255,0) 58%),
    linear-gradient(90deg, #c8a457 0%, #e0c078 50%, #c8a457 100%)!important;
  box-shadow:0 0 10px rgba(216,182,110,.5), inset 0 -1px 0 rgba(120,92,34,.3)!important;
}
@media (prefers-reduced-motion:reduce){
  html body #game .progress-mini>i{ transition:none!important }
}

/* --- 3. Palet: kalan sayı gösterilmeyen bölümler -------------------------
   Düğme iki satırlık bir ızgaraydı: üstte çiçek, altta kalan-sayı rozeti.
   Rozet gizlendiğinde alt satır (18px) yerinde kalıyor, çiçek yukarıda
   küçücük duruyordu. Bu bölümlerde palet kare düğmelere geçer ve çiçek
   düğmeyi doldurur. Sınıf app.js tarafından eklenir. */

html body #game .palette.palette-no-counts{
  align-items:center!important;
}
html body #game .palette.palette-no-counts .color-btn{
  grid-template-rows:minmax(0,1fr)!important;
  grid-template-columns:minmax(0,1fr)!important;
  place-items:center!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1 / 1!important;
  padding:2px!important;
}
html body #game .palette.palette-no-counts .color-btn > .flower-token{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
/* Çiçek atlası kullanan derilerde 3x3 sprite hizası korunur. */
html[data-flower-skin]:not([data-flower-skin="default"]) body #game
  .palette.palette-no-counts .color-btn > .flower-token.has-image[data-flower-index]{
  background-size:300% 300%!important;
  background-position:var(--flower-x) var(--flower-y)!important;
}
/* "Temizle" düğmesi de aynı kareye oturur. */
html body #game .palette.palette-no-counts .color-btn.clear-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* --- 4. Açılış: "Petalattice" yazısının okunabilirliği -------------------
   Yazı koyu zümrüt, arkasındaki bahçe de yeşil olduğu için kaynıyordu.
   Arkasına yumuşak bir ışık halesi geri geldi. Hale yazının kendisiyle
   birlikte değil, ondan hemen önce açılır; böylece yazı ışığın içinden
   çıkıyormuş gibi görünür.

   Not: soldan sağa yazılma efekti artık sarmalayıcıya değil doğrudan
   görsele uygulanır — aksi halde hale de kırpılır ve kenarı görünürdü. */

/* Keep the wordmark light inside its own area, below the logo. */
#appSplash .pg-logo-wrap{z-index:2;isolation:isolate}
#appSplash .pg-wordmark-wrap{
  z-index:1;clip-path:none!important;animation:none!important;
  overflow:hidden!important;isolation:isolate;
}
#appSplash .pg-wordmark{
  position:relative;z-index:1;clip-path:inset(0 100% 0 0);
  animation:pgWrite .85s cubic-bezier(.4,0,.2,1) 2.05s both;
  filter:drop-shadow(0 1px 0 rgba(255,235,184,.55)) drop-shadow(0 2px 2px rgba(11,29,19,.5))!important;
}
#appSplash .pg-wordmark-wrap::before{
  content:"";display:block!important;position:absolute;
  left:50%;top:50%;width:100%;height:100%;
  transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(255,239,200,.3) 0%,rgba(255,235,190,.13) 42%,rgba(255,235,190,0) 72%);
  filter:none;opacity:0;z-index:0;pointer-events:none;
  animation:pgHalo 1.25s ease 1.85s both;
}
@keyframes pgHalo{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
  #appSplash .pg-wordmark{clip-path:none!important;animation:none!important}
  #appSplash .pg-wordmark-wrap::before{animation:none!important;opacity:1!important}
}

/* ==========================================================================
   v0.7.7 — Efektler ve seçim vurgusu
   Buradaki her animasyon yalnızca transform ve opacity kullanır; ikisi de
   compositor'da çalıştığı için yerleşim (layout) ve boyama (paint)
   tetiklemez. Gölge, filtre ve arka plan rengi animasyonu bilinçli olarak
   kullanılmamıştır — 81 hücrede kare düşmesinin ana sebebi bunlardır.
   ========================================================================== */

/* --- 5. Bölge tamamlama dalgası ------------------------------------------
   Satır, sütun ya da 3x3 tamamlandığında bölge boyunca sırayla geçen bir
   nabız. Gecikme JS tarafından --wave-delay ile hücre hücre verilir. */

/* Nabız yalnızca hücrenin kendisine uygulanır. Token'a ayrıca animasyon
   vermek (özellikle rotate) arka plan görselini her karede yeniden
   rasterize ettiriyor ve yavaş telefonda kare düşürüyordu; ölçümde token
   animasyonunu kaldırmak dalga maliyetini yarıya indirdi. */
html body :is(#game,#loadoutStage) .cell.wave{
  animation:plWave .40s cubic-bezier(.3,.9,.35,1) var(--wave-delay,0ms) both!important;
}
@keyframes plWave{
  0%  { transform:scale(1) }
  36% { transform:scale(1.10) }
  100%{ transform:scale(1) }
}

/* --- 6. Seçim vurgusu ----------------------------------------------------
   Bir çiçeğe dokunulduğunda aynı çiçekler ve aynı satır/sütun/bölge daha
   net ayrışsın.

   PERFORMANS NOTU — burada ölçüm yaptım, önemli:
   İlk denemede aynı/seçili çiçeklerin token'ına transform:scale + transition
   koymuştum. Token'lar arka plan görseli taşıdığı için ölçeklenince yeniden
   rasterize ediliyorlar; bir seçimde ~25 hücre birden bunu yapınca yavaş
   telefonda 52 fps'den 41 fps'ye düşüyordu (uzun kare 14 → 32).
   Bu yüzden ölçekleme ve geçişler kaldırıldı. Ayrım artık yalnızca zemin
   rengi ve outline ile yapılıyor: ikisi de seçim değiştiğinde bir kez
   boyanır, kare başına maliyet getirmez. Görsel olarak da daha net. */

html body :is(#game,#loadoutStage) .cell.peer:not(.same):not(.selected){
  background:#e6ecdd!important;
}
html body :is(#game,#loadoutStage) .cell.same:not(.selected){
  background:#f7ecc6!important;
  outline:2px solid rgba(198,158,68,.75)!important;
  outline-offset:-2px!important;
  z-index:3;
}
html body :is(#game,#loadoutStage) .cell.selected{
  background:#fdf5d6!important;
  outline:3px solid rgba(143,113,44,.95)!important;
  outline-offset:-3px!important;
  z-index:4;
}
/* Aynı çiçekler bir tık daha okunaklı olsun diye yalnızca opaklık
   kullanılır; opaklık compositor'da çalışır, yeniden raster gerektirmez. */
html body :is(#game,#loadoutStage) .cell:not(.peer):not(.same):not(.selected) > .flower-token{
  opacity:.82!important;
}
html body :is(#game,#loadoutStage) .cell.same > .flower-token,
html body :is(#game,#loadoutStage) .cell.selected > .flower-token{
  opacity:1!important;
}

@media (prefers-reduced-motion:reduce){
  html body :is(#game,#loadoutStage) .cell.wave{ animation:none!important }
}

/* ===== garden-growth.css ===== */
/* ============================================================
   garden-growth.css — v0.8.0
   Bahçem ekranının büyüme aşamaları, hasat kutlaması ve
   "hasada hazır" vurgusu.

   NEDEN AYRI DOSYA: bu projede bahçe stilleri altı ayrı katmana
   yayılmış (app-core, garden, garden-renewal, compact-surfaces,
   five-screen-polish, app-performance) ve hepsi #gardenPlay.garden-page
   zincirini !important ile kullanıyor. Aynı özgüllüğü yakalamayan
   her deneme sessizce kayboluyor. Bu dosya en son yükleniyor ve
   aynı zincir şeklini kullanıyor.

   PERFORMANS: buradaki hareketli her şey yalnızca transform ve
   opacity kullanır. Arka plan görseli taşıyan bir öğeyi ölçeklemek
   yeniden rasterize ettiriyor (0.7.7'de bunu ölçüp geri almıştım),
   bu yüzden filiz çizimleri SVG, hasat yaprakları ise düz renk.
   ============================================================ */

/* ---- 1. AŞAMA ÇİZİMLERİ (tohum, filiz) ---- */
html body #gardenPlay.garden-page .gd-plot .gd-sprout{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  width:75%!important;
  max-width:66px!important;
  height:52px!important;
  margin:-10px 0 0!important;
  transform-origin:50% 100%!important;
  transition:transform .45s cubic-bezier(.34,1.1,.5,1)!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-sprout svg{
  width:100%!important;height:100%!important;display:block!important;
  filter:drop-shadow(0 2px 4px rgba(60,46,20,.26))!important;
}

/* Tohum aşaması bilinçli olarak küçük: parselde neredeyse hiçbir şey yok.
   "Daha yeni ektim" hissi bakışta okunmalı. */
html body #gardenPlay.garden-page .gd-plot .gd-stage-seed .gd-sprout{
  height:44px!important;max-width:52px!important;opacity:.95!important;
}

/* ---- 1b. BOŞ PARSEL ---- */
/* Boş parselin ikonu ile "filiz" aşamasının çizimi birbirine çok
   benziyordu; ekranda ikisi yan yana durunca boş parsel de büyüyormuş
   gibi görünüyordu. Boş parseli artık kesik çizgili bir halka ile
   "buraya ek" davetine çeviriyoruz — büyüyen bir şey değil, bir eylem. */
html body #gardenPlay.garden-page .gd-plot.gd-empty .gd-seed-action{
  display:grid!important;place-items:center!important;
  width:34px!important;height:34px!important;
  border-radius:50%!important;
  border:1.5px dashed rgba(122,108,70,.55)!important;
  background:rgba(255,252,244,.5)!important;
  opacity:.9!important;
}
html body #gardenPlay.garden-page .gd-plot.gd-empty .gd-seed-action svg{
  width:17px!important;height:17px!important;opacity:.75!important;
}

/* ---- 2. TOMURCUK: çiçek görseli var ama henüz açmamış ---- */
/* Doygunluğu ve parlaklığı düşürerek "henüz olmamış" hissi veriyoruz.
   filter statik (animasyonlu değil), yani kare başına maliyeti yok. */
html body #gardenPlay.garden-page .gd-plot .gd-stage-bud .gd-bloom{
  filter:saturate(.62) brightness(1.04) drop-shadow(0 3px 6px rgba(60,46,20,.24))!important;
  opacity:.9!important;
}

/* ---- 3. HASADA HAZIR ---- */
/* Eskiden hazır parseli sadece krem arka plan ve sarı rozet ayırıyordu.
   Artık toprağın üstünde yumuşak bir hâle var ve nefes alıyor. */
html body #gardenPlay.garden-page .gd-plot .gd-ready-glow{
  position:absolute!important;
  left:50%!important;bottom:2px!important;
  width:86px!important;height:86px!important;
  margin-left:-43px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(240,206,120,.55),rgba(240,206,120,.16) 46%,transparent 70%)!important;
  pointer-events:none!important;
  will-change:transform,opacity;
  animation:gdReadyBreath 2.8s ease-in-out infinite!important;
}
@keyframes gdReadyBreath{
  0%,100%{transform:scale(.86);opacity:.55}
  50%    {transform:scale(1.06);opacity:.95}
}
html body #gardenPlay.garden-page .gd-plot.gd-ready{
  border-color:rgba(206,170,88,.9)!important;
  box-shadow:0 0 0 2px rgba(226,190,110,.5),0 6px 16px rgba(120,92,32,.22)!important;
}

/* ---- 4. HASAT KUTLAMASI ---- */
html body #gardenPlay.garden-page .gd-plot .gd-burst{
  position:absolute!important;
  left:50%!important;bottom:34%!important;
  width:0!important;height:0!important;
  pointer-events:none!important;
  z-index:3!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-burst i{
  position:absolute!important;
  left:-4px!important;top:-6px!important;
  width:8px!important;height:11px!important;
  border-radius:60% 60% 55% 55%/70% 70% 40% 40%!important;
  background:linear-gradient(180deg,#f6d59a,#dfae63)!important;
  /* opacity BURADA !important OLARAK VERİLMEZ.
     İlk yazışımda "opacity:0!important" koymuştum ve yapraklar hiç
     görünmedi: !important bir bildirim, animasyon karelerini de yener.
     Başlangıç değerini keyframe'in kendisi (animation-fill-mode:both)
     zaten veriyor.

     will-change DA YOK, bilerek. Önce koymuştum: 9 hasat art arda
     yapıldığında 90 yaprak = 90 compositor katmanı demek oluyor ve
     ölçümde uzun kare sayısı 1'den 3'e çıkıyordu. Yapraklar zaten
     minik ve 620 ms yaşıyor; katman ipucunun getirisi maliyetini
     karşılamıyor. */
  animation:gdPetalFly .62s cubic-bezier(.22,.7,.3,1) both!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-burst i:nth-child(3n){
  background:linear-gradient(180deg,#f2b7c8,#d98fb0)!important;
}
html body #gardenPlay.garden-page .gd-plot .gd-burst i:nth-child(3n+1){
  background:linear-gradient(180deg,#cfe0a6,#9cbd6d)!important;
}
@keyframes gdPetalFly{
  0%  {opacity:0;transform:translate3d(0,0,0) scale(.4) rotate(0deg)}
  18% {opacity:1}
  100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1) rotate(var(--rot))}
}

/* ---- 5. HAREKET KAPALIYSA ---- */
/* Ayarlardan animasyon kapatıldığında ya da sistem "az hareket" derse
   hiçbir şey oynamaz; aşama çizimleri yerinde kalır, bilgi kaybolmaz. */
@media (prefers-reduced-motion: reduce){
  html body #gardenPlay.garden-page .gd-plot .gd-ready-glow,
  html body #gardenPlay.garden-page .gd-plot .gd-burst i{
    animation:none!important;
  }
  html body #gardenPlay.garden-page .gd-plot .gd-ready-glow{opacity:.8!important;transform:scale(1)!important}
  html body #gardenPlay.garden-page .gd-plot .gd-sprout{transition:none!important}
}
html body.no-anim #gardenPlay.garden-page .gd-plot .gd-ready-glow,
html body.no-anim #gardenPlay.garden-page .gd-plot .gd-burst i{animation:none!important}
html body.no-anim #gardenPlay.garden-page .gd-plot .gd-ready-glow{opacity:.8!important;transform:scale(1)!important}

/* ===== shop-front.css ===== */
/* ============================================================
   shop-front.css — v0.8.1
   Mağaza vitrini: "Bugünün Vitrini" kartı ve paket kartlarının
   büyütülmüş önizlemeleri.

   Bu dosya en son yükleniyor ve mağaza katmanlarındaki
   (app-core, visual-polish, compact-surfaces, large-screen)
   !important zincirleriyle aynı şekli kullanıyor.
   ============================================================ */

/* ---- BUGÜNÜN VİTRİNİ ---- */
html body #shopSheet .shop-featured{
  display:block!important;
  margin:0 0 14px!important;
  padding:13px 14px 15px!important;
  border-radius:20px!important;
  border:1px solid rgba(168,150,110,.34)!important;
  background:
    radial-gradient(120% 90% at 12% 0%,rgba(255,244,214,.9),transparent 60%),
    linear-gradient(180deg,rgba(255,252,244,.94),rgba(247,240,224,.9))!important;
  box-shadow:0 6px 18px rgba(80,66,38,.13)!important;
}
html body #shopSheet .shop-featured-head{
  display:flex!important;align-items:baseline!important;
  justify-content:space-between!important;gap:10px!important;
  margin:0 0 10px!important;
}
html body #shopSheet .shop-featured-head small{
  font:700 10px/1 system-ui,sans-serif!important;
  letter-spacing:.11em!important;color:#8a6f33!important;
}
html body #shopSheet .shop-featured-head i{
  font:400 10.5px/1 system-ui,sans-serif!important;
  font-style:normal!important;color:#948868!important;
}

html body #shopSheet .shop-featured-body{
  display:flex!important;align-items:center!important;
  gap:14px!important;
}
html body #shopSheet .shop-featured-art{
  position:relative!important;
  flex:0 0 108px!important;width:108px!important;
  display:grid!important;place-items:center!important;
}
/* Paket kartlarındaki tahta önizlemesi ~64px idi; o boyutta bir tahta
   derisini değerlendiremiyorsun. Vitrinde belirgin şekilde büyük. */
html body #shopSheet .shop-featured-art .shop-board-preview{
  width:100px!important;height:100px!important;
  border-width:8px!important;padding:2px!important;
}
/* Bu satır olmadan tahta önizlemesi boş çıkıyor: hücrelerdeki çiçek
   görselleri kendi doğal boyutlarına kaçıp çerçevenin dışına taşıyor
   (ilk denememde önizlemenin köşesinde tek bir kırmızı parça görünüp
   ızgara bomboş kalmıştı). Paket ve tasarım önizlemeleri de aynı
   kuralı kendi kapsamlarında tekrarlıyor. */
html body #shopSheet .shop-featured-art .shop-board-cell img{
  width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;
  margin:0!important;object-fit:contain!important;
}
html body #shopSheet .shop-featured-art .shop-board-preview:is([data-preview-skin="night-conservatory"],[data-preview-skin="ivory-palace"]){
  border-image-slice:22%!important;border-image-width:1!important;
  border-image-repeat:stretch!important;border-radius:0!important;
}
html body #shopSheet .shop-featured-art .shop-featured-flowers{
  position:absolute!important;right:-6px!important;bottom:-6px!important;
  width:52px!important;height:52px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 3px 6px rgba(60,46,20,.28))!important;
}
html body #shopSheet .shop-featured-art .atelier-default-flowers{
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;
  gap:3px!important;width:100px!important;
}
html body #shopSheet .shop-featured-art .atelier-default-flowers img{
  width:100%!important;height:auto!important;
}
html body #shopSheet .shop-featured-art .finish-skin-art{
  width:88px!important;height:88px!important;
}

html body #shopSheet .shop-featured-copy{
  flex:1 1 auto!important;min-width:0!important;
}
html body #shopSheet .shop-featured-kind{
  display:block!important;
  font:600 10px/1.2 system-ui,sans-serif!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
  color:#9a8b64!important;margin:0 0 3px!important;
}
html body #shopSheet .shop-featured-copy h3{
  margin:0 0 4px!important;
  font:400 19px/1.2 Georgia,serif!important;color:#3f3a22!important;
}
html body #shopSheet .shop-featured-copy p{
  margin:0 0 6px!important;
  font:400 11.5px/1.45 system-ui,sans-serif!important;color:#7d7355!important;
}
html body #shopSheet .shop-featured-save{
  display:inline-block!important;margin:0 0 8px!important;
  padding:3px 8px!important;border-radius:99px!important;
  background:rgba(184,150,74,.16)!important;
  font:600 10.5px/1 system-ui,sans-serif!important;
  font-style:normal!important;color:#7a6224!important;
}
html body #shopSheet button.shop-featured-buy{
  display:inline-block!important;width:auto!important;min-width:132px!important;
  margin:2px 0 0!important;padding:10px 18px!important;
  border:0!important;border-radius:14px!important;cursor:pointer!important;
  background:linear-gradient(180deg,#4a6b3c,#37542d)!important;
  color:#f5f2e4!important;
  font:700 13.5px/1 system-ui,sans-serif!important;
}
html body #shopSheet .shop-featured-short{
  display:block!important;margin:6px 0 0!important;
  font:600 10.5px/1 system-ui,sans-serif!important;color:#a4703f!important;
}

/* Her şeye sahipsen vitrin boş kalmasın, kapanış hissi versin. */
html body #shopSheet .shop-featured-done{
  text-align:center!important;padding:18px 16px!important;
}
html body #shopSheet .shop-featured-done b{
  display:block!important;margin:0 0 4px!important;
  font:400 17px/1.2 Georgia,serif!important;color:#3f3a22!important;
}
html body #shopSheet .shop-featured-done span{
  font:400 11.5px/1.45 system-ui,sans-serif!important;color:#7d7355!important;
}

/* ---- PAKET KARTLARI: ÖNİZLEME BÜYÜTME ---- */
/* Dört kart da aynı boilerplate'i tekrarlıyordu ve önizlemeler okunmuyordu.
   Metin tarafını app.js'te düzelttim (gerçek Petal tasarrufu), burası
   görsel tarafı. */
html body #shopSheet .bundle-card .bundle-art .shop-board-preview{
  width:78px!important;height:78px!important;
}

/* ---- DAR EKRAN ---- */
@media (max-width:420px){
  html body #shopSheet .shop-featured-art{flex:0 0 92px!important;width:92px!important}
  html body #shopSheet .shop-featured-art .shop-board-preview{width:86px!important;height:86px!important}
  html body #shopSheet .shop-featured-copy h3{font-size:17px!important}
}

/* ===== typography.css ===== */
/* Text needs room above accents and below descenders in every theme. */
html body .screen :is(h1,h2,h3,h4),
html body :is(.sheet,dialog,.gd-modal-panel) :is(h1,h2,h3,h4){
  line-height:1.25!important;
  padding-block:.1em .14em!important;
  box-sizing:border-box!important;
  min-width:0;
  overflow-wrap:break-word;
}
/* Names are content, not single-line badges. Keep the entire name visible. */
html body #home .home-approved-resume h2,
html body #journey .journey-hud-level h2,
html body #journey .journey-hud-chapter strong,
html body #garden .collection-featured-name,
html body #game .hud-title h2,
html body #daily .daily-flower-title-block h2{
  display:block!important;white-space:normal!important;
  -webkit-line-clamp:unset!important;line-clamp:unset!important;
  overflow:visible!important;text-overflow:clip!important;
  height:auto!important;max-height:none!important;
  line-height:1.25!important;padding-block:.1em .14em!important;
  overflow-wrap:anywhere!important;word-break:normal!important;
}
html body #journey .journey-hud-level,
html body #journey .journey-hud-chapter{
  min-width:0!important;overflow:visible!important;
}
html body #journey .journey-top-stack>.journey-premium-hud{
  height:auto!important;max-height:none!important;
}
/* Protect final-line descenders even in intentionally shortened descriptions. */
html body #home .home-approved-resume p,
html body #journey .journey-hud-level p,
html body #garden .collection-featured-description{
  line-height:1.45!important;padding-bottom:.18em!important;
}
html body .home-nav-item>span,
html body .tool-lbl,
html body #home .home-approved-summary-stats small{
  line-height:1.3!important;padding-block:.08em!important;
}
@media(max-width:760px){
  /* Let a long title expand its card instead of hitting the fixed CTA. */
  html body #home .home-approved-resume{
    height:auto!important;flex-basis:auto!important;flex-shrink:0!important;
  }
  html body #home .home-approved-resume .home-approved-resume-copy{
    position:relative!important;top:auto!important;bottom:auto!important;
    height:auto!important;max-height:none!important;
    padding-bottom:104px!important;
  }
  html body #home .home-approved-resume h2{font-size:clamp(23px,6.2vw,29px)!important}
  html body #journey .journey-hud-level h2{font-size:clamp(16px,4.4vw,21px)!important}
  html body #journey .journey-hud-chapter strong{font-size:clamp(13px,3.5vw,17px)!important}
}

html[lang="en"] body #journey .journey-lives-head::before{content:"Lives"!important}

/* ===== navigation-home.css ===== */
/* v0.8.8 — shared navigation and botanical home. Original brand assets retained. */
:root { --pg-paper:#f8f4e9; --pg-green:#35573e; --pg-muted:#6e765d; --pg-gold:#b6a16a; --pg-nav-height:82px; }
html body :is(#home,#free,#daily,#garden,#shopSheet) { --petal-mobile-header-h:64px; }
html body :is(#home.home-approved-v1,#free,#daily,#garden.collection-premium-page),
html body #shopSheet .shop-reference-shell {
  padding-top:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
  padding-left:max(18px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(18px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
  padding-bottom:calc(var(--pg-nav-height) + 24px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  scrollbar-gutter:stable both-edges!important;border:0!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead {
  position:relative!important;inset:auto!important;transform:none!important;box-sizing:border-box!important;
  display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:center!important;gap:8px!important;
  width:100%!important;height:64px!important;min-height:64px!important;max-height:64px!important;flex:0 0 64px!important;
  padding:0!important;margin:0 0 12px!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand {
  grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;background:none!important;text-align:center!important;
  height:44px!important;max-height:44px!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-emerald-wordmark {
  width:min(100%,205px)!important;max-width:205px!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0 auto!important;object-fit:contain!important;transform:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings {
  grid-column:3!important;grid-row:1!important;position:static!important;transform:none!important;justify-self:end!important;
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;margin:0!important;
  display:grid!important;place-items:center!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--pg-green)!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings svg {
  width:24px!important;height:24px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
/* Every tab bar shares the same geometry; the map above it remains unchanged. */
html body .pg-nav {
  position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:95;
  box-sizing:border-box;width:min(100%,var(--pl-w,560px));height:calc(var(--pg-nav-height) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:0;
  padding:6px max(5px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px))) calc(6px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))) max(5px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)));
  background:var(--pg-paper);border-top:1px solid #c4b68d66;box-shadow:0 -5px 22px #4c4c2910;overflow:visible;
}
html body .pg-nav-item {
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;
  box-sizing:border-box;min-width:0;width:100%;height:66px;padding:4px 1px 9px;border:0;border-radius:0;
  background:transparent;box-shadow:none;color:var(--pg-muted);font:500 10px/1.2 system-ui,sans-serif;cursor:pointer;
}
html body .pg-nav-item>svg {width:26px;height:26px;flex:0 0 26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
html body .pg-nav-item>span {white-space:nowrap;font:inherit;color:inherit;letter-spacing:0;}
html body .pg-nav-item.active {color:var(--pg-green);}
html body .pg-nav-item.active::after {content:"";position:absolute;bottom:1px;width:24px;height:3px;border-radius:3px;background:var(--pg-green);}
html body .pg-nav-logo {display:block;width:49px;height:49px;min-height:49px;object-fit:contain;margin-top:-16px;padding:4px;box-sizing:content-box;border-radius:50%;background:var(--pg-paper);filter:drop-shadow(0 2px 3px #4c4c2920);}
html body .pg-nav-home {overflow:visible;}
html body .pg-nav-item:focus-visible,html body .pg-home-choice:focus-visible,html body .pg-home-continue:focus-visible {outline:2px solid var(--pg-green);outline-offset:3px;}
html body #garden #collectionGardenCta {display:none!important;}

/* v0.9.0 — clean masthead wordmark, compact Journey life status. */
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-text-wordmark{
  display:block!important;margin:0 auto!important;color:#2f563f!important;
  font:500 31px/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.025em!important;white-space:nowrap!important;
  text-shadow:none!important;filter:none!important;
}
html body #journey .journey-hud-chapter strong{
  width:100%!important;margin-top:5px!important;white-space:nowrap!important;
  overflow:visible!important;word-break:keep-all!important;font-size:13px!important;
  letter-spacing:-.025em!important;
}
html body #journey .journey-hud-lives{
  width:fit-content!important;min-width:0!important;margin:0 auto!important;padding:6px 10px!important;
  justify-content:flex-start!important;gap:8px!important;border-radius:999px!important;
  border-color:rgba(150,128,84,.25)!important;background:rgba(250,246,236,.94)!important;
  box-shadow:0 4px 12px rgba(68,51,27,.08),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
html body #journey .journey-lives-head::before{font-size:8px!important;letter-spacing:.08em!important}
html body #journey .journey-lives-head svg{width:16px!important;height:16px!important;flex-basis:16px!important}
html body #journey .journey-lives-head b{font-size:13px!important;color:#594b37!important}
html body #journey .journey-lives-pips{gap:2px!important}
html body #journey .journey-lives-pips i{width:5px!important;height:5px!important}
html body #journey .journey-hud-lives small{margin-left:2px!important;font-size:8.5px!important;letter-spacing:.02em!important}
@media(max-width:560px){
  html body #journey .journey-premium-hud{
    grid-template-columns:52px minmax(0,1fr) 112px!important;gap:6px!important;padding:10px!important;
  }
  html body #journey .journey-hud-flower{width:52px!important;height:52px!important;padding:5px!important}
  html body #journey .journey-hud-chapter{padding-left:6px!important}
  html body #journey .journey-hud-chapter strong{font-size:11.5px!important;letter-spacing:-.035em!important}
}
@media(max-width:370px){
  html body #journey .journey-premium-hud{grid-template-columns:48px minmax(0,1fr) 104px!important}
  html body #journey .journey-hud-flower{width:48px!important;height:48px!important}
  html body #journey .journey-hud-chapter strong{font-size:12px!important}
}
/* Garden now has the same persistent header and navigation as the archive. */
html body #gardenPlay.garden-page {padding:0!important;overflow-y:auto!important;height:100dvh!important;max-height:100dvh!important;scrollbar-gutter:stable both-edges!important;border:0!important;}
html body #gardenPlay.garden-page .page-card.garden-page-shell {
  box-sizing:border-box!important;width:100%!important;max-width:none!important;height:auto!important;min-height:100%!important;
  padding:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px))) 18px calc(var(--pg-nav-height) + 24px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  margin:0!important;border:0!important;box-shadow:none!important;overflow:visible!important;
}
/* Home uses its own small component set, avoiding the legacy split-card rules. */
html body #home.home-approved-v1.pg-home {
  display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
  gap:0!important;box-sizing:border-box!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
  overflow-y:auto!important;overflow-x:hidden!important;background:var(--pg-paper)!important;
}
html body #home.pg-home.hidden {display:none!important;}
html body #home.pg-home>.pg-masthead {margin-bottom:0!important;}
html body #home.pg-home>.home-approved-greeting {display:none!important;}
html body #home .pg-home-chapter {display:flex;flex-direction:column;flex:1 0 auto;min-width:0;margin:0 -18px;background:transparent;border:0;box-shadow:none;}
html body #home .pg-home-scene {
  flex:1 0 auto;height:clamp(180px,31dvh,290px);min-height:180px;
  background:url('../ui/home-chapter-lale-safagi-v3.webp') 68% 48%/cover no-repeat;
  -webkit-mask-image:linear-gradient(#000 0%,#000 78%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 78%,transparent 100%);
}
html body #home .pg-home-chapter-copy {position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;padding:0 22px 16px;margin-top:-8px;text-align:center;color:var(--pg-green);}
html body #home .pg-home-kicker {display:flex;align-items:center;gap:12px;font:400 14px/1.4 Georgia,serif;}
html body #home .pg-home-kicker::before,html body #home .pg-home-kicker::after {content:"";width:30px;height:1px;background:#b6a16a88;}
html body #home .pg-home-chapter h2 {font:400 clamp(27px,7.5vw,36px)/1.2 Georgia,serif!important;color:var(--pg-green);margin:0!important;padding:0!important;max-width:100%;}
html body #home .pg-home-progress {display:flex;align-items:center;gap:10px;width:min(100%,260px);margin:3px 0 4px;}
html body #home .pg-home-progress-track {display:block;flex:1;height:6px;background:#e6dfcc;border-radius:9px;overflow:hidden;}
html body #home .pg-home-progress-track i {display:block;width:0;height:100%;border-radius:9px;background:#7d9563;}
html body #home .pg-home-progress b {font:400 12px/1.2 system-ui,sans-serif;color:var(--pg-muted);font-variant-numeric:tabular-nums;}
html body #home .pg-home-continue {display:flex;align-items:center;justify-content:center;gap:22px;min-height:46px;width:min(72%,236px);padding:9px 20px;border:1px solid var(--pg-gold);border-radius:30px;color:#fffbed;background:linear-gradient(135deg,#52734f,#284e3b);box-shadow:0 4px 12px #2b4b3522;cursor:pointer;}
html body #home .pg-home-continue b {font:400 20px/1.2 Georgia,serif;}
html body #home .pg-home-continue svg {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
html body #home .pg-home-choices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:0 0 auto;padding-top:8px;margin:0;}
html body #home .pg-home-choice {
  position:relative;box-sizing:border-box;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:5px;
  padding:12px 8px;min-height:105px;height:auto;margin:0;border:1px solid #c5b68e88;border-radius:15px;
  background:linear-gradient(150deg,#fcf9f0,#f2eddf);box-shadow:0 3px 8px #4c4c2908;overflow:hidden;cursor:pointer;
}
html body #home .pg-home-choice>img {position:static;width:58px;height:76px;object-fit:contain;max-width:none;margin-left:-5px;}
html body #home .pg-home-choice>div {min-width:0;}
html body #home .pg-home-choice h3 {font:400 clamp(14px,3.8vw,19px)/1.25 Georgia,serif!important;margin:0 0 7px!important;padding:0!important;color:var(--pg-green);}
html body #home .pg-home-meta {display:flex;align-items:center;gap:4px;color:var(--pg-muted);font:400 11px/1.4 system-ui,sans-serif;font-variant-numeric:tabular-nums;}
html body #home .pg-home-meta b {font:inherit;}
html body #home .pg-home-meta svg {width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0;}
@media(max-width:360px){
  html body .pg-nav-item {font-size:9px;}
  html body #home .pg-home-choice {grid-template-columns:38px minmax(0,1fr);padding-inline:6px;}
  html body #home .pg-home-choice>img {width:44px;height:64px;}
}
@media(max-height:700px){
  html body #home .pg-home-scene {height:25dvh;min-height:135px;}
  html body #home .pg-home-chapter-copy {gap:7px;padding-bottom:10px;}
  html body #home .pg-home-choice {min-height:86px;padding-block:7px;}
  html body #home .pg-home-choice>img {height:65px;}
}
@media(min-width:760px){
  html body #home .pg-home-chapter {flex:1 0 auto;}
  html body #home .pg-home-scene {height:clamp(180px,34dvh,340px);background-position:center 48%;}
  html body #home .pg-home-choices {width:min(100%,720px);align-self:center;}
  html body #home .pg-home-choice {grid-template-columns:76px minmax(0,1fr);gap:12px;min-height:104px;padding:12px 18px;}
  html body #home .pg-home-choice>img {width:76px;height:80px;}
  html body #home .pg-home-choice h3 {font-size:21px!important;}
  html body .pg-nav-item {font-size:12px;}
}
@media(prefers-reduced-motion:no-preference){
  html body .pg-home-continue,html body .pg-home-choice {transition:filter .15s,transform .15s;}
  html body .pg-home-continue:active,html body .pg-home-choice:active {transform:scale(.98);}
}

/* Final brand guard: legacy flourish rules must never resize the text wordmark. */
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand>.petal-text-wordmark{
  position:static!important;display:block!important;box-sizing:border-box!important;
  width:auto!important;min-width:0!important;max-width:none!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  margin:0 auto!important;padding:0!important;overflow:visible!important;
  color:#2f563f!important;font:500 31px/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.025em!important;white-space:nowrap!important;text-shadow:none!important;transform:none!important;
}

/* v0.9.1 — supplied candy wordmark and final shared-shell geometry. */
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{
  height:64px!important;min-height:64px!important;max-height:64px!important;flex-basis:64px!important;
  margin-top:0!important;margin-bottom:12px!important;padding:0!important;
}
html body #home.pg-home>.pg-masthead.pg-masthead{margin-bottom:0!important}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand{
  display:grid!important;place-items:center!important;height:44px!important;max-height:44px!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{
  position:static!important;display:block!important;width:148px!important;min-width:148px!important;max-width:148px!important;height:44px!important;
  margin:0 auto!important;padding:0!important;object-fit:contain!important;transform:none!important;
  filter:drop-shadow(0 1px 1px rgba(66,47,15,.18))!important;
}
html body.shop-open .screen .pg-nav{visibility:hidden!important;pointer-events:none!important}
@media(min-width:761px){
  html body #game .palette .color-btn.clear-btn,
  html body #game .palette.palette-no-counts .color-btn.clear-btn,
  html body #game .side-column>.dock .palette .color-btn.clear-btn,
  html body #game .side-column>.dock .palette.palette-no-counts .color-btn.clear-btn{
    grid-column:1/-1!important;grid-row:auto!important;align-self:start!important;
    width:100%!important;height:40px!important;min-height:40px!important;max-height:40px!important;
    aspect-ratio:auto!important;padding:0!important;
  }
}
#appSplash .pg-wordmark{filter:drop-shadow(0 4px 8px rgba(24,46,25,.46))!important}
#appSplash .pg-wordmark-wrap::before{display:none!important}

/* v0.9.2 / 4 — Journey navigation follows the portrait map, not the app shell. */
@media(min-width:620px){
  html body #journey .pg-nav{
    width:var(--pl-journey-w)!important;max-width:var(--pl-journey-w)!important;
    left:50%!important;right:auto!important;transform:translateX(-50%)!important;
  }
}

/* v0.9.2 / 5 — the former empty collection column becomes a live discovery summary. */
html body #garden .collection-discovery-summary{
  box-sizing:border-box;display:flex;flex-direction:column;gap:12px;
  padding:16px;border:1px solid rgba(170,155,112,.42);border-radius:18px;
  background:linear-gradient(145deg,#fbf8ee,#ecebdc);color:#3c553f;
  box-shadow:0 5px 14px rgba(57,67,43,.07);
}
html body #garden .collection-discovery-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
html body #garden .collection-discovery-head small{display:block;margin-bottom:4px;font:600 9px/1.2 system-ui,sans-serif;letter-spacing:.13em;color:#927a4e}
html body #garden .collection-discovery-head h3{margin:0;font:400 24px/1.15 Georgia,serif;color:#35533d}
html body #garden .collection-discovery-head>span{max-width:45%;padding:6px 9px;border-radius:999px;background:#f7f4e8;border:1px solid #cfc5a5;font:600 10px/1.2 system-ui,sans-serif;color:#687057;text-align:center}
html body #garden .collection-discovery-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid rgba(172,161,126,.35);padding:12px 0}
html body #garden .collection-discovery-stats>span{display:grid;gap:4px;text-align:center;min-width:0}
html body #garden .collection-discovery-stats>span+span{border-left:1px solid rgba(172,161,126,.32)}
html body #garden .collection-discovery-stats b{font:400 21px/1 Georgia,serif;color:#35533d}
html body #garden .collection-discovery-stats small{font:500 9px/1.25 system-ui,sans-serif;color:#777966}
html body #garden .collection-discovery-summary p{margin:0;font:400 11px/1.5 system-ui,sans-serif;color:#68705e}
@media(min-width:1200px) and (min-height:720px){
  html body #garden .collection-col-left .collection-discovery-summary{flex:1 1 auto;justify-content:center;min-height:150px}
}
@media(max-width:1199px), (max-height:719px){
  html body #garden .collection-discovery-summary{order:5!important;margin-top:10px}
  html body #garden .collection-grid-head-v2{order:6!important}
  html body #garden .collection-flower-grid{order:7!important}
  html body #garden .collection-empty{order:8!important}
}

/* v0.9.2 / 6 — My Garden hierarchy: courtyard first, utilities second. */
html body #gardenPlay.garden-page #gardenScreen{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
html body #gardenPlay.garden-page .garden-quiet-heading{order:1!important}
html body #gardenPlay.garden-page .garden-dev-panel{order:2!important}
html body #gardenPlay.garden-page .gd-main-grid{order:3!important;grid-column:1!important}
html body #gardenPlay.garden-page .gd-console{order:4!important;grid-column:1!important;margin-top:2px!important}
html body #gardenPlay.garden-page .gd-plots-card{
  padding:16px!important;border-color:#b8c4a5!important;background:linear-gradient(145deg,#eef1e4,#dce5d1)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 8px 20px rgba(55,77,48,.10)!important;
}
html body #gardenPlay.garden-page .gd-plots-card h3{font-size:25px!important}
html body #gardenPlay.garden-page .gd-console-stats{padding:7px 3px!important;background:#f8f6ed!important;border-color:#d8d8c8!important}
html body #gardenPlay.garden-page .gd-console-actions>button{
  min-height:42px!important;padding:7px 8px!important;background:transparent!important;border-color:#d7d9ca!important;color:#5d6958!important;
}
html body #gardenPlay.garden-page .gd-console-actions>button b{font-size:10px!important;font-weight:500!important}
@media(min-width:900px){
  html body #gardenPlay.garden-page .gd-plots{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  html body #gardenPlay.garden-page .gd-plot{min-height:174px!important}
  html body #gardenPlay.garden-page .gd-console{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr)!important;align-items:stretch!important;gap:10px!important}
  html body #gardenPlay.garden-page .gd-console-stats{order:0!important}
}

/* v0.9.4 — one shared content rhythm and reliable mobile garden scrolling. */
html body #shopSheet .shop-reference-scroll{
  padding-top:0!important;
}
html body #shopSheet .shop-wallet-row{
  display:flex!important;justify-content:flex-end!important;align-items:center!important;
  min-height:38px!important;margin:0 0 10px!important;padding:0!important;
}
html body #shopSheet .shop-wallet-row .shop-compact-wallet{
  min-height:34px!important;padding:7px 14px!important;border:1px solid rgba(142,151,104,.35)!important;
  border-radius:999px!important;background:linear-gradient(145deg,#f1f4df,#e5ead1)!important;
  box-shadow:0 3px 9px rgba(62,82,52,.06)!important;
}
html body #gardenPlay.garden-page{
  position:relative!important;display:block!important;box-sizing:border-box!important;
  width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
  overflow-x:hidden!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch!important;
  overscroll-behavior-y:contain!important;touch-action:pan-y!important;
  scroll-padding-bottom:calc(var(--pg-nav-height) + 28px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}
html body #gardenPlay.garden-page .page-card.garden-page-shell{
  height:max-content!important;min-height:100%!important;max-height:none!important;overflow:visible!important;
  padding-top:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
  padding-bottom:calc(var(--pg-nav-height) + 38px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}
html body #gardenPlay.garden-page #gardenScreen{
  display:grid!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;
}
html body #gardenPlay.garden-page .garden-dev-panel{order:1!important}
html body #gardenPlay.garden-page .gd-main-grid{order:2!important}
html body #gardenPlay.garden-page .gd-console{order:3!important;margin-top:10px!important}
html body #gardenPlay.garden-page .gd-section-head{align-items:flex-start!important}
html body #gardenPlay.garden-page .gd-section-badge{
  max-width:46%!important;white-space:normal!important;text-align:center!important;line-height:1.25!important;
}
@media(max-width:560px){
  html body #gardenPlay.garden-page .page-card.garden-page-shell{padding-inline:max(18px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px))) max(18px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important}
  html body #gardenPlay.garden-page .gd-plots-card{padding:14px 12px!important}
  html body #gardenPlay.garden-page .gd-plots-card h3{font-size:23px!important}
}

/* v0.9.5 — Collection as an archive, Garden as a living courtyard,
   Shop as a compact botanical boutique. */
:root{
  --v95-ink:#31513d;
  --v95-muted:#6f7564;
  --v95-paper:#f8f4e8;
  --v95-card:#fbf8ef;
  --v95-line:rgba(134,143,105,.30);
  --v95-gold:#b08b48;
  --v95-shadow:0 8px 24px rgba(54,72,48,.09);
}

/* Collection — the selected flower leads, statistics support it. */
html body #garden.collection-premium-page{
  box-sizing:border-box!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
  overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;
  padding:0 18px calc(var(--pg-nav-height) + 30px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
  background:radial-gradient(circle at 15% 12%,rgba(224,224,195,.55),transparent 34%),var(--pg-paper)!important;
}
html body #garden .collection-premium-shell{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;
  width:100%!important;max-width:760px!important;min-height:0!important;height:auto!important;margin:0 auto!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
html body #garden .collection-col{display:block!important;min-width:0!important}
html body #garden .collection-archive-hero{
  position:relative!important;isolation:isolate!important;display:grid!important;gap:12px!important;
  min-height:174px!important;padding:19px!important;margin:0 0 12px!important;overflow:hidden!important;
  border:1px solid rgba(173,150,92,.35)!important;border-radius:22px!important;
  background:linear-gradient(120deg,rgba(26,61,43,.94),rgba(52,82,55,.80)),url('../ui/collection-my-garden-v2.webp') center 46%/cover!important;
  color:#fff9e9!important;box-shadow:var(--v95-shadow)!important;
}
html body #garden .collection-archive-hero::after{
  content:"";position:absolute;inset:auto -35px -55px auto;width:170px;height:170px;border:1px solid rgba(244,220,157,.22);border-radius:50%;z-index:-1;
}
html body #garden .collection-archive-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important}
html body #garden .collection-archive-heading small{display:block!important;margin-bottom:5px!important;color:#e8cc88!important;font:700 9px/1.2 system-ui,sans-serif!important;letter-spacing:.16em!important}
html body #garden .collection-archive-heading h2{margin:0!important;color:#fffaf0!important;font:400 29px/1.08 Georgia,serif!important}
html body #garden .collection-archive-heading>span{padding:7px 10px!important;border:1px solid rgba(255,246,218,.35)!important;border-radius:999px!important;background:rgba(248,241,214,.12)!important;color:#fff7e2!important;font:600 10px/1.2 system-ui,sans-serif!important;white-space:nowrap!important}
html body #garden .collection-archive-hero>p{max-width:42ch!important;margin:0!important;color:#e8ecdd!important;font:400 11px/1.5 system-ui,sans-serif!important}
html body #garden .collection-archive-hero .collection-progress-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
html body #garden .collection-archive-hero .collection-progress-track{height:7px!important;border-radius:999px!important;background:rgba(255,255,255,.20)!important;overflow:hidden!important}
html body #garden .collection-archive-hero .collection-progress-track i{display:block!important;height:100%!important;border-radius:inherit!important;background:linear-gradient(90deg,#d7b668,#fff1b2)!important}
html body #garden .collection-archive-hero .collection-progress-line strong{color:#fff4cf!important;font:600 11px/1 system-ui,sans-serif!important}
html body #garden .collection-archive-footer{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;padding-top:11px!important;border-top:1px solid rgba(255,255,255,.18)!important}
html body #garden .collection-archive-footer>span{display:grid!important;gap:3px!important;text-align:center!important;min-width:0!important}
html body #garden .collection-archive-footer>span+span{border-left:1px solid rgba(255,255,255,.15)!important}
html body #garden .collection-archive-footer b{color:#fff9e8!important;font:400 18px/1 Georgia,serif!important;white-space:nowrap!important}
html body #garden .collection-archive-footer small{color:#dce4d4!important;font:500 8px/1.25 system-ui,sans-serif!important}
html body #garden #collectionFeatured.collection-featured{
  display:grid!important;grid-template-columns:118px minmax(0,1fr)!important;align-items:stretch!important;gap:0!important;
  min-height:156px!important;margin:0 0 14px!important;padding:0!important;border:1px solid var(--v95-line)!important;border-radius:20px!important;
  background:linear-gradient(145deg,#fbf9f0,#eef0df)!important;box-shadow:0 6px 18px rgba(53,72,47,.07)!important;overflow:hidden!important;
}
html body #garden #collectionFeatured .collection-featured-art{
  display:grid!important;place-items:center!important;box-sizing:border-box!important;width:118px!important;min-width:118px!important;max-width:118px!important;height:100%!important;min-height:156px!important;max-height:none!important;padding:12px!important;border:0!important;border-right:1px solid var(--v95-line)!important;border-radius:0!important;background:radial-gradient(circle,#f9f5e7,#e5e9d7)!important;
}
html body #garden #collectionFeatured .collection-featured-art>img{width:104px!important;max-width:104px!important;height:125px!important;max-height:125px!important;object-fit:contain!important;filter:drop-shadow(0 9px 8px rgba(47,66,42,.16))!important}
html body #garden #collectionFeatured .collection-featured-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;padding:16px!important}
html body #garden #collectionFeatured .collection-featured-copy h2{font-size:24px!important;color:var(--v95-ink)!important}
html body #garden #collectionFeatured .collection-featured-description{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:10px!important}
html body #garden #collectionFeatured .collection-featured-stats{margin-top:8px!important;padding-top:8px!important;border-top:1px solid var(--v95-line)!important}
html body #garden .collection-filter-row{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;margin:0 0 10px!important;padding:4px!important;
  overflow:visible!important;border:1px solid var(--v95-line)!important;border-radius:15px!important;background:#e8eadc!important;
}
html body #garden .collection-filter{justify-content:center!important;min-width:0!important;min-height:39px!important;padding:6px 5px!important;border:0!important;border-radius:11px!important;background:transparent!important;box-shadow:none!important;font-size:9px!important}
html body #garden .collection-filter.active{background:#fffdf5!important;color:var(--v95-ink)!important;border:1px solid rgba(126,139,100,.28)!important;box-shadow:0 3px 8px rgba(55,74,48,.08)!important}
html body #garden .collection-grid-head-v2{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important;margin:0 0 10px!important;padding:13px!important;
  border:1px solid var(--v95-line)!important;border-radius:17px!important;background:rgba(251,249,241,.75)!important;box-shadow:none!important;
}
html body #garden .collection-grid-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important}
html body #garden .collection-chapter-hud-trigger{width:100%!important;min-width:0!important}
html body #garden .collection-flower-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
html body #garden .collection-flower-card{
  min-height:158px!important;grid-template-rows:98px auto auto!important;padding:8px 6px!important;border:1px solid var(--v95-line)!important;border-radius:16px!important;
  background:linear-gradient(155deg,#fdfbf4,#edf0e2)!important;box-shadow:0 4px 12px rgba(52,70,47,.055)!important;
}
html body #garden .collection-flower-card img{height:94px!important}
html body #garden .collection-flower-card.selected{outline:2px solid #527258!important;outline-offset:2px!important;background:#f6f5e8!important}

/* Garden — one landscape first, management controls second. */
html body #gardenPlay.garden-page .gd-plots-card{
  padding:0 0 14px!important;border:1px solid var(--v95-line)!important;border-radius:22px!important;background:#edf0e3!important;overflow:hidden!important;box-shadow:var(--v95-shadow)!important;
}
html body #gardenPlay.garden-page .gd-courtyard-scene{
  position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;gap:13px!important;
  min-height:190px!important;padding:20px!important;margin:0 0 14px!important;overflow:hidden!important;color:#fff9ea!important;
  background:linear-gradient(180deg,rgba(20,47,32,.08),rgba(19,49,34,.88)),url('../ui/collection-my-garden-v2.webp') center 52%/cover!important;
}
html body #gardenPlay.garden-page .gd-courtyard-copy{max-width:82%!important}
html body #gardenPlay.garden-page .gd-courtyard-copy small{display:block!important;margin-bottom:5px!important;color:#efd28d!important;font:700 9px/1.2 system-ui,sans-serif!important;letter-spacing:.14em!important}
html body #gardenPlay.garden-page .gd-courtyard-copy h2{margin:0 0 5px!important;color:#fffbed!important;font:400 27px/1.12 Georgia,serif!important;text-shadow:0 2px 12px rgba(0,0,0,.28)!important}
html body #gardenPlay.garden-page .gd-courtyard-copy p{margin:0!important;color:#edf1e5!important;font:400 10px/1.45 system-ui,sans-serif!important}
html body #gardenPlay.garden-page .gd-courtyard-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
html body #gardenPlay.garden-page .gd-courtyard-metrics span{display:grid!important;grid-template-columns:auto 1fr!important;align-items:baseline!important;gap:5px!important;padding:8px 9px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:11px!important;background:rgba(246,244,224,.13)!important;backdrop-filter:blur(5px)!important}
html body #gardenPlay.garden-page .gd-courtyard-metrics b{font:400 18px/1 Georgia,serif!important}
html body #gardenPlay.garden-page .gd-courtyard-metrics small{font:500 8px/1.2 system-ui,sans-serif!important;color:#e8ecdc!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head{padding:0 14px!important;margin:0 0 10px!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head h3{font-size:22px!important}
html body #gardenPlay.garden-page .gd-plots{padding:0 12px!important;margin:0!important;gap:7px!important;grid-auto-rows:minmax(122px,auto)!important}
html body #gardenPlay.garden-page .gd-plot{min-height:122px!important;background:rgba(252,250,241,.88)!important;border-color:rgba(143,153,117,.27)!important}
html body #gardenPlay.garden-page .gd-empty{background:rgba(250,249,238,.64)!important}
html body #gardenPlay.garden-page .gd-locked{opacity:.62!important;background:rgba(223,227,212,.58)!important}
html body #gardenPlay.garden-page .gd-expand{width:calc(100% - 24px)!important;margin:11px 12px 0!important}
html body #gardenPlay.garden-page .gd-console{
  padding:11px!important;border:1px solid var(--v95-line)!important;border-radius:18px!important;background:#f8f6ed!important;box-shadow:0 5px 16px rgba(52,70,47,.06)!important;
}
html body #gardenPlay.garden-page .gd-console-actions{gap:6px!important}
html body #gardenPlay.garden-page .gd-console-actions>button{background:#eef0e5!important;border-color:rgba(139,150,112,.25)!important}

/* Shop — one daily display window followed by compact product shelves. */
html body #shopSheet.shop-reference-page{background:var(--pg-paper)!important}
html body #shopSheet .shop-reference-shell{background:radial-gradient(circle at 85% 10%,rgba(224,226,197,.55),transparent 32%),var(--pg-paper)!important}
html body #shopSheet .shop-reference-scroll{padding:0 18px calc(var(--pg-nav-height) + 32px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important}
html body #shopSheet .shop-wallet-row{min-height:34px!important;margin:0 0 9px!important}
html body #shopSheet .shop-wallet-row .shop-compact-wallet{background:#edf0dc!important;border-color:rgba(128,141,99,.30)!important;color:var(--v95-ink)!important;box-shadow:none!important}
html body #shopSheet .shop-category-bar{
  position:sticky!important;top:0!important;z-index:4!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;
  margin:0 0 12px!important;padding:5px!important;border:1px solid var(--v95-line)!important;border-radius:15px!important;background:rgba(232,234,218,.94)!important;backdrop-filter:blur(10px)!important;
}
html body #shopSheet .shop-category-bar button{min-height:38px!important;border-radius:10px!important;font-size:10px!important}
html body #shopSheet .shop-category-bar button[aria-pressed="true"]{background:#fffdf5!important;color:var(--v95-ink)!important;border-color:rgba(126,139,100,.27)!important;box-shadow:0 3px 8px rgba(55,74,48,.08)!important}
html body #shopSheet .shop-featured{
  margin:0 0 13px!important;padding:0!important;border:1px solid rgba(169,143,83,.34)!important;border-radius:22px!important;background:linear-gradient(145deg,#fbf7e9,#e9eddc)!important;box-shadow:var(--v95-shadow)!important;overflow:hidden!important;
}
html body #shopSheet .shop-featured-head{padding:12px 14px 8px!important;background:transparent!important}
html body #shopSheet .shop-featured-head small{color:#8c7040!important;letter-spacing:.13em!important}
html body #shopSheet .shop-featured-body{display:grid!important;grid-template-columns:44% minmax(0,1fr)!important;min-height:205px!important}
html body #shopSheet .shop-featured-art{display:grid!important;place-items:center!important;min-height:205px!important;padding:12px!important;background:radial-gradient(circle,#fffdf5,#e5e9d5)!important;border-right:1px solid var(--v95-line)!important}
html body #shopSheet .shop-featured-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;padding:15px!important;min-width:0!important}
html body #shopSheet .shop-featured-copy h3{font-size:24px!important;line-height:1.12!important;color:var(--v95-ink)!important}
html body #shopSheet .shop-featured-copy p{font-size:10px!important;line-height:1.45!important;color:var(--v95-muted)!important}
html body #shopSheet .shop-featured-buy{width:100%!important;min-height:42px!important;margin-top:8px!important;background:linear-gradient(135deg,#52734f,#2f533e)!important;color:#fffbed!important;border-radius:999px!important}
html body #shopSheet .shop-category-note{margin:0 2px 11px!important;padding:8px 10px!important;border-left:2px solid #b39352!important;background:rgba(246,242,226,.72)!important;border-radius:0 9px 9px 0!important}
html body #shopSheet .bundle-grid,html body #shopSheet .shop-compact-products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
html body #shopSheet .bundle-card{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;min-width:0!important;padding:10px!important;
  border:1px solid var(--v95-line)!important;border-radius:17px!important;background:linear-gradient(155deg,#fcfaf2,#edf0e3)!important;box-shadow:0 4px 13px rgba(53,71,47,.055)!important;
}
html body #shopSheet .bundle-card .bundle-art{display:grid!important;grid-template-columns:1fr 1fr!important;grid-column:auto!important;grid-row:auto!important;align-items:center!important;width:100%!important;max-width:none!important;height:96px!important;margin:0 0 3px!important;padding:5px!important;border-radius:12px!important;background:rgba(255,255,255,.52)!important}
html body #shopSheet .bundle-card .bundle-art>.shop-board-preview{width:72px!important;height:72px!important;max-width:100%!important;justify-self:center!important}
html body #shopSheet .bundle-card .bundle-art>img{width:76px!important;height:76px!important;max-width:100%!important;justify-self:center!important}
html body #shopSheet .bundle-card>:not(.bundle-art){grid-column:auto!important}
html body #shopSheet .bundle-card small{min-height:19px!important;font-size:7px!important}
html body #shopSheet .bundle-card h3{min-height:42px!important;margin:0!important;font-size:17px!important}
html body #shopSheet .bundle-card ul{display:none!important}
html body #shopSheet .bundle-card p{min-height:28px!important;font-size:9px!important}
html body #shopSheet .bundle-card button{width:100%!important;min-height:37px!important;justify-self:stretch!important;margin-top:auto!important;padding:6px!important;font-size:9px!important}
html body #shopSheet .shop-compact-products .shop-detail-card{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important;min-height:222px!important;padding:10px!important;
  border:1px solid var(--v95-line)!important;border-radius:17px!important;background:linear-gradient(155deg,#fcfaf2,#edf0e3)!important;box-shadow:0 4px 13px rgba(53,71,47,.055)!important;
}
html body #shopSheet .shop-compact-products .shop-detail-art{display:grid!important;place-items:center!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;max-width:none!important;height:112px!important;margin:0!important;border-radius:12px!important;background:rgba(255,255,255,.48)!important}
html body #shopSheet .shop-compact-products h4{grid-column:auto!important;grid-row:auto!important;min-height:40px!important;margin:0!important;font-size:17px!important;text-align:center!important}
html body #shopSheet .shop-compact-products p{grid-column:auto!important;grid-row:auto!important;min-height:28px!important;margin:0!important;font-size:9px!important;text-align:center!important}
html body #shopSheet .shop-compact-products button{grid-column:auto!important;grid-row:auto!important;align-self:stretch!important;width:100%!important;max-width:none!important;min-height:37px!important;margin-top:auto!important;font-size:9px!important}
html body #shopSheet .shop-earn-details{margin:14px 0 0!important;border-radius:15px!important;background:#eff0e4!important}

@media(min-width:900px){
  html body #garden .collection-premium-shell{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr)!important;gap:18px!important;max-width:1180px!important}
  html body #garden .collection-col-left{position:sticky!important;top:0!important;align-self:start!important}
  html body #garden .collection-flower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body #gardenPlay.garden-page .gd-courtyard-scene{min-height:235px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:40% minmax(0,1fr)!important;min-height:245px!important}
}
@media(max-width:380px){
  html body #garden.collection-premium-page,html body #shopSheet .shop-reference-scroll{padding-inline:12px!important}
  html body #garden .collection-archive-hero{padding:15px!important}
  html body #garden .collection-archive-heading h2{font-size:25px!important}
  html body #garden .collection-archive-footer b{font-size:15px!important}
  html body #garden #collectionFeatured.collection-featured{grid-template-columns:96px minmax(0,1fr)!important}
  html body #garden #collectionFeatured .collection-featured-art{width:96px!important;min-width:96px!important;max-width:96px!important}
  html body #garden .collection-filter b{display:none!important}
  html body #garden .collection-filter span{font-size:17px!important}
  html body #gardenPlay.garden-page .gd-courtyard-scene{min-height:174px!important;padding:16px!important}
  html body #gardenPlay.garden-page .gd-courtyard-copy h2{font-size:23px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:40% minmax(0,1fr)!important}
  html body #shopSheet .bundle-card .bundle-art{height:82px!important}
  html body #shopSheet .bundle-card .bundle-art>.shop-board-preview,html body #shopSheet .bundle-card .bundle-art>img{width:62px!important;height:62px!important}
}

/* v0.10.4 — shop, Free Bloom and garden layout repair */
html body .shop-earn-dialog .shop-reference-currency{
  grid-template-columns:1fr!important;gap:8px!important;
}
html body .shop-earn-dialog .shop-currency-card{
  display:grid!important;grid-template-columns:52px minmax(0,1fr) 104px!important;grid-template-rows:auto auto!important;
  align-items:center!important;column-gap:11px!important;min-height:76px!important;padding:10px 11px!important;text-align:left!important;
  color:#40523e!important;background:#fffdf7!important;border-color:#d8d6c3!important;
}
html body .shop-earn-dialog .shop-currency-art{
  grid-column:1!important;grid-row:1/3!important;width:48px!important;height:48px!important;margin:0!important;
}
html body .shop-earn-dialog .shop-currency-art svg{width:46px!important;height:46px!important}
html body .shop-earn-dialog .shop-currency-card strong{
  grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0!important;color:#34503b!important;font:500 20px/1.15 Georgia,serif!important;
}
html body .shop-earn-dialog .shop-currency-card small{
  grid-column:2!important;grid-row:2!important;align-self:start!important;display:block!important;height:auto!important;margin:3px 0 0!important;color:#747763!important;font:500 10px/1.25 system-ui,sans-serif!important;
}
html body .shop-earn-dialog .shop-currency-card button{
  grid-column:3!important;grid-row:1/3!important;width:104px!important;min-height:38px!important;margin:0!important;padding:7px 8px!important;
  border:1px solid #5d774f!important;border-radius:12px!important;background:#3f6749!important;color:#fffdf5!important;font:600 10px/1.2 system-ui,sans-serif!important;
}
html body .shop-earn-dialog .shop-currency-card button:disabled{background:#ebe9dd!important;border-color:#d2d1c4!important;color:#77796b!important;opacity:1!important}

/* A finish icon needs a quiet field; the old wide radial wash looked like a stray line. */
html body #shopSheet .finish-skin-art{background:none!important}
html body #shopSheet .finish-skin-art::before{content:none!important;display:none!important}
html body #shopSheet .finish-skin-art[data-finish-preview="prism"] svg{
  width:62%!important;height:62%!important;padding:9px!important;border:1px solid rgba(113,96,153,.18)!important;border-radius:50%!important;
  background:radial-gradient(circle,#f3eef9 0,#e9e1f3 68%,#e4dced 69%,#e4dced 72%,transparent 73%)!important;
}

html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{
  display:flex!important;flex-direction:column!important;min-height:252px!important;padding:9px!important;overflow:hidden!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
  flex:0 0 122px!important;width:100%!important;height:122px!important;min-height:122px!important;max-width:none!important;aspect-ratio:auto!important;margin:0 0 8px!important;padding:5px!important;overflow:hidden!important;
  border-radius:13px!important;background:#f3f3e7!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .atelier-flower-sheet,
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .design-flower-sheet{
  position:static!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;margin:0!important;object-fit:contain!important;transform:none!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] h4{
  flex:0 0 auto!important;min-height:36px!important;margin:0 2px 4px!important;font-size:17px!important;line-height:1.05!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{
  flex:1 1 auto!important;min-height:28px!important;margin:0 2px 8px!important;font-size:9px!important;line-height:1.35!important;overflow:hidden!important;
}

html body #free>.free-page-shell{
  justify-content:start!important;display:flex!important;height:auto!important;max-height:none!important;overflow:auto!important;gap:10px!important;padding:10px 0 calc(18px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))!important;
}
html body #free .free-hero{
  flex:0 0 auto!important;min-height:72px!important;margin:0!important;padding:13px 16px!important;border:1px solid #d7d6c3!important;border-radius:18px!important;
  background:linear-gradient(135deg,#345f45,#567451)!important;box-shadow:0 7px 18px rgba(46,75,51,.14)!important;
}
html body #free .free-hero h2{margin:0!important;color:#fffdf4!important;font-size:27px!important;line-height:1.05!important}
html body #free .free-hero-kicker{display:block!important;margin-bottom:5px!important;color:#e4c887!important;font-size:8px!important;letter-spacing:.18em!important}
html body #free .free-hero-art{display:block!important;width:58px!important;height:58px!important;object-fit:contain!important;filter:drop-shadow(0 4px 5px rgba(0,0,0,.2))!important}
html body #free .free-config-card{
  flex:0 0 auto!important;min-height:0!important;margin:0!important;padding:12px!important;border:1px solid #dad9c8!important;border-radius:17px!important;background:#fffdf6!important;box-shadow:none!important;
}
html body #free .free-section-head{min-height:31px!important;margin:0 0 9px!important}
html body #free .free-section-head h3{font-size:18px!important;line-height:1.1!important}
html body #free .difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,54px)!important;gap:7px!important;height:auto!important}
html body #free .difficulty-grid>button{min-height:54px!important;height:54px!important;padding:7px 9px!important;border-radius:12px!important}
html body #free #freeMechanicGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:auto!important;gap:7px!important;height:auto!important;overflow:visible!important}
html body #free #freeMechanicGrid .free-mechanic-card{min-height:52px!important;height:52px!important;padding:6px!important;border-radius:12px!important}
html body #free #freeMechanicGrid .free-mechanic-card small{display:none!important}
html body #free #freeRuleDescription{display:block!important;min-height:29px!important;margin:8px 2px 0!important;padding-top:7px!important;border-top:1px solid #e3e1d4!important;color:#687060!important;font:400 10px/1.4 system-ui,sans-serif!important}
html body #free .free-launch-card{
  flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) 132px!important;align-items:center!important;gap:10px!important;min-height:68px!important;padding:11px 12px!important;
  border:1px solid #aebc9d!important;border-radius:17px!important;background:#e8eddf!important;
}
html body #free .free-launch-copy strong{font-size:18px!important}
html body #free .free-actions,#free .free-actions button{width:100%!important}
html body #free .free-actions button{min-height:43px!important;margin:0!important;border-radius:13px!important}

html body #gardenPlay.garden-page .gd-console{margin-top:8px!important}
html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head{align-items:center!important;margin-bottom:9px!important}
html body #gardenPlay.garden-page .gd-section-badge{
  display:inline-flex!important;align-items:baseline!important;gap:2px!important;padding:7px 10px!important;border-radius:12px!important;background:#f8f7ed!important;
}
html body #gardenPlay.garden-page .gd-section-badge b{color:#36543e!important;font:600 16px/1 Georgia,serif!important}
html body #gardenPlay.garden-page .gd-section-badge small{color:#68735e!important;font:600 9px/1 system-ui,sans-serif!important}
html body #gardenPlay.garden-page .gd-courtyard-resources{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;order:0!important;
  margin:0 0 11px!important;padding:8px 3px!important;border:1px solid #d5d8c6!important;border-radius:13px!important;background:rgba(255,253,246,.72)!important;
}
html body #gardenPlay.garden-page .gd-console-actions{margin-top:0!important}

@media(max-width:380px){
  html body .shop-earn-dialog{padding:15px!important}
  html body .shop-earn-dialog .shop-currency-card{grid-template-columns:44px minmax(0,1fr) 88px!important;column-gap:8px!important;padding:9px!important}
  html body .shop-earn-dialog .shop-currency-art{width:42px!important;height:42px!important}
  html body .shop-earn-dialog .shop-currency-card button{width:88px!important;font-size:9px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{flex-basis:108px!important;height:108px!important;min-height:108px!important}
  html body #free .free-hero h2{font-size:23px!important}
  html body #free #freeMechanicGrid .free-mechanic-card b{font-size:10px!important}
}

/* v0.9.6 — one compact masthead, deliberate breathing room and repaired shop/filter hierarchy. */
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{
  display:grid!important;grid-template-columns:auto minmax(24px,1fr) 42px!important;align-items:center!important;gap:12px!important;
  box-sizing:border-box!important;width:100%!important;height:62px!important;min-height:62px!important;max-height:62px!important;flex:0 0 62px!important;
  margin:0 0 18px!important;padding:0 2px!important;border-bottom:1px solid rgba(132,143,105,.18)!important;
  background:transparent!important;box-shadow:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand{
  grid-column:1!important;grid-row:1!important;justify-self:start!important;display:grid!important;place-items:center start!important;
  width:154px!important;min-width:154px!important;max-width:154px!important;height:44px!important;margin:0!important;padding:0!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{
  width:154px!important;min-width:154px!important;max-width:154px!important;height:44px!important;margin:0!important;object-position:left center!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings{
  grid-column:3!important;grid-row:1!important;justify-self:end!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  padding:9px!important;border:1px solid rgba(127,142,105,.24)!important;border-radius:50%!important;background:rgba(250,248,238,.64)!important;
}
html body #home.pg-home>.pg-masthead.pg-masthead{margin-bottom:0!important}

/* All content begins on the same baseline below the shared masthead. */
html body #garden .collection-premium-shell{padding-top:2px!important}
html body #gardenPlay.garden-page #gardenScreen{padding-top:2px!important}
html body #shopSheet .shop-reference-scroll{padding-top:2px!important}

/* Collection: labels always remain visible and the control has its own rhythm. */
html body #garden .collection-filter-row{
  margin-top:16px!important;margin-bottom:14px!important;padding:5px!important;gap:5px!important;
}
html body #garden .collection-filter{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;
  min-height:48px!important;padding:5px 3px!important;font-size:8.5px!important;
}
html body #garden .collection-filter span{font-size:16px!important;line-height:1!important}
html body #garden .collection-filter .collection-filter-label{
  display:block!important;visibility:visible!important;opacity:1!important;max-width:100%!important;color:inherit!important;
  font:600 8.5px/1.15 system-ui,sans-serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
html body #garden .collection-filter.active .collection-filter-label{color:var(--v95-ink)!important}

/* Garden: the visual hero no longer touches the masthead. */
html body #gardenPlay.garden-page .gd-main-grid{margin-top:4px!important}
html body #gardenPlay.garden-page .gd-courtyard-scene{border-radius:21px 21px 0 0!important}

/* Shop: balance belongs to a utility bar instead of floating alone. */
html body #shopSheet .shop-boutique-bar{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  min-height:58px!important;margin:0 0 11px!important;padding:10px 12px!important;border:1px solid var(--v95-line)!important;border-radius:16px!important;
  background:linear-gradient(145deg,rgba(250,249,239,.92),rgba(233,237,220,.90))!important;box-shadow:0 4px 13px rgba(53,71,47,.055)!important;
}
html body #shopSheet .shop-boutique-copy{display:grid!important;gap:3px!important;min-width:0!important}
html body #shopSheet .shop-boutique-copy small{color:#9a7842!important;font:700 8px/1.2 system-ui,sans-serif!important;letter-spacing:.15em!important}
html body #shopSheet .shop-boutique-copy b{color:var(--v95-ink)!important;font:400 13px/1.25 Georgia,serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body #shopSheet .shop-boutique-bar .shop-compact-wallet{
  flex:0 0 auto!important;min-height:34px!important;padding:8px 12px!important;border:1px solid rgba(132,145,102,.34)!important;border-radius:999px!important;
  background:#f5f5e7!important;color:var(--v95-ink)!important;box-shadow:none!important;font:600 11px/1 system-ui,sans-serif!important;white-space:nowrap!important;
}
html body #shopSheet .shop-category-bar{top:0!important;margin-bottom:14px!important}

/* Shop display window: larger product art, tighter copy, no oversized empty half. */
html body #shopSheet .shop-featured{margin-top:0!important}
html body #shopSheet .shop-featured-head{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:42px!important;padding:10px 14px!important;border-bottom:1px solid rgba(166,147,100,.18)!important}
html body #shopSheet .shop-featured-body{grid-template-columns:minmax(132px,40%) minmax(0,1fr)!important;min-height:190px!important}
html body #shopSheet .shop-featured-art{min-height:190px!important;padding:12px 8px!important}
html body #shopSheet .shop-featured-art .shop-board-preview{width:118px!important;height:118px!important;max-width:94%!important}
html body #shopSheet .shop-featured-art .shop-featured-flowers{width:132px!important;height:132px!important;max-width:96%!important;object-fit:contain!important}
html body #shopSheet .shop-featured-copy{padding:13px 14px!important}
html body #shopSheet .shop-featured-copy h3{
  width:100%!important;margin:4px 0 7px!important;font-size:clamp(19px,5vw,25px)!important;line-height:1.08!important;overflow-wrap:anywhere!important;
}
html body #shopSheet .shop-featured-copy p{margin:0 0 5px!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
html body #shopSheet .shop-featured-buy{min-height:40px!important;margin-top:7px!important;padding-inline:10px!important;font-size:15px!important}
html body #shopSheet .shop-featured-short{font-size:9px!important;margin-top:5px!important}

@media(max-width:380px){
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{grid-template-columns:auto minmax(12px,1fr) 40px!important;gap:9px!important}
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand,
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{width:140px!important;min-width:140px!important;max-width:140px!important}
  html body #garden .collection-filter b{display:block!important}
  html body #shopSheet .shop-boutique-copy b{font-size:11px!important}
  html body #shopSheet .shop-boutique-bar .shop-compact-wallet{padding-inline:9px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:minmax(112px,38%) minmax(0,1fr)!important}
  html body #shopSheet .shop-featured-art .shop-board-preview{width:102px!important;height:102px!important}
}

/* v0.9.7 — exact shared masthead geometry; no decorative divider. */
html body #garden.collection-premium-page,
html body #gardenPlay.garden-page .garden-page-shell,
html body #shopSheet .shop-reference-shell{
  padding-top:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
}
html body #garden.collection-premium-page,
html body #shopSheet .shop-reference-shell{
  padding-left:max(18px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(18px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
}
html body #gardenPlay.garden-page .garden-page-shell{
  padding-left:max(18px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(18px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{
  position:relative!important;inset:auto!important;transform:none!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  height:58px!important;min-height:58px!important;max-height:58px!important;flex:0 0 58px!important;
  margin:0 0 16px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead::before,
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead::after{
  content:none!important;display:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand{
  position:static!important;inset:auto!important;transform:none!important;flex:0 0 150px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  width:150px!important;min-width:150px!important;max-width:150px!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  margin:0!important;padding:0!important;text-align:left!important;background:transparent!important;overflow:visible!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{
  position:static!important;display:block!important;width:150px!important;min-width:150px!important;max-width:150px!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  margin:0!important;padding:0!important;object-fit:contain!important;object-position:left center!important;transform:none!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings{
  position:static!important;inset:auto!important;transform:none!important;flex:0 0 40px!important;align-self:center!important;
  display:grid!important;place-items:center!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;
  margin:0!important;padding:8px!important;border:1px solid rgba(127,142,105,.24)!important;border-radius:50%!important;
  background:rgba(250,248,238,.70)!important;box-shadow:none!important;color:var(--pg-green)!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings svg{
  display:block!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;margin:0!important;
}
html body #home.pg-home>.pg-masthead.pg-masthead{margin-bottom:0!important}
html body #garden .collection-premium-shell,
html body #gardenPlay.garden-page #gardenScreen,
html body #shopSheet .shop-reference-scroll{
  padding-top:0!important;margin-top:0!important;
}
@media(max-width:380px){
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand,
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{
    flex-basis:140px!important;width:140px!important;min-width:140px!important;max-width:140px!important;
  }
}

/* Shared two-column masthead: wordmark left, settings right. */
html body #home.home-approved-v1.pg-home,
html body #gardenPlay.garden-page .page-card.garden-page-shell{
  padding-top:max(6px,var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))!important;
  padding-left:max(18px,var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))!important;
  padding-right:max(18px,var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead::after{content:none!important;display:none!important}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{
  display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;align-items:center!important;gap:10px!important;
  height:62px!important;min-height:62px!important;max-height:62px!important;flex-basis:62px!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand{
  grid-column:1!important;grid-row:1!important;justify-self:start!important;flex:none!important;width:154px!important;min-width:154px!important;max-width:154px!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{
  width:154px!important;min-width:154px!important;max-width:154px!important;object-position:left center!important;
}
html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-primary-settings{
  grid-column:2!important;grid-row:1!important;justify-self:end!important;
}

html body #shopSheet .shop-boutique-bar{min-height:54px!important;padding:8px 10px!important}
html body #shopSheet .shop-earn-trigger{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:36px!important;padding:8px 13px!important;
  border:1px solid rgba(160,128,64,.42)!important;border-radius:999px!important;background:linear-gradient(145deg,#fffaf0,#e9edd9)!important;
  color:#365a41!important;box-shadow:0 2px 7px rgba(55,73,48,.07)!important;font:600 11px/1 system-ui,sans-serif!important;white-space:nowrap!important;
}
html body #shopSheet .shop-earn-trigger span{color:#b38b3f!important;font-size:14px!important}
html body.shop-earn-open{overflow:hidden!important}
html body .shop-earn-modal{
  position:fixed!important;inset:0!important;z-index:10020!important;display:grid!important;place-items:center!important;padding:18px!important;
  background:rgba(24,39,28,.58)!important;backdrop-filter:blur(7px)!important;
}
html body .shop-earn-modal.hidden{display:none!important}
html body .shop-earn-dialog{
  width:min(410px,100%)!important;max-height:min(660px,84dvh)!important;overflow:auto!important;padding:18px!important;
  border:1px solid rgba(194,169,106,.48)!important;border-radius:24px!important;background:linear-gradient(155deg,#fffdf5,#eef0e1)!important;
  box-shadow:0 24px 70px rgba(17,31,21,.30)!important;
}
html body .shop-earn-dialog-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0 0 8px!important}
html body .shop-earn-dialog-head small{display:block!important;margin-bottom:3px!important;color:#a27f3f!important;font:700 8px/1.2 system-ui,sans-serif!important;letter-spacing:.16em!important}
html body .shop-earn-dialog-head h2{margin:0!important;color:#31543e!important;font:400 27px/1.1 Georgia,serif!important}
html body .shop-earn-dialog-head button{flex:0 0 38px!important;width:38px!important;height:38px!important;padding:0!important;border:1px solid rgba(127,142,105,.28)!important;border-radius:50%!important;background:#faf8ee!important;color:#46634b!important;font:300 25px/1 system-ui,sans-serif!important}
html body .shop-earn-intro{margin:0 0 13px!important;color:#6d7565!important;font:400 11px/1.5 system-ui,sans-serif!important}
html body .shop-earn-dialog .shop-reference-currency{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;padding:0!important}
html body .shop-earn-dialog .shop-currency-card{min-width:0!important;min-height:154px!important;padding:9px 6px!important;border:1px solid rgba(136,148,111,.23)!important;border-radius:15px!important;background:rgba(255,255,255,.48)!important;box-shadow:none!important}
html body .shop-earn-dialog .shop-currency-art{height:45px!important}
html body .shop-earn-dialog .shop-currency-card small{font-size:9px!important}
html body .shop-earn-dialog .shop-currency-card strong{font-size:20px!important}
html body .shop-earn-dialog .shop-currency-card button{width:100%!important;min-height:35px!important;padding:5px 3px!important;font-size:9px!important}

html body #shopSheet .shop-category-bar{margin-bottom:11px!important}
html body #shopSheet .shop-featured-head{min-height:38px!important;padding:8px 12px!important}
html body #shopSheet .shop-featured-body{grid-template-columns:128px minmax(0,1fr)!important;min-height:174px!important}
html body #shopSheet .shop-featured-art{min-height:174px!important;padding:9px 6px!important}
html body #shopSheet .shop-featured-art .shop-board-preview{width:104px!important;height:104px!important}
html body #shopSheet .shop-featured-art .shop-featured-flowers{width:112px!important;height:112px!important}
html body #shopSheet .shop-featured-copy{padding:11px 12px!important}
html body #shopSheet .shop-featured-copy h3{font-size:clamp(18px,4.8vw,22px)!important;margin:2px 0 5px!important}
html body #shopSheet .shop-featured-copy p{-webkit-line-clamp:2!important;font-size:9.5px!important}
html body #shopSheet .shop-featured-buy{min-height:36px!important;font-size:13px!important}
html body #shopSheet .bundle-card{min-height:246px!important;padding:8px!important}
html body #shopSheet .bundle-card .bundle-art{height:84px!important}
html body #shopSheet .bundle-card .bundle-art>.shop-board-preview,
html body #shopSheet .bundle-card .bundle-art>img{width:64px!important;height:64px!important}
html body #shopSheet .bundle-card h3{min-height:36px!important;font-size:16px!important;line-height:1.1!important}
html body #shopSheet .bundle-card p{min-height:24px!important}
html body #shopSheet .shop-compact-products .shop-detail-card{min-height:204px!important;padding:8px!important}
html body #shopSheet .shop-compact-products .shop-detail-art{height:94px!important}
html body #shopSheet .shop-compact-products h4{min-height:34px!important;font-size:16px!important;line-height:1.1!important}
html body #shopSheet .shop-compact-products p{min-height:22px!important}

html body #game .note-dot .note-flower{
  display:block!important;width:88%!important;height:88%!important;border-radius:0!important;background-size:contain!important;background-position:center!important;
  background-repeat:no-repeat!important;box-shadow:none!important;filter:drop-shadow(0 1px 1px rgba(28,39,24,.22))!important;
}
html[data-flower-skin]:not([data-flower-skin="default"]) body #game .note-dot .note-flower[data-flower-index]{
  background-image:var(--equipped-flower-atlas)!important;background-size:300% 300%!important;background-position:var(--flower-x) var(--flower-y)!important;background-repeat:no-repeat!important;
}

@media(max-width:380px){
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-shared-brand,
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead .petal-brand-wordmark{width:142px!important;min-width:142px!important;max-width:142px!important}
  html body :is(#home,#free,#daily,#garden,#shopSheet,#gardenPlay) .pg-masthead.pg-masthead{grid-template-columns:minmax(0,1fr) 40px!important;gap:8px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:112px minmax(0,1fr)!important}
  html body #shopSheet .shop-featured-art .shop-board-preview{width:92px!important;height:92px!important}
  html body #shopSheet .shop-earn-trigger{padding-inline:10px!important}
}

/* v0.10.4 final cascade guards */
html body .shop-earn-dialog .shop-reference-currency{grid-template-columns:1fr!important;gap:8px!important}
html body .shop-earn-dialog .shop-currency-card{display:grid!important;grid-template-columns:52px minmax(0,1fr) 104px!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:11px!important;min-height:76px!important;padding:10px 11px!important;text-align:left!important;color:#40523e!important;background:#fffdf7!important;border-color:#d8d6c3!important}
html body .shop-earn-dialog .shop-currency-art{grid-column:1!important;grid-row:1/3!important;width:48px!important;height:48px!important;margin:0!important}
html body .shop-earn-dialog .shop-currency-card strong{grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0!important;color:#34503b!important;font:500 20px/1.15 Georgia,serif!important}
html body .shop-earn-dialog .shop-currency-card small{grid-column:2!important;grid-row:2!important;align-self:start!important;height:auto!important;margin:3px 0 0!important;color:#747763!important;font:500 10px/1.25 system-ui,sans-serif!important}
html body .shop-earn-dialog .shop-currency-card button{grid-column:3!important;grid-row:1/3!important;width:104px!important;min-height:38px!important;margin:0!important;padding:7px 8px!important;border:1px solid #5d774f!important;border-radius:12px!important;background:#3f6749!important;color:#fffdf5!important;font:600 10px/1.2 system-ui,sans-serif!important}
html body .shop-earn-dialog .shop-currency-card button:disabled{background:#ebe9dd!important;border-color:#d2d1c4!important;color:#77796b!important;opacity:1!important}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{display:flex!important;flex-direction:column!important;min-height:252px!important;padding:9px!important;overflow:hidden!important}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{flex:0 0 122px!important;width:100%!important;height:122px!important;min-height:122px!important;max-width:none!important;aspect-ratio:auto!important;margin:0 0 8px!important;padding:5px!important;overflow:hidden!important;border-radius:13px!important;background:#f3f3e7!important}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .atelier-flower-sheet{position:static!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;margin:0!important;object-fit:contain!important;transform:none!important}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] h4{flex:0 0 auto!important;min-height:36px!important;margin:0 2px 4px!important;font-size:17px!important;line-height:1.05!important}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{flex:1 1 auto!important;min-height:28px!important;margin:0 2px 8px!important;font-size:9px!important;line-height:1.35!important;overflow:hidden!important}

/* v0.10.5 — responsive rhythm and component placement */
html body #garden .collection-premium-shell{
  align-content:start!important;align-items:start!important;row-gap:10px!important;padding-top:0!important;padding-bottom:18px!important;
}
html body #garden .collection-col{align-content:start!important;justify-content:start!important;gap:10px!important}
html body #garden .collection-col>*{margin-top:0!important;margin-bottom:0!important}
html body #garden .collection-filter-row{margin:0!important}
html body #garden .collection-grid-head-v2{margin:0!important}
html body #garden .collection-discovery-summary{margin-top:0!important;min-height:0!important}
html body #garden #collectionFeatured.collection-featured{margin:0!important}

html body #gardenPlay.garden-page .gd-courtyard-actions{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:0 0 12px!important;padding:0!important;
}
html body #gardenPlay.garden-page .gd-courtyard-actions>button{
  display:grid!important;grid-template-columns:25px minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-items:center!important;gap:2px 6px!important;
  min-width:0!important;min-height:52px!important;padding:8px!important;border:1px solid #cbd2bc!important;border-radius:13px!important;background:#f3f4e8!important;text-align:left!important;
}
html body #gardenPlay.garden-page .gd-courtyard-actions .gd-console-icon{grid-column:1!important;grid-row:1/3!important;width:23px!important;height:23px!important;color:#5d7457!important}
html body #gardenPlay.garden-page .gd-courtyard-actions b{grid-column:2!important;grid-row:1!important;min-width:0!important;color:#3b533f!important;font:600 10px/1.15 system-ui,sans-serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body #gardenPlay.garden-page .gd-courtyard-actions small{grid-column:2!important;grid-row:2!important;color:#76806b!important;font:500 9px/1.15 system-ui,sans-serif!important}

html body #shopSheet .shop-featured-body{grid-template-columns:122px minmax(0,1fr)!important}
html body #shopSheet .shop-featured-art{
  min-height:174px!important;padding:12px 8px!important;background:transparent!important;border-right:0!important;box-shadow:none!important;
}
html body #shopSheet .shop-featured-art::before,html body #shopSheet .shop-featured-art::after{content:none!important;display:none!important}
html body #shopSheet .shop-featured-art .finish-skin-art{width:92px!important;height:92px!important;background:none!important}
html body #shopSheet .shop-featured-art .finish-skin-art[data-finish-preview="prism"] svg{width:68px!important;height:68px!important;padding:7px!important}

html body #free>.free-page-shell{
  display:flex!important;flex-direction:column!important;justify-content:flex-start!important;align-content:initial!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;gap:10px!important;
}
html body #free .free-config-card,
html body #free .free-difficulty-block,
html body #free .free-mechanic-picker{
  flex:0 0 auto!important;height:auto!important;min-height:0!important;max-height:none!important;align-self:stretch!important;
}
html body #free .free-difficulty-block{padding-bottom:12px!important}
html body #free .difficulty-grid{flex:0 0 auto!important;height:auto!important;min-height:0!important;grid-template-rows:repeat(2,54px)!important}
html body #free .free-mechanic-picker{display:flex!important}
html body #free #freeMechanicGrid{flex:0 0 auto!important;height:auto!important;min-height:0!important;grid-template-rows:repeat(2,52px)!important}
html body #free .free-launch-card{margin-bottom:8px!important}

@media(min-width:700px){
  html body #garden .collection-premium-shell{gap:14px 18px!important}
  html body #garden .collection-col{gap:12px!important}
  html body #gardenPlay.garden-page .gd-courtyard-actions>button{min-height:58px!important;padding:9px 11px!important}
  html body #shopSheet .shop-compact-products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{min-height:232px!important;max-width:310px!important;width:100%!important;justify-self:center!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{flex-basis:112px!important;height:112px!important;min-height:112px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:150px minmax(0,1fr)!important;min-height:190px!important}
  html body #shopSheet .shop-featured-art{min-height:190px!important}
  html body #free>.free-page-shell{width:min(760px,100%)!important;margin-inline:auto!important}
  html body #free .difficulty-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:62px!important}
  html body #free #freeMechanicGrid{grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:58px!important}
}

@media(min-width:1100px){
  html body #garden .collection-premium-shell{max-width:1120px!important;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr)!important}
  html body #garden .collection-col-left{position:sticky!important;top:8px!important}
  html body #shopSheet .shop-compact-products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{max-width:270px!important;min-height:224px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{flex-basis:104px!important;height:104px!important;min-height:104px!important}
}

@media(max-width:420px){
  html body #gardenPlay.garden-page .gd-courtyard-actions>button{grid-template-columns:1fr!important;grid-template-rows:auto auto!important;place-items:center!important;text-align:center!important;padding:7px 3px!important}
  html body #gardenPlay.garden-page .gd-courtyard-actions .gd-console-icon{display:none!important}
  html body #gardenPlay.garden-page .gd-courtyard-actions b,html body #gardenPlay.garden-page .gd-courtyard-actions small{grid-column:1!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:104px minmax(0,1fr)!important}
  html body #shopSheet .shop-featured-art .finish-skin-art{width:76px!important;height:76px!important}
}

/* ==================================================================
   v0.11.2 — Store flower shelf repair (final cascade authority)
   ================================================================== */
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{
  box-sizing:border-box!important;display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;column-gap:13px!important;row-gap:5px!important;
  width:100%!important;max-width:none!important;min-height:132px!important;padding:10px!important;
  overflow:hidden!important;align-items:center!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
  box-sizing:border-box!important;grid-column:1!important;grid-row:1/4!important;
  width:112px!important;height:112px!important;min-height:112px!important;max-width:112px!important;
  margin:0!important;padding:5px!important;border-radius:12px!important;overflow:hidden!important;background:#f3f3e7!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .atelier-flower-sheet,
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .atelier-default-flowers{
  position:static!important;display:grid!important;width:100%!important;height:100%!important;max-width:100%!important;
  margin:0!important;object-fit:contain!important;transform:none!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] h4{
  grid-column:2!important;grid-row:1!important;align-self:end!important;min-width:0!important;min-height:0!important;
  margin:0!important;font-size:17px!important;line-height:1.12!important;text-align:left!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{
  grid-column:2!important;grid-row:2!important;align-self:start!important;min-width:0!important;min-height:0!important;
  margin:0!important;font-size:10px!important;line-height:1.35!important;text-align:left!important;overflow:visible!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]>button{
  grid-column:2!important;grid-row:3!important;align-self:end!important;justify-self:start!important;
  width:auto!important;min-width:94px!important;max-width:100%!important;min-height:36px!important;margin:2px 0 0!important;padding:7px 12px!important;
}
@media(min-width:700px){
  html body #shopSheet .shop-compact-products:has(.atelier-card[data-atelier-kind="flowers"]){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{grid-template-columns:104px minmax(0,1fr)!important;min-height:124px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{width:104px!important;height:104px!important;min-height:104px!important;max-width:104px!important}
}
@media(min-width:1100px){html body #shopSheet .shop-compact-products:has(.atelier-card[data-atelier-kind="flowers"]){grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:420px){
  html body #shopSheet .shop-compact-products:has(.atelier-card[data-atelier-kind="flowers"]){grid-template-columns:1fr!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{grid-template-columns:92px minmax(0,1fr)!important;column-gap:10px!important;min-height:112px!important;padding:8px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{width:92px!important;height:92px!important;min-height:92px!important;max-width:92px!important;padding:3px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] h4{font-size:15px!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{font-size:9px!important;line-height:1.3!important}
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]>button{min-height:33px!important;padding:6px 10px!important}
}

/* ===== v0.11.6 — QA touch-target pass =====
   Real actions keep a minimum 44px clickable rectangle at every viewport. */
html body #gardenPlay.garden-page .garden-dev-panel__actions button{
  min-width:96px!important;min-height:44px!important;padding:10px 13px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  font-size:9px!important;line-height:1.15!important;white-space:nowrap!important
}

/* Closed-test layout: allow long product copy to determine card height. */
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{
  height:auto!important;max-height:none!important;overflow:visible!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{
  display:block!important;-webkit-line-clamp:unset!important;max-height:none!important;
  overflow:visible!important;overflow-wrap:anywhere!important;
}
html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]>button{
  min-height:44px!important;
}
html body #shopEarnModal .shop-earn-dialog{
  overscroll-behavior:contain;scrollbar-gutter:stable;
}
html body #journey .journey-hud-play{
  min-width:116px!important;min-height:44px!important;height:44px!important;padding:0 15px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  font-size:10px!important;line-height:1!important
}
html body #journey .journey-soft-node{min-width:44px!important;min-height:44px!important}
@media(max-width:620px){
  html body #gardenPlay.garden-page .garden-dev-panel__actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  html body #gardenPlay.garden-page .garden-dev-panel__actions button{width:100%!important;min-width:0!important;min-height:44px!important;padding:8px 4px!important;font-size:7.5px!important;white-space:normal!important}
  html body #journey .journey-hud-play{min-height:44px!important;height:44px!important;margin-top:5px!important}
}

/* ==================================================================
   v0.12.1 — mobile visual repair before the first APK build
   ================================================================== */
@media(max-width:699px){
  /* Collection: every region owns its space; the selected flower no longer
     squeezes its copy into a narrow desktop column. */
  html body #garden .collection-premium-shell{row-gap:14px!important}
  html body #garden .collection-col{display:grid!important;gap:12px!important}
  html body #garden .collection-archive-hero,
  html body #garden #collectionFeatured.collection-featured,
  html body #garden .collection-filter-row,
  html body #garden .collection-grid-head-v2{margin:0!important}
  html body #garden #collectionFeatured.collection-featured{
    grid-template-columns:104px minmax(0,1fr)!important;min-height:174px!important;
    border-radius:20px!important;overflow:hidden!important
  }
  html body #garden #collectionFeatured .collection-featured-art{
    width:104px!important;min-width:104px!important;max-width:104px!important;
    min-height:174px!important;padding:10px 6px!important
  }
  html body #garden #collectionFeatured .collection-featured-art>img{width:90px!important;height:112px!important}
  html body #garden #collectionFeatured .collection-featured-copy{padding:14px 13px!important;overflow:hidden!important}
  html body #garden #collectionFeatured .collection-featured-copy h2{
    margin:0 0 5px!important;font-size:clamp(20px,6vw,25px)!important;line-height:1.06!important;overflow-wrap:anywhere!important
  }
  html body #garden #collectionFeatured .collection-featured-meta{font-size:9px!important;line-height:1.3!important}
  html body #garden #collectionFeatured .collection-featured-description{
    display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;
    margin:8px 0!important;font-size:9.5px!important;line-height:1.4!important;overflow:hidden!important
  }
  html body #garden #collectionFeatured .collection-featured-stats{
    display:flex!important;flex-wrap:wrap!important;gap:4px 10px!important;font-size:8.5px!important
  }
  html body #garden .collection-filter-row{margin-top:2px!important}
  html body #garden .collection-grid-head-v2{padding:14px!important}

  /* Garden: separate the counters and shortcuts into a deliberate control
     deck instead of one uninterrupted slab. */
  html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head{
    align-items:center!important;padding:0 14px!important;margin-bottom:12px!important
  }
  html body #gardenPlay.garden-page .gd-plots-card>.gd-section-head p{display:none!important}
  html body #gardenPlay.garden-page .gd-section-badge{
    display:inline-flex!important;align-items:baseline!important;justify-content:center!important;gap:2px!important;
    min-width:82px!important;padding:9px 11px!important;border-radius:999px!important;white-space:nowrap!important
  }
  html body #gardenPlay.garden-page .gd-section-badge b{font-size:18px!important;line-height:1!important}
  html body #gardenPlay.garden-page .gd-section-badge small{font-size:10px!important;line-height:1!important}
  html body #gardenPlay.garden-page .gd-courtyard-resources{
    width:auto!important;margin:0 14px 10px!important;padding:6px!important;gap:0!important;
    border:1px solid rgba(133,145,107,.28)!important;border-radius:16px!important;background:#fbfaf2!important;
    box-shadow:0 5px 14px rgba(54,72,48,.055)!important
  }
  html body #gardenPlay.garden-page .gd-courtyard-resources>span{
    min-width:0!important;padding:7px 4px!important;border-radius:0!important;background:transparent!important
  }
  html body #gardenPlay.garden-page .gd-courtyard-actions{
    width:auto!important;margin:0 14px 14px!important;gap:8px!important
  }
  html body #gardenPlay.garden-page .gd-courtyard-actions>button{
    min-height:62px!important;padding:8px 5px!important;border:1px solid rgba(127,142,102,.32)!important;
    border-radius:15px!important;background:linear-gradient(155deg,#fbfaf2,#e8ecdc)!important;
    box-shadow:0 3px 9px rgba(55,73,48,.05)!important
  }
  html body #gardenPlay.garden-page .gd-courtyard-actions b{font-size:10px!important;white-space:normal!important;text-align:center!important}
  html body #gardenPlay.garden-page .gd-courtyard-actions small{font-size:9px!important;text-align:center!important}

  /* Shop flowers: lock both kinds of preview into a real 3×3 frame. */
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{
    grid-template-columns:108px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;
    column-gap:12px!important;min-height:138px!important;padding:10px!important;overflow:hidden!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
    grid-column:1!important;grid-row:1/4!important;width:108px!important;height:108px!important;
    min-height:108px!important;max-width:108px!important;padding:7px!important;overflow:hidden!important
  }
  html body #shopSheet .atelier-card[data-atelier-kind="flowers"] .atelier-default-flowers{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,minmax(0,1fr))!important;place-items:center!important;
    gap:2px!important;width:100%!important;height:100%!important;overflow:hidden!important
  }
  html body #shopSheet .atelier-card[data-atelier-kind="flowers"] .atelier-default-flowers img{
    display:block!important;width:29px!important;height:29px!important;max-width:29px!important;max-height:29px!important;
    margin:0!important;object-fit:contain!important;transform:none!important;filter:drop-shadow(0 2px 2px rgba(37,54,34,.13))!important
  }
  html body #shopSheet .atelier-card[data-atelier-kind="flowers"] .atelier-flower-sheet{
    display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] h4{
    align-self:end!important;margin:0!important;font-size:17px!important;line-height:1.08!important;overflow-wrap:anywhere!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] p{
    align-self:start!important;margin:0!important;font-size:9.5px!important;line-height:1.35!important;overflow-wrap:anywhere!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]>button{
    align-self:end!important;justify-self:start!important;min-width:112px!important;min-height:44px!important;margin:2px 0 0!important
  }

  /* Daily showcase: a finish animation is presented as a collectible medallion,
     not as a loose line icon. */
  html body #shopSheet .shop-featured{border-color:rgba(177,139,69,.42)!important;background:linear-gradient(145deg,#fffaf0,#e7ecd8)!important}
  html body #shopSheet .shop-featured-head{border-bottom:1px solid rgba(170,145,87,.18)!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:126px minmax(0,1fr)!important;min-height:190px!important}
  html body #shopSheet .shop-featured-art{min-height:190px!important;padding:13px!important;background:radial-gradient(circle at 45% 38%,#fff9e9,#e1e7cf)!important}
  html body #shopSheet .shop-featured-art .finish-skin-art{
    display:grid!important;place-items:center!important;width:96px!important;height:96px!important;padding:12px!important;
    border:1px solid rgba(178,133,67,.48)!important;border-radius:50%!important;
    background:radial-gradient(circle at 34% 27%,#fff9dc 0 16%,#eccfa1 42%,#b98c58 100%)!important;
    box-shadow:0 10px 22px rgba(81,65,37,.18),inset 0 1px 0 rgba(255,255,255,.8)!important
  }
  html body #shopSheet .shop-featured-art .finish-skin-art svg{
    width:66px!important;height:66px!important;padding:0!important;overflow:visible!important;
    fill:rgba(255,245,215,.74)!important;stroke:#744f4a!important;stroke-width:2.5!important;
    filter:drop-shadow(0 3px 3px rgba(67,45,35,.18))!important
  }
  html body #shopSheet .shop-featured-copy{padding:14px 14px 14px 8px!important}
  html body #shopSheet .shop-featured-copy h3{font-size:22px!important}

  /* Free Bloom eyebrow: readable on the cream capsule. */
  html body #free .free-hero-kicker{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    min-height:32px!important;margin:0 0 8px!important;padding:6px 16px!important;
    border:1px solid #d6b76c!important;border-radius:999px!important;
    background:linear-gradient(180deg,#fff4d1,#ead59a)!important;color:#294b39!important;
    font-size:10px!important;font-weight:800!important;letter-spacing:.17em!important;text-shadow:none!important;
    box-shadow:0 3px 9px rgba(44,57,38,.12)!important
  }
}

/* ==================================================================
   v0.12.2 — mechanic overlays + definitive mobile collection/shop repair
   ================================================================== */

/* Mechanic layers have an explicit contract:
   vines/shade/fences < flowers < twin label < candidate notes.
   The old twin label used z-index:22 and hid the top-left candidate. */
html body :is(#game,#loadoutStage) .cell .vine-dot{z-index:3!important}
html body :is(#game,#loadoutStage) .cell .flower-token{z-index:5!important}
html body :is(#game,#loadoutStage) .cell .twin-tag{
  z-index:6!important;width:14px!important;height:14px!important;left:2px!important;top:2px!important;
  border-radius:5px!important;font-size:8px!important
}
html body :is(#game,#loadoutStage) .cell .notes-grid{z-index:7!important;pointer-events:none!important}
html body :is(#game,#loadoutStage) .cell .note-dot,
html body :is(#game,#loadoutStage) .cell .note-flower{position:relative!important;z-index:1!important}

@media(max-width:699px){
  /* The two desktop collection columns must disappear from mobile layout.
     Making them grids created implicit max-content tracks and squeezed the
     chapter header/cards into a narrow column. */
  html body #garden .collection-premium-shell{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    width:100%!important;max-width:100%!important;gap:12px!important
  }
  html body #garden .collection-col{display:contents!important}
  html body #garden .collection-archive-hero,
  html body #garden #collectionFeatured.collection-featured,
  html body #garden .collection-filter-row,
  html body #garden .collection-grid-head-v2,
  html body #garden .collection-flower-grid{
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;justify-self:stretch!important
  }
  html body #garden .collection-archive-hero{order:1!important}
  html body #garden #collectionFeatured.collection-featured{order:2!important}
  html body #garden .collection-filter-row{order:3!important}
  html body #garden .collection-grid-head-v2{order:4!important}
  html body #garden .collection-flower-grid{order:5!important}
  html body #garden .collection-empty{order:6!important}

  /* Dedicated class prevents old generic product-preview rules from
     enlarging the nine original flowers to their intrinsic dimensions. */
  html body #shopSheet .shop-flower-grid{
    position:static!important;box-sizing:border-box!important;display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,minmax(0,1fr))!important;
    place-items:center!important;gap:3px!important;width:100%!important;height:100%!important;
    min-width:0!important;min-height:0!important;margin:0!important;padding:2px!important;overflow:hidden!important;
    transform:none!important
  }
  html body #shopSheet .shop-flower-grid>img{
    position:static!important;display:block!important;box-sizing:border-box!important;
    width:28px!important;height:28px!important;min-width:0!important;min-height:0!important;
    max-width:28px!important;max-height:28px!important;margin:0!important;padding:0!important;
    object-fit:contain!important;transform:none!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"]{
    grid-template-columns:104px minmax(0,1fr)!important;min-height:136px!important
  }
  html body #shopSheet .shop-compact-products .atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
    width:104px!important;height:104px!important;min-height:104px!important;max-width:104px!important
  }
}

/* v0.12.3 — final desktop classic preview + long Journey chapter names */
html body #shopSheet .shop-flower-grid{
  position:static!important;box-sizing:border-box!important;display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  place-items:center!important;gap:3px!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;
  margin:0!important;padding:3px!important;overflow:hidden!important;transform:none!important
}
html body #shopSheet .shop-flower-grid>img{
  position:static!important;display:block!important;box-sizing:border-box!important;
  width:28px!important;height:28px!important;min-width:0!important;min-height:0!important;
  max-width:28px!important;max-height:28px!important;margin:0!important;padding:0!important;
  object-fit:contain!important;transform:none!important
}
html body #journey .journey-hud-chapter .journey-chapter-name{
  display:-webkit-box!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;
  margin:5px 0 0!important;padding:0 2px!important;white-space:normal!important;
  overflow:hidden!important;text-overflow:clip!important;overflow-wrap:anywhere!important;word-break:normal!important;
  -webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;
  font-size:12px!important;line-height:1.08!important;letter-spacing:-.025em!important;text-align:center!important
}
html body #journey .journey-hud-chapter .journey-chapter-name--long{font-size:10.5px!important;line-height:1.1!important}
html body #journey .journey-hud-chapter .journey-chapter-name--dense{
  -webkit-line-clamp:3!important;line-clamp:3!important;font-size:9px!important;line-height:1.08!important;letter-spacing:-.035em!important
}
@media(min-width:700px){
  html body #journey .journey-hud-chapter .journey-chapter-name{font-size:14px!important}
  html body #journey .journey-hud-chapter .journey-chapter-name--long{font-size:12px!important}
  html body #journey .journey-hud-chapter .journey-chapter-name--dense{font-size:10.5px!important}
}

/* v0.12.4 — coherent flower shop and honest pencil-note palette */
html body #game.note-mode .palette .color-btn,
html body #game.note-mode .palette .color-btn.exhausted,
html body #game.note-mode .palette .color-btn.rule-disabled{
  opacity:1!important;filter:none!important;transform:none!important
}

/* Every flower set uses one compact horizontal card. The original set is no
   longer promoted into a one-off hero that breaks the shelf rhythm. */
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]{
  box-sizing:border-box!important;display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;column-gap:14px!important;row-gap:5px!important;
  width:100%!important;max-width:none!important;height:auto!important;min-height:136px!important;
  padding:11px!important;overflow:hidden!important;align-items:center!important;
  border:1px solid rgba(130,143,105,.28)!important;border-radius:18px!important;
  background:linear-gradient(145deg,#fffdf6,#edf0e3)!important
}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
  box-sizing:border-box!important;grid-column:1!important;grid-row:1/4!important;
  width:112px!important;height:112px!important;min-width:112px!important;min-height:112px!important;max-width:112px!important;max-height:112px!important;
  margin:0!important;padding:7px!important;overflow:hidden!important;border-radius:14px!important;
  background:rgba(255,255,255,.55)!important
}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] h4{
  grid-column:2!important;grid-row:1!important;align-self:end!important;min-height:0!important;
  margin:0!important;text-align:left!important;font-size:18px!important;line-height:1.12!important
}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] p{
  grid-column:2!important;grid-row:2!important;align-self:start!important;min-height:0!important;
  margin:0!important;text-align:left!important;font-size:10px!important;line-height:1.4!important
}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>button{
  grid-column:2!important;grid-row:3!important;justify-self:start!important;align-self:end!important;
  width:auto!important;min-width:116px!important;min-height:44px!important;margin:2px 0 0!important;padding:9px 16px!important
}

/* Flower preview dialog: dense showroom grid instead of a mostly empty square. */
html body #shopSheet .design-preview-art:has(.shop-flower-grid){
  box-sizing:border-box!important;width:min(100%,270px)!important;height:224px!important;aspect-ratio:auto!important;
  margin:2px auto 8px!important;padding:14px 22px!important;border:1px solid rgba(132,145,108,.22)!important;
  border-radius:20px!important;background:linear-gradient(145deg,#fffdf6,#edf0e3)!important
}
html body #shopSheet .design-preview-art .shop-flower-grid{
  width:100%!important;height:100%!important;gap:10px 18px!important;padding:0!important
}
html body #shopSheet .design-preview-art .shop-flower-grid>img{
  width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important;
  filter:drop-shadow(0 4px 5px rgba(44,61,39,.13))!important
}
html body #shopSheet .design-preview-items figcaption{margin-top:0!important}

/* Today's showcase has a clean art well. Remove the old left-hand colour
   stripe and keep every asset centred at a predictable size. */
html body #shopSheet .shop-featured-body{
  grid-template-columns:132px minmax(0,1fr)!important;min-height:184px!important
}
html body #shopSheet .shop-featured-art{
  box-sizing:border-box!important;min-height:184px!important;padding:15px!important;
  background:rgba(255,255,255,.34)!important;border-right:1px solid rgba(138,149,111,.18)!important
}
html body #shopSheet .shop-featured-art::before,
html body #shopSheet .shop-featured-art::after{content:none!important;display:none!important}
html body #shopSheet .shop-featured-art .shop-featured-flowers{
  position:static!important;inset:auto!important;display:block!important;
  width:108px!important;height:108px!important;max-width:100%!important;max-height:108px!important;
  margin:auto!important;object-fit:contain!important;transform:none!important
}
html body #shopSheet .shop-featured-art .shop-flower-grid{
  width:106px!important;height:106px!important;padding:3px!important
}

@media(max-width:420px){
  html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]{
    grid-template-columns:102px minmax(0,1fr)!important;column-gap:11px!important;min-height:126px!important;padding:9px!important
  }
  html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] .shop-detail-art{
    width:102px!important;height:102px!important;min-width:102px!important;min-height:102px!important;max-width:102px!important;max-height:102px!important;padding:6px!important
  }
  html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] h4{font-size:17px!important}
  html body #shopSheet .shop-featured-body{grid-template-columns:118px minmax(0,1fr)!important;min-height:176px!important}
  html body #shopSheet .shop-featured-art{min-height:176px!important;padding:12px!important}
  html body #shopSheet .shop-featured-art .shop-featured-flowers{width:96px!important;height:96px!important}
}

/* v0.12.9 — one component for every flower set, including the core set. */
html body #shopSheet #shopLoadout{margin:16px 0 20px;padding:16px;border:1px solid #d3d8c5;border-radius:20px;background:#f5f5e9;color:#304e3c}
html body #shopSheet #shopLoadout h3{margin:0 0 12px;font-size:18px}
html body #shopSheet .shop-loadout-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
html body #shopSheet .shop-loadout-items button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;min-height:88px;padding:12px;border:1px solid #d6dbc9;border-radius:12px;background:#fffdf6;text-align:left;color:#304e3c;cursor:pointer}
html body #shopSheet .shop-loadout-items small{font-size:11px;color:#657259}
html body #shopSheet .shop-loadout-items strong{font-size:13px;overflow-wrap:anywhere;line-height:1.35}
html body #shopSheet .shop-loadout-items span{font-size:11px;margin-top:auto;color:#687448}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind] > .shop-preview-button,
html body #shopSheet .bundle-card .shop-preview-button{position:static!important;grid-column:1!important;grid-row:4!important;justify-self:stretch!important;align-self:end!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;width:100%!important;min-height:44px!important;height:auto!important;margin:8px 0 0!important;padding:8px!important;border:1px solid #708462!important;border-radius:12px!important;background:#fffdf4!important;color:#304e3c!important;box-shadow:none!important;font:600 12px/1.3 system-ui,sans-serif!important;cursor:zoom-in!important;z-index:1}
html body #shopSheet .shop-preview-button:focus-visible{outline:3px solid #a78945;outline-offset:2px}
html body #shopSheet .bundle-card .shop-preview-button{grid-row:auto!important;grid-column:1/-1!important}
html body #shopSheet .shop-detail-card[data-atelier-kind="flowers"]{grid-template-rows:auto auto auto auto!important;align-content:start!important}
html body #shopSheet .shop-detail-card[data-atelier-kind="flowers"] .shop-detail-art .shop-flower-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:2px!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;margin:0!important}
html body #shopSheet .shop-detail-card[data-atelier-kind="flowers"] .shop-flower-grid img{position:static!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;transform:none!important}
html body #shopSheet .shop-detail-card[data-atelier-kind="flowers"] .atelier-flower-sheet{width:100%!important;height:100%!important;object-fit:contain!important;position:static!important;transform:none!important}
html body #shopSheet .boutique-showcase{background:linear-gradient(135deg,#fffaf0,#edf1df)!important;border:1px solid #c7cba9!important;border-radius:24px!important;padding:20px!important;overflow:hidden!important;box-shadow:0 8px 24px #41563210!important}
html body #shopSheet .boutique-showcase .shop-featured-head{padding:0 0 16px!important;background:none!important;border:0!important;display:flex!important;gap:10px!important;flex-wrap:wrap!important}
html body #shopSheet .boutique-showcase .shop-featured-head small{color:#6f6036!important;font-size:11px!important;letter-spacing:.12em!important}
html body #shopSheet .boutique-showcase .shop-featured-head i{font-size:11px!important}
html body #shopSheet .boutique-showcase .shop-featured-body{display:grid!important;grid-template-columns:minmax(110px, .8fr) minmax(0,1.2fr)!important;gap:20px!important;align-items:center!important;min-height:0!important;padding:0!important}
html body #shopSheet .boutique-showcase .shop-featured-art{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1!important;padding:12px!important;background:radial-gradient(circle,#fffdf4,#e2e8d2)!important;border:0!important;border-radius:20px!important;box-sizing:border-box!important;overflow:hidden!important}
html body #shopSheet .boutique-showcase .shop-featured-art>img,
html body #shopSheet .boutique-showcase .shop-featured-art>.finish-skin-art,
html body #shopSheet .boutique-showcase .shop-featured-art>.shop-board-preview,
html body #shopSheet .boutique-showcase .shop-featured-art>.shop-flower-grid{position:static!important;inset:auto!important;transform:none!important;margin:0!important;width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:180px!important;max-height:180px!important;aspect-ratio:1!important;object-fit:contain!important}
html body #shopSheet .boutique-showcase .shop-featured-art[data-preview-kind="bundle"]>*{width:calc(50% - 4px)!important}
html body #shopSheet .boutique-showcase .finish-skin-art svg{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important}
html body #shopSheet .boutique-showcase .shop-featured-copy{padding:0!important;min-width:0!important}
html body #shopSheet .boutique-showcase .shop-featured-copy h3{font-size:clamp(22px,2.5vw,30px)!important;line-height:1.15!important;margin:6px 0 10px!important;overflow-wrap:anywhere!important}
html body #shopSheet .boutique-showcase .shop-featured-copy p{font-size:13px!important;line-height:1.5!important;margin:0 0 12px!important}
html body #shopSheet .boutique-showcase .shop-featured-buy{width:100%!important;min-height:44px!important;font-size:15px!important;padding:12px!important}
html body #shopSheet .boutique-showcase .shop-featured-short{display:block!important;font-size:12px!important;margin-top:8px!important}
html body #shopDesignPreview .shop-flower-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:12px!important;width:100%!important;height:auto!important;aspect-ratio:1!important;max-width:360px!important;margin:auto!important}
html body #shopDesignPreview .shop-flower-grid img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;min-height:0!important;object-fit:contain!important}
@media(max-width:480px){
 html body #shopSheet .boutique-showcase{padding:16px!important}
 html body #shopSheet .boutique-showcase .shop-featured-body{grid-template-columns:108px minmax(0,1fr)!important;gap:14px!important}
 html body #shopSheet .boutique-showcase .shop-featured-copy h3{font-size:22px!important}
 html body #shopSheet .shop-loadout-items{gap:6px}
 html body #shopSheet .shop-loadout-items button{padding:9px}
}

/* v1.0.0: paired actions and centered showcase. */
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]{grid-template-columns:102px minmax(0,1fr)!important;grid-template-rows:auto auto 48px!important;gap:10px 14px!important;padding:14px!important;align-items:start!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] .shop-detail-art{grid-row:1/3!important;width:102px!important;height:102px!important;min-width:102px!important;max-width:102px!important;min-height:102px!important;max-height:102px!important;margin:0!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] h4{align-self:end!important;min-height:0!important;margin:0!important;text-align:left!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"] p{min-height:0!important;margin:0!important;text-align:left!important;align-self:start!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>button[data-cosmetic],
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>.shop-preview-button{grid-row:3!important;align-self:stretch!important;justify-self:stretch!important;width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;margin:0!important;padding:10px!important;font:600 14px/1.2 system-ui,sans-serif!important;border-radius:13px!important;box-shadow:none!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>button[data-cosmetic]{grid-column:2!important;background:#385a43!important;color:#fffdf4!important;border:1px solid #385a43!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>button[data-cosmetic]:disabled{background:#e5ebdc!important;color:#52614a!important;border-color:#c2ccb4!important;opacity:1!important}
html body #shopSheet .shop-compact-products .shop-detail-card.atelier-card[data-atelier-kind="flowers"]>.shop-preview-button{grid-column:1!important}
html body #shopSheet .boutique-showcase .shop-featured-body{grid-template-columns:1fr!important;justify-items:center!important;gap:16px!important}
html body #shopSheet .boutique-showcase .shop-featured-art{width:164px!important;height:164px!important;aspect-ratio:1!important;justify-self:center!important;align-self:center!important;margin:0 auto!important}
html body #shopSheet .boutique-showcase .shop-featured-copy{text-align:center!important;width:100%!important;max-width:420px!important}
html body #shopSheet .boutique-showcase .shop-featured-buy{max-width:280px!important;margin:0 auto!important;display:block!important}
html body #shopSheet .loadout-visual{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;min-height:80px;margin-top:12px;padding:12px;border:1px solid #c2ccb4;border-radius:14px;background:#e7eddc;color:#304e3c;font:600 14px/1.4 system-ui;cursor:pointer}
html body #shopSheet .loadout-visual .shop-board-preview{width:66px!important;height:66px!important;min-width:66px!important;margin:0!important}
html body #loadoutPreview{box-sizing:border-box;width:min(94vw,540px);max-height:90dvh;padding:20px;border:1px solid #c1c8ac;border-radius:24px;background:#f8f5e9;color:#304e3c;overflow:auto;box-shadow:0 24px 80px #122f3655}
html body #loadoutPreview::backdrop{background:#173d36aa}
html body #loadoutPreview header{display:flex;align-items:center;justify-content:space-between;gap:12px}
html body #loadoutPreview h2{font-size:25px;margin:0}
html body #loadoutPreview header button{flex:0 0 44px;height:44px;border:1px solid #bac6a6;border-radius:50%;background:#eff0e3;color:#304e3c;font-size:28px}
html body #loadoutPreview p{font:13px/1.5 system-ui;color:#657259;margin:12px 0 18px}
html body #loadoutStage{position:relative;width:100%;isolation:isolate}
html body #loadoutStage .board{position:relative!important;display:grid!important;grid-template-columns:repeat(9,minmax(0,1fr))!important;grid-template-rows:repeat(9,minmax(0,1fr))!important;width:100%!important;height:auto!important;aspect-ratio:1!important;max-width:none!important;max-height:none!important;min-width:0!important;min-height:0!important;margin:0!important;gap:2px!important;transform:none!important;box-sizing:border-box!important}
html body #loadoutStage .cell{width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;aspect-ratio:1!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:4px!important;cursor:default!important;padding:1px!important}
html body #loadoutStage .flower-token{width:90%!important;height:90%!important;max-width:none!important;max-height:none!important;background-size:contain;background-position:center;background-repeat:no-repeat}
html body #loadoutStage .loadout-finish{position:absolute;inset:20% 14%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c2ba90;border-radius:20px;background:#fffaf0ed;box-shadow:0 12px 30px #19362f38;pointer-events:none}
html body #loadoutStage .loadout-finish[hidden]{display:none}
html body #loadoutStage .loadout-finish .finish-skin-art{width:96px;height:96px}
html body #loadoutPreview .loadout-replay{width:100%;min-height:48px;margin:18px 0 10px;border:0;border-radius:14px;background:#385a43;color:#fffdf4;font:600 14px system-ui}
html body #loadoutPreview>small{display:block;text-align:center;font:12px/1.4 system-ui;color:#657259}
html body #shopSheet .loadout-visual .flower-token{width:100%!important;height:100%!important;background-size:contain;background-position:center;background-repeat:no-repeat}
html[data-flower-skin]:not([data-flower-skin="default"]) body #shopSheet .loadout-visual .flower-token{background-image:var(--equipped-flower-atlas)!important;background-size:300% 300%!important;background-position:var(--flower-x) var(--flower-y)!important}
html body #shopSheet .loadout-visual .cb-num{display:none!important}

/* v1.0.1 — Android system insets and readable Journey chapter names. */
html body #journey{padding-top:var(--safe-area-inset-top, env(safe-area-inset-top, 0px))!important}
html body #journey .journey-hud-chapter .journey-chapter-name{
 display:block!important;font-size:clamp(15px,3.8vw,19px)!important;line-height:1.18!important;
 overflow:visible!important;overflow-wrap:normal!important;letter-spacing:-.015em!important;
 -webkit-line-clamp:unset!important;line-clamp:unset!important;
}
html body #game .palette .color-btn.rule-disabled,
html body #game.note-mode .palette .color-btn.rule-disabled{
 opacity:.25!important;filter:grayscale(.8)!important;pointer-events:none!important;
}

/* v1.0.2: one available-height calculation for the complete Journey scene. */
html body #journey:not(.hidden){
 --journey-usable-height:calc(100dvh - var(--safe-area-inset-top,env(safe-area-inset-top,0px)) - var(--pg-nav-height,82px) - var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));
 box-sizing:border-box!important;height:100dvh!important;min-height:0!important;
 padding-bottom:0!important;overflow:hidden!important;
}
html body #journey>.page-card,
html body #journey .journey-map,
html body #journey .map-grid,
html body #journey .journey-immersive-stage.journey-immersive-stage{
 height:var(--journey-usable-height)!important;min-height:0!important;max-height:var(--journey-usable-height)!important;
 padding:0!important;margin-top:0!important;margin-bottom:0!important;box-sizing:border-box!important;
}
html body #journey .journey-immersive-stage.journey-immersive-stage{aspect-ratio:auto!important}
html body #journey .journey-soft-node{top:min(var(--jy),calc(100% - 56px))!important}

/* Shared finish renderer: product previews and real victories use identical effects. */
.finish-celebration{position:absolute!important;inset:0!important;z-index:5!important;overflow:hidden;pointer-events:none!important;border-radius:inherit}
.finish-effect-halo{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(ellipse,#ffe2a755,transparent 68%);animation:petal-finish-halo 2.8s ease-out both}
.finish-effect-piece{position:absolute;left:50%;top:42%;width:30px;height:30px;color:#e4b350;opacity:0;animation:petal-finish-stars 2.4s ease-out both;will-change:transform,opacity}
.finish-effect-piece svg{width:100%;height:100%;fill:currentColor;filter:drop-shadow(0 2px 3px #55452b33)}
[data-effect="lantern"] .finish-effect-piece{left:var(--fx-x);top:85%;width:38px;height:48px;color:#e8ac42;animation-name:petal-finish-lantern;animation-duration:2.8s}
[data-effect="lantern"] .finish-effect-halo{background:radial-gradient(ellipse at bottom,#ffbf5666,transparent 72%)}
[data-effect="prism"] .finish-effect-piece{color:var(--fx-color);width:32px;height:40px;animation-name:petal-finish-prism}
[data-effect="prism"] .finish-effect-halo{background:conic-gradient(from 30deg,#ebabc344,#a298e555,#88d2c744,#ebabc344)}
[data-effect="sakura"] .finish-effect-piece{left:var(--fx-x);top:-8%;width:24px;height:28px;color:#ee9cbb;animation-name:petal-finish-sakura;animation-duration:2.8s}
[data-effect="sakura"] .finish-effect-halo{background:radial-gradient(ellipse,#f7bfdc66,transparent 70%)}
@keyframes petal-finish-stars{0%{opacity:0;transform:scale(.3)}18%{opacity:1}100%{opacity:0;transform:translate(var(--fx-dx),var(--fx-dy)) rotate(var(--fx-turn)) scale(.5)}}
@keyframes petal-finish-lantern{0%{opacity:0;transform:translateY(20px) scale(.7)}20%{opacity:1}85%{opacity:.9}100%{opacity:0;transform:translate(15px,-230px) scale(1.05)}}
@keyframes petal-finish-prism{0%{opacity:0;transform:scale(.1) rotate(0)}20%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translate(var(--fx-dx),var(--fx-dy)) rotate(var(--fx-turn)) scale(.8)}}
@keyframes petal-finish-sakura{0%{opacity:0;transform:translate(0,-15px) rotate(0)}15%{opacity:1}85%{opacity:.85}100%{opacity:0;transform:translate(35px,320px) rotate(var(--fx-turn))}}
@keyframes petal-finish-halo{0%{opacity:0;transform:scale(.6)}20%{opacity:1}100%{opacity:0;transform:scale(1.15)}}
.finish-celebration.motion-still .finish-effect-piece{animation:none!important;opacity:.8;left:var(--fx-x);top:var(--fx-y);transform:none;will-change:auto}
.finish-celebration.motion-still .finish-effect-halo{animation:none!important;opacity:.45}
html body #shopSheet .design-preview-art[data-effect-preview]{position:relative!important;isolation:isolate;overflow:hidden;min-height:220px!important}
.finish-preview-replay{display:block;margin:10px auto;padding:10px 18px;min-height:44px;border:1px solid #a2ad87;border-radius:22px;background:#f6f2e5;color:#35573e;font:600 14px system-ui;cursor:pointer}
@media(prefers-reduced-motion:reduce){.finish-effect-piece,.finish-effect-halo{animation:none!important;will-change:auto}.finish-effect-piece{opacity:.8;left:var(--fx-x);top:var(--fx-y)}}

/* Standalone flower-only practice board; scoped away from the live game. */
#flowerLesson{position:fixed;inset:0;z-index:10000;background:#f5f0e4;overflow:auto;overscroll-behavior:contain;padding:calc(10px + env(safe-area-inset-top,0px)) 12px calc(10px + env(safe-area-inset-bottom,0px));color:#304f3c}
#flowerLesson .lesson-card{max-width:480px;margin:auto}
#flowerLesson header,#flowerLesson footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
#flowerLesson button{touch-action:manipulation;cursor:pointer;font:inherit;color:inherit}
#flowerLesson header button,#flowerLesson footer button{border:1px solid #a2af94;border-radius:10px;padding:10px;background:#fffaf0;min-height:44px}
#flowerLesson button:disabled{cursor:default}
#flowerLesson footer button:disabled{opacity:.4}
#flowerLesson h2{font-size:22px;margin:12px 0 6px}
#flowerLesson p{font-size:14px;line-height:1.45;margin:8px 0}
#flowerLesson .lesson-board{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border:3px solid #557458;border-radius:8px;overflow:hidden;width:min(100%,46dvh);margin:12px auto;background:#fffdf7}
#flowerLesson .lesson-cell{aspect-ratio:1;min-width:0;padding:1px;display:flex;align-items:center;justify-content:center;border:1px solid #d3d6c9;background:#e6e7df;opacity:1}
#flowerLesson .lesson-cell.lit{background:#fff3c7}
#flowerLesson .lesson-cell.chosen{box-shadow:inset 0 0 0 3px #286443;background:#e0f2dc}
#flowerLesson .lesson-cell.conflict{box-shadow:inset 0 0 0 3px #c74b41;background:#ffd9cb}
#flowerLesson .lesson-cell:enabled::after{content:'·';font-size:20px;color:#587657}
#flowerLesson .lesson-palette{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:3px}
#flowerLesson .lesson-palette button{min-width:0;min-height:44px;padding:2px;border:1px solid #a2af94;border-radius:8px;background:#fffcf4;display:flex;justify-content:center;align-items:center}
#flowerLesson .flower-token{width:100%;height:100%;max-width:40px;max-height:40px}
#flowerLesson img{max-width:100%;max-height:100%;object-fit:contain}
#flowerLesson .lesson-feedback{min-height:42px}
#flowerLesson button:focus-visible{outline:3px solid #286443;outline-offset:-3px}

/* v1.0.5 — warm garden tutorial, with clear progress and completion feedback. */
.ambience-suspended{display:none!important}
#flowerLesson{background:radial-gradient(ellipse at 8% 12%,#dce9d6 0,transparent 42%),radial-gradient(ellipse at 95% 85%,#f0dce1 0,transparent 38%),#f6f0e3}
#flowerLesson .lesson-card{padding:14px 18px 18px;background:linear-gradient(150deg,#fffdf6f5,#f8f0dfee);border:1px solid #d6c9aa;border-radius:26px;box-shadow:0 16px 55px #39533920;box-sizing:border-box}
#flowerLesson .lesson-brand{text-align:center;font-family:Georgia,serif;font-size:25px;font-weight:bold;color:#315f43;letter-spacing:-.5px;margin:0 0 13px}
#flowerLesson .lesson-brand>span{color:#b35e7b;font-size:30px;vertical-align:middle}
#flowerLesson .lesson-brand small{display:block;font:11px/1.5 system-ui,sans-serif;color:#778363;letter-spacing:.04em}
#flowerLesson header{font-size:11px;color:#727a61}
#flowerLesson header button{font-size:11px;border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;padding:4px 6px}
#flowerLesson .lesson-steps{display:flex;gap:7px;margin:5px 0 12px}
#flowerLesson .lesson-steps span{flex:1;text-align:center;border-radius:10px;background:#e6e8da;color:#a6af95;height:24px;line-height:24px;font-size:16px}
#flowerLesson .lesson-steps .active{background:#f2dfab;color:#815f28;box-shadow:inset 0 0 0 1px #b59454}
#flowerLesson .lesson-steps .done{background:#d9e7cf;color:#3e7046}
#flowerLesson h2{font-family:Georgia,serif;font-size:24px;color:#34593f;line-height:1.15}
#flowerLesson .lesson-copy{color:#657059;min-height:42px}
#flowerLesson .lesson-board{border-color:#637952;border-radius:12px;box-shadow:0 7px 18px #445b3626;width:min(100%,43dvh)}
#flowerLesson .lesson-cell{background:#e5e8db;border-color:#c6cebb}
#flowerLesson .lesson-cell.lit{background:linear-gradient(135deg,#fff6d3,#f5e6b7)}
#flowerLesson .lesson-cell.chosen{background:#d4ead0;box-shadow:inset 0 0 0 3px #418051}
#flowerLesson .lesson-cell.conflict{background:#f8dcd3;box-shadow:inset 0 0 0 3px #b9564b}
#flowerLesson .lesson-palette{background:#ede7d6;padding:6px;border-radius:14px;box-shadow:inset 0 1px 4px #65734712}
#flowerLesson .lesson-palette button{border-color:#c5cba8;background:linear-gradient(#fffef8,#f1efdE);box-shadow:0 2px 3px #52633816;border-radius:10px}
#flowerLesson .lesson-palette button:active{transform:translateY(1px);background:#dcead2}
#flowerLesson .lesson-feedback{padding:10px 12px;background:#edf0e4;border:1px solid #d7dfc9;border-radius:12px;color:#576949;box-sizing:border-box}
#flowerLesson .lesson-feedback.success{background:#dcecd4;border-color:#9dbd87;color:#315e35;font-weight:600}
#flowerLesson .lesson-feedback.retry{background:#fff0d9;border-color:#dfc398;color:#805b36}
#flowerLesson footer button{font-size:13px;font-weight:600;border-color:#b8c19e}
#flowerLesson [data-lesson-next]{background:linear-gradient(135deg,#63834f,#345d42);color:#fffdf4;border:0;min-width:120px;box-shadow:0 4px 9px #315a3826}
#flowerLesson [data-lesson-next]:disabled{box-shadow:none}
@media(max-width:380px){#flowerLesson{padding-left:7px;padding-right:7px}#flowerLesson .lesson-card{padding:10px}#flowerLesson h2{font-size:21px}#flowerLesson .lesson-palette{gap:2px;padding:4px}}
@media(max-height:740px){#flowerLesson .lesson-brand{font-size:21px;margin-bottom:4px}#flowerLesson .lesson-brand small{display:none}#flowerLesson .lesson-steps{margin:2px 0 7px}#flowerLesson h2{margin-top:5px}#flowerLesson p{font-size:12px}#flowerLesson .lesson-board{margin:8px auto}}

/* Fit the tutorial to the available phone viewport, including native insets. */
#flowerLesson{box-sizing:border-box;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:calc(8px + var(--safe-area-inset-top,env(safe-area-inset-top,0px))) 10px calc(8px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));background:radial-gradient(ellipse at 0 0,#cadfce,transparent 55%),radial-gradient(ellipse at 100% 100%,#e9d3d6,transparent 50%),#ecebdc}
#flowerLesson .lesson-card{width:100%;height:100%;max-height:850px;min-height:0;display:flex;flex-direction:column;gap:6px;margin:0;padding:12px 14px;border-color:#b7c9ae;background:linear-gradient(155deg,#fffdf4f5,#edf1e3f5);box-shadow:0 14px 45px #304e3926}
#flowerLesson .lesson-card>*{flex-shrink:0}
#flowerLesson .lesson-brand{margin:0;line-height:0}
#flowerLesson .lesson-wordmark{width:160px;height:51px;object-fit:contain;display:block;margin:0 auto}
#flowerLesson header{min-height:32px}
#flowerLesson header button{min-height:32px}
#flowerLesson .lesson-steps{margin:0;gap:6px}
#flowerLesson h2{margin:0;font-size:21px}
#flowerLesson p{margin:0;font-size:13px;line-height:1.35}
#flowerLesson .lesson-copy{min-height:0}
#flowerLesson .lesson-board-space{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center}
#flowerLesson .lesson-board{width:var(--lesson-board-size,0px);height:var(--lesson-board-size,0px);margin:0;box-sizing:border-box;flex-shrink:0;grid-template-rows:repeat(9,minmax(0,1fr))}
#flowerLesson .lesson-cell{min-height:0;aspect-ratio:auto;overflow:hidden}
#flowerLesson .lesson-feedback{min-height:0;padding:8px 10px;font-size:12px}
#flowerLesson .lesson-palette{padding:4px}
#flowerLesson footer button{min-height:42px;padding:8px 12px}
#flowerLesson [data-lesson-play]{background:linear-gradient(135deg,#648752,#355c42);color:#fffdf5;border:0}
#flowerLesson .lesson-finished{height:auto;max-height:100%;gap:18px;text-align:center;padding:25px 20px}
#flowerLesson .lesson-finish-flower{font-size:64px;color:#b9778a;text-shadow:0 4px 0 #ead8b8}
@media(max-height:700px){#flowerLesson .lesson-card{gap:4px;padding:8px 10px;border-radius:18px}#flowerLesson .lesson-wordmark{width:130px;height:41px}#flowerLesson h2{font-size:18px}#flowerLesson p{font-size:12px}#flowerLesson .lesson-steps span{height:19px;line-height:19px}#flowerLesson .lesson-feedback{font-size:11px;padding:6px 8px}}
@media(max-height:480px) and (orientation:landscape){#flowerLesson{overflow:auto}#flowerLesson .lesson-card:not(.lesson-finished){min-height:520px}}

/* v1.0.7: equal tracks and border-box cells; no per-cell spacing deductions. */
html body #game #board.board,html body #loadoutStage .board{
 grid-template-columns:repeat(9,minmax(0,1fr))!important;
 grid-template-rows:repeat(9,minmax(0,1fr))!important;
 grid-auto-flow:row!important;gap:2px!important;box-sizing:border-box!important;
}
html body #game #board.board>.cell,html body #loadoutStage .board>.cell{
 width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
 max-width:none!important;max-height:none!important;aspect-ratio:auto!important;
 margin:0!important;padding:0!important;box-sizing:border-box!important;
 border:0!important;
}
html body #game .palette .color-btn:disabled{pointer-events:none!important;animation:none!important;transform:none!important}
#home .home-approved-greeting{display:flex;align-items:center;justify-content:space-between;gap:8px}
#homeTutorialBtn{flex-shrink:0;border:1px solid #9aaa7b;border-radius:16px;background:#f8f2dd;color:#45633f;font:600 12px/1.2 system-ui;padding:10px 12px;min-height:40px;cursor:pointer}
#homeTutorialBtn[hidden]{display:none!important}
#finish.free-no-rewards :is(#finishRewards,#finishCollected,.finish-collected-stat,#finishStars,.share-preview-stars,#finishUnlock){display:none!important}

html body #home .pg-home-chapter #homeTutorialBtn{position:absolute;top:12px;right:12px;z-index:6;box-shadow:0 3px 12px #24492d2a;background:#fff9edee}

html body #home .pg-home-chapter{position:relative}
#finish.free-no-rewards .result-reference-reward-title{display:none!important}
#board .sudoku-dividers{position:absolute;inset:0;pointer-events:none;z-index:15}
#board .sudoku-dividers i{position:absolute;display:block;background:#3f542f;opacity:.9;pointer-events:none}
#board .sudoku-dividers .v{width:2px;top:6px;bottom:6px}
#board .sudoku-dividers .h{height:2px;left:6px;right:6px}

/* A compact equipped summary, without duplicate combined-preview calls to action. */
html body #shopSheet #shopLoadout{margin:9px 0 12px!important;padding:10px!important;border-radius:15px!important}
html body #shopSheet #shopLoadout h3{font-size:15px!important;margin:0 0 7px!important}
html body #shopSheet .shop-loadout-items{gap:6px!important}
html body #shopSheet .shop-loadout-items button{min-height:64px!important;padding:8px!important;gap:4px!important;border-radius:10px!important;justify-content:flex-start!important}
html body #shopSheet .shop-loadout-items small{font-size:10px!important}
html body #shopSheet .shop-loadout-items strong{font-size:12px!important;line-height:1.25!important}

/* Keep one combined preview action, with a compact thumbnail. */
html body #shopSheet #shopLoadout .loadout-visual{min-height:56px!important;height:56px!important;margin-top:8px!important;padding:6px 10px!important;gap:10px!important;border-radius:12px!important}
html body #shopSheet #shopLoadout .loadout-visual .shop-board-preview{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex:0 0 42px!important}
html body #shopSheet #shopLoadout .loadout-visual>span{font-size:12px!important}

/* 1.0.10 — explicit economy targets, compact progression cards */
#finish.free-no-rewards.free-seed-earned #finishRewards{display:flex!important}
#freeSeedCounter{margin:5px 0 8px;text-align:center;font-size:11px;line-height:1.4;color:#44634e}
#shopGoal{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:10px 12px;margin:8px 0;border:1px solid #b7cbb8;border-radius:14px;background:#e7eee1;color:#234c39;font-size:12px}
#shopGoal[hidden]{display:none}
#shopGoal progress{grid-column:1/-1;width:100%;height:6px;accent-color:#416d49}
.shop-goal-button{font-size:11px;padding:6px 10px;border:1px solid #a5b99c;border-radius:10px;color:#33583b;background:#eef2e6}
html body #gardenPlay.garden-page .gd-console-actions>[data-gd-jump="resources"]{background:linear-gradient(125deg,#d7e7d4,#f1e8cc)!important;border-color:#9ab08c!important}
html body #gardenPlay.garden-page .gd-console-actions>[data-gd-jump="resources"] b{font-weight:700!important;font-size:11px!important}
.gd-resource-actions button{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:15px!important;border-radius:16px!important;background:linear-gradient(135deg,#ecf1e5,#faf6e8)!important;border:1px solid #b6c5a7!important;color:#2d513c!important}
.gd-resource-actions button span{font-size:13px;font-weight:600}
.gd-resource-actions button small{font-size:12px!important}

/* v1.1.4 — supplied red brand artwork, original pixels and transparency. */
html body #appSplash .pg-outline{display:none!important}
html body #appSplash .pg-logo,html body #appSplash .pg-wordmark,html body .petal-brand-wordmark,html body .lesson-wordmark{filter:none!important;object-fit:contain}

/* New artwork in the first-run welcome dialog. */
.onboard-prism-mark img{object-fit:contain}
