:root{--tree-fill:#36d995;--tree-light:#a0f8af;--tree-fresh:#c5ffa1;--tree-trunk:#c58d60;--tree-trunk-light:#efc695;--tree-cheek:#ffb591;--tree-outline:#072d26;--tree-ink:#082a25;--tree-shade:#159c71;--tree-deep:#086548;--grove-far:#183d39;--grove-ground:#1f5848;--grove-edge:#3e8664;--season-gold:#f3c369;--season-light:#e0f9ef;--season-rain:#86dce7;--season-petal:#ffb8c6}
[data-palette="forest"]{--tree-fill:#39df83;--tree-light:#a9fa92;--tree-fresh:#d1ffa0;--tree-outline:#0a3323;--tree-shade:#13a561;--tree-deep:#076c43;--grove-far:#153a30;--grove-ground:#255e40;--grove-edge:#5c9665;--season-gold:#ffc56d;--season-light:#e8fff2}
[data-palette="sunset"]{--tree-fill:#54dbac;--tree-light:#b3f7b3;--tree-outline:#19352f;--grove-far:#343044;--grove-ground:#384d47;--grove-edge:#6f8b69;--season-gold:#ffc17b}
[data-palette="monochrome"]{--tree-fill:#e7e7e7;--tree-light:#fff;--tree-fresh:#fff;--tree-trunk:#999;--tree-trunk-light:#ddd;--tree-cheek:#999;--tree-outline:#151515;--tree-ink:#101010;--tree-shade:#aaa;--tree-deep:#666;--grove-far:#202020;--grove-ground:#444;--grove-edge:#777;--season-gold:#ddd;--season-light:#fff;--season-rain:#aaa;--season-petal:#eee}
.evergreen-tree{display:block;overflow:visible}.tree-mark{width:43px;height:51px;flex:0 0 43px}.tree-scene{width:100%;max-width:390px;height:auto;max-height:310px;margin:auto}.eve-stage{opacity:0}.eve-mature{opacity:1}.eve-eyes{transform-box:fill-box;transform-origin:center}.eve-rain,.eve-sun,.eve-leaves,.eve-snow,.eve-snowcaps,.eve-falling-seed{opacity:0}.eve-firefly{opacity:.8}.eve-flowers{opacity:1}.tree-mark .eve-new-tips{opacity:1}
.brand{gap:9px}.brand>div{font-size:27px;letter-spacing:-1.2px}.brand span{font-size:5.5px;letter-spacing:1.2px}.briefing-art .tree-scene{max-height:300px}.briefing-art{justify-content:center}.auth-butler .tree-scene{max-width:390px}.assistant-ident .tree-mark{width:53px;height:63px}.info-brand img{object-fit:contain}
.tree-motion{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:6px;padding:7px 10px;color:var(--muted);font:9px var(--mono);white-space:nowrap}.tree-motion:hover{border-color:var(--lime);color:var(--ink)}.tree-motion svg{width:12px;height:12px}.tree-motion[aria-pressed="true"]{color:var(--ink)}.auth-header-actions{display:flex;align-items:center;gap:9px}.tree-motion-panel{display:flex;justify-content:space-between;align-items:center;gap:20px}.tree-motion-panel p{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.7}
:root:not([data-tree-motion="paused"]) .evergreen-tree *{animation-delay:var(--eve-phase,0s)!important}
/* Hand-drawn sprite changes share one 32-second timeline. Only small weather
   particles move; the tree never scales. Paused/reduced motion shows mature Eve. */
@media(prefers-reduced-motion:no-preference){
  :root:not([data-tree-motion="paused"]) .tree-scene .eve-sprout{animation:eve-sprout 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .tree-scene .eve-seedling{animation:eve-seedling 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .tree-scene .eve-sapling{animation:eve-sapling 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .tree-scene .eve-young{animation:eve-young 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .tree-scene .eve-mature{animation:eve-mature 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-eyes{animation:eve-blink 5.3s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-new-tips{animation:eve-tips 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-rain{animation:eve-rain 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-sun{animation:eve-summer 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-leaves{animation:eve-autumn 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-snow{animation:eve-winter 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-snowcaps{animation:eve-snowcaps 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-firefly{animation:eve-firefly 8s steps(8,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-falling-seed{animation:eve-seed 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-flowers{animation:eve-flowers 32s steps(1,end) infinite}
  :root:not([data-tree-motion="paused"]) .eve-scanline{animation:eve-scanline 32s steps(1,end) infinite}
}
@keyframes eve-sprout{0%,9%{opacity:1}10%,95%{opacity:0}96%,100%{opacity:1}}
@keyframes eve-seedling{0%,9%{opacity:0}10%,23%{opacity:1}24%,100%{opacity:0}}
@keyframes eve-sapling{0%,23%{opacity:0}24%,33%{opacity:1}34%,100%{opacity:0}}
@keyframes eve-young{0%,33%{opacity:0}34%,45%{opacity:1}46%,100%{opacity:0}}
@keyframes eve-mature{0%,45%{opacity:0}46%,95%{opacity:1}96%,100%{opacity:0}}
@keyframes eve-tips{0%,45%{opacity:0}46%,50%{opacity:1}51%,54%{opacity:.25}55%,100%{opacity:1}}
@keyframes eve-blink{0%,42%,46%,100%{opacity:1}43%,45%{opacity:.1}}
@keyframes eve-rain{0%,9%{opacity:0}10%{opacity:.65;transform:translate(0,-8px)}13%{transform:translate(-4px,4px)}16%{transform:translate(-8px,16px)}19%{transform:translate(-12px,28px)}22%,100%{opacity:0}}
@keyframes eve-summer{0%,37%{opacity:0}38%{opacity:.9;transform:translate(0,8px)}45%{transform:translate(-4px,0)}53%{transform:translate(-8px,-4px)}60%,100%{opacity:0}}
@keyframes eve-autumn{0%,60%{opacity:0}61%{opacity:.85;transform:translate(0,-12px)}65%{transform:translate(8px,8px)}69%{transform:translate(0,32px)}73%{transform:translate(12px,56px)}77%,100%{opacity:0}}
@keyframes eve-winter{0%,77%{opacity:0}78%{opacity:.8;transform:translate(0,-12px)}81%{transform:translate(-4px,4px)}84%{transform:translate(0,20px)}87%{transform:translate(-4px,40px)}90%,100%{opacity:0}}
@keyframes eve-snowcaps{0%,81%{opacity:0}82%,91%{opacity:.8}92%,100%{opacity:0}}
@keyframes eve-firefly{0%,100%{transform:translate(0,0);opacity:.5}25%{transform:translate(12px,-12px);opacity:1}50%{transform:translate(-4px,-20px);opacity:.5}75%{transform:translate(-12px,-4px);opacity:1}}
@keyframes eve-seed{0%,89%{opacity:0}90%{opacity:1;transform:translate(0,0)}92%{transform:translate(-8px,12px)}94%{transform:translate(-20px,28px)}96%{transform:translate(-32px,40px)}98%,100%{opacity:0}}
@keyframes eve-flowers{0%,15%{opacity:0}16%,76%{opacity:1}77%,91%{opacity:.25}92%,100%{opacity:1}}
@keyframes eve-scanline{0%,94%{opacity:0}95%{opacity:.35;transform:translateY(-188px)}96%{transform:translateY(-112px)}97%{transform:translateY(-40px)}98%,100%{opacity:0}}
@media(max-width:1200px){.brand>div{font-size:24px}.brand span{font-size:5px}.tree-mark{width:37px;flex-basis:37px}}
@media(max-width:760px){.tree-motion .motion-copy{display:none}.tree-motion{padding:8px}.auth-header-actions{gap:6px}.auth-header .brand>div{font-size:26px}.tree-motion-panel{align-items:flex-start}.briefing-art .tree-scene{max-height:245px}}
@media(prefers-reduced-motion:reduce){.eve-stage{animation:none!important;opacity:0!important}.eve-mature{opacity:1!important}.evergreen-tree *{animation:none!important}.eve-rain,.eve-sun,.eve-leaves,.eve-snow,.eve-snowcaps,.eve-falling-seed,.eve-scanline{opacity:0!important}}
