/* A.A.M Cobranças v18.13.1 — controle de versão */
:root{--aam-shadow:0 18px 55px rgba(0,0,0,.28)}
button,.btn,a.btn,input,select,textarea{transition:transform .15s ease,filter .15s ease,border-color .15s ease,box-shadow .15s ease}
button:active,.btn:active,a.btn:active{transform:scale(.975)}
button:focus-visible,.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent,#d6a529);outline-offset:2px}
button[disabled],.btn[disabled]{opacity:.58;cursor:not-allowed;filter:saturate(.55)}
.aam-refresh-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important}
.aam-refresh-button::before{content:"↻";display:inline-grid;place-items:center;width:1.25em;height:1.25em;flex:0 0 1.25em;border:1px solid rgba(241,207,112,.32);border-radius:50%;background:rgba(214,165,41,.08);color:#f1cf70;font-size:1.05em;font-weight:800;line-height:1;box-shadow:0 0 0 3px rgba(214,165,41,.035)}
.aam-refresh-button.aam-refreshing::before{animation:aam-refresh-icon-spin .72s linear infinite}
.aam-refresh-button[aria-busy="true"]::before,.aam-refresh-button.aam-action-busy::before,.aam-refresh-button.button-feedback-active::before{display:none!important}
@keyframes aam-refresh-icon-spin{to{transform:rotate(360deg)}}
.aam-version{position:fixed;right:9px;bottom:9px;z-index:9;padding:5px 8px;border:1px solid rgba(214,165,41,.18);border-radius:999px;background:rgba(20,16,8,.88);color:#d6c28a;font:700 9px/1 system-ui;backdrop-filter:blur(10px);pointer-events:none}
.aam-toast{position:fixed;left:50%;bottom:24px;z-index:9999;max-width:min(92vw,460px);transform:translate(-50%,18px);padding:11px 15px;border:1px solid rgba(214,165,41,.3);border-radius:14px;background:#201a0d;color:#f6f3eb;box-shadow:var(--aam-shadow);font:750 12px/1.4 system-ui;opacity:0;pointer-events:none;transition:.22s ease}
.aam-toast.show{opacity:1;transform:translate(-50%,0)}
.aam-toast.error{border-color:#67313b;background:#241216;color:#ffc1c9}
.aam-loading::after{content:"";width:14px;height:14px;margin-left:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:aam-spin .7s linear infinite}
@keyframes aam-spin{to{transform:rotate(360deg)}}
@media(max-width:650px){.aam-version{display:none}}

.version-modal-card{max-width:520px}.version-hero{display:flex;flex-direction:column;gap:4px;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(214,165,41,.07);margin:14px 0}.version-hero strong{font-size:24px;color:var(--accent)}.version-hero span,.version-note{color:var(--muted);font-size:12px}.version-history h4{margin:18px 0 8px}.version-history>div{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.version-history b{color:var(--accent)}.version-history span{font-size:12px;line-height:1.45;color:var(--muted)}

.aam-environment-badge{position:sticky;top:0;z-index:99999;padding:9px 14px;text-align:center;background:#9a6700;color:#fff;font-weight:800;letter-spacing:.04em}.aam-environment-badge small{display:block;font-weight:500;letter-spacing:0;opacity:.9}.diagnostic-actions{display:flex;gap:8px;flex-wrap:wrap}.test-link{font-size:.9rem}

/* v20.2.0 — saída segura do ambiente de teste */
.aam-environment-badge{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#6f4a00,#a87400);border-bottom:1px solid rgba(255,215,116,.45);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.aam-environment-copy{display:flex;flex-direction:column;line-height:1.2}
.aam-environment-copy strong{font-size:12px;letter-spacing:.08em}
.aam-environment-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.aam-environment-actions button{border:1px solid rgba(255,255,255,.48);border-radius:10px;padding:7px 11px;background:#171207;color:#fff;font-weight:800;font-size:11px;cursor:pointer}
.aam-environment-actions button:hover{filter:brightness(1.12)}
.aam-environment-actions .aam-test-clear{background:transparent}
@media(max-width:640px){.aam-environment-badge{gap:8px;padding:9px 8px}.aam-environment-actions{width:100%}.aam-environment-actions button{flex:1;min-width:130px}}

/* v20.2 — feedback consistente dos botões */
button, .btn { touch-action: manipulation; }
button.aam-button-pressed, .btn:active { transform: translateY(1px) scale(.985); filter: brightness(1.08); }
button:disabled, .btn[aria-disabled="true"] { opacity:.58; cursor:not-allowed; pointer-events:none; }

/* v21.4.70 — acabamento e feedback de uso */
.aam-action-busy{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;pointer-events:none!important;opacity:.82!important}
.aam-action-spinner,.button-feedback-spinner{width:18px!important;height:18px!important;flex:0 0 18px!important;border:2px solid rgba(241,207,112,.22)!important;border-top-color:#f7d978!important;border-right-color:#d6a529!important;border-radius:50%!important;box-shadow:0 0 10px rgba(214,165,41,.22);animation:aam-action-spin .78s cubic-bezier(.55,.15,.45,.85) infinite!important}
@keyframes aam-action-spin{to{transform:rotate(360deg)}}
.aam-tap-feedback{animation:aam-tap-feedback .24s ease-out}
@keyframes aam-tap-feedback{0%{filter:brightness(1)}45%{filter:brightness(1.22)}100%{filter:brightness(1)}}
.aam-toast{display:flex;align-items:center;gap:9px;min-height:44px;padding:12px 15px;border-radius:14px}
.aam-toast::before{content:'✓';display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:rgba(214,165,41,.16);color:#f1cf70;font-weight:900}
.aam-toast.error::before{content:'!';background:rgba(239,83,97,.14);color:#ff9ba5}
.aam-toast.info::before{content:'i';background:rgba(110,170,255,.12);color:#9fc6ff}
html.aam-offline #cloud,html.aam-offline #cloudStatus{opacity:.82}
@media(max-width:760px){
  button,.btn,.aam-select-btn{min-height:44px}
  input,select,textarea{font-size:16px!important}
  .card,.modal-card{scroll-margin-top:12px}
  .mactions{gap:9px}
  .aam-toast{bottom:calc(88px + env(safe-area-inset-bottom));width:calc(100% - 28px);max-width:480px;box-sizing:border-box}
  dialog.modal{max-height:calc(100dvh - 20px);overscroll-behavior:contain}
  .row{gap:10px}
}
@media(prefers-reduced-motion:reduce){.aam-tap-feedback,.aam-action-spinner{animation-duration:.001ms!important;animation-iteration-count:1!important}}
