/* ===== Login ===== */
body.auth-locked>aside,body.auth-locked>main,body.auth-locked .as-fab{visibility:hidden}
.auth-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 50% 0%,rgba(212,175,55,.18),transparent 60%),radial-gradient(ellipse at 50% 120%,rgba(212,175,55,.1),transparent 50%),#070707}
.auth-gate[hidden]{display:none}
.auth-gate::before{content:"";position:absolute;inset:0;background:var(--brand-banner,none) center/cover;opacity:.08;filter:blur(2px)}
.auth-card{position:relative;width:min(400px,100%);padding:34px 30px 24px;border-radius:26px;background:linear-gradient(180deg,rgba(24,24,24,.92),rgba(10,10,10,.95));border:1px solid rgba(212,175,55,.4);box-shadow:0 40px 120px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.06);text-align:center;animation:pxRise .6s cubic-bezier(.2,.7,.2,1) both}
.auth-logo{width:74px;height:74px;object-fit:contain;border-radius:18px;background:#000;border:1px solid rgba(212,175,55,.35);padding:6px}
.auth-card h1{margin:14px 0 2px;font-size:22px;color:#fff}
.auth-tag{margin:0 0 22px;color:#D4AF37!important;font-size:13px;letter-spacing:.4px}
.auth-card form{padding:0;text-align:left;gap:12px}
.auth-card label{color:#cfc8b8;font-size:13px}
.auth-pass{position:relative;display:block}
.auth-pass input{padding-right:46px}
.auth-pass button{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent!important;border:0!important;padding:6px 8px!important;font-size:15px;opacity:.7}
.auth-submit{width:100%;padding:13px!important;font-size:15px;margin-top:6px;background:linear-gradient(135deg,#F6E27A,#D4AF37 55%,#8B6F1F)!important;color:#0B0B0B!important;border:0!important}
.auth-submit:disabled{opacity:.6}
.auth-link{background:transparent!important;border:0!important;color:#D4AF37!important;font-weight:600;font-size:13px;padding:4px!important;justify-self:center}
.auth-msg{min-height:18px;margin:2px 0 0;font-size:13px;color:#F08A7E!important;text-align:center;line-height:1.45}
.auth-msg.ok{color:#9BE3B0!important}
.auth-checking{display:flex;gap:10px;align-items:center;justify-content:center;color:#bbb!important}
.auth-checking[hidden]{display:none}
.auth-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(212,175,55,.25);border-top-color:#D4AF37;animation:mxSpin .8s linear infinite}
@keyframes mxSpin{to{transform:rotate(360deg)}}
.auth-foot{display:block;margin-top:18px;color:#6f6a60;font-size:11px}
.mx-user{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(212,175,55,.15)}
.mx-user span{font-size:11px;color:#8f8a80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mx-user button{padding:5px 10px!important;font-size:11px;border-radius:8px!important}
.mx-user button[hidden]{display:none}

/* ===== Navegação: contador da lixeira ===== */
.nav[data-view="lixeira"][data-count]:not([data-count=""])::after{content:attr(data-count);float:right;min-width:20px;padding:1px 6px;border-radius:999px;background:rgba(212,175,55,.2);color:#F6E27A;font-size:11px;text-align:center}

/* ===== Geral ===== */
.mx-sub{margin:4px 0 0;font-size:13px}
.mx-empty{color:#8f8a80!important;padding:14px;text-align:center}
.mx-pill{display:inline-block;min-width:22px;padding:1px 8px;border-radius:999px;background:rgba(212,175,55,.18);color:#F6E27A;font-size:12px;vertical-align:middle}
.mx-days{padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.06);font-size:12px}
.mx-days.low{background:rgba(224,103,91,.18);color:#F3A79E}
.mx-2col{display:grid;grid-template-columns:1fr 130px;gap:12px}
.mx-hint{margin:0;font-size:12px;color:#D4AF37!important;min-height:16px}
#recDialog{background:#101010;border-color:rgba(212,175,55,.45)}
#recDialog h3{margin:0;color:#D4AF37}
#recStartWrap[hidden]{display:none}

/* ===== Atividades ===== */
.mx-activity{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:2px;max-height:520px;overflow:auto}
.mx-activity li{display:flex;gap:12px;align-items:flex-start;padding:10px 6px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;color:#ddd}
.mx-activity li b{color:#fff}
.mx-activity li em{font-style:normal;color:#F6E27A}
.mx-activity li small{display:block;color:#7e796f;font-size:11px;margin-top:2px}
.mx-act-ic{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:8px;background:rgba(212,175,55,.1);color:#D4AF37;font-size:13px}

/* ===== Recorrentes ===== */
.mx-rec-cards{grid-template-columns:repeat(3,minmax(160px,1fr))!important}
.mx-rec-list{display:grid;gap:10px}
.mx-rec{display:grid;grid-template-columns:42px 1fr auto auto;gap:14px;align-items:center;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);transition:border-color .2s}
.mx-rec:hover{border-color:rgba(212,175,55,.35)}
.mx-rec.off{opacity:.5}
.mx-rec-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:18px;font-weight:900}
.mx-rec-ic.in{background:rgba(34,197,94,.12);color:#5fd68a}.mx-rec-ic.out{background:rgba(224,103,91,.14);color:#F08A7E}
.mx-rec-main b{display:block;color:#fff}
.mx-rec-main small{color:#8f8a80}
.mx-rec>strong{font-size:17px}
@media(max-width:760px){.mx-rec{grid-template-columns:42px 1fr}.mx-rec>strong{grid-column:2}.mx-rec .history-actions{grid-column:1/-1}.mx-rec-cards{grid-template-columns:1fr!important}.mx-2col{grid-template-columns:1fr 1fr}}

/* ===== Alertas (níveis) ===== */
.px-alert{align-items:flex-start}
.px-alert i{font-style:normal;flex:none}
.px-alert.info{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.1);color:#ddd}
.px-alert.good{background:rgba(34,197,94,.08);border-color:rgba(34,197,94,.35);color:#cdeed8}
.px-alert.bad{background:rgba(224,103,91,.1);border-color:rgba(224,103,91,.45);color:#f6d3ce}

/* ===== Score ===== */
.mx-score-hint{font-size:12px}
.mx-gauge{position:relative;width:220px;max-width:100%;margin:0 auto 6px}
.mx-gauge svg{width:100%;display:block}
.mx-gauge path{fill:none;stroke-width:14;stroke-linecap:round}
.mx-gauge .trk{stroke:rgba(255,255,255,.07)}
.mx-gauge .val{stroke:url(#mxG);transition:stroke-dashoffset 1.6s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 6px rgba(212,175,55,.45))}
.mx-gauge-c{position:absolute;left:0;right:0;bottom:2px;text-align:center}
.mx-gauge-c strong{display:block;font-size:40px;line-height:1;font-weight:900;color:#fff;font-variant-numeric:tabular-nums}
.mx-gauge-c span{font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.mx-parts{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.mx-parts li>div{display:flex;justify-content:space-between;font-size:13px;color:#ddd}
.mx-parts b{color:#fff;font-variant-numeric:tabular-nums}.mx-parts b small{color:#7e796f;font-weight:500}
.mx-parts i{display:block;height:5px;border-radius:9px;background:rgba(255,255,255,.06);margin:5px 0 3px;overflow:hidden}
.mx-parts i em{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#8B6F1F,#D4AF37,#F6E27A);transition:width 1.2s cubic-bezier(.2,.8,.2,1)}
.mx-parts li>small{color:#7e796f;font-size:11px}

/* ===== Toasts ===== */
.mx-toasts{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:90;display:grid;gap:8px;pointer-events:none}
.mx-toast{pointer-events:auto;display:flex;align-items:center;gap:14px;padding:11px 14px 11px 16px;border-radius:14px;background:rgba(16,16,16,.96);border:1px solid rgba(212,175,55,.45);box-shadow:0 16px 50px rgba(0,0,0,.55);color:#eee;font-size:14px;animation:pxRise .3s both;transition:opacity .5s,transform .5s}
.mx-toast.out{opacity:0;transform:translateY(8px)}
.mx-toast button{padding:6px 12px!important;font-size:12px;border-radius:9px!important;color:#F6E27A!important;background:rgba(212,175,55,.12)!important}

/* ===== Assistente ===== */
.as-fab{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:9px;padding:13px 18px 13px 14px!important;border-radius:999px!important;background:linear-gradient(135deg,#1c1c1c,#0b0b0b)!important;border:1px solid rgba(212,175,55,.6)!important;box-shadow:0 14px 40px rgba(0,0,0,.6),0 0 0 6px rgba(212,175,55,.06);color:#fff;transition:transform .25s,opacity .25s}
.as-fab:hover{transform:translateY(-2px)}
.as-fab.hide{opacity:0;transform:scale(.8);pointer-events:none}
.as-fab-ic{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from 0deg,#F6E27A,#D4AF37,#8B6F1F,#F6E27A);color:#0b0b0b;font-size:13px;animation:mxSpin 6s linear infinite}
.as-fab-tx{font-size:14px}
.as-panel{position:fixed;right:22px;bottom:22px;z-index:85;width:min(400px,calc(100vw - 32px));height:min(600px,calc(100vh - 44px));display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(20,20,20,.97),rgba(9,9,9,.98));border:1px solid rgba(212,175,55,.45);box-shadow:0 40px 120px rgba(0,0,0,.7);backdrop-filter:blur(18px);opacity:0;transform:translateY(16px) scale(.98);transform-origin:bottom right;transition:opacity .22s,transform .22s}
.as-panel.show{opacity:1;transform:none}
.as-panel[hidden]{display:none}
.as-head{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 16px;border-bottom:1px solid rgba(212,175,55,.18)}
.as-head b{display:block;color:#fff}.as-head small{color:#8f8a80;font-size:12px}
.as-head>div:nth-child(2){flex:1}
.as-orb{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFF6D6,#D4AF37 45%,#5a4512 100%);box-shadow:0 0 20px rgba(212,175,55,.55);animation:asPulse 3s ease-in-out infinite}
@keyframes asPulse{50%{box-shadow:0 0 34px rgba(246,226,122,.8)}}
.as-ibtn{padding:7px 9px!important;border-radius:10px!important;background:transparent!important;font-size:13px;opacity:.6}
.as-ibtn.on,#asSpeak.on{opacity:1;border-color:#D4AF37!important}
.as-log{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.as-msg{max-width:86%;padding:10px 13px;border-radius:16px;font-size:14px;line-height:1.45;animation:pxRise .25s both}
.as-msg p{margin:0;color:#f2f2f2!important}
.as-msg small{display:block;margin-top:5px;color:#a8a29a;font-size:12px}
.as-msg.me{align-self:flex-end;background:linear-gradient(135deg,#D4AF37,#9c7c25);color:#0b0b0b;border-bottom-right-radius:5px;font-weight:600}
.as-msg.bot{align-self:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07);border-bottom-left-radius:5px}
.as-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.as-chip{padding:6px 10px!important;border-radius:999px!important;font-size:12px;font-weight:600;background:rgba(212,175,55,.08)!important;border:1px solid rgba(212,175,55,.35)!important;color:#F1E3B0!important;text-align:left}
.as-chip:hover{background:rgba(212,175,55,.18)!important}
.as-dots{display:inline-flex;gap:4px}.as-dots i{width:6px;height:6px;border-radius:50%;background:#D4AF37;animation:pxBlink 1s infinite}.as-dots i:nth-child(2){animation-delay:.15s}.as-dots i:nth-child(3){animation-delay:.3s}
.as-form{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(212,175,55,.18);background:rgba(0,0,0,.25)}
.as-form input{flex:1;border-radius:999px!important;padding:11px 16px!important}
.as-mic,.as-send{width:44px;height:44px;flex:none;padding:0!important;border-radius:50%!important;display:grid;place-items:center}
.as-send{background:linear-gradient(135deg,#F6E27A,#D4AF37)!important;color:#0b0b0b!important;border:0!important}
.as-mic.rec{background:#b3261e!important;border-color:#e0675b!important;animation:asRec 1.2s infinite}
@keyframes asRec{50%{box-shadow:0 0 0 8px rgba(224,103,91,.2)}}
@media(max-width:520px){.as-fab-tx{display:none}.as-fab{padding:13px!important}.as-panel{right:8px;bottom:8px;width:calc(100vw - 16px);height:calc(100vh - 16px)}}

#authForm[hidden],#authOffline[hidden],#authOfflineBtn[hidden]{display:none!important}
