.growai-companion { position: fixed; z-index: 55; right: 24px; bottom: 18px; }
.growai-trigger { position: relative; width: 104px; height: 118px; padding: 0; border: 0; background: transparent; filter: drop-shadow(0 18px 24px rgba(0,0,0,.5)) drop-shadow(0 0 18px rgba(183,255,69,.18)); }
.growai-trigger img { width: 100%; height: 100%; object-fit: contain; pointer-events: none; animation: growai-idle 4.2s ease-in-out infinite; }
.growai-trigger[aria-expanded="true"] img { animation-play-state: paused; }
.hero:has([data-growai-panel][data-open="true"]) [data-motion],
.hero:has([data-growai-panel][data-open="true"]) .scene-stack * { animation-play-state: paused; }
.growai-trigger:focus-visible { outline: 2px solid var(--acid); outline-offset: 4px; border-radius: 50%; }
.growai-status { position: absolute; right: 10px; bottom: 15px; width: 12px; height: 12px; border: 2px solid #071009; border-radius: 50%; background: var(--acid); box-shadow: 0 0 14px rgba(183,255,69,.9); }
.growai-nudge { position: absolute; right: 94px; bottom: 40px; width: max-content; max-width: 220px; padding: 10px 14px; border: 1px solid rgba(183,255,69,.2); border-radius: var(--radius-pill); color: #edf7e7; background: rgba(5,12,8,.86); backdrop-filter: blur(18px); box-shadow: 0 14px 44px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08); font-size: 13px; font-weight: 700; line-height: 1.4; transition: opacity .2s ease, transform .2s ease; }
.hero[data-theme="light"] .growai-nudge, .crops-page[data-theme="light"] .growai-nudge { color: #223126; border-color: rgba(35,49,38,.1); background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.58)); box-shadow: 0 16px 46px rgba(51,73,56,.14), inset 0 1px 0 rgba(255,255,255,.82); }
.growai-trigger:hover + .growai-nudge, .growai-trigger[aria-expanded="true"] + .growai-nudge { opacity: 0; transform: translateX(8px); }
@keyframes growai-idle { 0%,100% { translate: 0 0; } 50% { translate: 0 -6px; } }

.growai-panel { position: fixed; z-index: 54; right: 28px; bottom: 142px; width: min(390px, calc(100vw - 32px)); max-height: min(620px, calc(100dvh - 178px)); display: grid; grid-template-rows: auto minmax(120px, 1fr) auto auto; gap: 14px; padding: 18px; border: 1px solid rgba(183,255,69,.22); border-radius: var(--radius-panel); color: var(--paper); background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)), rgba(5,12,8,.92); backdrop-filter: none; box-shadow: 0 30px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.08); opacity: 0; pointer-events: none; transform: none; transition: opacity .12s ease; }
.hero[data-theme="light"] .growai-panel, .crops-page[data-theme="light"] .growai-panel { color: #223126; border-color: rgba(35,49,38,.12); background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.58)), rgba(247,250,244,.9); box-shadow: 0 32px 96px rgba(51,73,56,.2), inset 0 1px 0 rgba(255,255,255,.86), inset 0 -1px 0 rgba(85,223,210,.08); }
.growai-panel[data-open="true"] { opacity: 1; pointer-events: auto; transform: none; }
.growai-panel-head { display: grid; grid-template-columns: 48px 1fr 36px; align-items: center; gap: 10px; }
.growai-panel-head img { width: 48px; height: 48px; object-fit: contain; }
.growai-panel-head h2 { margin: 0 0 2px; font-size: 18px; }
.growai-panel-head p { margin: 0; color: #91a08e; font-size: 12px; }
.hero[data-theme="light"] .growai-panel-head p, .crops-page[data-theme="light"] .growai-panel-head p { color: #667267; }
.icon-button { width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; color: var(--paper); background: rgba(255,255,255,.06); }
.hero[data-theme="light"] .icon-button, .crops-page[data-theme="light"] .icon-button { color: #223126; border-color: rgba(35,49,38,.14); background: rgba(255,255,255,.64); }
.icon-button i { width: 16px; height: 16px; }
.growai-messages { display: grid; align-content: start; gap: 9px; overflow-y: auto; padding-right: 4px; }
.message { max-width: 88%; padding: 10px 12px; border-radius: 15px; font-size: 13px; line-height: 1.55; }
.message.assistant { color: #e9f2e4; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.055); }
.message.user { justify-self: end; color: #101706; background: var(--acid); border-bottom-right-radius: 5px; }
.hero[data-theme="light"] .message.assistant, .crops-page[data-theme="light"] .message.assistant { color: #223126; border-color: rgba(35,49,38,.1); background: rgba(255,255,255,.54); }
.growai-quick { display: flex; flex-wrap: wrap; gap: 7px; }
.growai-quick button { padding: 8px 11px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: #dce8d6; background: rgba(255,255,255,.05); font-size: 12px; }
.hero[data-theme="light"] .growai-quick button, .crops-page[data-theme="light"] .growai-quick button { color: #4f5f55; border-color: rgba(35,49,38,.12); background: rgba(255,255,255,.48); }
.growai-context { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid rgba(183,255,69,.18); border-radius: 8px; background: rgba(183,255,69,.06); }
.growai-context span { color: #91a08e; font-size: 11px; }
.growai-context strong { color: var(--acid); font-size: 13px; }
.crops-page[data-theme="light"] .growai-context span { color: #667267; }
.growai-form { display: grid; grid-template-columns: 1fr 42px; gap: 8px; }
.growai-form input { min-width: 0; height: 42px; padding: 0 14px; border: 1px solid rgba(255,255,255,.14); border-radius: var(--radius-pill); color: var(--paper); background: rgba(255,255,255,.06); outline: none; }
.hero[data-theme="light"] .growai-form input, .crops-page[data-theme="light"] .growai-form input { color: #223126; border-color: rgba(35,49,38,.14); background: rgba(255,255,255,.6); }
.growai-form input:focus { border-color: rgba(183,255,69,.62); }
.growai-form .icon-button { width: 42px; height: 42px; color: #101706; border-color: var(--acid); background: var(--acid); }

@media (max-width: 640px) {
  .growai-companion { right: 10px; bottom: 8px; }
  .growai-trigger { width: 62px; height: 70px; }
  .growai-status { right: 4px; bottom: 8px; width: 9px; height: 9px; }
  .growai-nudge { display: none; }
  .growai-panel { right: 12px; bottom: 90px; width: calc(100vw - 24px); max-height: calc(100dvh - 114px); }
}
