/* UI KIT da fase 2 (par de js/ui.js) */
#ui-fx{position:fixed;inset:0;pointer-events:none;z-index:90}
.ui-sp{position:fixed;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:var(--gold2,#ffe08a);box-shadow:0 0 8px var(--gold,#f5c542);animation:ui-sp .75s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes ui-sp{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
.ui-axe{position:fixed;transform:translate(-50%,-50%);font-weight:700;font-size:14px;color:var(--gold2,#ffe08a);text-shadow:0 0 12px rgba(245,197,66,.7);animation:ui-axe 1.05s ease-out forwards;white-space:nowrap}
@keyframes ui-axe{0%{opacity:0;transform:translate(-50%,-30%)}15%{opacity:1}100%{opacity:0;transform:translate(-50%,-260%)}}
.ui-ic{flex:none;vertical-align:middle}
.ui-check{position:relative}
.ui-checked{animation:ui-pop .32s ease-out}
@keyframes ui-pop{0%{transform:scale(.92)}60%{transform:scale(1.06)}100%{transform:scale(1)}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.ui-checked,.ui-axe{animation:none}.ui-axe{display:none}}
/* foco visível (teclado/leitor de tela), sem afetar o toque */
:where(button,a,[role=button],summary,[tabindex]):focus-visible{outline:2px solid var(--gold2,#ffe08a);outline-offset:3px;border-radius:12px}
/* nav com ícones de traço (markup em index.html, .ic > svg.ui-ic) */
.nav a{position:relative;min-width:56px;min-height:48px;justify-content:center}
.nav a .ic>svg{display:block;width:22px;height:22px;position:relative;z-index:1}
.nav a::before{content:"";position:absolute;top:3px;left:50%;width:46px;height:30px;margin-left:-23px;border-radius:99px;background:var(--accsoft);opacity:0;transform:scaleX(.5);transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1)}
.nav a.on::before{opacity:1;transform:none}
.nav a.on .ic{filter:none}
.nav a.on .ic>svg{stroke-width:2.1}
@media (prefers-reduced-motion:reduce){.nav a::before{transition:none}}

/* arte no lugar de emoji (UI.art) */
.ui-art{display:inline-block;vertical-align:middle;object-fit:contain;flex:none}
.toast .toast-art{display:inline-flex;vertical-align:middle;margin-right:6px}
.chip>.ui-art,.chip>.ui-ic,.btn>.ui-ic,.callout>.ui-ic,.rit-dica>.ui-ic,.wobj>.ui-ic,.lab>.ui-art{vertical-align:-4px;margin-right:2px}
h3>.ui-art{vertical-align:-6px;margin-right:4px}
.avatar:has(>.ui-art){background:radial-gradient(circle at 35% 30%,#5a32a8,#1c0c3c 75%);box-shadow:0 0 0 2px rgba(245,197,66,.8),0 0 14px rgba(245,197,66,.3)}
.toast:has(>.toast-art){display:flex;align-items:center;gap:10px;text-align:left}.toast .toast-art{margin:0}
.ui-art-ic{display:inline-grid;place-items:center;border-radius:50%;color:var(--gold2,#ffe08a);background:radial-gradient(circle at 35% 30%,#4a2a8c,#1c0c3c 75%);box-shadow:inset 0 0 0 1.5px rgba(245,197,66,.7)}
