/* Yumio Amber: one complete character in every scene. */
:root{--night:#151918;--night-2:#202622;--night-3:#2d3730;--ink:#f2eee5;--muted:#b2b7ac;--accent:#efbf85;--accent-deep:#b87c49;--paper:#ede8dc;--outline:#111814;--text:#232b23;--line:#e7d7bb1c}
body,.reference-home,.reference-home>section{background:var(--night)}
.ref-hero{background:radial-gradient(ellipse at 8% -10%,#91754b3b,transparent 52%),linear-gradient(180deg,#171e19,#26382e 58%,#3e493b)}
.ref-beam{background:linear-gradient(112deg,#e6c3910b,transparent 35%)}
.ref-hero-copy>p{color:#d0d5c9}.ref-lead{color:#b2b7ac}
.ref-strip,.ref-chrome{background:#131e18}.ref-strip .ref-wrap{color:#b2b7ac}
.ref-speech{background:var(--paper)}.ref-speech small{color:#65715e}
.ref-panel,.ref-panel:nth-child(2),.ref-panel:nth-child(3){background:#e9e8dc}
.ref-panel:nth-child(2){box-shadow:6px 6px 0 #b9c4a4}.ref-panel:nth-child(3){box-shadow:6px 6px 0 #dcaa70}
.ref-caption,.ref-receipt code{color:#526250}
.ref-preview-stage{background:radial-gradient(ellipse at 50% 52%,#6e76522b,transparent 68%),#1b2920}
.ref-preview-chat{background:#1c2a22}.ref-preview-assistant{background:#304438}.ref-preview-card{background:#142119;border-color:#efbf8544}
.ref-night{background:radial-gradient(ellipse at 80% 100%,#85754a24,transparent 65%),linear-gradient(#151918,#1b2b20)}
.app-layout{background:radial-gradient(ellipse at 10% 0,#977b4b15,transparent 55%),linear-gradient(#1a271f,#23392b)}
.app-header,.app-mobile-nav{background:#142018f2}.navlinks,.workspace-topnav{background:#151e1766}
.companion-card{background:radial-gradient(ellipse at 50% 53%,#90925c21,transparent 66%)}
.companion-info-card{background:#17291c80;border-color:#d7d9be24}.companion-info-card h4{color:#b5bca8}
.chat-panel{background:#15271c70}.chat-panel-top{background:#182d1f33}
.chat-title .quota-chip{color:#e5cbaa;border-color:#efbf8533}.automatic-voice-badge{color:var(--muted)}
.chat-welcome>p{color:#b2b7ac}.welcome-enable{background:#293d2d;border-color:#b2bc8d36;color:var(--ink)}
.welcome-enable strong{color:var(--ink)}.welcome-enable span{color:var(--muted)}
.welcome-starters button,.starter-questions button{background:#1e3225;color:#d0d5c9;border-color:#b7c49a2c}
.welcome-starters button:hover,.starter-questions button:hover{background:#354c37;border-color:#efbf8566}
.composer-area{background:#182a1d80}.composer{background:#223728;border-color:#a8bc9766}
.composer textarea{color:var(--ink)}.composer textarea::placeholder{color:#a0ac98}
.send-btn{background:var(--accent);color:var(--outline)}.send-btn:disabled{background:#53664d;color:#e1e1d4}
.msg-avatar{background:#2b412f;border-color:#aabb9338}.msg-text{background:#344b36;color:var(--ink);border-color:#61775066}
.user .msg-text{background:var(--accent);color:var(--outline)}.chat-result{background:#1a2a1f;border-color:#b5bc9244}.result-heading{background:#2c4230}
.thinking-card{background:#283f2c;border-color:#c7c99d44;color:var(--ink)}
.thinking-card>div:nth-child(2){display:flex;flex-direction:column;gap:2px}.thinking-card>div>span{font-size:12px;color:var(--muted)}
.reference-empty{background:radial-gradient(ellipse at 50% 35%,#8b89562b,transparent 58%)}
.empty-networks>span,.empty-activity-guide>span{color:var(--muted);border-color:#bfc9a124}
.settings-box,.note-card,.activity-detail{background:#1c2e21;border-color:#bbc59a26}.settings-box>header{background:#2a3d2c}
.settings-agent-card{background:#2a3d2c;border-color:#c0c79b33}.settings-peek,.activity-detail-stage{background:radial-gradient(ellipse at 50% 60%,#adb27622,transparent 70%),#203626}
.activity-stats>div{background:#2a3e2e;color:var(--ink);border-color:#b8c39930}.activity-stats span{color:var(--muted)}
.wallet-option,.network-option{background:#293e2c}.modal{background:#203224}.wallet-option:hover,.network-option:hover{background:#354d37}
.boot-screen{background:radial-gradient(ellipse at 50% 40%,#79784b21,transparent 60%),#19271d}
.chain-icon{background:#eeeade}.wallet-btn,.portfolio-total{background:var(--paper)}
/* Full poses are rendered as a single atlas, so no joints can separate. */
.ember-mascot{position:relative;display:block;flex-shrink:0;aspect-ratio:1;isolation:isolate;--blink-offset:0s}
.ember-travel{position:absolute;inset:0;transform-origin:50% 94%;will-change:transform}
.ember-sprite{position:absolute;inset:0;display:block;background:url('/assets/yumio-amber-atlas-v117.webp') 0 0/400% 300% no-repeat;transform-origin:50% 92%;animation:ember-breathe 4.8s ease-in-out infinite,ember-blink 6.4s step-end infinite;animation-delay:0s,var(--blink-offset);filter:drop-shadow(0 9px 8px #07110922)}
.ember-shadow{position:absolute;width:43%;height:3.3%;left:28.5%;bottom:3%;border-radius:50%;background:#0a1009;filter:blur(7px);opacity:.28;animation:ember-shadow 4.8s ease-in-out infinite}
.ember-mascot:is([data-mood=hello],[data-mood=bashful],[data-mood=confident],[data-mood=amazed]) .ember-sprite{background-position:66.6667% 0;animation:ember-breathe 4.8s ease-in-out infinite,ember-wave 1.2s step-end infinite}
.ember-mascot:is([data-mood=thinking],[data-mood=focused],[data-mood=reading]) .ember-sprite{background-position:0 50%;animation:ember-ponder 3.7s ease-in-out infinite}
.ember-mascot:is([data-mood=happy],[data-mood=joy],[data-mood=proud],[data-mood=dance]) .ember-sprite{background-position:33.3333% 50%;animation:ember-cheer 2.6s ease-in-out infinite}
.ember-mascot[data-mood=error] .ember-sprite{background-position:66.6667% 50%;animation:ember-sigh 4s ease-in-out infinite}
.ember-mascot[data-mood=sleepy] .ember-sprite{background-position:100% 50%;animation:ember-drowsy 5s ease-in-out infinite}
.ember-mascot:is([data-mood=sleeping],[data-mood=cozy]) .ember-sprite{background-position:0 100%;animation:ember-breathe 5.8s ease-in-out infinite}
.ember-mascot[data-mood=speaking] .ember-sprite{background-position:0 0;animation:ember-speak-body 2s ease-in-out infinite}
.ember-mascot[data-mood=speaking][data-mouth-active=true] .ember-sprite{background-position:33.3333% 100%}
.ember-mascot[data-fixed-mood=speaking] .ember-sprite{animation:ember-speak-body 2s ease-in-out infinite,ember-talk-demo .6s step-end infinite}
.ember-mascot[data-mood=playful] .ember-sprite{animation:ember-step .6s step-end infinite}
.ember-mascot .think-bubbles{position:absolute;top:8%;right:9%;display:flex;gap:4px;opacity:0;pointer-events:none}
.ember-mascot .think-bubbles i{height:5px;width:5px;background:#cc965d;border-radius:50%;animation:ember-dot 1.3s ease-in-out infinite}
.ember-mascot .think-bubbles i:nth-child(2){animation-delay:.16s}.ember-mascot .think-bubbles i:nth-child(3){animation-delay:.32s}
.ember-mascot[data-mood=thinking] .think-bubbles{opacity:1}
.hero-canonical:is([data-mood=idle],[data-mood=curious],[data-mood=listening]) .ember-travel{animation:ember-stroll 18s ease-in-out infinite}
.hero-canonical:is([data-mood=idle],[data-mood=curious],[data-mood=listening]) .ember-sprite{animation:ember-hero-poses 18s step-end infinite,ember-breathe 4.8s ease-in-out infinite}
.hero-original-stage{bottom:12px}
.msg-avatar .ember-mascot{width:100%;height:100%;overflow:hidden;aspect-ratio:1}.msg-avatar .ember-sprite{transform:scale(1.45) translateY(11%);animation:none!important}.msg-avatar .ember-shadow{display:none}
.thinking-companion{width:58px;height:58px}.thinking-companion .ember-shadow{display:none}.thinking-companion .think-bubbles{display:none}
.settings-peek>.settings-mascot{top:auto;right:auto;background:none;border:0;padding:0;border-radius:0}
@keyframes ember-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.005,1.008)}}
@keyframes ember-shadow{0%,100%{transform:scaleX(1);opacity:.28}50%{transform:scaleX(.91);opacity:.2}}
@keyframes ember-blink{0%,41%,45%,100%{background-position:0 0}42%,44%{background-position:33.3333% 0}}
@keyframes ember-wave{0%,49%,100%{background-position:66.6667% 0}50%,99%{background-position:100% 0}}
@keyframes ember-ponder{0%,100%{transform:rotate(0) translateY(0)}50%{transform:rotate(-1.5deg) translateY(-3px)}}
@keyframes ember-cheer{0%,20%,70%,100%{transform:translateY(0)}35%{transform:translateY(-12px) rotate(-1deg)}49%{transform:translateY(1px)}}
@keyframes ember-sigh{0%,100%{transform:translateY(0)}50%{transform:translateY(4px) scaleY(.99)}}
@keyframes ember-drowsy{0%,100%{transform:rotate(0)}50%{transform:rotate(1.5deg) translateY(4px)}}
@keyframes ember-speak-body{0%,100%{transform:translateY(0)}45%{transform:translateY(-3px)}}
@keyframes ember-talk-demo{0%,100%{background-position:0 0}45%{background-position:33.3333% 100%}}
@keyframes ember-step{0%,49%,100%{background-position:66.6667% 100%}50%,99%{background-position:100% 100%}}
@keyframes ember-dot{0%,100%{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@keyframes ember-stroll{0%,25%,100%{transform:translateX(0)}60%{transform:translateX(-46px)}87%{transform:translateX(12px)}}
@keyframes ember-hero-poses{0%,25%,94%,100%{background-position:0 0}14%,16%{background-position:33.3333% 0}30%,36%,42%,48%,54%,60%,66%,72%,78%,84%,90%{background-position:66.6667% 100%}33%,39%,45%,51%,57%,63%,69%,75%,81%,87%,93%{background-position:100% 100%}}
.no-motion .ember-mascot *{animation:none!important;transition:none!important}.no-motion .ember-sprite{filter:none}
@media(prefers-reduced-motion:reduce){.ember-mascot *{animation:none!important;transition:none!important}.ember-sprite{filter:none}}
@media(max-width:700px){.hero-original-stage{width:260px;height:260px;right:4%;bottom:6px}.companion-card .ember-sprite{filter:none}.thinking-companion{width:44px;height:44px}}
@media(min-width:701px){.ref-speech{bottom:440px}}
@media(max-width:700px){.ref-speech{bottom:270px}}
.welcome-mascot,.feature-buddy{display:none}
