/* Scoped to the Garden; the other panels retain their layout. */
.app-shell-content-panel > .spirit-garden.garden-layout-v2,
.spirit-garden.garden-layout-v2 {
  display: block; height: 100%; min-height: 0; padding: 10px 14px 18px;
  overflow: hidden auto; overscroll-behavior: contain;
  scrollbar-gutter: stable; scrollbar-width: thin;
  scrollbar-color: var(--color-primary) var(--color-surface);
}
.garden-layout-v2 .garden-page-header {
  width: 100%; max-width: 1600px; margin: 0 auto 12px; padding: 14px 18px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  border: 1px solid var(--color-outline-variant); border-radius: 22px;
  background: linear-gradient(120deg,color-mix(in srgb,var(--color-primary-container) 28%,var(--color-surface-container-lowest)),var(--color-surface-container-lowest));
}
.garden-layout-v2 .garden-page-heading { display: flex; align-items: center; gap: 12px; min-width: 0; }
.garden-layout-v2 .garden-page-emblem { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; border-radius: 15px; background: var(--color-primary-container); color: var(--color-on-primary-container); font-size: 28px; }
.garden-layout-v2 .garden-page-eyebrow { color: var(--color-primary); font-size: 11px; font-weight: 850; letter-spacing: .08em; }
.garden-layout-v2 .garden-page-header h1 { margin: 3px 0; color: var(--color-on-surface); font: 900 25px/1.12 var(--font-headline); }
.garden-layout-v2 .garden-page-header p { margin: 0; color: var(--color-on-surface-variant); font-size: 13px; line-height: 1.4; }
.garden-layout-v2 .garden-header-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 8px 12px; flex: 0 0 auto; max-width: 420px; }
.garden-layout-v2 .garden-header-month { display: inline-flex; align-items: center; justify-content: flex-end; order: 3; flex-basis: 100%; gap: 6px; color: var(--color-on-surface-variant); font-size: 12px; white-space: nowrap; }
.garden-layout-v2 .garden-controles { position: static; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; order: 2; margin: 0; }
.garden-layout-v2 .garden-mode-button { position: static; min-height: 40px; margin: 0; padding: 8px 12px; font-size: 12px; }
.garden-layout-v2 .garden-header-month .material-symbols-outlined { font-size: 19px; color: var(--color-primary); }
.garden-layout-v2 .garden-child-tag { margin: 0; }
.app-shell-content-panel .garden-layout-v2 .garden-world,
.garden-layout-v2 .garden-world { width: 100%; max-width: 1600px; height: auto; max-height: none; aspect-ratio: auto; margin: 0 auto; }
.app-shell-content-panel .garden-layout-v2 .garden-scene-container,
.garden-layout-v2 .garden-scene-container { width: min(100%,max(440px,calc((100dvh - 360px)*1.756))); height: auto; margin: 0 auto; }
.app-shell-content-panel .garden-layout-v2 .garden-cena-3d,
.garden-layout-v2 .garden-cena-3d { width: 100%; height: auto; aspect-ratio: 1440 / 820; }
.garden-layout-v2 .jd-palco, .garden-layout-v2 .garden-cena-3d { border-radius: 20px; }
.garden-layout-v2 .garden-hud { top: 10px; right: 10px; }
.garden-layout-v2 .garden-legenda { padding: 7px 10px; border-radius: 15px; }
.garden-layout-v2 .garden-legenda-icone { width: 30px; height: 30px; }
.garden-layout-v2 .garden-legenda li > span:last-child { font-size: 11px; }
.garden-layout-v2 .garden-legenda-titulo { display: none; }
.garden-layout-v2 .garden-panel { top: 64px; max-height: calc(100% - 76px); }
.garden-layout-v2 .garden-spirit-intro { margin-top: 12px; padding: 12px 16px; display: block; border-radius: 20px; box-shadow: none; background: var(--color-surface-container-lowest); }
.garden-layout-v2 .garden-collection-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.garden-layout-v2 .garden-collection-heading h2 { margin: 0; font: 850 16px/1.2 var(--font-headline); }
.garden-layout-v2 .garden-collection-heading p { margin: 0; font-size: 12px; color: var(--color-on-surface-variant); }
.garden-layout-v2 .garden-spirit-fruits ul { grid-template-columns: repeat(9,minmax(0,1fr)); gap: 8px; }
.garden-layout-v2 .garden-spirit-fruits button { min-height: 86px; padding: 8px 4px; gap: 5px; border-radius: 14px; background: color-mix(in srgb,var(--garden-spirit-fruit) 8%,var(--color-surface-container-lowest)); }
.garden-layout-v2 .garden-spirit-fruits .garden-fruit-insignia { --insignia-size: 46px; }
.garden-layout-v2 .garden-insignia-name { font-size: 12px; color: var(--color-on-surface); }
.garden-layout-v2 .garden-about { margin-top: 8px; color: var(--color-on-surface-variant); font-size: 12px; }
.garden-layout-v2 .garden-about summary { cursor: pointer; width: fit-content; min-height: 24px; line-height: 24px; }
.garden-layout-v2 .garden-about summary:focus-visible { outline: 3px solid var(--color-primary); outline-offset: 2px; border-radius: 4px; }
.garden-layout-v2 .garden-about p { max-width: 90ch; margin: 7px 0 0; line-height: 1.6; }
body .app-shell-column:has(.garden-layout-v2.com-painel) > .sora-global-pet { visibility: hidden !important; pointer-events: none !important; }
@media (min-width:901px) {
  body .app-shell-column:has(.garden-layout-v2) > .sora-global-pet { top: clamp(12px,var(--sora-pet-y,12px),max(12px,calc(100dvh - 430px))) !important; bottom: auto !important; }
}
@media (min-width:901px) and (max-height:740px) {
  .garden-layout-v2 .garden-page-header { padding: 10px 14px; margin-bottom: 9px; }
  .garden-layout-v2 .garden-page-header p { max-width: 64ch; }
  .garden-layout-v2 .garden-spirit-intro { margin-top: 9px; padding: 10px 12px; }
}
@media (max-width:1100px) and (min-width:901px) {
  .garden-layout-v2 .garden-header-actions { max-width: 240px; gap: 6px; }
  .garden-layout-v2 .garden-spirit-fruits ul { gap: 5px; }
  .garden-layout-v2 .garden-spirit-fruits button { min-height: 90px; }
}
@media (max-width:900px) {
  .app-shell-content-panel > .spirit-garden.garden-layout-v2,
  .spirit-garden.garden-layout-v2 { height: auto; min-height: 100%; padding: 10px 10px calc(100px + env(safe-area-inset-bottom)); overflow: visible; }
  .garden-layout-v2 .garden-page-header { padding: 12px; gap: 12px; align-items: stretch; flex-direction: column; border-radius: 18px; }
  .garden-layout-v2 .garden-page-header h1 { font-size: 23px; }
  .garden-layout-v2 .garden-header-actions { max-width: none; justify-content: space-between; }
  .garden-layout-v2 .garden-header-month { flex-basis: auto; justify-content: flex-start; }
  .app-shell-content-panel .garden-layout-v2 .garden-scene-container,
  .garden-layout-v2 .garden-scene-container { width: min(100%,520px); height: auto; }
  .app-shell-content-panel .garden-layout-v2 .garden-cena-3d,
  .garden-layout-v2 .garden-cena-3d { aspect-ratio: 900 / 1340; height: auto; }
  .garden-layout-v2 .garden-collection-heading { align-items: flex-start; flex-direction: column; gap: 4px; }
  .garden-layout-v2 .garden-spirit-fruits ul { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .garden-layout-v2 .garden-spirit-fruits button { min-height: 94px; padding: 9px 5px; }
  .garden-layout-v2 .garden-spirit-fruits .garden-fruit-insignia { --insignia-size: 54px; }
  .garden-layout-v2 .garden-panel { inset: auto 0 var(--garden-nav-altura,88px); max-height: min(56dvh,480px); }
}


