/* Menu de saldo e saldo personalizado da conta de treino (ATLAS-R21 §3: b-saldo, b-lapis, b-custom-1000, b-apply, tu/). */
.bal-panel{--bal-base:var(--iq-surface-1-default,#1c2233);--bal-raised:var(--iq-surface-4-default,#3b404f);--bal-button:color-mix(in srgb,var(--bal-raised) 93%,#fff);--bal-muted:#9c9ea5;--bal-real:#4c9f45;--bal-demo:#d0712e;display:grid;grid-template-columns:270px 1fr;height:140px;background:var(--bal-base);color:#fff;font-size:14px;line-height:20px}
.ui-navigation[data-ui-view=balances] #uiSurface{height:auto;max-height:none;overflow:visible}
.bal-panel .bal-detail{font-size:13px;background:var(--bal-raised);padding:10px 26px 14px;display:flex;flex-direction:column;justify-content:space-between}
.bal-panel dl{margin:0}
.bal-panel .bal-line{display:flex;align-items:center;height:29px}
.bal-panel .bal-line dt{color:var(--bal-muted);flex:none}
.bal-panel .bal-line i{flex:1;height:1px;background:color-mix(in srgb,var(--bal-raised) 82%,#fff);margin:0 9px 0 11px}
.bal-panel .bal-line dd{margin:0;font-weight:700;flex:none}
.bal-panel .bal-what{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-left:-2px;color:var(--bal-muted);background:none;border:0;padding:0;font:inherit;cursor:pointer;--bal-help-ink:var(--bal-raised)}
.bal-panel .bal-what:hover{color:#fff}
.bal-panel .bal-what svg{flex:none;width:11px;height:11px}
.bal-panel .bal-accounts{display:grid;grid-template-rows:70px 70px}
.bal-panel .bal-row{display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 23px;cursor:pointer;outline:none}
.bal-panel .bal-row.is-active{background:var(--bal-raised)}
.bal-panel .bal-row:focus-visible{box-shadow:inset 0 0 0 1px var(--bal-muted)}
.bal-panel .bal-name{display:flex;flex-direction:column;padding-bottom:3px}
.bal-panel .bal-name strong{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1px}
.bal-panel .bal-name b{font-size:15px;font-weight:700;color:var(--bal-demo)}
.bal-panel .bal-real .bal-name b{color:var(--bal-real)}
.bal-panel .bal-actions{display:flex;gap:1px;height:32px}
.bal-panel .bal-actions button{height:32px;border:0;border-radius:2px;background:var(--bal-raised);color:#fff;font:inherit;font-size:13px;cursor:pointer;display:grid;place-items:center;padding:0}
.bal-panel .bal-row.is-active .bal-actions button{background:var(--bal-button)}
.bal-panel .bal-actions .bal-icon{width:32px;color:#a5a7af;border-radius:2px 0 0 2px}
.bal-panel .bal-actions .bal-action{border-radius:0 2px 2px 0}
.bal-panel .bal-real .bal-action{width:90px}
.bal-panel .bal-demo .bal-icon{width:33px}
.bal-panel .bal-demo .bal-action{width:100px}
.bal-panel .bal-actions button:hover:not(:disabled){filter:brightness(1.15)}
.bal-panel .bal-actions button:disabled{cursor:default;opacity:.7}
.bal-panel .bal-topup{position:relative;display:block}
.bal-panel .bal-tip{position:absolute;right:-16px;bottom:calc(100% + 9px);width:417px;box-sizing:border-box;padding:9px 10px 10px;background:#575a66;color:#fff;font-size:12px;line-height:17px;border-radius:2px;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:3;text-align:left}
.bal-panel .bal-tip::after{content:"";position:absolute;right:59px;top:100%;border:6px solid transparent;border-top-color:#575a66;border-bottom:0}
.bal-panel .bal-topup.locked:hover .bal-tip,.bal-panel .bal-topup.show .bal-tip{opacity:1;visibility:visible}
/* O rótulo da conta no topo fica oculto como no original (só o valor aparece). */
.account>small[hidden]{display:none!important}

.bal-modal-layer{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:rgba(0,0,0,.62);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:bal-fade .14s ease-out}
.bal-modal{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:550px;max-width:calc(100vw - 32px);min-height:378px;background:#1d2232;color:#fff;box-shadow:0 10px 40px rgba(0,0,0,.45);font-size:14px;animation:bal-rise .18s cubic-bezier(.2,.8,.2,1)}
.bal-modal header{height:48px;border:0;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;padding:0 7px 0 20px;background:#272c3b}
.bal-modal header h2{margin:0;font-size:15px;font-weight:700}
.bal-modal header button{width:26px;height:26px;display:grid;place-items:center;border:0;background:none;color:#93959c;cursor:pointer;padding:0}
.bal-modal header button:hover{color:#fff}
.bal-modal-body{padding:38px 28px 60px;display:flex;flex-direction:column}
.bal-modal label{color:#8a8d95;font-size:13px;line-height:18px;margin:3px 0 6px}
.bal-modal .bal-input{display:flex;align-items:center;height:43px;box-sizing:border-box;border:1px solid #3a3e4c;background:#1d2232;padding:0 14px}
.bal-modal .bal-input:focus-within{border-color:#3a3e4c}
.bal-modal .bal-input span{color:#8e9198;font-size:15px;margin-right:9px}
.bal-modal .bal-input input{flex:1;min-width:0;height:100%;border:0;background:none;color:#fff;font:inherit;font-size:15px;outline:none;padding:0;caret-color:#df6b0f}
.bal-modal .bal-help{margin:6px 0 0;color:#8d9098;font-size:11px;line-height:16px}
.bal-modal .bal-help.invalid{color:#c75642}
.bal-modal .bal-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}
.bal-modal .bal-presets button{height:40px;border:1px solid #0f1118;background:#1d2232;color:#fff;font:inherit;font-size:13px;font-weight:400;cursor:pointer;padding:0;transition:background .12s ease}
.bal-modal .bal-presets button:hover{background:#242a3b}
.bal-modal .bal-presets button.selected{color:#44983d}
.bal-modal .bal-apply{align-self:center;width:206px;height:44px;margin-top:40px;border:0;border-radius:2px;background:#da752c;color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:filter .12s ease}
.bal-modal .bal-apply:hover:not(:disabled){filter:brightness(1.08)}
.bal-modal .bal-apply:disabled{opacity:.6;cursor:default}
@keyframes bal-fade{from{opacity:0}}
@keyframes bal-rise{from{opacity:0;transform:translateY(8px) scale(.985)}}
@media(prefers-reduced-motion:reduce){.bal-modal-layer,.bal-modal{animation:none}}
@media(max-width:600px){.bal-panel{grid-template-columns:1fr;height:auto}.bal-panel .bal-detail{padding:10px 16px 14px}.bal-panel .bal-tip{width:min(417px,calc(100vw - 32px))}.bal-modal-body{padding:28px 16px 32px}.bal-modal .bal-presets{grid-template-columns:repeat(2,1fr)}}
