/* ═══════════════════════════════════════════════════════════════════════
   Caminho: assets/css/news.css
   news.css — folha única do sistema 99BKP
   A base legada de main.css, componentes compartilhados e telas está
   consolidada aqui. main.css permanece como ponto de compatibilidade.
═══════════════════════════════════════════════════════════════════════ */

/* ── Base global anteriormente em main.css ─────────────────────────────── */
/* Caminho: assets/css/main.css */
/* ═══════════════════════════════════════════════════════
   99BKP v13 — Quantum Edition | main.css
═══════════════════════════════════════════════════════ */

/* ── Tokens ─────────────────────────────────────────── */
:root {
  --P: #003366; --A: #0ea5e9;
  --BG: #0a0a18; --SB: #07071200; --SB-BG: #090915;
  --T: #e2e2f0; --MT: #8888a8; --LT: #52527a;
  --BD: rgba(255,255,255,.07);
  --CARD: #090915;
  --CARD-H: rgba(255,255,255,.05);
  --OK: #22c55e; --ER: #ef4444; --WR: #f59e0b; --IN: #3b82f6;
  --R: 10px; --SB-W: 230px; --TB-H: 52px;
  --shadow: 0 4px 24px rgba(0,0,0,.4);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%;overflow-x:hidden;overflow-y:auto}
body{font-family:'Outfit',sans-serif;background:var(--BG);color:var(--T);font-size:14px;display:flow;min-height:100vh}

/* ── Sidebar ──────────────────────────────────────────── */
#sidebar{
  width:var(--SB-W);flex-shrink:0;background:var(--SB-BG);border-right:1px solid var(--BD);
  display:flex;flex-direction:column;height: 100vh;position:sticky;top:0;
  overflow-y:auto;overflow-x:hidden;transition:width .25s;z-index:100;
}
#sidebar.collapsed{width:54px}
#footer-status-bar{left:var(--SB-W,230px);transition:left .25s,width .25s}
#sidebar.collapsed ~ #footer-status-bar{left:54px!important}
@media(max-width:768px){#footer-status-bar{left:0;width:100%!important}}
#sidebar.collapsed .sb-logo-text,
#sidebar.collapsed .sb-section-lbl,
#sidebar.collapsed .sb-root-submenu,
#sidebar.collapsed .sb-foot-info,
#sidebar.collapsed .sb-root-switcher,
#sidebar.collapsed .sb-badge em { display:none }
#sidebar.collapsed .sb-nav a{justify-content:center;flex-direction:column;padding:7px 2px;gap:2px;text-align:center}
#sidebar.collapsed .sb-nav a span{display:block;max-width:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;line-height:1.05;color:var(--LT)}
#sidebar.collapsed .sb-nav a.active span{color:var(--A)}
#sidebar.collapsed .sb-root-header{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px 2px;text-align:center;border-radius:8px}
#sidebar.collapsed .sb-root-header span{display:block;max-width:50px;font-size:7px;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--LT)}
#sidebar.collapsed .sb-root-header.active span{color:var(--A)}
#sidebar.collapsed .sb-root-chevron{display:none}
#sidebar.collapsed .sb-root-group{position:relative}
#sidebar.collapsed .sb-section-body{display:flex;flex-direction:column;gap:2px}
.sb-collapsed-root-menu{position:fixed;min-width:190px;max-width:250px;max-height:calc(100vh - 16px);overflow:auto;background:rgba(9,9,21,.98);border:1px solid rgba(14,165,233,.38);border-radius:12px;padding:8px;box-shadow:0 18px 45px rgba(0,0,0,.55);z-index:10050;backdrop-filter:blur(16px)}
.sb-collapsed-root-title{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--A);letter-spacing:.06em;padding:5px 8px 8px;border-bottom:1px solid var(--BD);margin-bottom:5px}
.sb-collapsed-root-menu a{display:flex;align-items:center;gap:8px;padding:8px;border-radius:7px;color:var(--MT);font-size:12px;text-decoration:none;white-space:nowrap}
.sb-collapsed-root-menu a:hover,.sb-collapsed-root-menu a.active{background:rgba(14,165,233,.14);color:var(--A)}
@media(max-width:768px){.sb-collapsed-root-menu{left:58px;max-width:calc(100vw - 66px)}}
#sidebar.collapsed .sb-brand{justify-content:center;padding:12px 0}
#sidebar.collapsed .sb-collapse-btn i{transform:rotate(180deg)}
.sb-brand{display:flex;align-items:center;gap:10px;padding:16px 14px 12px;border-bottom:1px solid var(--BD)}
.sb-logo-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;flex-shrink:0}
.sb-logo-text strong{display:block;font-size:13.5px;font-weight:700;color:var(--T);white-space:nowrap}
.sb-logo-text span{font-size:10.5px;color:var(--LT);white-space:nowrap}
.sb-collapse-btn{margin-left: -20px;
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    line-height: 1;
    transition: color .15s;}
.sb-collapse-btn:hover{color:var(--T)}
.sb-section-lbl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--LT);padding:14px 14px 4px;white-space:nowrap}
.sb-section-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:6px;user-select:none}
.sb-section-toggle:hover{color:var(--T)}
.sb-section-chev{font-size:9px;transition:transform .15s;flex-shrink:0}
.sb-section-toggle.collapsed .sb-section-chev{transform:rotate(-90deg)}
.sb-section-body{flex-shrink:0}
.sb-section-body.sb-collapsed,
nav.sb-nav.sb-collapsed{display:none}
#sidebar.collapsed .sb-section-chev{display:none}
.sb-nav{display:flex;flex-direction:column;gap:1px;padding:0 6px}
.sb-nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;color:var(--MT);font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;white-space:nowrap;position:relative}
.sb-nav a:hover{background:var(--CARD-H);color:var(--T)}
.sb-nav a.active{background:linear-gradient(135deg,rgba(var(--P-rgb,0,51,102),.25),rgba(14,165,233,.15));color:var(--A);border-left:2px solid var(--A);padding-left:8px}
.sb-nav a i{width:16px;text-align:center;flex-shrink:0}
.sb-badge{margin-left:auto;background:var(--A);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:99px}
.sb-root-switcher{padding:0 6px 6px;display:flex;flex-direction:column;gap:2px}
.sb-root-item{width:100%;display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;background:none;border:none;color:var(--MT);font-size:12.5px;font-family:'Outfit',sans-serif;cursor:pointer;text-align:left;transition:all .15s;white-space:nowrap}
.sb-root-item:hover{background:var(--CARD-H);color:var(--T)}
.sb-root-item.active{background:rgba(14,165,233,.1);color:var(--A)}
.sb-root-add{display:flex;align-items:center;gap:7px;padding:6px 10px;font-size:12px;color:var(--LT);text-decoration:none;border-radius:7px;transition:color .15s}
.sb-root-add:hover{color:var(--A)}
.sb-foot{margin-top:auto;border-top:1px solid var(--BD);padding:12px 10px;display:flex;align-items:center;gap:8px}
.sb-foot-user{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.sb-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}
.sb-foot-info{flex:1;min-width:0}
.sb-foot-name{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-foot-role{font-size:10.5px;color:var(--LT);text-transform:capitalize}
.btn-logout{background:none;border:none;color:var(--LT);cursor:pointer;padding:6px;border-radius:6px;font-size:15px;flex-shrink:0;transition:color .15s}.fm-wrap
.btn-logout:hover{color:var(--ER)}

/* ── Main / Topbar ────────────────────────────────────── */
#main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh;height:auto;overflow:visible;overflow-x:clip;overscroll-behavior:contain}

#topbar{height: var(--TB-H);
    background: rgba(9, 9, 21, .8);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--BD);
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0px;
    width: stretch;
    position: absolute;
    top: 0;
    z-index: 90;}
/* ── Notes Bar inline no topbar ──────────────────────────────────────────────
   ÚNICA fonte de verdade para o recurso "Notas fixadas" do header:
   - Desktop (>768px): mostra a fileira de chips (.tb-notes-chips)
   - Mobile (≤768px): mostra o botão único (.tb-mobile-notes-btn) que abre o
     modal mosaico (#mobile-notes-modal, ver includes/header.php)
   Antes havia definições duplicadas destas mesmas classes em outros pontos
   do arquivo (por volta das linhas ~2722, ~2765, ~3781, ~10313 e ~11135),
   fazendo os dois elementos ficarem visíveis ao mesmo tempo dependendo do
   viewport. Foram removidas — não duplicar estas regras novamente.
──────────────────────────────────────────────────────────────────────────── */
.tb-notes-chips{display:flex;align-items:center;gap:5px;flex-shrink:0}
.tb-notes-sep{width:1px;height:20px;background:var(--BD);margin:0 4px;flex-shrink:0}
.tb-note-chip{
  width:30px;height:30px;border-radius:8px;border:2px solid transparent;
  cursor:pointer;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  position:relative;
  background:var(--note-color,var(--A));border-color:var(--note-color,var(--A));
  transition:all .18s cubic-bezier(.34,1.56,.64,1);
  box-shadow:0 2px 6px rgba(0,0,0,.35);
}
.tb-note-chip:hover{
  transform:translateY(-2px) scale(1.15);
  box-shadow:0 6px 16px rgba(0,0,0,.5);
  border-color:rgba(255,255,255,.8) ;
}
.tb-note-chip i{font-size:13px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none}
.tb-note-chip-tt{
  position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);
  background:var(--BG);border:1px solid var(--BD);border-radius:7px;
  padding:4px 10px;font-size:11px;font-weight:600;color:var(--T);
  white-space:nowrap;pointer-events:none;
  opacity:0;visibility:hidden;
  transition:opacity .15s,visibility .15s;
  z-index:9999;
  max-width:180px;overflow:hidden;text-overflow:ellipsis;
  box-shadow:0 4px 12px rgba(0,0,0,.4);
}
.tb-note-chip:hover .tb-note-chip-tt{opacity:1;visibility:visible}
.tb-note-add-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;padding:0;
  border:1px solid var(--BD);border-radius:7px;
  background:var(--CARD);color:var(--MT);font-size:11px;cursor:pointer;
  flex-shrink:0;transition:all .15s;
}
.tb-note-add-btn:hover{background:rgba(255,255,255,.1);color:var(--T);border-color:rgba(255,255,255,.4)}
.tb-note-add-btn i{font-size:10px}
.note-bar-count{
  background:var(--A);color:#fff;border-radius:99px;
  font-size:9px;font-weight:800;padding:1px 5px;line-height:1.5;
}
/* Botão único mobile (substitui a fileira de chips em telas pequenas) */
.tb-mobile-notes-btn{
  display:none;position:relative;align-items:center;justify-content:center;
  width:34px;height:34px;padding:0;border:1px solid var(--BD);border-radius:10px;
  background:var(--CARD);color:var(--A);cursor:pointer;flex-shrink:0;
}
.tb-mobile-notes-count{
  position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;
  border-radius:99px;background:#f59e0b;color:#111827;font-size:9px;font-weight:800;
  line-height:16px;text-align:center;
}
@media (max-width:768px){
  .tb-notes-chips{display:none!important}
  .tb-mobile-notes-btn{display:inline-flex!important}
}
#content{padding-top:calc(20px + var(--TB-H))}
.tb-pg-title{font-size:14px;font-weight:700;color:var(--T);display:flex;align-items:center;gap:8px;white-space:nowrap}
.tb-pg-title i{color:var(--A)}
.tb-spacer{flex:1}
.tb-widgets{display:flex;align-items:center;gap:6px}
.tb-widget{font-size:11.5px;color:var(--MT);background:var(--CARD);border:1px solid var(--BD);border-radius:6px;padding:4px 9px;white-space:nowrap}
.tb-icon-btn{background:none;border:none;color:var(--MT);cursor:pointer;padding:6px 8px;border-radius:6px;font-size:14px;transition:color .15s}
.tb-icon-btn:hover{color:var(--T);background:var(--CARD)}

/* ── KPIs no header (antes ficavam no rodapé do sidebar) ───────────────── */
.tb-kpi-group{display:flex;align-items:center;gap:4px;padding:3px;background:var(--CARD);border:1px solid var(--BD);border-radius:10px;margin-right:2px}
.tb-kpi-btn{position:relative;background:none;border:none;color:var(--MT);cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:7px;font-size:12.5px;transition:all .15s}
.tb-kpi-btn:hover{color:var(--A);background:rgba(14,165,233,.1)}
.tb-kpi-badge{position:absolute;top:-3px;right:-3px;min-width:14px;height:14px;padding:0 3px;display:grid;place-items:center;border-radius:99px;background:#334155;color:#fff;border:1px solid var(--CARD);font-size:8px;line-height:1;font-weight:800;pointer-events:none}
@media(max-width:900px){.tb-kpi-group{display:none}}
.mob-menu-btn{display:none;background:none;border:none;color:var(--T);font-size:20px;cursor:pointer;padding:6px 8px;border-radius:7px;transition:background .15s;flex-shrink:0;line-height:1}
.mob-menu-btn:hover,.mob-menu-btn:active{background:rgba(255,255,255,.1)}
#content{padding:20px;padding-bottom:calc(84px + env(safe-area-inset-bottom));flex:1;min-height:0;overflow:visible}

/* ── Cards ────────────────────────────────────────────── */
.card{background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);padding:20px;margin-bottom:16px}
.card-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--A);margin-bottom:14px;display:flex;align-items:center;gap:7px}
.pg-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.pg-title{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px}
.pg-title i{color:var(--A)}
.pg-sub{font-size:12px;color:var(--LT);margin-top:3px}
.pg-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

/* ── Grid ─────────────────────────────────────────────── */
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.g2,.g3,.g4{grid-template-columns:1fr}}
@media(max-width:1200px){.g4{grid-template-columns:repeat(2,1fr)}}

/* ── Buttons ──────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:7px;font-size:13px;font-family:'Outfit',sans-serif;font-weight:600;cursor:pointer;border:none;transition:all .15s;text-decoration:none;white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,var(--P),color-mix(in srgb,var(--P) 70%,var(--A)));color:#fff}
.btn-primary:hover{opacity:.88;transform:translateY(-1px)}
.btn-accent{background:linear-gradient(135deg,var(--A),#38bdf8);color:#fff}
.btn-accent:hover{opacity:.88}
.btn-sec{background:var(--CARD);border:1px solid var(--BD);color:var(--T)}
.btn-sec:hover{background:var(--CARD-H);border-color:rgba(255,255,255,.14)}
.btn-danger{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);color:#ef4444}
.btn-danger:hover{background:rgba(239,68,68,.25)}
.btn-ok{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.25);color:var(--OK)}
.btn-sm{padding:5px 10px;font-size:12px}
.btn-xs{padding:3px 8px;font-size:11px}
.btn-ic{background:none;border:none;cursor:pointer;color:var(--MT);padding:5px 6px;border-radius:5px;font-size:13px;transition:color .15s;line-height:1}
.btn-ic:hover{color:var(--T);background:var(--CARD-H)}

/* ── Forms ────────────────────────────────────────────── */
.fc{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--BD);border-radius:7px;padding:8px 11px;color:var(--T);font-size:13px;font-family:'Outfit',sans-serif;outline:none;transition:border-color .2s}
.fc:focus{border-color:var(--A)}
.fc-sm{background:rgba(255,255,255,.04);border:1px solid var(--BD);border-radius:6px;padding:5px 8px;color:var(--T);font-size:12px;font-family:'Outfit',sans-serif;outline:none}
.fc-sm:focus{border-color:var(--A)}
.fg{margin-bottom:13px}
.fg label{display:block;font-size:11px;font-weight:700;color:var(--LT);text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fg-inline{display:flex;gap:8px;align-items:center}
select.fc option{background:#111128}

/* ── Alerts / Badges ──────────────────────────────────── */
.alert{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-radius:8px;font-size:13px;margin-bottom:10px}
.alert i{flex-shrink:0;margin-top:1px}
.alert-ok{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2);color:var(--OK)}
.alert-er{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);color:var(--ER)}
.alert-wn{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2);color:var(--WR)}
.alert-in{background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.2);color:var(--IN)}
.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.b-ok{background:rgba(34,197,94,.12);color:var(--OK)}
.b-er{background:rgba(239,68,68,.12);color:var(--ER)}
.b-wn{background:rgba(245,158,11,.12);color:var(--WR)}
.b-in{background:rgba(59,130,246,.12);color:var(--IN)}
.b-p{background:rgba(168,85,247,.12);color:#a855f7}
.b-neutral{background:var(--CARD);color:var(--MT)}

/* ── Stat Cards ───────────────────────────────────────── */
.stat-card{background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);padding:18px;display:flex;align-items:center;gap:14px}
.stat-icon{width:42px;height:42px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.stat-val{font-size:24px;font-weight:800;line-height:1}
.stat-lbl{font-size:11.5px;color:var(--MT);margin-top:3px}

/* ── Progress Bar ─────────────────────────────────────── */
.prog-bar{background:rgba(255,255,255,.06);border-radius:99px;height:6px;overflow:hidden}
.prog-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--P),var(--A));transition:width .5s ease}
.prog-fill.danger{background:linear-gradient(90deg,#ef4444,#dc2626)}
.prog-fill.warn{background:linear-gradient(90deg,#f59e0b,#d97706)}

/* ── Tables ───────────────────────────────────────────── */
.tbl{width:100%;border-collapse:collapse}
.tbl th{font-size:10.5px;font-weight:700;text-transform:uppercase;color:var(--LT);padding:8px 12px;border-bottom:1px solid var(--BD);text-align:left;letter-spacing:.05em}
.tbl td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.04);font-size:13px;vertical-align:middle}
.tbl tr:last-child td{border-bottom:none}
.tbl tr:hover td{background:var(--CARD-H)}

/* ── Modal ────────────────────────────────────────────── */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);z-index:9000;align-items:center;justify-content:center;padding:16px}#modal-confirm{z-index:120000!important}.fm-resizing,.fm-resizing *{cursor:col-resize!important}
.modal-bg.open{display:flex;pointer-events:auto}
.modal{background:#0d0d20;border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;max-width:80%;box-shadow:0 24px 60px rgba(0,0,0,.7);max-height:90vh;display:flex;flex-direction:column}
.modal-sm{max-width:400px}
.modal-lg{max-width:740px}
.modal-xl{max-width:95vw;width:95vw}
.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--BD)}
.modal-title{font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}
.modal-close{background:none;border:none;color:var(--MT);cursor:pointer;font-size:16px;padding:4px;border-radius:4px;line-height:1;transition:color .15s}
.modal-close:hover{color:var(--T)}
.modal-body{padding:18px;overflow-y:auto;flex:1}
.modal-foot{padding:14px 18px;border-top:1px solid var(--BD);display:flex;gap:8px;justify-content:flex-end}

/* ── Toast ────────────────────────────────────────────── */
#ts{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:9999}
.toast{display:flex;align-items:center;gap:9px;padding:11px 16px;border-radius:9px;font-size:13px;font-weight:500;box-shadow:var(--shadow);animation:slideIn .25s ease;max-width:380px}
.toast-ok{background:#0f2a1a;border:1px solid rgba(34,197,94,.3);color:var(--OK)}
.toast-er{background:#2a0f0f;border:1px solid rgba(239,68,68,.3);color:var(--ER)}
.toast-in{background:#0f1a2a;border:1px solid rgba(59,130,246,.3);color:var(--IN)}
@keyframes slideIn{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}

/* ── File Manager ─────────────────────────────────────── */
.fm-wrap{display:flex;gap:0;height:calc(100vh - var(--TB-H) - 120px);min-height:400px;background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);overflow:hidden}
.fm-sidebar-head{padding:12px 14px;border-bottom:1px solid var(--BD);display:flex;align-items:center;gap:8px;flex-shrink:0}
.fm-toolbar{padding:8px 10px;border-bottom:1px solid var(--BD);display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex-shrink:0}
.fm-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:2px;font-size:12px;color:var(--MT);flex:1;min-width:0}
.fm-breadcrumb a{color:var(--A);cursor:pointer;text-decoration:none;transition:opacity .15s}
.fm-breadcrumb a:hover{opacity:.75}
.fm-breadcrumb span{color:var(--LT);margin:0 1px}
.fm-search-wrap{padding:8px 10px;border-bottom:1px solid var(--BD);flex-shrink:0}
.fm-search{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--BD);border-radius:6px;padding:6px 10px;color:var(--T);font-size:12.5px;font-family:'Outfit',sans-serif;outline:none}
.fm-search:focus{border-color:var(--A)}
.fm-list-body{flex:1;overflow-y:auto}
.fm-favorites{padding:6px 10px;border-bottom:1px solid var(--BD)}
.fm-fav-title{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--LT);padding:4px 2px;letter-spacing:.06em}
.fm-fav-item{display:flex;align-items:center;gap:7px;padding:5px 4px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--MT);transition:all .15s}
.fm-fav-item:hover{background:var(--CARD-H);color:var(--T)}
/* file row */
.fr{display:flex;align-items:center;gap:0;padding:6px 10px;border-bottom:1px solid rgba(255,255,255,.03);cursor:default;transition:background .1s;position:relative}
.fr:hover{background:rgba(255,255,255,.04)}
.fr.selected{background:rgba(14,165,233,.08)}
.fr-icon{width:28px;flex-shrink:0;text-align:center;font-size:14px}
.fr-name{flex:1;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;min-width: 50%;}
.fr-size{width:65px;font-size:11px;color:var(--LT);text-align:right;flex-shrink:0}
.fr-date{width:90px;font-size:11px;color:var(--LT);text-align:right;flex-shrink:0}
.fr-perms{width:52px;font-size:10.5px;color:var(--LT);text-align:right;flex-shrink:0;font-family:'JetBrains Mono',monospace}
.fr-acts{display:none;position:absolute;right:6px;top:50%;transform:translateY(-50%);background:var(--SB-BG);border:1px solid var(--BD);border-radius:7px;padding:2px 4px;gap:2px;z-index:5;white-space:nowrap}
.fr:hover .fr-acts{display:flex}
.fr.fr-domain .fr-acts{display:flex;align-items:center}
.fr.fr-domain .fm-domain-use{display:inline-flex}
#fm-domain-preview{position:fixed;z-index:10050;width:310px;max-height:360px;display:flex;flex-direction:column;background:var(--CARD);border:1px solid var(--A);border-radius:10px;box-shadow:0 16px 45px rgba(0,0,0,.55);overflow:hidden}
.fm-domain-preview-head{display:flex;align-items:center;gap:8px;padding:10px 12px;background:rgba(14,165,233,.1);border-bottom:1px solid var(--BD);color:var(--T);font-size:12px}
.fm-domain-preview-head i{color:#38bdf8}.fm-domain-preview-head strong{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-domain-preview-close{border:0;background:transparent;color:var(--LT);font-size:18px;line-height:1;cursor:pointer}.fm-domain-preview-close:hover{color:#f87171}
.fm-domain-preview-body{overflow-y:auto;padding:5px}.fm-domain-preview-loading,.fm-domain-preview-empty{padding:22px 12px;text-align:center;color:var(--LT);font-size:11px}
.fm-domain-preview-item{width:100%;display:flex;align-items:center;gap:8px;padding:7px 8px;border:0;border-radius:6px;background:transparent;color:var(--MT);text-align:left;cursor:pointer;font:inherit;font-size:11.5px}.fm-domain-preview-item:hover{background:var(--CARD-H);color:var(--T)}.fm-domain-preview-item i{width:16px;text-align:center}.fm-domain-preview-item span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-domain-preview-item small{color:var(--LT);font-size:9px}
.fr.active {
  background: rgba(14, 165, 233, 0.12);
  border-left: 2px solid #0ea5e9;
}
.fr.fr-active {
  background: rgba(14, 165, 233, 0.15) ;
}
.fr-fav{color:var(--LT);font-size:12px}
.fr-fav.active{color:#f59e0b}
/* editor panel */
.fm-editor-panel{flex:1;display:flex;flex-direction:column;min-width:0}
.ed-head{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--BD);background:rgba(0,0,0,.15);flex-shrink:0;flex-wrap:wrap}
.ed-filename{font-size:13.5px;font-weight:700;color:var(--T)}
.ed-meta{font-size:11px;color:var(--LT)}
.ed-tabs{display:flex;gap:2px;padding:6px 10px 0;border-bottom:1px solid var(--BD);background:rgba(0,0,0,.1);flex-shrink:0}
.ed-tab{padding:5px 14px;border-radius:6px 6px 0 0;font-size:12px;font-weight:600;cursor:pointer;color:var(--MT);border:1px solid transparent;border-bottom:none;transition:all .15s}
.ed-tab.active{color:var(--T);background:var(--CARD);border-color:var(--BD)}
.ed-body{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:row;}
#monaco-container{flex:1;min-width:0;height:100%}
.ed-toolbar{display:flex;align-items:center;gap:4px;padding:5px 8px;border-top:1px solid var(--BD);background:rgba(0,0,0,.12);flex-shrink:0;flex-wrap:wrap}
.ed-toolbar-sep{width:1px;height:18px;background:var(--BD);margin:0 2px;flex-shrink:0}
.ed-toolbar-group{display:flex;align-items:center;gap:3px}
/* Resizer */
#ed-resizer{width:4px;background:var(--BD);cursor:col-resize;flex-shrink:0;transition:background .15s;z-index:5}
#ed-resizer:hover{background:var(--A)}
/* Live preview panel */
#ed-live-preview-panel{display:none;flex:1;flex-direction:column;min-width:0;height:100%;border-left:1px solid var(--BD);background:#fff;position:relative}
#ed-live-preview-iframe{flex:1;border:none;width:100%;height:100%}
/* Toolbar badge */
.ed-info-badge{font-size:11px;color:var(--LT);font-family:monospace;padding:1px 5px;background:rgba(0,0,0,.2);border-radius:4px;user-select:none}
/* context menu */
.ctx-menu{position:fixed;background:#111128;border:1px solid var(--BD);border-radius:9px;box-shadow:var(--shadow);z-index:9000;min-width:190px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;padding:5px;display:none}
.ctx-menu.open{display:block}
.ctx-item{display:flex;align-items:center;gap:9px;padding:7px 12px;border-radius:6px;font-size:12.5px;color:var(--T);cursor:pointer;transition:background .12s;white-space:nowrap}
.ctx-item:hover{background:var(--CARD-H)}
.ctx-item.danger{color:var(--ER)}
.ctx-item.danger:hover{background:rgba(239,68,68,.1)}
.ctx-sep{border:none;border-top:1px solid var(--BD);margin:4px 0}
/* upload drop zone */
.drop-zone{border:2px dashed var(--BD);border-radius:9px;padding:24px;text-align:center;color:var(--LT);font-size:13px;transition:all .2s;cursor:pointer}
.drop-zone.drag-over,.drop-zone:hover{border-color:var(--A);color:var(--A);background:rgba(14,165,233,.05)}

/* ── IA Panel ─────────────────────────────────────────── */

/* ── Notes ────────────────────────────────────────────── */
.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.note-card{border-radius:var(--R);padding:18px;position:relative;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s;border:1px solid var(--BD);border-left-width:4px}
.note-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.note-card h4{font-size:14px;font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.note-card p{font-size:12.5px;color:var(--MT);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:8px}
.note-card-meta{font-size:10.5px;color:var(--LT);margin-top:10px;display:flex;align-items:center;gap:6px}
.note-card-acts{position:absolute;top:12px;right:12px;display:none;gap:4px}
.note-card:hover .note-card-acts{display:flex}

/* ── Snippets ─────────────────────────────────────────── */
.snip-list{display:flex;flex-direction:column;gap:10px}
.snip-item{background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);padding:14px}
.snip-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.snip-title{font-size:13.5px;font-weight:700;flex:1}
.snip-code{background:rgba(0,0,0,.3);border-radius:7px;padding:10px 12px;font-family:'JetBrains Mono',monospace;font-size:12px;overflow-x:auto;max-height:140px;overflow-y:auto;line-height:1.6}
.snip-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.snip-tag{background:var(--CARD);border:1px solid var(--BD);padding:2px 8px;border-radius:99px;font-size:10.5px;color:var(--MT)}

/* ── Security ─────────────────────────────────────────── */
.sec-item{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.sec-item:last-child{border-bottom:none}
.sec-icon{width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* ── Misc ─────────────────────────────────────────────── */
.tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:10.5px;font-weight:600;background:var(--CARD);border:1px solid var(--BD);color:var(--MT)}
.mono{font-family:'JetBrains Mono',monospace;font-size:12px}
.divider{border:none;border-top:1px solid var(--BD);margin:14px 0}
.text-center{text-align:center}
.empty-state{padding:40px 20px;text-align:center;color:var(--LT);font-size:13px}
.empty-state i{font-size:32px;display:block;margin-bottom:10px;opacity:.4}
.spin{animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Scrollbar minimalista ─────────────────────────────── */
*{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(148,163,184,.24);border-radius:99px;border:1px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.48);background-clip:padding-box}
.tb-main-nav::-webkit-scrollbar,.tb-domain-tabs::-webkit-scrollbar,#footer-status-bar::-webkit-scrollbar,.footer-kpi-actions::-webkit-scrollbar{height:3px}
.tb-main-nav,.tb-domain-tabs,#footer-status-bar,.footer-kpi-actions{scrollbar-width:thin;scrollbar-color:rgba(14,165,233,.42) transparent;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}

/* ── Sidebar Overlay (mobile) ────────────────────────── */
#sb-overlay{
  display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);
  z-index:199;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);
  transition:opacity .25s;
}
#sb-overlay.active{display:block}

/* ── Mobile ───────────────────────────────────────────── */
@media(max-width:768px){
    body{overflow-x:hidden;overflow-y:auto}
  #main{height:auto;min-height:100dvh;overflow:visible}
  #content{overflow:visible;padding-bottom:calc(88px + env(safe-area-inset-bottom))}

  #sidebar{
    position:fixed;left:-280px;width:260px;max-width:85vw;
    transition:left .28s cubic-bezier(.4,0,.2,1);
    height:100vh;z-index:200;
    box-shadow:4px 0 24px rgba(0,0,0,.5);
  }
  #sidebar.mob-open{left:0}
  .mob-menu-btn{display:flex;align-items:center;justify-content:center}
  #main{width:100%;margin-left:0;max-width:100vw}
  #content{padding:12px;overflow-x:hidden}
  .fm-wrap{flex-direction:column;height:auto;max-height:none;min-height:0}
  #fm-panel-resizer{width:100%;height:6px;flex-basis:6px;cursor:row-resize}
  #fm-panel-resizer::after{content:'⋯'}
  .fm-sidebar{width:100%;max-height:45vh}
  .ia-panel{width:calc(100vw - 20px);right:10px;bottom:84px!important}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .fg-row{grid-template-columns:1fr}
  /* Topbar mobile */
  #topbar{padding:0 10px;gap:6px;flex-wrap:nowrap;overflow:hidden}
  .tb-pg-title{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}
  .tb-notes-chips{flex-shrink:0}
  .tb-note-chip{width:26px;height:26px}
  .tb-widget{display:none}
  /* Cards grid */
  .card{padding:14px}
  .modal{max-width:96vw}
  .modal-xl{max-width:100vw;width:100vw;border-radius:0}
  /* Prevent horizontal scroll */
  .tbl{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* ── Editor Tabs (Web/Code) ─────────────────────────────────────────── */
.ed-tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--BD);
  background: var(--BG);
  padding: 0 12px;
  flex-shrink: 0;
}
.ed-tab {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--MT);
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color .15s, border-color .15s;
  margin-bottom: -1px;
  font-family: inherit;
}
.ed-tab:hover { color: var(--T); }
.ed-tab.active {
  color: var(--A);
  border-bottom-color: var(--A);
}

/* ── Web Preview Panel ──────────────────────────────────────────────── */
#web-preview-panel {
  flex: 1;
  display: none;
  flex-direction: column;
}


/* ── File Manager v5 — Toolbar compacta + Favoritos inline ── */
.fm-topbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R) var(--R) 0 0;border-bottom:none;flex-wrap:wrap}
.fm-topbar .fm-breadcrumb{flex:1;min-width:120px}
.fm-topbar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.fm-act-btn{background:rgba(255,255,255,.06);border:1px solid var(--BD);border-radius:7px;color:var(--MT);cursor:pointer;font-size:13px;padding:5px 9px;transition:all .15s;display:inline-flex;align-items:center;gap:5px;line-height:1}
.fm-act-btn:hover{background:rgba(255,255,255,.12);color:var(--T);border-color:var(--A)}
.fm-act-btn:disabled{opacity:.4;cursor:not-allowed}
.fm-act-btn.active{color:var(--A);border-color:var(--A);background:rgba(14,165,233,.1)}
.fm-save-btn:not(:disabled){color:#22c55e;border-color:#22c55e}
.dirty-dot{color:#fbbf24;font-size:10px;margin-left:2px}
.fm-root-bar{display:flex;align-items:center;gap:6px;padding:5px 12px;background:rgba(0,0,0,.12);border-left:1px solid var(--BD);border-right:1px solid var(--BD);flex-wrap:wrap}
.fm-search-bar{display:flex;align-items:center;gap:6px;padding:6px 10px;background:rgba(0,0,0,.15);border-bottom: 1px solid var(--BD);}
.fm-search-bar .fm-search{flex:1}
.fm-favs-panel{display:flex;align-items:center;gap:6px;padding:6px 10px;background:rgba(0,0,0,.15);border-bottom: 1px solid var(--BD);}
.fm-favs-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--BD);font-size:12.5px;font-weight:700;flex-shrink:0}
.fm-favs-list{overflow-y:auto;flex:1;padding:6px}
.fm-fav-item{display:flex;align-items:center;gap:4px;padding:5px 6px;border-radius:6px;transition:background .12s}
.fm-fav-item:hover{background:var(--CARD-H)}
.fm-wrap{display:flex;gap:0;height:calc(100vh - var(--TB-H) - 120px);max-height:calc(100vh - var(--TB-H) - 120px);min-height:420px;background:var(--CARD);border:1px solid var(--BD);border-radius:0 0 var(--R) var(--R);overflow:hidden;position:relative}
/* ── FM Sidebar (File Explorer) collapse toggle ── */
.fm-sidebar{width:260px;flex-shrink:0;border-right:1px solid var(--BD);display:flex;flex-direction:column;background:rgba(0,0,0,.15);transition:width .22s}
.fm-sidebar.fm-collapsed{width:68px;min-width:68px}
.fm-sidebar.fm-collapsed #fm-list-body{display:none}
.fm-sidebar-toggle-bar{display:flex;align-items:center;justify-content:flex-end;padding:4px 6px 4px;flex-shrink:0;border-bottom:1px solid var(--BD);background:rgba(0,0,0,.10);gap:4px}
.fm-sidebar.fm-collapsed .fm-topbar-actions{display:none!important}
#fm-sidebar-actions-btn{display:none}
.fm-sidebar.fm-collapsed #fm-sidebar-actions-btn{display:flex}
.fm-sidebar.fm-collapsed .fm-sidebar-toggle-bar{justify-content:flex-start;border-bottom:1px solid var(--BD);padding:8px 0;gap:8px;height:auto;flex:0 0 auto;align-items:center}
.fm-sidebar.fm-collapsed #fm-upload-zone{padding:6px;margin:0!important}
#fm-panel-resizer{width:6px;flex:0 0 6px;background:rgba(148,163,184,.16);cursor:col-resize;position:relative;z-index:20;transition:background .15s}
#fm-panel-resizer::after{content:'⋮';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--LT);font-size:16px;line-height:1}
#fm-panel-resizer:hover,#fm-panel-resizer.is-dragging{background:var(--A)}
.fm-sidebar{min-width:180px}
#fm-editor-panel{min-width:260px}
.fm-sidebar-toggle-btn{background:none;border:1px solid transparent;border-radius:6px;color:var(--MT);cursor:pointer;padding:5px 7px;font-size:13px;transition:all .15s;display:flex;align-items:center;justify-content:center}
.fm-sidebar-toggle-btn:hover{background:var(--CARD-H);color:var(--A);border-color:var(--BD)}
.fm-sidebar.fm-collapsed #fm-sidebar-toggle-icon{transform:rotate(180deg)}
.fm-sidebar-toggle-bar .fm-sb-label{font-size:10px;color:var(--LT);white-space:nowrap;font-weight:600;margin-right:4px}
.fm-sidebar.fm-collapsed .fm-sb-label{display:none}
.fm-sidebar.fm-collapsed #fm-sidebar-icons{display:flex;flex-direction:column;align-items:center;gap:5px;padding:4px 0;overflow-y:auto;overflow-x:hidden;flex:1;width:68px;scrollbar-width:none}
.fm-sidebar.fm-collapsed #fm-sidebar-icons::-webkit-scrollbar{display:none}
.fm-sidebar.fm-collapsed #fm-sidebar-icons span{opacity:.7;transition:opacity .15s,transform .15s}
.fm-sidebar.fm-collapsed #fm-sidebar-icons span:hover{opacity:1;transform:scale(1.25)}
.fm-compact-item{width:60px;min-height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px 1px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--MT);cursor:pointer;transition:all .15s;overflow:hidden}
.fm-compact-item i{font-size:14px;color:#f59e0b}
.fm-compact-item small{display:block;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1;color:var(--LT)}
.fm-compact-item:hover{background:rgba(14,165,233,.12);border-color:rgba(14,165,233,.35);color:var(--T);transform:scale(1.04)}
.fm-compact-item:hover i{color:#38bdf8}

/* ── Sidebar global collapsed: icon alignment fix ── */
#sidebar.collapsed .sb-nav a{justify-content:center;padding:10px;gap:0}
#sidebar.collapsed .sb-nav a i{width:20px;text-align:center;margin:0}
#sidebar.collapsed .sb-foot{padding:10px 0;justify-content:center;flex-direction:column;gap:6px}
#sidebar.collapsed .sb-foot-user{justify-content:center;flex:none}
#sidebar.collapsed .sb-avatar{margin:0}
#sidebar.collapsed .sb-root-item{justify-content:center;padding:8px 0}
#sidebar.collapsed .sb-root-item i{margin:0}
#sidebar.collapsed .sb-root-group{margin:0 3px}
#sidebar.collapsed .sb-root-header{justify-content:center;flex-direction:column;margin:0;padding:7px 0;gap:2px;text-align:center}
#sidebar.collapsed .sb-root-header span{display:block;max-width:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;line-height:1.05;color:var(--LT)}
#sidebar.collapsed .sb-root-header.active span{color:var(--A)}
#sidebar.collapsed .sb-root-header i:first-child{width:20px;text-align:center}
#sidebar.collapsed .sb-root-chevron{display:none}
#sidebar.collapsed .sb-badge{display:none}
#sidebar.collapsed .btn-logout{margin:0}

/* ── Unibar unificado (files.php) ── */
.fm-unibar{display:flex;align-items:center;gap:6px;padding:0px 10px;background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R) var(--R) 0 0;border-bottom:none;min-height:38px;flex-wrap:nowrap;overflow:hidden}
.fm-unibar-bc{flex:0 1 auto;min-width:80px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.fm-unibar-sep{width:1px;height:18px;background:var(--BD);flex-shrink:0}
.fm-unibar-tabs{display:flex;gap:2px;flex-shrink:0}
.fm-unibar-tabs .ed-tab{padding:3px 10px;font-size:12px;border-radius:5px;border:1px solid var(--BD);background:transparent;color:var(--MT);cursor:pointer;transition:all .15s;white-space:nowrap}
.fm-unibar-tabs .ed-tab.active{background:rgba(14,165,233,.12);color:var(--A);border-color:var(--A)}
.fm-unibar-fname{font-size:12px;font-weight:600;color:var(--T);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;flex-shrink:1}
.fm-unibar .fm-topbar-actions{flex-shrink:0;display:flex;align-items:center;gap:3px}

/* ── IA config highlight (quando abre sem chave) ── */
.ia-cfg{transition:box-shadow .3s,background .3s}
.ia-cfg-highlight{background:rgba(239,68,68,.12);box-shadow:0 0 0 2px #ef4444;border-radius:6px}

/* ════════════════════════════════════════════════
   MEGA STUDIO IA — CSS v2.0
════════════════════════════════════════════════ */

/* ════════════════════════════════════════════════
   AGENTE IA v3.0 — Unificado, sempre visível
════════════════════════════════════════════════ */

/* FAB — sempre visível no canto */
.ia-fab-btn{position:fixed;bottom:28px;right:28px;z-index:1500;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#6366f1);border:none;color:#fff;font-size:22px;cursor:pointer;box-shadow:0 4px 20px rgba(14,165,233,.55);transition:transform .2s,box-shadow .2s,opacity .25s;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform:scale(.7) translateY(10px)}
.ia-fab-btn.visible{opacity:1;pointer-events:auto;transform:scale(1) translateY(0)}
.ia-fab-btn:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(14,165,233,.75)}
.ia-fab-btn:active{transform:scale(.95)!important}
.ia-fab-pulse{position:absolute;width:100%;height:100%;border-radius:50%;background:rgba(14,165,233,.3);animation:fab-pulse 2.5s ease-out infinite;pointer-events:none}
@keyframes fab-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}
.ia-fab-badge{position:absolute;top:-3px;right:-3px;width:16px;height:16px;border-radius:50%;background:#ef4444;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;color:#fff;border:2px solid #080812}
@media(max-width:768px){.ia-fab-btn{bottom:18px;right:18px}}

/* Painel principal */
.ia-panel{position:fixed;bottom:96px;right:28px;width:440px;height:74vh;max-height:680px;min-height:400px;background:#080812;border:1px solid rgba(14,165,233,.25);border-radius:18px;display:flex;flex-direction:column;z-index:1499;transform:scale(.92) translateY(16px);opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .25s;box-shadow:0 24px 70px rgba(0,0,0,.8),0 0 0 1px rgba(14,165,233,.08)}
.ia-panel.open{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}
@media(max-width:768px){.ia-panel{width:calc(100vw - 20px);right:10px;bottom:84px;height:80vh;max-height:none}}

/* Cabeçalho */
.ia-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(14,165,233,.15);flex-shrink:0;background:rgba(14,165,233,.04);border-radius:18px 18px 0 0}
.ia-head-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--T)}
.ia-head-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e;animation:pulse-dot 2s infinite;flex-shrink:0}
@keyframes pulse-dot{0%,100%{opacity:1;box-shadow:0 0 6px #22c55e}50%{opacity:.6;box-shadow:0 0 14px #22c55e}}
.ia-ver-badge{font-size:9px;padding:2px 7px;background:rgba(14,165,233,.15);border:1px solid rgba(14,165,233,.3);border-radius:99px;color:var(--A);font-weight:700;letter-spacing:.04em}
.ia-head-right{display:flex;align-items:center;gap:8px}
.ia-status-bar{display:flex;align-items:center;gap:5px;font-size:10.5px;max-width:130px;overflow:hidden}
.ia-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:#6b7280}
.ia-status-txt{color:var(--LT);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}

/* Tabs */
.ia-tabs{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0}
.ia-tab{flex:1;background:none;border:none;border-bottom:2px solid transparent;padding:8px 10px;font-size:12px;font-weight:600;color:var(--MT);cursor:pointer;font-family:inherit;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}
.ia-tab:hover{color:var(--T);background:rgba(255,255,255,.04)}
.ia-tab.active{color:var(--A);border-bottom-color:var(--A);background:rgba(14,165,233,.06)}

/* Tab views */
.ia-tab-view{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}

/* Contexto arquivo */
.ia-ctx-bar{display:flex;align-items:center;gap:7px;padding:6px 12px;background:linear-gradient(90deg,rgba(14,165,233,.1),rgba(14,165,233,.04));border-bottom:1px solid rgba(14,165,233,.15);font-size:11.5px;color:var(--A);flex-shrink:0}

/* Seções de ações */
.ia-section-hdr{display:flex;align-items:center;justify-content:space-between;padding:6px 12px 3px;flex-shrink:0}
.ia-section-hdr span:first-child{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--LT);display:flex;align-items:center;gap:5px}
.ia-section-hdr span:first-child i{color:var(--A)}
.ia-section-hint{font-size:9.5px;color:rgba(255,255,255,.3)}

/* Grids de botões */
.ia-qa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:2px 10px 6px;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.05)}
.ia-qa-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 3px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:8px;color:var(--MT);cursor:pointer;font-size:9px;font-weight:600;transition:all .15s;font-family:inherit;text-align:center;line-height:1.2}
.ia-qa-btn i{font-size:13px;color:var(--qa-color,var(--A))}
.ia-qa-btn:hover{background:rgba(255,255,255,.08);border-color:var(--qa-color,var(--A));color:var(--T);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.3)}
.ia-qa-btn:active{transform:translateY(0)}

/* Mensagens */
.ia-msgs{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth;min-height:0}
.ia-msgs::-webkit-scrollbar{width:4px}
.ia-msgs::-webkit-scrollbar-track{background:transparent}
.ia-msgs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}
.ia-msg{display:flex;flex-direction:column;animation:msg-in .2s ease}
@keyframes msg-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.ia-msg-ai .ia-bubble{background:rgba(14,165,233,.07);border:1px solid rgba(14,165,233,.15);border-radius:2px 10px 10px 10px;align-self:flex-start;max-width:96%}
.ia-msg-user .ia-bubble{background:rgba(168,85,247,.1);border:1px solid rgba(168,85,247,.2);border-radius:10px 2px 10px 10px;align-self:flex-end;max-width:96%}
.ia-bubble{padding:10px 12px;font-size:12.5px;line-height:1.65;word-break:break-word}
.ia-bubble h2,.ia-bubble h3,.ia-bubble h4{font-size:13px;color:var(--A);margin:8px 0 4px}
.ia-bubble code{background:rgba(14,165,233,.12);padding:1px 5px;border-radius:3px;font-family:'JetBrains Mono',monospace;font-size:11px;color:#7dd3fc}
.ia-bubble pre{background:#0d1117;border:1px solid rgba(255,255,255,.08);padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0;font-size:11.5px;font-family:'JetBrains Mono',monospace;position:relative}
.ia-bubble pre code{background:none;padding:0;color:#e6edf3}
.ia-bubble ul{padding-left:16px;margin:4px 0}
.ia-bubble li{margin:3px 0}
.ia-bubble strong{color:var(--T)}
.ia-typing{display:flex;align-items:center;gap:5px;padding:12px!important}
.ia-typing span{width:6px;height:6px;border-radius:50%;background:var(--A);animation:typing-dot .8s infinite}
.ia-typing span:nth-child(2){animation-delay:.15s}
.ia-typing span:nth-child(3){animation-delay:.3s}
@keyframes typing-dot{0%,80%,100%{transform:scale(.8);opacity:.4}40%{transform:scale(1.1);opacity:1}}
.ia-code-copy{position:absolute;top:6px;right:6px;background:rgba(255,255,255,.1);border:none;border-radius:5px;color:var(--MT);cursor:pointer;padding:4px 7px;font-size:11px;transition:all .15s}
.ia-code-copy:hover{background:rgba(255,255,255,.2);color:var(--T)}
.ia-apply-bar{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid rgba(168,85,247,.2)}
.ia-apply-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;background:linear-gradient(135deg,#a855f7,#7c3aed);border:none;border-radius:7px;color:#fff;font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}
.ia-apply-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(168,85,247,.4)}
.ia-copy-btn,.ia-save-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:7px;color:var(--MT);font-size:11.5px;cursor:pointer;font-family:inherit;transition:all .15s}
.ia-copy-btn:hover,.ia-save-btn:hover{color:var(--T);border-color:var(--A)}

/* Input */
.ia-inp-row{display:flex;gap:6px;padding:8px 10px;border-top:1px solid rgba(255,255,255,.07);flex-shrink:0;background:rgba(0,0,0,.2);align-items:flex-end;border-radius:0 0 18px 18px}
.ia-clear-btn{width:32px;height:32px;flex-shrink:0;border-radius:8px;align-self:flex-end}
.ia-textarea{flex:1;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:8px 11px;color:var(--T);font-size:12.5px;font-family:'Outfit',sans-serif;outline:none;resize:none;line-height:1.5;max-height:120px;overflow-y:auto;transition:border-color .15s}
.ia-textarea:focus{border-color:var(--A);background:rgba(14,165,233,.05)}
.ia-textarea::placeholder{color:var(--LT)}
.ia-send-btn{width:36px;height:36px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;align-self:flex-end;padding:0}

/* CONFIG VIEW */
.ia-cfg-scroll{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}
.ia-cfg-scroll::-webkit-scrollbar{width:4px}
.ia-cfg-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}
.ia-cfg-section{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px}
.ia-cfg-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--A);margin-bottom:10px;display:flex;align-items:center;gap:7px}
.ia-cfg-label{display:block;font-size:11px;font-weight:600;color:var(--MT);margin-bottom:4px}
.ia-cfg-select,.ia-cfg-input{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:7px 10px;color:var(--T);font-size:12px;font-family:inherit;outline:none;transition:border-color .15s}
.ia-cfg-select:focus,.ia-cfg-input:focus{border-color:var(--A)}
.ia-cfg-hint{font-size:10.5px;color:var(--LT);margin-top:5px;line-height:1.5}
.ia-cfg-links{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ia-cfg-link{display:flex;align-items:center;gap:7px;padding:8px 10px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:8px;color:var(--MT);font-size:11.5px;text-decoration:none;font-weight:600;transition:all .15s}
.ia-cfg-link:hover{border-color:var(--A);color:var(--A);background:rgba(14,165,233,.06)}
.ia-cfg-link i{width:14px;color:var(--A)}

/* ════════════════════════════════════════════════
   BACKUPS — Área Profissional v2.0
════════════════════════════════════════════════ */
.bkp-pro-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--BD);
}
.bkp-pro-title-area .bkp-pro-title {
  font-size: 20px;
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--T);
}
.bkp-pro-title i { color: var(--A); }
.bkp-pro-title-area .bkp-pro-sub {
  font-size: 12px;
  color: var(--LT);
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.bkp-pro-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* Stats melhoradas */
.bkp-stats-pro {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 20px;
}
.bkp-stat-pro {
  background: var(--CARD);
  border: 1px solid var(--BD);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
  overflow: hidden;
  transition: border-color .2s, transform .15s;
}
.bkp-stat-pro:hover { border-color: rgba(14,165,233,.3); transform: translateY(-1px); }
.bkp-stat-pro::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 3px; height: 100%;
  background: var(--stat-color, var(--A));
  border-radius: 3px 0 0 3px;
}
.bkp-stat-pro-icon {
  width: 40px; height: 40px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 17px;
  background: rgba(255,255,255,.04);
  flex-shrink: 0;
  color: var(--stat-color, var(--A));
}
.bkp-stat-pro-val { font-size: 22px; font-weight: 800; color: var(--T); line-height: 1.1; }
.bkp-stat-pro-lbl { font-size: 11px; color: var(--LT); margin-top: 2px; }
@media(max-width:700px){ .bkp-stats-pro { grid-template-columns: repeat(2,1fr); } }

/* Toolbar da lista */
.bkp-toolbar-pro {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
  background: var(--CARD);
  border: 1px solid var(--BD);
  border-radius: 10px;
  padding: 10px 14px;
}
.bkp-search-pro {
  position: relative;
  flex: 1;
  min-width: 180px;
}
.bkp-search-pro i {
  position: absolute; left: 10px; top: 50%;
  transform: translateY(-50%);
  color: var(--LT); font-size: 12px;
  pointer-events: none;
}
.bkp-search-pro .fc { padding-left: 30px; }
.bkp-filter-pills { display: flex; gap: 5px; flex-shrink: 0; }
.bkp-pill {
  padding: 5px 12px;
  border-radius: 20px;
  border: 1px solid var(--BD);
  background: transparent;
  color: var(--MT);
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}
.bkp-pill.active { background: var(--A); color: #fff; border-color: var(--A); }
.bkp-pill:not(.active):hover { border-color: var(--A); color: var(--A); }

/* Batch bar melhorada */
.bkp-batch-bar {
  display: none;
  align-items: center;
  gap: 10px;
  background: linear-gradient(90deg, rgba(14,165,233,.1), rgba(14,165,233,.04));
  border: 1px solid rgba(14,165,233,.25);
  padding: 10px 16px;
  border-radius: 10px;
  margin-bottom: 10px;
  animation: slideIn .2s ease;
}
.bkp-batch-bar.show { display: flex; }

/* Cards melhorados */
.bkp-card-pro {
  background: var(--CARD);
  border: 1px solid var(--BD);
  border-radius: 12px;
  padding: 0;
  display: flex;
  align-items: stretch;
  transition: border-color .15s, box-shadow .15s, transform .1s;
  overflow: hidden;
}
.bkp-card-pro:hover {
  border-color: rgba(14,165,233,.25);
  box-shadow: 0 4px 20px rgba(0,0,0,.2);
  transform: translateY(-1px);
}
.bkp-card-pro-stripe {
  width: 4px;
  flex-shrink: 0;
  background: var(--stripe-color, var(--A));
}
.bkp-card-pro-body {
  display: flex;
  align-items: center;
  flex: 1;
  padding: 14px 16px;
  gap: 14px;
  min-width: 0;
}
.bkp-card-pro-check { flex-shrink: 0; }
.bkp-card-pro-ico {
  width: 44px; height: 44px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}
.bkp-ico-full { background: rgba(34,197,94,.08); color: #22c55e; border: 1px solid rgba(34,197,94,.15); }
.bkp-ico-files { background: rgba(14,165,233,.08); color: #0ea5e9; border: 1px solid rgba(14,165,233,.15); }
.bkp-card-pro-info { flex: 1; min-width: 0; }
.bkp-card-pro-name {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--T);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 5px;
}
.bkp-card-pro-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 11px;
  color: var(--LT);
}
.bkp-card-pro-meta span { display: inline-flex; align-items: center; gap: 4px; }
.bkp-card-pro-badges { display: flex; gap: 4px; flex-wrap: wrap; flex-shrink: 0; }
.bkp-card-pro-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  padding: 14px 12px 14px 0;
}
.bkp-act-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 11px;
  border-radius: 8px;
  border: 1px solid var(--BD);
  background: transparent;
  color: var(--MT);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  white-space: nowrap;
  font-family: inherit;
}
.bkp-act-btn:hover { transform: translateY(-1px); box-shadow: 0 3px 10px rgba(0,0,0,.2); }
.bkp-act-btn.dl:hover { background: rgba(14,165,233,.1); border-color: #0ea5e9; color: #0ea5e9; }
.bkp-act-btn.em:hover { background: rgba(168,85,247,.1); border-color: #a855f7; color: #a855f7; }
.bkp-act-btn.rs:hover { background: rgba(245,158,11,.1); border-color: #f59e0b; color: #f59e0b; }
.bkp-act-btn.del:hover { background: rgba(239,68,68,.1); border-color: #ef4444; color: #ef4444; }
.bkp-act-btn.del { padding: 7px 9px; }
.bkp-act-sep { width: 1px; height: 24px; background: var(--BD); flex-shrink: 0; margin: 0 2px; }
@media(max-width:700px) {
  .bkp-act-btn span { display: none; }
  .bkp-card-pro-meta span:nth-child(n+3) { display: none; }
}

/* Empty state pro */
.bkp-empty-pro {
  text-align: center;
  padding: 70px 24px;
  background: var(--CARD);
  border: 1px dashed var(--BD);
  border-radius: 14px;
}
.bkp-empty-pro-icon {
  width: 72px; height: 72px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: rgba(14,165,233,.06);
  border: 1px solid rgba(14,165,233,.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 28px;
  color: var(--A);
}

/* ════════════════════════════════════════════════
   EMAIL — Sistema Profissional
════════════════════════════════════════════════ */
/* Tabs do modal email — já existem mas melhoradas */
.email-cfg-tabs { 
  display: flex; 
  gap: 2px; 
  background: rgba(255,255,255,.03); 
  border-radius: 10px; 
  padding: 4px; 
  margin-bottom: 18px;
}
.ecfg-tab {
  flex: 1;
  padding: 8px 10px;
  background: none;
  border: none;
  color: var(--MT);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  transition: all .15s;
}
.ecfg-tab.active { color: var(--T); background: rgba(14,165,233,.15); }
.ecfg-tab:not(.active):hover { color: var(--T); background: rgba(255,255,255,.05); }

/* Presets de SMTP */
.smtp-presets { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 14px; }
.smtp-preset-btn {
  padding: 5px 12px;
  border-radius: 6px;
  border: 1px solid var(--BD);
  background: var(--CARD);
  color: var(--MT);
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.smtp-preset-btn:hover { border-color: var(--A); color: var(--A); }

/* Status indicator no modal de send email */
.email-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
}
.email-status-ok { background: rgba(34,197,94,.1); color: #22c55e; border: 1px solid rgba(34,197,94,.2); }
.email-status-er { background: rgba(239,68,68,.1); color: #ef4444; border: 1px solid rgba(239,68,68,.2); }
.email-status-warn { background: rgba(245,158,11,.1); color: #f59e0b; border: 1px solid rgba(245,158,11,.2); }

/* Recipients list profissional */
.rcpt-list-pro { display: flex; flex-direction: column; gap: 6px; max-height: 220px; overflow-y: auto; }
.rcpt-item-pro {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--BG);
  border: 1px solid var(--BD);
  border-radius: 8px;
  padding: 10px 12px;
  transition: border-color .15s;
}
.rcpt-item-pro:hover { border-color: rgba(14,165,233,.2); }
.rcpt-avatar {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0ea5e9, #6366f1);
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}
.rcpt-info { flex: 1; min-width: 0; }
.rcpt-email { font-size: 13px; font-weight: 600; color: var(--T); }
.rcpt-name { font-size: 11px; color: var(--LT); }
.rcpt-add-form {
  display: flex;
  gap: 6px;
  margin-top: 10px;
  background: rgba(255,255,255,.02);
  border: 1px dashed var(--BD);
  border-radius: 8px;
  padding: 10px;
  flex-wrap: wrap;
}
.rcpt-add-form .fc { font-size: 12px; padding: 6px 10px; }
/* ── Backup Root Select Modal ── */
.bkp-root-option {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border: 1.5px solid var(--BD);
    border-radius: 9px;
    cursor: pointer;
    transition: border-color .18s, background .18s;
    background: var(--CARD);
    flex-wrap: wrap;
}
.bkp-root-option:hover { border-color: var(--A); background: var(--CARD-H); }
.bkp-root-option.bkp-root-selected { border-color: var(--A); background: rgba(14,165,233,.08); }
.bkp-root-ico {
    width: 34px; height: 34px;
    border-radius: 8px;
    background: rgba(14,165,233,.1);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    font-size: 15px;
}
.bkp-root-lbl { font-size: 13.5px; font-weight: 700; color: var(--T); flex: 1; }
.bkp-root-path { font-size: 11px; color: var(--LT); font-family: monospace; width: 100%; padding-left: 46px; }

/* ═══════════════════════════════════════════════════════════════════════════
   SIDEBAR POR PASTA RAIZ — v6.0
   Cada pasta raiz tem seus próprios submenus contextuais
═══════════════════════════════════════════════════════════════════════════ */

/* Grupo de raiz (wrapper do item + submenus) */
.sb-root-group {
  margin: 1px 0;
}

/* Cabeçalho da raiz — linha clicável */
.sb-root-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 16px;
  border-radius: 8px;
  cursor: pointer;
  text-decoration: none;
  color: var(--T);
  font-size: 13px;
  font-weight: 600;
  transition: background .15s, color .15s;
  position: relative;
  margin: 0 8px;
}
.sb-root-header:hover {
  background: var(--CARD);
  color: var(--T);
}
.sb-root-header.active {
  background: rgba(var(--A-rgb, 14,165,233), .12);
  color: var(--A);
}
.sb-root-header.active i.fa-folder,
.sb-root-header.active i.fa-home {
  /* icon color comes from inline style */
}

/* Chevron rotaciona quando expandido */
.sb-root-chevron {
  margin-left: auto;
  font-size: 10px;
  color: var(--LT);
  transition: transform .2s ease;
  flex-shrink: 0;
}
.sb-root-group.open > .sb-root-header .sb-root-chevron {
  transform: rotate(90deg);
}

/* Submenus dentro de cada raiz */
.sb-root-submenu {
  display: none;
  flex-direction: column;
  padding: 2px 8px 6px 8px;
  gap: 1px;
}
.sb-root-group.open > .sb-root-submenu {
  display: flex;
}
.sb-root-submenu a {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 7px 12px 7px 24px; /* indent para mostrar hierarquia */
  border-radius: 6px;
  font-size: 12.5px;
  color: var(--MT);
  text-decoration: none;
  transition: background .12s, color .12s;
  position: relative;
}
.sb-root-submenu a::before {
  content: '';
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--BD);
}
.sb-root-submenu a:hover {
  background: var(--CARD);
  color: var(--T);
}
.sb-root-submenu a.active {
  background: rgba(var(--A-rgb, 14,165,233), .1);
  color: var(--A);
  font-weight: 600;
}
.sb-root-submenu a.active::before {
  background: var(--A);
}
.sb-root-submenu a i {
  font-size: 12px;
  width: 14px;
  text-align: center;
  flex-shrink: 0;
}

/* Botão adicionar raiz */
.sb-root-add {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 16px;
  margin: 2px 8px;
  border-radius: 6px;
  font-size: 12px;
  color: var(--LT);
  text-decoration: none;
  border: 1px dashed var(--BD);
  transition: all .15s;
}
.sb-root-add:hover {
  color: var(--A);
  border-color: var(--A);
  background: rgba(var(--A-rgb,14,165,233),.05);
}

/* Topbar breadcrumb refinement */
.tb-pg-title {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ─── RemoverS o sb-root-switcher antigo caso ainda exista ─── */
.sb-root-switcher { display: none ; }



/* ═══════════════════════════════════════════════════════════════════════════
   99BKP — notes_enhanced.css
   Estilos para: editor visual de mídia + links públicos de notas
   Versão: 14.0
═══════════════════════════════════════════════════════════════════════════ */

/* ── MÍDIA: Wrapper e estado de edição ────────────────────────────────────── */
.ne-media-wrap {
  display: inline-block;
  position: relative;
  max-width: 100%;
  vertical-align: middle;
  margin: 4px 0;
  transition: outline .15s;
}

.ne-media-wrap.ne-media-editing {
  outline: 2px dashed var(--A, #0ea5e9);
  outline-offset: 3px;
  border-radius: 4px;
}

.ne-media-wrap img,
.ne-inserted-img {
  max-width: 100%;
  display: block;
  border-radius: 4px;
  cursor: pointer;
  transition: opacity .15s;
}

.ne-media-wrap.ne-media-editing img {
  opacity: .92;
}

/* ── MÍDIA: Toolbar de edição visual ─────────────────────────────────────── */
.ne-media-toolbar {
  position: absolute;
  top: -42px;
  left: 0;
  z-index: 600;
  display: flex;
  align-items: center;
  gap: 3px;
  background: #0d0d20;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  padding: 5px 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,.6);
  white-space: nowrap;
  flex-wrap: nowrap;
}

.ne-mt-label {
  font-size: 11px;
  color: var(--A, #0ea5e9);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 5px;
  padding-right: 4px;
}

.ne-mt-sep {
  width: 1px;
  height: 18px;
  background: rgba(255,255,255,.1);
  margin: 0 3px;
  flex-shrink: 0;
}

.ne-mt-btn {
  background: none;
  border: 1px solid transparent;
  color: var(--MT, #8888a8);
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  font-weight: 600;
  padding: 3px 7px;
  border-radius: 5px;
  cursor: pointer;
  transition: all .13s;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
}

.ne-mt-btn:hover {
  background: rgba(14,165,233,.15);
  border-color: rgba(14,165,233,.3);
  color: var(--A, #0ea5e9);
}

.ne-mt-btn.ne-mt-remove:hover {
  background: rgba(239,68,68,.15);
  border-color: rgba(239,68,68,.3);
  color: #ef4444;
}

.ne-mt-btn.ne-mt-close:hover {
  background: rgba(255,255,255,.07);
  color: var(--T, #e2e2f0);
}

.ne-mt-input {
  width: 62px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 5px;
  color: var(--T, #e2e2f0);
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  padding: 3px 6px;
  outline: none;
  transition: border-color .13s;
}

.ne-mt-input:focus { border-color: var(--A, #0ea5e9); }

/* ── MÍDIA: Handle de resize ─────────────────────────────────────────────── */
.ne-resize-handle {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 18px;
  height: 18px;
  background: var(--A, #0ea5e9);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: nwse-resize;
  z-index: 10;
  font-size: 9px;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,.4);
  transition: transform .1s;
}

.ne-resize-handle:hover { transform: scale(1.2); }

/* ── MÍDIA: Painel de upload/galeria ─────────────────────────────────────── */
.ne-media-panel {
  background: #0d0d20;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  margin-top: 12px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0,0,0,.5);
  animation: ne-panel-in .15s ease;
}

@keyframes ne-panel-in {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.ne-mp-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  background: rgba(14,165,233,.08);
  border-bottom: 1px solid rgba(255,255,255,.07);
  font-size: 12px;
  font-weight: 700;
  color: var(--A, #0ea5e9);
}

.ne-mp-close {
  background: none;
  border: none;
  color: var(--MT, #8888a8);
  cursor: pointer;
  font-size: 13px;
  padding: 2px 5px;
  border-radius: 4px;
  transition: color .13s;
}
.ne-mp-close:hover { color: var(--T, #e2e2f0); }

.ne-mp-body {
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.ne-mp-section { display: flex; flex-direction: column; gap: 6px; }

.ne-mp-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--MT, #8888a8);
  text-transform: uppercase;
  letter-spacing: .05em;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* ── Drop zone ───────────────────────────────────────────────────────────── */
.ne-drop-zone {
  border: 2px dashed rgba(255,255,255,.12);
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  color: var(--LT, #52527a);
  cursor: default;
  transition: border-color .15s, background .15s;
}

.ne-drop-zone.drag,
.ne-drop-zone:hover {
  border-color: var(--A, #0ea5e9);
  background: rgba(14,165,233,.04);
}

.ne-drop-zone i { font-size: 22px; opacity: .5; }

.ne-mp-file-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: rgba(14,165,233,.12);
  border: 1px solid rgba(14,165,233,.25);
  color: var(--A, #0ea5e9);
  font-size: 11.5px;
  font-weight: 600;
  font-family: 'Outfit', sans-serif;
  padding: 5px 12px;
  border-radius: 6px;
  cursor: pointer;
  transition: background .13s;
}
.ne-mp-file-btn:hover { background: rgba(14,165,233,.22); }

/* ── Galeria de mídias ───────────────────────────────────────────────────── */
.ne-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  gap: 6px;
}

.ne-gallery-empty {
  color: var(--LT, #52527a);
  font-size: 12px;
  padding: 10px;
  display: flex;
  align-items: center;
  gap: 6px;
  grid-column: 1 / -1;
}

.ne-gallery-item {
  position: relative;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid var(--BD, rgba(255,255,255,.07));
  aspect-ratio: 1;
  cursor: pointer;
  background: rgba(255,255,255,.03);
  transition: border-color .13s;
}

.ne-gallery-item:hover { border-color: var(--A, #0ea5e9); }

.ne-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ne-gi-actions {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.6);
  display: none;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.ne-gallery-item:hover .ne-gi-actions { display: flex; }

.ne-gi-actions button {
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.2);
  color: #fff;
  padding: 4px 7px;
  border-radius: 5px;
  font-size: 11px;
  cursor: pointer;
  transition: background .13s;
}
.ne-gi-actions button:hover { background: rgba(255,255,255,.25); }
.ne-gi-actions button:last-child:hover { background: rgba(239,68,68,.5); }

/* ── Controles de tamanho ────────────────────────────────────────────────── */
.ne-size-controls { display: flex; flex-direction: column; gap: 10px; }

.ne-size-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.ne-size-row > label {
  font-size: 12px;
  color: var(--MT, #8888a8);
  min-width: 60px;
  flex-shrink: 0;
}

.ne-align-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  background: rgba(255,255,255,.04);
  border: 1px solid var(--BD, rgba(255,255,255,.07));
  color: var(--MT, #8888a8);
  border-radius: 6px;
  font-size: 11.5px;
  font-family: 'Outfit', sans-serif;
  cursor: pointer;
  transition: all .13s;
}

.ne-align-btn:hover,
.ne-align-btn.active {
  background: rgba(14,165,233,.12);
  border-color: rgba(14,165,233,.3);
  color: var(--A, #0ea5e9);
}

/* ── COMPARTILHAMENTO: Painel ────────────────────────────────────────────── */
.ne-share-panel { z-index: 700; }

.ne-share-note-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--T, #e2e2f0);
  padding: 10px 13px;
  background: rgba(255,255,255,.03);
  border: 1px solid var(--BD, rgba(255,255,255,.07));
  border-radius: 8px;
}

.ne-share-note-title i { color: var(--A, #0ea5e9); }

.ne-share-status-loading {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--MT, #8888a8);
  padding: 10px;
}

.ne-share-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  border: 1px solid;
  border-radius: 8px;
  font-size: 13px;
}

/* ── Visibilidade: grid de opções ────────────────────────────────────────── */
.ne-vis-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.ne-vis-opt {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 13px;
  background: rgba(255,255,255,.03);
  border: 1.5px solid var(--BD, rgba(255,255,255,.07));
  border-radius: 8px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  transition: all .15s;
}

.ne-vis-opt:hover {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.15);
}

.ne-vis-opt.active {
  border-color: var(--A, #0ea5e9) ;
  background: rgba(14,165,233,.08);
}

.ne-vis-opt i { font-size: 15px; flex-shrink: 0; }

/* ── Histórico de acessos ─────────────────────────────────────────────────── */
.ne-share-log {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 140px;
  overflow-y: auto;
  padding-right: 4px;
}

.ne-log-entry {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 9px;
  background: rgba(255,255,255,.03);
  border-radius: 6px;
  font-size: 12px;
  color: var(--MT, #8888a8);
}

/* ── Botão de compartilhar nos cards de nota ─────────────────────────────── */
.ne-share-card-btn {
  opacity: 0;
  transition: opacity .15s;
}

.note-card:hover .ne-share-card-btn {
  opacity: 1;
}

.ne-share-card-btn:hover {
  color: var(--A, #0ea5e9) ;
}

/* ── Imagens inline no preview com indicador de edição ───────────────────── */
[data-note-editor] img,
.note-preview img,
.note-body img,
#note-body img {
  cursor: pointer;
  transition: opacity .15s, outline .15s;
  border-radius: 4px;
}

[data-note-editor] img:hover,
.note-preview img:hover,
.note-body img:hover,
#note-body img:hover {
  opacity: .85;
  outline: 2px dashed var(--A, #0ea5e9);
  outline-offset: 2px;
}

/* ── Responsivo ──────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
  .ne-vis-grid { grid-template-columns: 1fr; }
  .ne-media-toolbar { flex-wrap: wrap; top: auto; bottom: calc(100% + 6px); }
  .ne-gallery { grid-template-columns: repeat(auto-fill, minmax(60px, 1fr)); }
}
/* ════════════════════════════S══════════════════════════════════════════════════
   MÓDULO HISTÓRICO  (v18.0)
   ══════════════════════════════════════════════════════════════════════════════ */
/* Sidebar highlight for historico */
.sb-root-submenu a[href*="view=historico"] i { color: #a78bfa; }

/* Responsive adjustments */
@media(max-width:600px){
  .hist-toolbar{flex-direction:column;align-items:stretch}
  .hist-filter-btns{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .hist-entry-actions{flex-direction:column}
  .hist-detail-grid{grid-template-columns:1fr}
}
/* ════════════════════════════════════════════════════════════════════════════
   CORREÇÕES E MELHORIAS v19.0
   ════════════════════════════════════════════════════════════════════════════ */

/* ── Sidebar logo clicável ───────────────────────────────────────────────── */
.sb-brand-link {
  color: inherit;
  text-decoration: none;
  transition: opacity .15s;
}
.sb-brand-link:hover { opacity: .8; }
.sb-brand-link .sb-logo-text strong { color: var(--T, #e2e8f0); }
.sb-brand-link .sb-logo-text span   { color: var(--LT, #64748b); }

/* ── Icon picker ícone selecionado ───────────────────────────────────────── */
.icon-item-g.selected {
  background: rgba(14,165,233,.18) ;
  border: 2px solid var(--A, #0ea5e9) ;
  color: var(--A, #0ea5e9) ;
}
.icon-item-g.selected i { color: var(--A, #0ea5e9) ; }

/* ── Cards home — botões do rodapé ──────────────────────────────────────── */
.hm-cf {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
}
.hm-cf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 7px 10px;
  border-radius: 7px;
  border: 1px solid var(--BD, #1e293b);
  background: var(--C2, #161b27);
  color: var(--MT, #94a3b8);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
  white-space: nowrap;
}
.hm-cf-btn:hover { background: var(--C3, #1e293b); color: var(--T, #e2e8f0); }
.hm-cf-btn.accent { background: rgba(14,165,233,.12); border-color: rgba(14,165,233,.3); color: var(--A, #0ea5e9); }
.hm-cf-btn.accent:hover { background: rgba(14,165,233,.22); }

/* ── Mini-lista de backups nos cards ─────────────────────────────────────── */
.hm-bkp-list {
  border-top: 1px solid var(--BD, #1e293b);
  padding: 4px 0 2px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.hm-bkp-list-empty {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 11px;
  color: var(--LT, #475569);
}
.hm-bkp-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 8px;
  border-radius: 5px;
  gap: 6px;
  transition: background .12s;
}
.hm-bkp-row:hover { background: var(--C3, #1e293b); }
.hm-bkp-row-info {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  flex: 1;
}
.hm-bkp-row-ago { font-size: 11px; color: var(--MT, #94a3b8); white-space: nowrap; }
.hm-bkp-row-size { font-size: 10px; color: var(--LT, #475569); white-space: nowrap; }
.hm-bkp-badge-new {
  font-size: 9px; font-weight: 700;
  background: rgba(34,197,94,.15); color: #22c55e;
  border: 1px solid rgba(34,197,94,.3);
  border-radius: 4px; padding: 1px 5px; white-space: nowrap; flex-shrink: 0;
}
.hm-bkp-badge-bd {
  font-size: 9px;
  background: rgba(14,165,233,.12); color: var(--A, #0ea5e9);
  border: 1px solid rgba(14,165,233,.25);
  border-radius: 4px; padding: 1px 5px; flex-shrink: 0;
}
.hm-bkp-row-btns { display: flex; align-items: center; gap: 2px; flex-shrink: 0; }
.hm-bkp-row-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px;
  border-radius: 5px; border: 1px solid var(--BD, #1e293b);
  background: transparent; color: var(--MT, #94a3b8);
  font-size: 10px; cursor: pointer;
  transition: background .12s, color .12s;
}
.hm-bkp-row-btn:hover { background: var(--C2, #161b27); color: var(--A, #0ea5e9); }
.hm-bkp-row-btn-restore:hover { color: #f59e0b ; }

/* ── Drag Handle dos cards ───────────────────────────────────────────────── */
.hm-drag-handle {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 10;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  color: var(--LT, #475569);
  font-size: 11px;
  cursor: grab;
  opacity: 0;
  transition: opacity .15s, background .15s, color .15s;
  background: rgba(255,255,255,.04);
  border: 1px solid transparent;
}
.hm-card:hover .hm-drag-handle { opacity: 1; }
.hm-drag-handle:hover {
  background: rgba(14,165,233,.12);
  border-color: rgba(14,165,233,.25);
  color: var(--A, #0ea5e9);
}
.hm-drag-handle:active { cursor: grabbing; }
.hm-card { position: relative; }

/* Estado de arraste */
.hm-card.hm-dragging {
  opacity: .45;
  transform: scale(.97);
  transition: opacity .15s, transform .15s;
}
.hm-card.hm-drag-over {
  outline: 2px dashed var(--A, #0ea5e9);
  outline-offset: 2px;
  background: rgba(14,165,233,.04);
}

/* ── Responsivo global ───────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .hm-grid { grid-template-columns: 1fr ; }
  .ntas-modal { width: 100% ; max-width: 100% ; height: 100dvh ; border-radius: 0 ; }
  .ntas-body { flex-direction: column ; }
  .ntas-sidebar { width: 100% ; max-width: 100% ; border-left: none ; border-top: 1px solid var(--BD); max-height: 280px; overflow-y: auto; }
  .ntas-editor-col { min-width: 0 ; }
  .topbar { flex-wrap: wrap; gap: 6px; }
}

@media (max-width: 480px) {
  .ntas-fmt-bar { gap: 1px; }
  .ntas-fb-lbl { display: none ; }
  .hm-cm { grid-template-columns: repeat(2, 1fr); }
  .hm-diag { flex-wrap: wrap; gap: 4px; }
}

/* ── Animações suaves ────────────────────────────────────────────────────── */
* { -webkit-tap-highlight-color: transparent; }
button, a, [onclick] { cursor: pointer; }
input, select, textarea { font-family: inherit; }

/* ══════════════════════════════════════════════════════
   PWA INSTALL BANNER
══════════════════════════════════════════════════════ */
#pwa-install-banner{
  display:none;position:fixed;bottom:0;left:0;right:0;
  background:linear-gradient(135deg,#0d0d22,#111128);
  border-top:1px solid rgba(14,165,233,.3);
  padding:14px 18px;z-index:9998;
  flex-direction:row;align-items:center;gap:14px;
  box-shadow:0 -4px 24px rgba(0,0,0,.5);
  animation:slideUp .35s ease;
}
#pwa-install-banner.show{display:flex}
@keyframes slideUp{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}
.pwa-banner-icon{width:44px;height:44px;border-radius:10px;flex-shrink:0;object-fit:cover;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}
.pwa-banner-text{flex:1;min-width:0}
.pwa-banner-title{font-size:13.5px;font-weight:700;color:#fff;line-height:1.2}
.pwa-banner-sub{font-size:11.5px;color:var(--MT);margin-top:2px}
.pwa-banner-btns{display:flex;flex-direction:column;gap:6px;flex-shrink:0}
.pwa-btn-install{background:var(--A);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s;white-space:nowrap}
.pwa-btn-install:hover{opacity:.88}
.pwa-btn-dismiss{background:none;border:none;color:var(--LT);font-size:11px;cursor:pointer;padding:2px;font-family:inherit;transition:color .15s;white-space:nowrap}
.pwa-btn-dismiss:hover{color:var(--MT)}
@media(max-width:480px){
  #pwa-install-banner{flex-direction:row;flex-wrap:wrap;padding:12px 14px}
  .pwa-banner-btns{flex-direction:row;align-items:center;gap:10px}
}

/* ── Card size controls mobile ──────────────────────── */
.hm-card-zoom-controls{
  display:none;
  align-items:center;gap:8px;
  padding:8px 12px;
  background:var(--CARD);
  border:1px solid var(--BD);
  border-radius:8px;
  margin-bottom:10px;
}
@media(max-width:768px){
  .hm-card-zoom-controls{display:flex}
  .hm-size-slider-wrap{display:none!important}
}
.hm-zoom-btn{
  background:rgba(255,255,255,.08);border:1px solid var(--BD);border-radius:7px;
  color:var(--T);cursor:pointer;padding:7px 12px;font-size:15px;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s;line-height:1;
  font-family:inherit;
}
.hm-zoom-btn:hover{background:rgba(255,255,255,.15)}
.hm-zoom-lbl{font-size:11px;color:var(--MT);flex:1;text-align:center;user-select:none}


/* ═══════════════════════════════════════════════════════════════════════════
   NOTAS — notas.css  v3.0.0
   Módulo completo e isolado do sistema de notas.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Stats row ──────────────────────────────────────────────────────────── */
.ntas-stats-row { display:flex; gap:10px; margin-bottom:16px; flex-wrap:wrap; }
.ntas-stat-card { background:var(--CARD); border:1px solid var(--BD); border-radius:var(--R); padding:12px 16px; display:flex; align-items:center; gap:12px; flex:1; min-width:120px; }
.ntas-stat-new { justify-content:center; background:transparent; border:1.5px dashed var(--BD); }
.ntas-stat-icon { width:36px; height:36px; border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:16px; }
.ntas-stat-val { font-size:22px; font-weight:800; color:var(--T); line-height:1.1; }
.ntas-stat-lbl { font-size:11px; color:var(--LT); margin-top:1px; }

/* ── Toolbar ────────────────────────────────────────────────────────────── */
.ntas-toolbar { display:flex; align-items:center; gap:10px; padding:10px 14px; margin-bottom:14px; flex-wrap:wrap; }
.ntas-toolbar-left { display:flex; align-items:center; gap:8px; flex:1; flex-wrap:wrap; }
.ntas-toolbar-right { display:flex; align-items:center; gap:6px; }
.ntas-search-wrap { position:relative; flex:1; min-width:200px; }
.ntas-search-wrap i { position:absolute; left:10px; top:50%; transform:translateY(-50%); color:var(--LT); font-size:12px; pointer-events:none; }
.ntas-search-inp { width:100%; background:rgba(255,255,255,.04); border:1px solid var(--BD); border-radius:7px; padding:7px 11px 7px 32px; color:var(--T); font-size:13px; font-family:inherit; outline:none; transition:border-color .15s; }
.ntas-search-inp:focus { border-color:var(--A); }
.ntas-filter-sel { width:auto; min-width:120px; padding:7px 10px; }
.ntas-count-badge { font-size:11px; color:var(--LT); white-space:nowrap; padding:3px 8px; background:var(--CARD); border:1px solid var(--BD); border-radius:20px; }
.ntas-view-btns { display:flex; gap:2px; background:var(--CARD); border:1px solid var(--BD); border-radius:7px; padding:2px; }
.ntas-view-btn { background:none; border:none; color:var(--LT); padding:4px 8px; border-radius:5px; cursor:pointer; font-size:13px; transition:all .12s; }
.ntas-view-btn.active, .ntas-view-btn:hover { background:rgba(14,165,233,.12); color:var(--A); }

/* ── Grid view ──────────────────────────────────────────────────────────── */
.ntas-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:12px; }
.ntas-note-card { position:relative; background:var(--CARD); border:1px solid var(--BD); border-radius:12px; overflow:hidden; cursor:pointer; transition:transform .15s,box-shadow .15s,border-color .15s; display:flex; flex-direction:column; }
.ntas-note-card:hover { transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,.35); border-color:rgba(255,255,255,.12); }
.ntas-note-card:hover .ntas-card-actions { opacity:1; }
.ntas-card-color-bar { height:3px; width:100%; flex-shrink:0; }
.ntas-card-body { padding:14px 14px 10px; flex:1; display:flex; flex-direction:column; gap:7px; }
.ntas-card-title-row { display:flex; align-items:flex-start; gap:8px; }
.ntas-card-icon { width:28px; height:28px; border-radius:6px; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:12px; margin-top:1px; }
.ntas-card-title { font-size:13px; font-weight:700; color:var(--T); line-height:1.35; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; flex:1; }
.ntas-card-excerpt { font-size:11.5px; color:var(--MT); line-height:1.55; overflow:hidden; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; min-height:50px; }
.ntas-card-tags { display:flex; flex-wrap:wrap; gap:4px; }
.ntas-card-tag { padding:1px 7px; border-radius:20px; font-size:10px; font-weight:600; background:rgba(14,165,233,.1); border:1px solid rgba(14,165,233,.2); color:var(--A); }
.ntas-card-footer { display:flex; align-items:center; gap:6px; padding:8px 14px 10px; border-top:1px solid var(--BD); margin-top:auto; }
.ntas-card-date { font-size:10.5px; color:var(--LT); flex:1; display:flex; align-items:center; gap:5px; }
.ntas-card-actions { display:flex; gap:3px; opacity:0; transition:opacity .15s; }
.ntas-card-pin { background:none; border:none; cursor:pointer; padding:3px 5px; border-radius:4px; font-size:11px; transition:all .12s; }
.ntas-card-pin:hover { background:rgba(255,255,255,.08); }
.ntas-card-pin.active { color:#a855f7; }
.ntas-card-pin:not(.active) { color:var(--LT); opacity:.5; }
.ntas-sel-check { position:absolute; top:10px; left:10px; width:16px; height:16px; accent-color:var(--A); z-index:5; opacity:0; transition:opacity .12s; }
.ntas-note-card:hover .ntas-sel-check, .ntas-note-card.ntas-selected .ntas-sel-check { opacity:1; }
.ntas-note-card.ntas-selected { border-color:var(--A) !important; background:rgba(14,165,233,.04); }
.ntas-card-edit-btn { background:none; border:none; color:var(--MT); padding:3px 5px; border-radius:4px; cursor:pointer; font-size:11px; transition:all .12s; }
.ntas-card-edit-btn:hover { background:rgba(255,255,255,.08); color:var(--A); }
.ntas-card-del-btn { background:none; border:none; color:var(--LT); padding:3px 5px; border-radius:4px; cursor:pointer; font-size:11px; transition:all .12s; opacity:.6; }
.ntas-card-del-btn:hover { background:rgba(239,68,68,.12); color:#ef4444; opacity:1; }

/* ── List view ──────────────────────────────────────────────────────────── */
.ntas-list-table { background:var(--CARD); border:1px solid var(--BD); border-radius:var(--R); overflow:hidden; }
.ntas-list-table tbody tr { border-bottom:1px solid var(--BD); transition:background .1s; }
.ntas-list-table tbody tr:hover { background:rgba(255,255,255,.03); }
.ntas-list-table tbody tr.ntas-selected { background:rgba(14,165,233,.06) !important; }
.ntas-list-table tbody td { padding:9px 12px; font-size:13px; color:var(--T); vertical-align:middle; }
.ntas-th.sort-asc .ntas-sort-icon::before { content:"\f0de"; }
.ntas-th.sort-desc .ntas-sort-icon::before { content:"\f0dd"; }
.ntas-th.sortable:hover { color:var(--T) !important; }
.ntas-pin-btn { background:none; border:none; cursor:pointer; padding:4px 6px; border-radius:5px; transition:all .15s; }
.ntas-pin-btn:hover { background:var(--CARD); transform:scale(1.15); }
.ntas-pin-active { color:#a855f7 !important; }
.ntas-pin-inactive { color:var(--LT) !important; opacity:.5; }

/* ═══════════════════════════════════════════════════════════════════════════
   MODAL v3.0.0
   ═══════════════════════════════════════════════════════════════════════════ */

#modal-ntas-global { position:fixed; inset:0; background:rgba(0,0,0,.72); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); display:none; align-items:center; justify-content:center; z-index:110000; padding:16px; }
#modal-ntas-global.open { display:flex; }

.ntas-modal { background:var(--BG2,#0e0e1d); border:1px solid rgba(255,255,255,.1); border-radius:18px; width:100%; max-width:1100px; height:88vh; max-height:820px; display:flex; flex-direction:column; overflow:hidden; box-shadow:0 32px 80px rgba(0,0,0,.65); position:relative; animation:ntasSlideUp .22s cubic-bezier(.16,1,.3,1); }
.ntas-modal.ntas-fullscreen { max-width:100%; max-height:100%; height:100%; border-radius:0; }
#modal-ntas-global.ntas-fullscreen { padding:0; }

@keyframes ntasSlideUp { from{transform:translateY(24px) scale(.97);opacity:0} to{transform:translateY(0) scale(1);opacity:1} }
@keyframes ntasFadeIn { from{opacity:0} to{opacity:1} }
@keyframes ntasPanelSlide { from{opacity:0;transform:translateY(-6px)} to{opacity:1;transform:translateY(0)} }

/* Header */
.ntas-header { display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid rgba(255,255,255,.07); background:rgba(255,255,255,.015); flex-shrink:0; }
.ntas-header-left { display:flex; align-items:center; gap:10px; flex:1; min-width:0; }
.ntas-icon-badge { width:38px; height:38px; border-radius:10px; background:rgba(14,165,233,.15); border:1.5px solid rgba(14,165,233,.3); display:flex; align-items:center; justify-content:center; font-size:16px; cursor:pointer; flex-shrink:0; transition:all .15s; }
.ntas-icon-badge:hover { background:rgba(14,165,233,.28); transform:scale(1.05); }
.ntas-title-wrap { flex:1; min-width:0; }
.ntas-title-input { width:100%; background:transparent; border:none; border-bottom:1.5px solid transparent; outline:none; color:var(--T); font-size:16px; font-weight:700; font-family:inherit; padding:2px 0; transition:border-color .15s; }
.ntas-title-input:focus { border-bottom-color:var(--A); }
.ntas-title-input::placeholder { color:var(--LT); font-weight:400; }
.ntas-meta-row { display:flex; align-items:center; gap:8px; margin-top:3px; }
.ntas-saving-ind { font-size:10px; color:#22c55e; font-weight:600; }
.ntas-last-saved { font-size:10px; color:var(--LT); }
.ntas-modal-label { font-size:10px; color:var(--LT); background:rgba(255,255,255,.05); border:1px solid var(--BD); border-radius:20px; padding:1px 8px; }
.ntas-header-right { display:flex; align-items:center; gap:4px; flex-shrink:0; }
.ntas-hbtn { background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.09); color:var(--MT); padding:6px 10px; border-radius:8px; cursor:pointer; font-size:13px; display:flex; align-items:center; gap:5px; transition:all .15s; font-family:inherit; white-space:nowrap; }
.ntas-hbtn:hover { background:rgba(255,255,255,.1); color:var(--T); }
.ntas-hbtn-ai { background:rgba(168,85,247,.12); border-color:rgba(168,85,247,.25); color:#a855f7; }
.ntas-hbtn-ai:hover { background:rgba(168,85,247,.22); color:#c084fc; }
.ntas-hbtn-close:hover { background:rgba(239,68,68,.15); border-color:rgba(239,68,68,.3); color:#ef4444; }

/* ── AI Dropdown ── */
.ntas-ai-dropdown { position:absolute; top:calc(100% + 8px); right:0; background:var(--CARD,#1a1a2e); border:1px solid rgba(255,255,255,.12); border-radius:12px; padding:6px; min-width:220px; z-index:100; box-shadow:0 16px 40px rgba(0,0,0,.5); animation:ntasFadeIn .14s ease; }
.ntas-ai-dd-header { font-size:10px; font-weight:700; color:var(--LT); text-transform:uppercase; letter-spacing:.7px; padding:4px 10px 8px; border-bottom:1px solid var(--BD); margin-bottom:4px; }
.ntas-ai-dropdown button { display:flex; align-items:center; gap:9px; width:100%; padding:8px 12px; border:none; background:none; color:var(--MT); font-size:12px; font-family:inherit; cursor:pointer; border-radius:8px; text-align:left; transition:all .12s; }
.ntas-ai-dropdown button:hover { background:rgba(168,85,247,.12); color:#c084fc; }
.ntas-ai-dropdown button i { width:14px; text-align:center; flex-shrink:0; }
.ntas-ai-sep { border-top:1px solid var(--BD); margin:4px 0; }
.ntas-ai-custom-btn { color:#a855f7 !important; }

/* Body */
.ntas-body { display:flex; flex:1; overflow:hidden; }
.ntas-editor-col { flex:1; display:flex; flex-direction:column; min-width:0; overflow:hidden; }

/* Format bar */
.ntas-fmt-bar { display:flex; align-items:center; flex-wrap:wrap; gap:2px; padding:6px 10px; border-bottom:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02); flex-shrink:0; overflow-x:auto; }
.ntas-fmt-bar::-webkit-scrollbar { height:3px; }
.ntas-fmt-bar::-webkit-scrollbar-thumb { background:var(--BD); border-radius:2px; }
.ntas-fb { background:none; border:none; color:var(--MT); padding:5px 7px; border-radius:6px; cursor:pointer; font-size:12px; display:flex; align-items:center; gap:4px; transition:all .12s; font-family:inherit; white-space:nowrap; flex-shrink:0; }
.ntas-fb:hover { background:rgba(255,255,255,.08); color:var(--T); }
.ntas-fb.active-fmt { background:rgba(14,165,233,.15); color:var(--A); }
.ntas-fb-h1 { font-size:11px; font-weight:800; color:var(--A); }
.ntas-fb-h2 { font-size:11px; font-weight:700; color:#a855f7; }
.ntas-fb-h3 { font-size:11px; font-weight:600; color:#22c55e; }
.ntas-fb-code { color:#f59e0b; }
.ntas-fb-check { color:#22c55e; }
.ntas-fb-media { color:#0ea5e9; cursor:pointer; }
.ntas-fb-media input { display:none; }
.ntas-fb-url { color:#a855f7; }
.ntas-fb-lbl { font-size:11px; }
.ntas-fmt-sep { width:1px; height:18px; background:rgba(255,255,255,.08); margin:0 3px; flex-shrink:0; }

/* Inline panels */
.ntas-inline-panel { padding:10px 14px; border-bottom:1px solid rgba(255,255,255,.06); background:rgba(14,165,233,.04); display:flex; flex-direction:column; gap:8px; flex-shrink:0; animation:ntasPanelSlide .15s ease; }
.ntas-fp-header { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; color:var(--T); }
.ntas-fp-close { background:none; border:none; color:var(--LT); cursor:pointer; padding:2px 5px; border-radius:4px; font-size:12px; margin-left:auto; transition:all .12s; }
.ntas-fp-close:hover { background:rgba(239,68,68,.12); color:#ef4444; }
.ntas-banner-opt { padding:7px; border-radius:7px; cursor:pointer; font-size:12px; font-weight:600; display:flex; align-items:center; gap:6px; transition:all .12s; font-family:inherit; }
.ntas-banner-opt:hover { filter:brightness(1.2); }

/* ═══════════════════════════════════════════════════════════════════════════
   PAINEL DE CÓDIGO v3.0.0
   ═══════════════════════════════════════════════════════════════════════════ */

.ntas-panel-code-body { background:rgba(12,12,20,.6); border-bottom-color:rgba(245,158,11,.2); gap:0; padding:0; }

.ntas-code-panel-controls {
  display:flex;
  align-items:center;
  gap:6px;
  padding:10px 14px;
  border-bottom:1px solid rgba(255,255,255,.06);
  flex-wrap:wrap;
}

.ntas-code-lang-wrap {
  display:flex;
  align-items:center;
  gap:6px;
  flex:1;
  min-width:160px;
}

.ntas-code-lang-sel {
  flex:1;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:7px;
  color:var(--T);
  font-size:12px;
  font-family:inherit;
  padding:6px 10px;
  outline:none;
  cursor:pointer;
  transition:border-color .15s;
  appearance:auto;
}
.ntas-code-lang-sel:focus { border-color:var(--A); }
.ntas-code-lang-sel option, .ntas-code-lang-sel optgroup { background:var(--BG2,#0e0e1d); color:var(--T); }

.ntas-detect-btn {
  display:flex;
  align-items:center;
  gap:5px;
  background:rgba(168,85,247,.12);
  border:1px solid rgba(168,85,247,.25);
  color:#a855f7;
  padding:5px 10px;
  border-radius:7px;
  cursor:pointer;
  font-size:12px;
  font-family:inherit;
  white-space:nowrap;
  transition:all .15s;
}
.ntas-detect-btn:hover { background:rgba(168,85,247,.22); }

.ntas-code-clear-btn {
  background:rgba(239,68,68,.08);
  border:1px solid rgba(239,68,68,.2);
  color:#ef4444;
  padding:5px 9px;
  border-radius:7px;
  cursor:pointer;
  font-size:12px;
  font-family:inherit;
  transition:all .15s;
}
.ntas-code-clear-btn:hover { background:rgba(239,68,68,.18); }

.ntas-code-insert-btn { white-space:nowrap; }

.ntas-code-editor-wrap {
  position:relative;
  padding:10px 14px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ntas-code-textarea {
  width:100%;
  min-height:120px;
  max-height:220px;
  background:#0c0c1e;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  color:#c9d1d9;
  font-family:'SF Mono','Fira Code','Fira Mono','Cascadia Code','Consolas','JetBrains Mono',monospace;
  font-size:13px;
  line-height:1.65;
  padding:12px 14px;
  resize:vertical;
  outline:none;
  transition:border-color .15s;
  tab-size:2;
  box-sizing:border-box;
}
.ntas-code-textarea:focus { border-color:rgba(245,158,11,.5); }
.ntas-code-textarea::placeholder { color:rgba(255,255,255,.25); font-style:italic; font-family:inherit; }

.ntas-code-detect-badge {
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  font-weight:600;
  padding:4px 10px;
  border-radius:6px;
  background:rgba(34,197,94,.1);
  border:1px solid rgba(34,197,94,.3);
  color:#22c55e;
  animation:ntasFadeIn .2s ease;
  align-self:flex-start;
}

.ntas-code-panel-hint {
  padding:6px 14px 10px;
  font-size:11px;
  color:var(--LT);
  display:flex;
  align-items:flex-start;
  gap:6px;
  line-height:1.5;
}
.ntas-code-panel-hint i { flex-shrink:0; margin-top:1px; color:rgba(245,158,11,.6); }

/* ═══════════════════════════════════════════════════════════════════════════
   BLOCOS DE CÓDIGO NO EDITOR
   ═══════════════════════════════════════════════════════════════════════════ */

.ntas-wysiwyg .ntas-code-block-wrap,
.ntas-preview-box .ntas-code-block-wrap {
  margin:14px 0;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  background:#0c0c1e;
}

.ntas-wysiwyg .ntas-code-block-header,
.ntas-preview-box .ntas-code-block-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:7px 12px;
  background:rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.07);
  min-height:34px;
}

.ntas-code-lang-badge {
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.8px;
  color:#f59e0b;
  background:rgba(245,158,11,.12);
  border:1px solid rgba(245,158,11,.25);
  padding:2px 8px;
  border-radius:5px;
}

.ntas-code-copy-btn {
  display:flex;
  align-items:center;
  gap:5px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  color:var(--LT);
  padding:3px 9px;
  border-radius:5px;
  cursor:pointer;
  font-size:11px;
  font-family:inherit;
  transition:all .15s;
  margin-left:auto;
}
.ntas-code-copy-btn:hover { background:rgba(14,165,233,.15); border-color:rgba(14,165,233,.3); color:var(--A); }
.ntas-code-copy-btn i { font-size:10px; }

/* Write pane */
#ntas-pane-write { display:flex; flex:1; overflow:hidden; position:relative; }
.ntas-drop-overlay { position:absolute; inset:0; background:rgba(14,165,233,.15); border:3px dashed var(--A); border-radius:8px; display:none; flex-direction:column; align-items:center; justify-content:center; font-size:20px; font-weight:700; color:var(--A); gap:12px; z-index:10; }

/* WYSIWYG */
.ntas-wysiwyg { flex:1; padding:20px 24px; overflow-y:auto; outline:none; color:var(--T); font-size:14.5px; line-height:1.78; font-family:inherit; caret-color:var(--A); min-height:0; }
.ntas-wysiwyg::-webkit-scrollbar { width:5px; }
.ntas-wysiwyg::-webkit-scrollbar-thumb { background:var(--BD); border-radius:3px; }
.ntas-wysiwyg[data-placeholder]:empty::before { content:attr(data-placeholder); color:var(--LT); pointer-events:none; font-style:italic; }

.ntas-wysiwyg h1 { font-size:24px; font-weight:800; color:var(--T); margin:20px 0 10px; letter-spacing:-.3px; line-height:1.3; }
.ntas-wysiwyg h2 { font-size:19px; font-weight:700; color:var(--T); margin:18px 0 8px; padding-bottom:6px; border-bottom:1px solid var(--BD); }
.ntas-wysiwyg h3 { font-size:15px; font-weight:700; color:var(--MT); margin:14px 0 6px; }
.ntas-wysiwyg h4 { font-size:13px; font-weight:700; color:var(--MT); margin:12px 0 5px; }
.ntas-wysiwyg p { margin:0 0 8px; }
.ntas-wysiwyg strong, .ntas-wysiwyg b { font-weight:700; color:var(--T); }
.ntas-wysiwyg em, .ntas-wysiwyg i { font-style:italic; }
.ntas-wysiwyg u { text-decoration:underline; text-underline-offset:2px; }
.ntas-wysiwyg del, .ntas-wysiwyg s { color:var(--LT); }
.ntas-wysiwyg ul, .ntas-wysiwyg ol { margin:6px 0 10px 22px; color:var(--MT); }
.ntas-wysiwyg li { margin-bottom:4px; line-height:1.6; }
.ntas-wysiwyg a { color:var(--A); text-decoration:none; }
.ntas-wysiwyg a:hover { text-decoration:underline; }
.ntas-wysiwyg hr { border:none; border-top:2px solid rgba(255,255,255,.08); margin:18px 0; }
.ntas-wysiwyg img { max-width:100%; border-radius:10px; margin:10px auto; display:block; box-shadow:0 4px 20px rgba(0,0,0,.4); }
.ntas-wysiwyg video, .ntas-wysiwyg audio { max-width:100%; border-radius:10px; margin:10px auto; display:block; }
.ntas-wysiwyg figure { margin:14px 0; }
.ntas-wysiwyg figcaption { text-align:center; font-size:11.5px; color:var(--LT); margin-top:5px; font-style:italic; }

/* ── Code blocks no WYSIWYG (sem wrap, legacy) ── */
.ntas-wysiwyg pre,
.ntas-wysiwyg .ntas-block-code {
  background:#0c0c1e;
  border:1px solid rgba(255,255,255,.08);
  border-left:3px solid var(--A);
  border-radius:0 10px 10px 0;
  padding:14px 16px;
  overflow-x:auto;
  font-family:'SF Mono','Fira Code','Cascadia Code','Consolas',monospace;
  font-size:13px;
  margin:12px 0;
  color:#c9d1d9;
  line-height:1.65;
  position:relative;
  white-space:pre;
}
.ntas-wysiwyg pre[data-lang]::before,
.ntas-wysiwyg .ntas-block-code[data-lang]::before {
  content:attr(data-lang);
  position:absolute;
  top:6px;
  right:10px;
  font-size:10px;
  color:var(--LT);
  font-family:inherit;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.ntas-wysiwyg code { background:rgba(255,255,255,.07); padding:2px 6px; border-radius:5px; font-family:'SF Mono',monospace; font-size:12.5px; color:#f9a8d4; }
.ntas-wysiwyg pre code { background:transparent; padding:0; border-radius:0; color:inherit; font-size:inherit; white-space:pre; }
.ntas-wysiwyg blockquote, .ntas-wysiwyg .ntas-block-quote { border-left:4px solid var(--A); background:rgba(14,165,233,.06); border-radius:0 10px 10px 0; padding:12px 16px; margin:12px 0; color:var(--MT); font-style:italic; }
.ntas-wysiwyg .ntas-block-table { width:100%; border-collapse:collapse; margin:12px 0; font-size:13.5px; }
.ntas-wysiwyg .ntas-block-table th { background:rgba(255,255,255,.04); font-weight:700; color:var(--T); border:1px solid var(--BD); padding:8px 12px; text-align:left; }
.ntas-wysiwyg .ntas-block-table td { border:1px solid var(--BD); padding:8px 12px; color:var(--MT); }
.ntas-wysiwyg .ntas-block-btn { display:inline-block; background:linear-gradient(135deg,var(--A),#0080cc); color:#fff !important; padding:9px 22px; border-radius:8px; text-decoration:none; font-weight:700; font-size:13px; }
.ntas-wysiwyg .ntas-check-block { margin:8px 0; }
.ntas-wysiwyg .ntas-check-row { display:flex; align-items:center; gap:8px; padding:4px 0; cursor:pointer; }
.ntas-wysiwyg .ntas-check-row input[type="checkbox"] { width:16px; height:16px; accent-color:var(--A); cursor:pointer; flex-shrink:0; }
.ntas-wysiwyg .ntas-cols-block .ntas-col:focus { border-color:var(--A) !important; outline:none; }
.ntas-wysiwyg .ntas-block-banner { cursor:text; }

/* Word count */
.ntas-word-count { font-size:10px; color:var(--LT); padding:3px 10px; text-align:right; border-top:1px solid rgba(255,255,255,.04); flex-shrink:0; }

/* Live preview */
#ntas-live-preview-col { flex:1; display:none; flex-direction:column; border-left:1px solid rgba(255,255,255,.06); min-width:0; }
.ntas-preview-header { padding:5px 14px; background:rgba(168,85,247,.04); border-bottom:1px solid rgba(255,255,255,.05); font-size:10px; font-weight:700; color:var(--LT); text-transform:uppercase; letter-spacing:.5px; flex-shrink:0; }

/* Preview box */
.ntas-preview-box { padding:20px 24px; overflow-y:auto; flex:1; color:var(--MT); font-size:14.5px; line-height:1.78; }
.ntas-preview-box::-webkit-scrollbar { width:5px; }
.ntas-preview-box::-webkit-scrollbar-thumb { background:var(--BD); border-radius:3px; }
.ntas-preview-box h1 { font-size:22px; font-weight:800; color:var(--T); margin:18px 0 10px; }
.ntas-preview-box h2 { font-size:17px; font-weight:700; color:var(--T); margin:16px 0 8px; border-bottom:1px solid var(--BD); padding-bottom:6px; }
.ntas-preview-box h3 { font-size:14px; font-weight:700; color:var(--MT); margin:12px 0 6px; }
.ntas-preview-box blockquote { border-left:4px solid var(--A); background:rgba(14,165,233,.06); padding:10px 14px; margin:10px 0; border-radius:0 8px 8px 0; }
.ntas-preview-box pre { background:#0c0c1e; border:1px solid rgba(255,255,255,.08); border-radius:8px; padding:12px 14px; overflow-x:auto; font-family:monospace; font-size:13px; margin:10px 0; color:#c9d1d9; }
.ntas-preview-box code { background:rgba(255,255,255,.07); padding:2px 5px; border-radius:4px; font-family:monospace; font-size:12px; color:#f9a8d4; }
.ntas-preview-box pre code { background:transparent; color:inherit; padding:0; }
.ntas-preview-box img { max-width:100%; border-radius:8px; margin:10px auto; display:block; }
.ntas-preview-box table { width:100%; border-collapse:collapse; margin:10px 0; font-size:13px; }
.ntas-preview-box th, .ntas-preview-box td { border:1px solid var(--BD); padding:7px 11px; }
.ntas-preview-box th { background:rgba(255,255,255,.04); font-weight:700; }

/* Media gallery */
.ntas-media-gallery { display:none; flex-wrap:wrap; gap:6px; padding:10px 14px; border-top:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02); flex-shrink:0; max-height:110px; overflow-y:auto; }
.ntas-media-thumb { position:relative; width:72px; height:72px; border-radius:8px; overflow:hidden; border:1px solid var(--BD); }
.ntas-media-thumb img { width:100%; height:100%; object-fit:cover; }
.ntas-media-thumb-del { position:absolute; top:2px; right:2px; background:rgba(0,0,0,.7); border:none; color:#fff; width:18px; height:18px; border-radius:4px; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:10px; }
.ntas-media-progress { display:none; align-items:center; gap:8px; padding:8px 14px; font-size:12px; color:var(--A); border-top:1px solid rgba(255,255,255,.06); flex-shrink:0; }

/* ── Sidebar ── */
.ntas-sidebar { width:240px; flex-shrink:0; border-left:1px solid rgba(255,255,255,.07); display:flex; flex-direction:column; overflow:hidden; background:rgba(255,255,255,.01); }
.ntas-sb-tabs { display:flex; border-bottom:1px solid rgba(255,255,255,.07); flex-shrink:0; }
.ntas-sb-tab { flex:1; padding:9px 6px; background:none; border:none; color:var(--LT); font-size:11px; font-weight:600; cursor:pointer; font-family:inherit; display:flex; align-items:center; justify-content:center; gap:5px; transition:all .15s; }
.ntas-sb-tab.active { color:var(--T); background:rgba(255,255,255,.03); border-bottom:2px solid var(--A); }
.ntas-sb-tab:hover:not(.active) { color:var(--MT); }
.ntas-sb-panel { flex:1; overflow-y:auto; padding:6px 0; }
.ntas-sb-panel::-webkit-scrollbar { width:3px; }
.ntas-sb-panel::-webkit-scrollbar-thumb { background:var(--BD); border-radius:2px; }
.ntas-sidebar-section { padding:10px 14px; border-bottom:1px solid rgba(255,255,255,.04); }
.ntas-sidebar-lbl { font-size:10px; font-weight:700; color:var(--LT); text-transform:uppercase; letter-spacing:.5px; margin-bottom:7px; display:flex; align-items:center; gap:5px; }

/* View mode row */
.ntas-view-mode-row { display:flex; gap:4px; }
.ntas-view-mode-btn { flex:1; text-align:center; justify-content:center; font-size:11px; }

/* Pin button */
.ntas-pin-btn-modal { width:100%; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.04); border:1px solid var(--BD); border-radius:8px; padding:8px 12px; color:var(--MT); font-size:12px; font-family:inherit; cursor:pointer; transition:all .15s; }
.ntas-pin-btn-modal:hover { background:rgba(168,85,247,.1); border-color:rgba(168,85,247,.3); color:#a855f7; }
.ntas-pin-btn-modal.pinned { background:rgba(168,85,247,.12); border-color:rgba(168,85,247,.35); color:#a855f7; }
.ntas-pin-btn-modal i { font-size:13px; }

/* Color grid */
.ntas-color-grid { display:flex; flex-wrap:wrap; gap:5px; }
.ntas-color-dot { width:22px; height:22px; border-radius:50%; cursor:pointer; border:2.5px solid transparent; transition:all .15s; flex-shrink:0; }
.ntas-color-dot:hover { transform:scale(1.2); }
.ntas-color-dot.selected { border-color:rgba(255,255,255,.8); transform:scale(1.15); box-shadow:0 0 0 2px rgba(255,255,255,.2); }

/* Icon preview */
.ntas-icon-preview { width:34px; height:34px; border-radius:8px; background:rgba(14,165,233,.15); border:1.5px solid rgba(14,165,233,.3); display:flex; align-items:center; justify-content:center; font-size:16px; cursor:pointer; transition:all .15s; }
.ntas-icon-preview:hover { background:rgba(14,165,233,.28); }

/* Tags */
.ntas-tags-wrap { display:flex; flex-wrap:wrap; gap:4px; margin-bottom:6px; min-height:10px; }
.ntas-tag-chip { display:inline-flex; align-items:center; gap:4px; background:rgba(14,165,233,.1); border:1px solid rgba(14,165,233,.25); color:var(--A); padding:2px 8px; border-radius:20px; font-size:11px; font-weight:600; }
.ntas-tag-chip button { background:none; border:none; color:inherit; cursor:pointer; padding:0; font-size:10px; line-height:1; opacity:.7; }
.ntas-tag-chip button:hover { opacity:1; }
.ntas-tag-inp { font-size:12px; padding:5px 9px; }

/* Stats grid */
.ntas-stats-grid { display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.ntas-stat-box { background:rgba(255,255,255,.04); border:1px solid var(--BD); border-radius:7px; padding:7px 9px; text-align:center; }
.ntas-stat-box span { display:block; font-size:16px; font-weight:800; color:var(--T); line-height:1.2; }
.ntas-stat-box small { font-size:9px; color:var(--LT); text-transform:uppercase; letter-spacing:.4px; }

/* Quick actions */
.ntas-quick-actions { display:flex; flex-direction:column; gap:3px; }
.ntas-qa-btn { display:flex; align-items:center; gap:7px; background:rgba(255,255,255,.04); border:1px solid transparent; border-radius:7px; padding:6px 10px; color:var(--MT); font-size:11.5px; font-family:inherit; cursor:pointer; transition:all .12s; text-align:left; width:100%; }
.ntas-qa-btn:hover { background:rgba(255,255,255,.07); border-color:var(--BD); color:var(--T); }
.ntas-qa-btn.active { background:rgba(14,165,233,.1); border-color:rgba(14,165,233,.25); color:var(--A); }
.ntas-qa-btn i { width:12px; text-align:center; flex-shrink:0; font-size:11px; }

/* Share */
.ntas-share-link-box { display:flex; gap:6px; align-items:center; }
.ntas-share-link-box .fc { flex:1; font-size:11px; padding:6px 10px; }
.ntas-share-copy-btn { background:rgba(14,165,233,.12); border:1px solid rgba(14,165,233,.25); color:var(--A); padding:6px 10px; border-radius:7px; cursor:pointer; font-size:13px; transition:all .15s; flex-shrink:0; }
.ntas-share-copy-btn:hover { background:rgba(14,165,233,.25); }
.ntas-vis-grid { display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.ntas-vis-btn { padding:7px 8px; border-radius:8px; cursor:pointer; font-size:11px; font-weight:600; display:flex; align-items:center; justify-content:center; gap:5px; transition:all .15s; font-family:inherit; background:rgba(255,255,255,.04); border:1px solid var(--BD); color:var(--MT); }
.ntas-vis-btn:hover { background:rgba(255,255,255,.08); color:var(--T); }
.ntas-vis-btn.active { background:rgba(14,165,233,.12); border-color:rgba(14,165,233,.35); color:var(--A); }
.ntas-vis-status { font-size:12px; color:var(--MT); display:flex; align-items:center; gap:7px; background:rgba(255,255,255,.04); border:1px solid var(--BD); border-radius:8px; padding:8px 11px; }

/* Footer */
.ntas-footer { display:flex; align-items:center; padding:10px 16px; border-top:1px solid rgba(255,255,255,.07); background:rgba(255,255,255,.015); flex-shrink:0; gap:8px; }

/* AI result */
.ntas-ai-result { flex-shrink:0; border-top:1px solid rgba(168,85,247,.2); background:rgba(168,85,247,.05); }
.ntas-ai-result-head { display:flex; align-items:center; gap:8px; padding:9px 14px; border-bottom:1px solid rgba(168,85,247,.15); font-size:12px; font-weight:700; color:#c084fc; }
.ntas-ai-result-text { padding:12px 16px; font-size:13px; color:var(--MT); line-height:1.72; max-height:180px; overflow-y:auto; white-space:pre-wrap; }
.ntas-ai-result-text::-webkit-scrollbar { width:4px; }
.ntas-ai-result-text::-webkit-scrollbar-thumb { background:rgba(168,85,247,.3); border-radius:2px; }

/* ═══════════════════════════════════════════════════════════════════════════
   MODO FONTE HTML v3.1.0 — Editor de código-fonte da nota
   ═══════════════════════════════════════════════════════════════════════════ */

/* Botão </>  */
.ntas-fb-source {
  color:#f59e0b !important;
  font-weight:700;
  border:1px solid rgba(245,158,11,.25) !important;
  background:rgba(245,158,11,.06) !important;
}
.ntas-fb-source:hover {
  background:rgba(245,158,11,.14) !important;
  border-color:rgba(245,158,11,.4) !important;
}
.ntas-fb-source.active-fmt {
  background:rgba(245,158,11,.18) !important;
  border-color:rgba(245,158,11,.5) !important;
  box-shadow:0 0 0 2px rgba(245,158,11,.15);
}

/* Painel de fonte — ocupa todo o espaço do editor */
.ntas-source-pane {
  flex:1;
  display:flex;
  flex-direction:column;
  min-height:0;
  background:#080816;
  animation:ntasFadeIn .18s ease;
}

/* Header do source */
.ntas-source-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:8px 12px;
  background:rgba(245,158,11,.06);
  border-bottom:1px solid rgba(245,158,11,.2);
  flex-shrink:0;
  flex-wrap:wrap;
  gap:6px;
}
.ntas-source-header-left {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:700;
  color:#f59e0b;
}
.ntas-source-badge {
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
  background:rgba(245,158,11,.15);
  border:1px solid rgba(245,158,11,.35);
  color:#f59e0b;
  padding:1px 6px;
  border-radius:4px;
}
.ntas-source-header-right {
  display:flex;
  align-items:center;
  gap:5px;
}
.ntas-source-action-btn {
  display:flex;
  align-items:center;
  gap:5px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  color:var(--MT);
  padding:5px 10px;
  border-radius:7px;
  cursor:pointer;
  font-size:11.5px;
  font-family:inherit;
  transition:all .14s;
  white-space:nowrap;
}
.ntas-source-action-btn:hover {
  background:rgba(255,255,255,.1);
  color:var(--T);
}
.ntas-source-apply-btn {
  background:rgba(34,197,94,.12) !important;
  border-color:rgba(34,197,94,.3) !important;
  color:#22c55e !important;
  font-weight:700;
}
.ntas-source-apply-btn:hover {
  background:rgba(34,197,94,.22) !important;
  border-color:rgba(34,197,94,.5) !important;
}

/* Wrap com números de linha */
.ntas-source-nums-wrap {
  display:flex;
  flex:1;
  overflow:hidden;
  position:relative;
}

/* Coluna de números */
.ntas-source-nums {
  width:42px;
  flex-shrink:0;
  padding:14px 0;
  background:#06060f;
  border-right:1px solid rgba(255,255,255,.06);
  overflow:hidden;
  text-align:right;
  user-select:none;
  pointer-events:none;
}
.ntas-source-nums div {
  height:1.65em;
  line-height:1.65;
  padding-right:8px;
  font-size:12px;
  font-family:'SF Mono','Fira Code','Consolas',monospace;
  color:rgba(255,255,255,.2);
}

/* O textarea de código-fonte */
.ntas-source-textarea {
  flex:1;
  width:100%;
  background:#080816;
  border:none;
  outline:none;
  color:#c9d1d9;
  font-family:'SF Mono','Fira Code','Fira Mono','Cascadia Code','JetBrains Mono','Consolas',monospace;
  font-size:13px;
  line-height:1.65;
  padding:14px 16px;
  resize:none;
  tab-size:2;
  white-space:pre;
  overflow-wrap:normal;
  overflow-x:auto;
  min-height:0;
}
.ntas-source-textarea::placeholder {
  color:rgba(255,255,255,.2);
  font-style:italic;
}
.ntas-source-textarea:focus {
  outline:none;
}
/* Seleção com cor diferente */
.ntas-source-textarea::selection {
  background:rgba(245,158,11,.25);
  color:inherit;
}

/* Footer do source */
.ntas-source-footer {
  display:flex;
  align-items:center;
  gap:14px;
  padding:5px 12px;
  background:rgba(255,255,255,.015);
  border-top:1px solid rgba(255,255,255,.05);
  font-size:11px;
  color:var(--LT);
  flex-shrink:0;
  flex-wrap:wrap;
}

/* ═══════════════════════════════════════════════════════════════════════════
   TOOLBAR DE IMAGEM + RESIZE v3.1.0
   ═══════════════════════════════════════════════════════════════════════════ */

/* Toolbar flutuante */
.ntas-img-toolbar {
  position:absolute;
  display:none;
  align-items:center;
  gap:2px;
  background:#111124;
  border:1px solid rgba(255,255,255,.15);
  border-radius:10px;
  padding:4px 6px;
  box-shadow:0 8px 28px rgba(0,0,0,.6);
  z-index:500;
  flex-wrap:nowrap;
  white-space:nowrap;
  animation:ntasFadeIn .12s ease;
  pointer-events:auto;
}

.ntas-img-tb-group {
  display:flex;
  align-items:center;
  gap:2px;
}

.ntas-img-toolbar button {
  background:none;
  border:1px solid transparent;
  color:var(--MT);
  padding:4px 8px;
  border-radius:6px;
  cursor:pointer;
  font-size:11.5px;
  font-family:inherit;
  font-weight:600;
  transition:all .12s;
  white-space:nowrap;
}
.ntas-img-toolbar button:hover {
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.15);
  color:var(--T);
}
.ntas-img-toolbar button i { font-size:11px; }

.ntas-img-tb-sep {
  width:1px;
  height:20px;
  background:rgba(255,255,255,.1);
  margin:0 3px;
  flex-shrink:0;
}

/* Input de largura customizada */
.ntas-img-tb-custom input {
  width:54px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:5px;
  color:var(--T);
  font-size:11.5px;
  font-family:inherit;
  padding:3px 6px;
  outline:none;
  text-align:center;
  -moz-appearance:textfield;
}
.ntas-img-tb-custom input::-webkit-outer-spin-button,
.ntas-img-tb-custom input::-webkit-inner-spin-button { -webkit-appearance:none; }
.ntas-img-tb-custom input:focus { border-color:var(--A); }
.ntas-img-tb-custom button {
  background:rgba(14,165,233,.12) !important;
  border-color:rgba(14,165,233,.25) !important;
  color:var(--A) !important;
}

/* Botão de alt */
.ntas-img-tb-alt {
  color:#a855f7 !important;
}
.ntas-img-tb-alt:hover {
  background:rgba(168,85,247,.12) !important;
  border-color:rgba(168,85,247,.25) !important;
}

/* Botão de deletar */
.ntas-img-tb-del {
  color:#ef4444 !important;
}
.ntas-img-tb-del:hover {
  background:rgba(239,68,68,.12) !important;
  border-color:rgba(239,68,68,.25) !important;
}

/* Imagem selecionada no editor */
.ntas-wysiwyg img.ntas-img-selected {
  outline:2px solid var(--A);
  outline-offset:2px;
  border-radius:2px;
  cursor:default;
}

/* Handle de resize no canto inferior-direito */
.ntas-wysiwyg img {
  position:relative;
  cursor:pointer;
  transition:outline .1s;
}
.ntas-wysiwyg img.ntas-img-selected::after {
  content:'';
  position:absolute;
  bottom:0;
  right:0;
  width:14px;
  height:14px;
  background:var(--A);
  border-radius:2px 0 4px 0;
  cursor:se-resize;
}

/* Custom AI overlay */
.ntas-ai-custom-overlay { position:fixed; inset:0; background:rgba(0,0,0,.6); backdrop-filter:blur(6px); display:flex; align-items:center; justify-content:center; z-index:10000; padding:20px; }
.ntas-ai-custom-modal { background:var(--BG2,#0e0e1d); border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:22px; width:100%; max-width:500px; box-shadow:0 24px 60px rgba(0,0,0,.5); }
.ntas-ai-custom-modal h3 { font-size:15px; font-weight:700; color:var(--T); margin:0 0 10px; display:flex; align-items:center; gap:8px; }
.ntas-ai-custom-textarea { width:100%; background:rgba(255,255,255,.05); border:1px solid var(--BD); border-radius:10px; padding:11px 13px; color:var(--T); font-size:13px; font-family:inherit; resize:vertical; outline:none; margin:10px 0; transition:border-color .15s; box-sizing:border-box; }
.ntas-ai-custom-textarea:focus { border-color:var(--A); }
.ntas-ai-custom-footer { display:flex; justify-content:flex-end; gap:8px; margin-top:4px; }


/* ══════════════════════════════════════════════════════════════════════════════
   UI RESPONSIVA iOS — badges, drawers, notas e controles compactos
══════════════════════════════════════════════════════════════════════════════ */
:root{
  --ios-glass:rgba(19,24,39,.82);
  --ios-panel:rgba(15,23,42,.96);
  --ios-line:rgba(148,163,184,.18);
  --ios-radius:16px;
}
body{ -webkit-tap-highlight-color:transparent; }
button,a,.hm-bkp-btn,.hm-refresh-btn,.hm-vm-btn{ -webkit-tap-highlight-color:transparent; }
button:active,.hm-bkp-btn:active,.hm-refresh-btn:active,.hm-vm-btn:active,.tb-main-nav-item:active,.sb-mobile-nav-item:active{transform:scale(.97);}

/* Header: navegação com contadores compactos */
.tb-main-nav-item{overflow:visible;}
.tb-nav-badge,.tb-menu-badge{
  display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 4px;border-radius:99px;
  background:color-mix(in srgb,var(--A) 88%,#0f172a);color:#fff;border:1px solid rgba(255,255,255,.18);
  font-size:8px;font-weight:800;line-height:1;box-shadow:0 2px 7px rgba(0,0,0,.22);
}
.tb-main-nav-item .tb-nav-badge{position:absolute;top:4px;right:5px;}
.tb-user-menu-item{width:100%;display:flex;align-items:center;gap:9px;padding:8px 10px;border:none;border-radius:7px;background:transparent;color:var(--T);font:inherit;font-size:12px;text-align:left;cursor:pointer;}
.tb-user-menu-item:hover{background:var(--CARD-H);}
.tb-user-menu-item i{width:15px;color:var(--A);}
.tb-user-menu-item span{flex:1;}
.tb-user-menu-item .tb-menu-badge{background:#ef4444;border-color:rgba(255,255,255,.08);}
/* Drawer lateral mobile */
.sb-mobile-main-nav{display:none;}

body.ui-modal-open{overflow:hidden;}

/* Rodapé: barra iOS com ações recolhíveis */
.footer-status-bar{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.footer-kpi-btn{min-width:34px;}
.footer-kpi-btn span,.footer-server-kpi span{font-size:10px;}
.footer-kpi-more{display:none;position:relative;flex-shrink:0;}
.footer-kpi-more-toggle{width:32px;height:32px;border:1px solid var(--ios-line);border-radius:9px;background:rgba(255,255,255,.05);color:var(--MT);cursor:pointer;}
.footer-kpi-more-panel{display:none;position:absolute;right:0;bottom:42px;width:min(250px,calc(100vw - 18px));padding:8px;border:1px solid var(--ios-line);border-radius:15px;background:var(--ios-panel);box-shadow:0 15px 45px rgba(0,0,0,.5);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.footer-kpi-more-panel.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;animation:iosPop .18s ease-out;}
.footer-kpi-more-panel .tb-kpi-btn{width:100%;height:42px;background:rgba(255,255,255,.04);border:1px solid var(--ios-line);border-radius:9px;}
@keyframes iosPop{from{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}

/* Home: busca fixada e ações secundárias em janela */
.hm-action-mobile-toggle{display:none;width:30px;height:30px;align-items:center;justify-content:center;flex:0 0 30px;padding:0;border:1px solid var(--BD);border-radius:8px;background:rgba(14,165,233,.1);color:var(--A);cursor:pointer;}
.hm-action-more-panel{display:contents;}

@media (max-width:768px){
  #topbar{height:58px;min-height:58px;padding:0 9px;gap:5px;overflow:visible;background:rgba(9,9,21,.9);}
  .tb-main-nav{display:none;}
  .tb-header-actions{gap:5px!important;}
  #tb-user-dropdown{position:fixed!important;top:64px!important;right:9px!important;width:min(245px,calc(100vw - 18px))!important;background:rgba(15,23,42,.98)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
  #sidebar{left:-100%;width:min(320px,88vw);max-width:88vw;border-right:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(15,23,42,.99),rgba(9,9,21,.99));}
  #sidebar.mob-open{left:0;}
  #sidebar .sb-brand{padding:15px 16px 13px;}
  #sidebar .sb-collapse-btn{margin-left:auto;width:32px;height:32px;border:1px solid var(--ios-line);border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.05);}
  #sidebar .sb-section-lbl{padding-inline:16px;}
  .sb-mobile-main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 12px 12px;border-bottom:1px solid var(--ios-line);}
  .sb-mobile-nav-item{display:flex;align-items:center;gap:8px;min-height:42px;padding:9px 10px;border:1px solid rgba(148,163,184,.12);border-radius:11px;background:rgba(255,255,255,.035);color:var(--MT);font-size:12px;font-weight:600;text-decoration:none;transition:background .16s,border-color .16s,color .16s;}
  .sb-mobile-nav-item i{width:16px;color:var(--A);text-align:center;}
  .sb-mobile-nav-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .sb-mobile-nav-item b{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:rgba(14,165,233,.2);color:#7dd3fc;font-size:9px;}
  .sb-mobile-nav-item.active,.sb-mobile-nav-item:hover{background:rgba(14,165,233,.13);border-color:rgba(14,165,233,.38);color:#e0f2fe;}
  #sidebar .sb-section-body{padding-inline:12px;}
  #sidebar .sb-root-header{min-height:42px;padding:10px 12px;border-radius:11px;background:rgba(255,255,255,.035);margin-bottom:5px;}
  #sidebar .sb-server-footer{margin-inline:12px;width:calc(100% - 24px);}
  #sb-overlay.active{display:block;}

  #content{padding:0 10px calc(98px + env(safe-area-inset-bottom)) 10px;height:calc(100dvh - 58px);min-height:0;overflow:hidden;}
  .hm-fixed-area{padding:8px 0 9px;position:relative;z-index:4;background:linear-gradient(180deg,var(--BG) 88%,transparent);}
  .hm-info-bar{flex-wrap:nowrap;overflow-x:auto;padding:1px 1px 5px;scrollbar-width:none;}
  .hm-info-bar::-webkit-scrollbar{display:none;}
  .hm-chip{flex:0 0 auto;min-height:30px;padding:5px 9px;border-radius:10px;background:rgba(255,255,255,.045);}
  .hm-chip-lbl{display:none;}
  .hm-chip-sep{display:none;}
  .hm-chip-pill{flex:0 0 auto;min-height:27px;padding-inline:8px;}
  .hm-actionbar{position:relative;display:flex;flex-wrap:nowrap;gap:5px;padding:6px;border-radius:14px;background:rgba(15,23,42,.78);border-color:rgba(148,163,184,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:visible;}
  .hm-search-wrap{min-width:0;flex:1 1 auto;}
  .hm-search-wrap input{height:32px;border-radius:10px;font-size:12px;padding-top:7px;padding-bottom:7px;}
  .hm-search-submit{width:32px;height:32px;justify-content:center;padding:0!important;border-radius:10px;}
  .hm-search-label{display:none;}
  .hm-action-mobile-toggle{display:inline-flex;}
  .hm-action-more-panel{display:none;position:absolute;top:calc(100% + 8px);right:0;left:0;z-index:90;padding:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid rgba(148,163,184,.2);border-radius:15px;background:rgba(15,23,42,.98);box-shadow:0 18px 50px rgba(0,0,0,.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
  .hm-action-more-panel.open{display:grid;animation:iosPop .18s ease-out;}
  .hm-action-more-panel .hm-fc{width:100%!important;height:32px;}
  .hm-action-more-panel .hm-sep{display:none;}
  .hm-action-more-panel .hm-view-mode-wrap{grid-column:1/-1;justify-content:center;height:32px;}
  .hm-action-more-panel .hm-refresh-btn{width:100%;height:32px;justify-content:center;border-radius:9px;}
  .hm-action-more-panel .hm-bkp-btn{width:100%;height:32px;justify-content:center;overflow:hidden;text-overflow:ellipsis;}
  .hm-scroll-area{padding:7px 1px 14px;min-height:0;overscroll-behavior:contain;}
  .hm-grid.view-cards-md,.hm-grid.view-cards-lg{grid-template-columns:1fr!important;}
  .hm-card{border-radius:14px;}

  .footer-status-bar{left:0!important;right:0!important;bottom:0;min-height:58px;height:auto;padding:6px 9px calc(6px + env(safe-area-inset-bottom));gap:6px;border-radius:17px 17px 0 0;overflow:visible;}
  .footer-meta{display:none!important;}
  .footer-ticker-wrap{display:block;flex:1;min-width:0!important;height:28px;padding:0 7px!important;border:1px solid rgba(148,163,184,.13);border-radius:9px;background:rgba(255,255,255,.035);}
  .footer-ticker-wrap #footer-ticker{height:28px;animation-duration:36s;}
  .footer-kpi-actions{display:none!important;}
  .footer-server-wrap{display:none!important;}
  .footer-kpi-more{display:block;}
  .footer-kpi-more-toggle{display:grid;place-items:center;}
}
@media (min-width:769px){
  .footer-kpi-more{display:none!important;}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;}}

/* ── Componentes news.css originais ────────────────────────────────────── */
/* ═══════════════════════════════════════════════════════════════════════════
   news.css — CSS unificado para admin/ e domini/
   Projeto: 99BKP | Versão: 1.0
   Todas as classes são independentes e autocontidas.
   ════════════════════════════════════════════════════════════════════════ */

/* ── Reset local ─────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* ── Layout principal ─────────────────────────────────────────────────────── */
.n-page { display:flex; flex-direction:column; min-height:100vh; background:var(--BG,#0a0a18); color:var(--T,#e2e8f0); font-family:'Outfit',sans-serif; }
.n-content { flex:1; padding:18px 20px; max-width:1600px; width:100%; margin:0 auto; }
.n-content-full { flex: 1;
    width: 100%;
    PADDING: 10px;
    MARGIN-TOP: 90px; }

/* ── Cabeçalho de página ─────────────────────────────────────────────────── */
.n-page-header { display:flex; align-items:center; gap:12px; margin-bottom:20px; flex-wrap:wrap; }
.n-page-icon { width:42px; height:42px; border-radius:12px; background:rgba(14,165,233,.15); display:flex; align-items:center; justify-content:center; font-size:18px; color:var(--A,#0ea5e9); flex-shrink:0; }
.n-page-title { font-size:20px; font-weight:800; color:var(--T,#e2e8f0); line-height:1.2; }
.n-page-subtitle { font-size:12px; color:var(--MT,#94a3b8); margin-top:2px; }
.n-page-actions { margin-left:auto; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }

/* ── Cards ───────────────────────────────────────────────────────────────── */
.n-card { background:var(--CARD,rgba(255,255,255,.03)); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:var(--R,10px); overflow:hidden; }
.n-card-head { display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--BD,rgba(255,255,255,.08)); }
.n-card-title { font-size:13px; font-weight:700; color:var(--T,#e2e8f0); flex:1; }
.n-card-body { padding:16px; }
.n-card-foot { padding:12px 16px; border-top:1px solid var(--BD,rgba(255,255,255,.08)); display:flex; align-items:center; gap:8px; }

/* ── Grid de cards ───────────────────────────────────────────────────────── */
.n-grid { display:grid; gap:16px; }
.n-grid-2 { grid-template-columns:repeat(2,1fr); }
.n-grid-3 { grid-template-columns:repeat(3,1fr); }
.n-grid-4 { grid-template-columns:repeat(4,1fr); }
.n-grid-auto { grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); }

/* ── KPI / Stat cards ────────────────────────────────────────────────────── */
.n-stat { background:var(--CARD,rgba(255,255,255,.03)); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:var(--R,10px); padding:16px; display:flex; align-items:center; gap:14px; transition:border-color .2s; }
.n-stat:hover { border-color:var(--A,#0ea5e9); }
.n-stat-icon { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0; }
.n-stat-info { min-width:0; flex:1; }
.n-stat-val { font-size:26px; font-weight:800; color:var(--T,#e2e8f0); line-height:1; }
.n-stat-lbl { font-size:11px; color:var(--MT,#94a3b8); margin-top:3px; font-weight:500; }
.n-stat-change { font-size:10px; margin-top:4px; font-weight:600; }
.n-stat-change.up { color:#22c55e; }
.n-stat-change.dn { color:#ef4444; }

/* ── Cores de status ─────────────────────────────────────────────────────── */
.n-c-blue   { color:#0ea5e9; }
.n-c-green  { color:#22c55e; }
.n-c-amber  { color:#f59e0b; }
.n-c-red    { color:#ef4444; }
.n-c-purple { color:#a855f7; }
.n-c-pink   { color:#ec4899; }
.n-c-cyan   { color:#06b6d4; }
.n-bg-blue   { background:rgba(14,165,233,.12); }
.n-bg-green  { background:rgba(34,197,94,.12); }
.n-bg-amber  { background:rgba(245,158,11,.12); }
.n-bg-red    { background:rgba(239,68,68,.12); }
.n-bg-purple { background:rgba(168,85,247,.12); }
.n-bg-pink   { background:rgba(236,72,153,.12); }
.n-bg-cyan   { background:rgba(6,182,212,.12); }

/* ── Badges ──────────────────────────────────────────────────────────────── */
.n-badge { display:inline-flex; align-items:center; gap:4px; padding:2px 8px; border-radius:99px; font-size:10px; font-weight:700; }
.n-badge-blue   { background:rgba(14,165,233,.15); color:#0ea5e9; border:1px solid rgba(14,165,233,.25); }
.n-badge-green  { background:rgba(34,197,94,.15);  color:#22c55e; border:1px solid rgba(34,197,94,.25); }
.n-badge-amber  { background:rgba(245,158,11,.15); color:#f59e0b; border:1px solid rgba(245,158,11,.25); }
.n-badge-red    { background:rgba(239,68,68,.15);  color:#ef4444; border:1px solid rgba(239,68,68,.25); }
.n-badge-purple { background:rgba(168,85,247,.15); color:#a855f7; border:1px solid rgba(168,85,247,.25); }
.n-badge-gray   { background:rgba(148,163,184,.1); color:#94a3b8; border:1px solid rgba(148,163,184,.2); }

/* ── Botões ──────────────────────────────────────────────────────────────── */
.n-btn { display:inline-flex; align-items:center; gap:7px; padding:8px 16px; border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; border:none; text-decoration:none; transition:all .15s; font-family:inherit; white-space:nowrap; }
.n-btn-primary { background:var(--A,#0ea5e9); color:#fff; }
.n-btn-primary:hover { opacity:.88; }
.n-btn-sec { background:rgba(255,255,255,.06); color:var(--T,#e2e8f0); border:1px solid var(--BD,rgba(255,255,255,.08)); }
.n-btn-sec:hover { background:rgba(255,255,255,.1); }
.n-btn-danger { background:rgba(239,68,68,.15); color:#ef4444; border:1px solid rgba(239,68,68,.25); }
.n-btn-danger:hover { background:rgba(239,68,68,.25); }
.n-btn-success { background:rgba(34,197,94,.15); color:#22c55e; border:1px solid rgba(34,197,94,.25); }
.n-btn-success:hover { background:rgba(34,197,94,.25); }
.n-btn-sm { padding:5px 10px; font-size:11px; }
.n-btn-lg { padding:11px 22px; font-size:14px; }
.n-btn-ic { width:34px; height:34px; padding:0; justify-content:center; border-radius:8px; background:rgba(255,255,255,.06); color:var(--MT,#94a3b8); border:1px solid var(--BD,rgba(255,255,255,.08)); }
.n-btn-ic:hover { color:var(--T,#e2e8f0); background:rgba(255,255,255,.1); }

/* ── Tabela ──────────────────────────────────────────────────────────────── */
.n-table-wrap { overflow-x:auto; border-radius:var(--R,10px); border:1px solid var(--BD,rgba(255,255,255,.08)); }
.n-table { width:100%; border-collapse:collapse; font-size:12px; }
.n-table thead th { padding:10px 14px; text-align:left; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--MT,#94a3b8); border-bottom:1px solid var(--BD,rgba(255,255,255,.08)); background:rgba(255,255,255,.02); white-space:nowrap; }
.n-table tbody tr { border-bottom:1px solid rgba(255,255,255,.04); transition:background .12s; }
.n-table tbody tr:last-child { border-bottom:none; }
.n-table tbody tr:hover { background:rgba(255,255,255,.03); }
.n-table tbody td { padding:10px 14px; color:var(--T,#e2e8f0); vertical-align:middle; }
.n-table-actions { display:flex; align-items:center; gap:5px; }

/* ── Formulários ─────────────────────────────────────────────────────────── */
.n-form-group { margin-bottom:14px; }
.n-label { display:block; font-size:11px; font-weight:700; color:var(--MT,#94a3b8); margin-bottom:5px; text-transform:uppercase; letter-spacing:.05em; }
.n-input, .n-select, .n-textarea { width:100%; background:var(--BG,#0a0a18); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:8px; color:var(--T,#e2e8f0); font-size:12px; padding:9px 12px; outline:none; font-family:inherit; transition:border-color .15s; }
.n-input:focus, .n-select:focus, .n-textarea:focus { border-color:var(--A,#0ea5e9); }
.n-textarea { resize:vertical; min-height:80px; }
.n-select { cursor:pointer; }
.n-input-hint { font-size:10px; color:var(--LT,#64748b); margin-top:4px; }

/* ── Tabs ────────────────────────────────────────────────────────────────── */
.n-tabs { display:flex; gap:2px; border-bottom:1px solid var(--BD,rgba(255,255,255,.08)); margin-bottom:18px; overflow-x:auto; scrollbar-width:none; }
.n-tab { display:flex; align-items:center; gap:6px; padding:9px 16px; font-size:12px; font-weight:600; color:var(--MT,#94a3b8); cursor:pointer; border:none; background:none; border-bottom:2px solid transparent; white-space:nowrap; transition:all .15s; font-family:inherit; }
.n-tab:hover { color:var(--T,#e2e8f0); }
.n-tab.active { color:var(--A,#0ea5e9); border-bottom-color:var(--A,#0ea5e9); }
.n-tab-pane { display:none; }
.n-tab-pane.active { display:block; }

/* ── Seção / Bloco ───────────────────────────────────────────────────────── */
.n-section { margin-bottom:24px; }
.n-section-title { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; color:var(--LT,#64748b); margin-bottom:12px; display:flex; align-items:center; gap:6px; }
.n-divider { height:1px; background:var(--BD,rgba(255,255,255,.08)); margin:16px 0; }

/* ── Alert / Info boxes ──────────────────────────────────────────────────── */
.n-alert { display:flex; align-items:flex-start; gap:10px; padding:12px 14px; border-radius:9px; font-size:12px; line-height:1.55; border:1px solid; }
.n-alert-info   { background:rgba(14,165,233,.08);  color:#7dd3fc; border-color:rgba(14,165,233,.2); }
.n-alert-success{ background:rgba(34,197,94,.08);   color:#86efac; border-color:rgba(34,197,94,.2); }
.n-alert-warn   { background:rgba(245,158,11,.08);  color:#fcd34d; border-color:rgba(245,158,11,.2); }
.n-alert-danger { background:rgba(239,68,68,.08);   color:#fca5a5; border-color:rgba(239,68,68,.2); }

/* ── Gráfico / Chart area ────────────────────────────────────────────────── */
.n-chart-wrap { position:relative; width:100%; }
.n-chart-toolbar { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-bottom:12px; }
.n-chart-legend { display:flex; align-items:center; gap:12px; flex-wrap:wrap; font-size:11px; color:var(--MT,#94a3b8); margin-top:10px; }
.n-legend-dot { width:10px; height:10px; border-radius:50%; flex-shrink:0; }

/* ── Progress / Barra ────────────────────────────────────────────────────── */
.n-progress { height:6px; border-radius:99px; background:rgba(148,163,184,.15); overflow:hidden; }
.n-progress-bar { height:100%; border-radius:inherit; background:var(--A,#0ea5e9); transition:width .4s ease; }

/* ── Empty state ─────────────────────────────────────────────────────────── */
.n-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:48px 20px; text-align:center; }
.n-empty-icon { font-size:42px; color:var(--BD,rgba(255,255,255,.08)); margin-bottom:14px; }
.n-empty-title { font-size:14px; font-weight:700; color:var(--MT,#94a3b8); margin-bottom:6px; }
.n-empty-sub { font-size:12px; color:var(--LT,#64748b); }

/* ── Loading / Spinner ───────────────────────────────────────────────────── */
.n-spinner { width:20px; height:20px; border:2px solid rgba(14,165,233,.2); border-top-color:var(--A,#0ea5e9); border-radius:50%; animation:n-spin .7s linear infinite; }
@keyframes n-spin { to { transform:rotate(360deg); } }
.n-loading { display:flex; align-items:center; justify-content:center; padding:32px; gap:10px; color:var(--MT,#94a3b8); font-size:12px; }

/* ── Tag / Chip ──────────────────────────────────────────────────────────── */
.n-chip { display:inline-flex; align-items:center; gap:5px; padding:3px 9px; border-radius:99px; font-size:10px; font-weight:600; background:rgba(255,255,255,.06); color:var(--MT,#94a3b8); border:1px solid var(--BD,rgba(255,255,255,.08)); }

/* ── Timeline / Log ──────────────────────────────────────────────────────── */
.n-timeline { display:flex; flex-direction:column; gap:0; }
.n-tl-item { display:flex; gap:12px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,.04); }
.n-tl-item:last-child { border-bottom:none; }
.n-tl-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; margin-top:5px; }
.n-tl-body { flex:1; min-width:0; }
.n-tl-title { font-size:12px; font-weight:600; color:var(--T,#e2e8f0); }
.n-tl-meta { font-size:10px; color:var(--LT,#64748b); margin-top:2px; }

/* ── Código / Terminal ───────────────────────────────────────────────────── */
.n-code { background:rgba(0,0,0,.3); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:8px; padding:12px 14px; font-family:'JetBrains Mono',monospace; font-size:12px; color:#7dd3fc; overflow-x:auto; }
.n-terminal { background:#000; border-radius:10px; padding:14px; font-family:'JetBrains Mono',monospace; font-size:12px; color:#22c55e; overflow:auto; min-height:120px; max-height:360px; }

/* ── Modal ───────────────────────────────────────────────────────────────── */
.n-modal-bg { display:none; position:fixed; inset:0; z-index:9000; background:rgba(0,0,0,.6); align-items:center; justify-content:center; padding:20px; }
.n-modal-bg.open { display:flex; }
.n-modal { background:#0d0d1e; border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:14px; width:100%; max-width:560px; max-height:90vh; display:flex; flex-direction:column; box-shadow:0 24px 64px rgba(0,0,0,.5); }
.n-modal-head { display:flex; align-items:center; gap:10px; padding:16px 18px; border-bottom:1px solid var(--BD,rgba(255,255,255,.08)); flex-shrink:0; }
.n-modal-title { font-size:14px; font-weight:700; flex:1; }
.n-modal-body { padding:18px; overflow-y:auto; flex:1; }
.n-modal-foot { padding:14px 18px; border-top:1px solid var(--BD,rgba(255,255,255,.08)); display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-shrink:0; }

/* ── Filtros / Toolbar ───────────────────────────────────────────────────── */
.n-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.n-search { display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.04); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:8px; padding:0 12px; flex:1; min-width:180px; max-width:340px; }
.n-search i { color:var(--LT,#64748b); font-size:13px; }
.n-search input { background:none; border:none; outline:none; color:var(--T,#e2e8f0); font-size:12px; width:100%; padding:8px 0; font-family:inherit; }

/* ── Agenda / Calendar ───────────────────────────────────────────────────── */
.n-cal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.n-cal-day { min-height:80px; background:var(--CARD,rgba(255,255,255,.03)); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:8px; padding:6px; }
.n-cal-day.today { border-color:var(--A,#0ea5e9); }
.n-cal-day-num { font-size:11px; font-weight:700; color:var(--MT,#94a3b8); margin-bottom:4px; }
.n-event { font-size:10px; padding:2px 6px; border-radius:4px; margin-bottom:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ── Chat / IA ───────────────────────────────────────────────────────────── */
.n-chat-wrap { display:flex; flex-direction:column; height:100%; }
.n-chat-msgs { flex:1; overflow-y:auto; padding:12px; display:flex; flex-direction:column; gap:10px; }
.n-msg { max-width:82%; border-radius:12px; padding:10px 14px; font-size:12.5px; line-height:1.6; word-break:break-word; }
.n-msg-user { align-self:flex-end; background:var(--A,#0ea5e9); color:#fff; border-bottom-right-radius:3px; }
.n-msg-ai { align-self:flex-start; background:rgba(255,255,255,.05); border:1px solid var(--BD,rgba(255,255,255,.08)); color:var(--T,#e2e8f0); border-bottom-left-radius:3px; }
.n-chat-input-row { display:flex; gap:8px; padding:10px 12px; border-top:1px solid var(--BD,rgba(255,255,255,.08)); align-items:flex-end; }
.n-chat-input { flex:1; background:rgba(255,255,255,.04); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:10px; color:var(--T,#e2e8f0); font-size:12px; padding:9px 12px; resize:none; max-height:120px; outline:none; font-family:inherit; transition:border-color .15s; }
.n-chat-input:focus { border-color:var(--A,#0ea5e9); }

/* ── Domínio / Root card ─────────────────────────────────────────────────── */
.n-domain-card { background:var(--CARD,rgba(255,255,255,.03)); border:1px solid var(--BD,rgba(255,255,255,.08)); border-radius:12px; padding:16px; display:flex; flex-direction:column; gap:10px; transition:border-color .2s, box-shadow .2s; cursor:pointer; }
.n-domain-card:hover { border-color:var(--A,#0ea5e9); box-shadow:0 4px 24px rgba(14,165,233,.1); }
.n-domain-card-head { display:flex; align-items:center; gap:12px; }
.n-domain-icon { width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.n-domain-info { flex:1; min-width:0; }
.n-domain-name { font-size:13px; font-weight:700; color:var(--T,#e2e8f0); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.n-domain-path { font-size:10px; color:var(--LT,#64748b); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.n-domain-stats { display:flex; gap:10px; flex-wrap:wrap; }
.n-domain-stat { display:flex; flex-direction:column; align-items:center; gap:2px; }
.n-domain-stat-val { font-size:15px; font-weight:800; color:var(--T,#e2e8f0); }
.n-domain-stat-lbl { font-size:9px; color:var(--LT,#64748b); text-transform:uppercase; letter-spacing:.05em; }
.n-domain-actions { display:flex; gap:6px; margin-top:4px; }

/* ── Responsividade ──────────────────────────────────────────────────────── */
@media (max-width:1024px) {
  .n-grid-4 { grid-template-columns:repeat(2,1fr); }
  .n-grid-3 { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:768px) {
  .n-content, .n-content-full { padding:12px 14px; }
  .n-grid-2, .n-grid-3, .n-grid-4 { grid-template-columns:1fr; }
  .n-page-actions { width:100%; }
  .n-stat { padding:12px; }
  .n-stat-val { font-size:20px; }
  .n-modal { max-height:95vh; }
  .n-cal-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:480px) {
  .n-page-header { gap:8px; }
  .n-page-title { font-size:16px; }
  .n-btn { padding:7px 12px; font-size:11px; }
  .n-tabs { gap:0; }
  .n-tab { padding:7px 10px; font-size:11px; }
}

/* ── Utilitários ─────────────────────────────────────────────────────────── */
.n-flex { display:flex; align-items:center; }
.n-gap-sm { gap:6px; }
.n-gap-md { gap:12px; }
.n-gap-lg { gap:20px; }
.n-ml-auto { margin-left:auto; }
.n-mt-sm { margin-top:8px; }
.n-mt-md { margin-top:16px; }
.n-mt-lg { margin-top:24px; }
.n-mb-sm { margin-bottom:8px; }
.n-mb-md { margin-bottom:16px; }
.n-mb-lg { margin-bottom:24px; }
.n-fw-700 { font-weight:700; }
.n-fw-800 { font-weight:800; }
.n-fs-xs { font-size:10px; }
.n-fs-sm { font-size:11px; }
.n-fs-md { font-size:13px; }
.n-truncate { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.n-hidden { display:none !important; }
.n-pointer { cursor:pointer; }



#content {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 70px);
    overflow: hidden;
    padding: 0 14px 14px 14px;
}

/* ── Área fixa ────────────────────────────────────────────────────────────── */
.hm-fixed-area {
    flex-shrink: 0;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--BD);
}

/* ── Info Bar compacta (stats + alertas em uma linha) ─────────────────────── */
.hm-info-bar {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}
.hm-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: 99px;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    color: var(--T);
    transition: all .15s;
    white-space: nowrap;
    font-family: 'Outfit', sans-serif;
}
.hm-chip:hover { border-color: var(--A); transform: translateY(-1px); box-shadow: 0 3px 12px rgba(0,0,0,.2); }
.hm-chip i { font-size: 10px; flex-shrink: 0; }
.hm-chip-val { font-weight: 800; font-size: 12px; }
.hm-chip-lbl { color: var(--MT); font-size: 10px; font-weight: 500; }
.hm-chip-disk { cursor: default; }
.hm-chip-disk:hover { transform: none; box-shadow: none; }
.hm-chip-disk-track { width: 36px; height: 4px; background: rgba(255,255,255,.08); border-radius: 99px; overflow: hidden; margin-left: 2px; }
.hm-chip-disk-fill { height: 100%; border-radius: 99px; transition: width .6s ease; }
.hm-chip-sep { width: 1px; height: 18px; background: var(--BD); flex-shrink: 0; margin: 0 1px; }
.hm-chip-pill {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 9px; border-radius: 99px;
    font-size: 10px; font-weight: 700; border: 1px solid;
}
.hm-chip-pill i { font-size: 9px; }
.hm-chip-pill.ok { background: rgba(34,197,94,.1);  color: #22c55e; border-color: rgba(34,197,94,.25);  }
.hm-chip-pill.wn { background: rgba(245,158,11,.1); color: #f59e0b; border-color: rgba(245,158,11,.25); }
.hm-chip-pill.er { background: rgba(239,68,68,.1);  color: #ef4444; border-color: rgba(239,68,68,.25);  }

/* ── Action Bar ──────────────────────────────────────────────────────────── */
.hm-actionbar {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    padding: 5px 8px;
    display: flex;
    gap: 5px;
    align-items: center;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
}
.hm-actionbar::-webkit-scrollbar { display: none; }
.hm-search-wrap { position: relative; flex: 1; min-width: 140px; }
.hm-search-wrap i.si { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); color: var(--LT); font-size: 12px; pointer-events: none; }
.hm-search-wrap input {
    width: 100%; padding: 6px 10px 6px 30px;
    background: var(--BG); border: 1px solid var(--BD); border-radius: var(--r2);
    color: var(--T); font-size: 12px; font-family: 'Outfit', sans-serif;
    transition: border-color .15s, box-shadow .15s;
}
.hm-search-wrap input:focus { outline: none; border-color: var(--A); box-shadow: 0 0 0 3px rgba(14,165,233,.12); }
.hm-search-wrap input::placeholder { color: var(--LT); }
.hm-sep { width: 1px; height: 24px; background: var(--BD); flex-shrink: 0; }
.hm-fc {
    padding: 5px 8px; background: var(--BG); border: 1px solid var(--BD); border-radius: var(--r2);
    color: var(--T); font-size: 11px; font-family: 'Outfit', sans-serif; cursor: pointer;
    height: 28px; transition: border-color .15s;
}
.hm-fc:focus { outline: none; border-color: var(--A); }
.hm-bkp-btn {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 5px 9px; border-radius: var(--r2); font-size: 11px; font-weight: 600;
    border: 1px solid var(--BD); background: var(--CARD); color: var(--MT);
    cursor: pointer; transition: all .15s; white-space: nowrap;
    text-decoration: none; font-family: 'Outfit', sans-serif; flex-shrink: 0; height: 28px;
}
.hm-bkp-btn:hover { border-color: var(--A); color: var(--T); background: var(--CARD-H); }
.hm-bkp-btn.primary { background: rgba(14,165,233,.12); border-color: rgba(14,165,233,.3); color: var(--A); }
.hm-bkp-btn.primary:hover { background: rgba(14,165,233,.22); border-color: var(--A); }
.hm-refresh-btn {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 5px 10px; border-radius: 99px; font-size: 11px; font-weight: 700;
    background: rgba(14,165,233,.12); color: var(--A);
    border: 1px solid rgba(14,165,233,.3); cursor: pointer; transition: all .15s;
    font-family: 'Outfit', sans-serif; flex-shrink: 0; height: 28px;
}
.hm-refresh-btn:hover { background: rgba(14,165,233,.22); transform: scale(.98); }
.hm-refresh-btn.spinning i { animation: hm-spin 1s linear infinite; }
@keyframes hm-spin { to { transform: rotate(360deg); } }

/* ── Modos de visualização ────────────────────────────────────────────────── */
.hm-view-mode-wrap {
    display: flex; align-items: center; gap: 1px;
    background: rgba(255,255,255,.04); border: 1px solid var(--BD);
    border-radius: 6px; padding: 2px; flex-shrink: 0;
}
.hm-vm-btn {
    width: 24px; height: 24px; border: none; background: none; border-radius: 4px;
    color: var(--LT); cursor: pointer; font-size: 10px;
    display: flex; align-items: center; justify-content: center; transition: all .15s;
}
.hm-vm-btn:hover { background: rgba(255,255,255,.08); color: var(--T); }
.hm-vm-btn.active { background: var(--A); color: #fff; }

/* ── Área rolável ────────────────────────────────────────────────────────── */
.hm-scroll-area { flex: 1; overflow-y: auto; padding: 10px 4px 16px 4px; scroll-behavior: smooth; }
.hm-scroll-area::-webkit-scrollbar { width: 5px; }
.hm-scroll-area::-webkit-scrollbar-track { background: var(--BG); border-radius: 99px; }
.hm-scroll-area::-webkit-scrollbar-thumb { background: var(--BD); border-radius: 99px; }
.hm-scroll-area::-webkit-scrollbar-thumb:hover { background: var(--A); }

/* ═══ ROOT CARDS ═════════════════════════════════════════════════════════════ */
.hm-grid {
    display: grid; gap: 10px;
    grid-template-columns: repeat(auto-fill, minmax(var(--hm-card-min, 250px), 1fr));
    transition: grid-template-columns .2s ease;
}
.hm-card {
    background: var(--CARD); border: 1px solid var(--BD); border-radius: 10px;
    display: flex; flex-direction: column; overflow: hidden;
    transition: transform .2s, border-color .2s, box-shadow .2s; position: relative;
}
.hm-card:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(0,0,0,.3); }
.hm-card.ok { border-left: 3px solid #22c55e; }
.hm-card.wn { border-left: 3px solid #f59e0b; }
.hm-card.er { border-left: 3px solid #ef4444; }
.hm-card.manutencao { border-left: 3px solid #a855f7; }
.hm-card.erro { border-left: 3px solid #f97316; }

/* ── Thumbnail ────────────────────────────────────────────────────────────── */
.hm-thumb { width: 100%; aspect-ratio: 16/9; background: #050510; position: relative; overflow: hidden; cursor: pointer; }
.hm-thumb img { width: 100%; object-fit: cover; transition: opacity .5s, transform .5s; display: block; }
.hm-thumb img.loaded { opacity: 1; }
.hm-thumb:hover img { transform: scale(1.05); }
.hm-shimmer {
    position: absolute; inset: 0;
    background: linear-gradient(90deg, #0a0a18 25%, #15152a 50%, #0a0a18 75%);
    background-size: 200% 100%; animation: hm-shimmer 1.8s infinite;
}
@keyframes hm-shimmer { 0%{background-position:200% 0} 100%{background-position:-200% 0} }
.hm-thumb-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,.1) 0%, rgba(0,0,0,.5) 40%, rgba(0,0,0,.85) 70%, rgba(0,0,0,.97) 100%);
    z-index: 1; pointer-events: none;
}
.hm-thumb-content {
    position: absolute; bottom: 0; left: 0; right: 0;
    padding: 10px 10px 8px; z-index: 2; pointer-events: none;
    display: flex; flex-direction: column;
}
.hm-thumb-id {
    font-size: 9px; font-weight: 800; color: rgba(255,255,255,.7);
    letter-spacing: .04em; margin-bottom: 3px; text-transform: uppercase;
    display: flex; align-items: center; gap: 4px;
}
.hm-thumb-title {
    font-size: 13px; font-weight: 800; color: #fff; margin-bottom: 2px;
    text-shadow: 0 1px 2px rgba(0,0,0,.4);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.hm-thumb-url {
    font-size: 9px; color: rgba(255,255,255,.6); font-family: 'JetBrains Mono', monospace;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.hm-card-btns { position: absolute; top: 6px; right: 6px; z-index: 4; display: flex; gap: 3px; pointer-events: auto; }
.hm-card-btn {
    width: 24px; height: 24px; border-radius: 5px;
    background: rgba(0,0,0,.72); backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.12); color: var(--MT);
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    font-size: 10px; transition: all .15s; text-decoration: none;
}
.hm-card-btn:hover { color: var(--A); border-color: var(--A); background: rgba(14,165,233,.2); }

/* ── Drag handle ──────────────────────────────────────────────────────────── */
.hm-drag-handle {
    position: absolute; top: 6px; left: 6px; z-index: 4;
    width: 20px; height: 20px; display: flex; align-items: center; justify-content: center;
    color: rgba(255,255,255,.3); cursor: grab;
    background: rgba(0,0,0,.5); border-radius: 4px; backdrop-filter: blur(6px);
    transition: color .15s;
}
.hm-drag-handle:hover { color: #fff; }
.hm-drag-handle:active { cursor: grabbing; }
.hm-drag-handle i { font-size: 10px; }

/* ── Card body ────────────────────────────────────────────────────────────── */
.hm-cb { padding: 0; display: flex; flex-direction: column; gap: 5px; }
.hm-card-header-row { display: flex; align-items: center; gap: 6px; padding: 5px 10px 0; pointer-events: all; }
.hm-favicon { width: 14px; height: 14px; border-radius: 3px; object-fit: contain; flex-shrink: 0; }
.hm-card-url-text {
    font-size: 9px; color: var(--LT); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    flex: 1; font-family: 'JetBrains Mono', monospace;
}
.hm-status-select {
    appearance: none; -webkit-appearance: none; font-weight: 700; cursor: pointer;
    flex-shrink: 0; text-align: center; outline: none; transition: all .15s;
    color-scheme: dark; pointer-events: all; padding: 3px 7px; border-radius: 4px;
    font-size: 10px; border: 1px solid var(--BD);
}
.hm-status-select:hover { opacity: .85; }
.hm-ss-ok         { color: #22c55e !important; border-color: rgba(34,197,94,.4)   !important; background: rgba(34,197,94,.1)   !important; }
.hm-ss-wn         { color: #f59e0b !important; border-color: rgba(245,158,11,.4)  !important; background: rgba(245,158,11,.1)  !important; }
.hm-ss-er         { color: #ef4444 !important; border-color: rgba(239,68,68,.4)   !important; background: rgba(239,68,68,.1)   !important; }
.hm-ss-manutencao { color: #a855f7 !important; border-color: rgba(168,85,247,.4)  !important; background: rgba(168,85,247,.1)  !important; }
.hm-ss-erro       { color: #f97316 !important; border-color: rgba(249,115,22,.4)  !important; background: rgba(249,115,22,.1)  !important; }
.hm-status-select option { background: #1a1a2e; color: #e2e8f0; font-weight: 600; }

/* ── Métricas ─────────────────────────────────────────────────────────────── */
.hm-cm {
    display: grid; grid-template-columns: 1fr 1fr 1fr;
    border: 1px solid var(--BD); border-radius: var(--r2); overflow: hidden; margin: 0 10px;
}
.hm-cm-cell { padding: 5px 7px; display: flex; flex-direction: column; gap: 1px; }
.hm-cm-cell + .hm-cm-cell { border-left: 1px solid var(--BD); }
.hm-cm-lbl { font-size: 8px; color: var(--LT); font-weight: 600; text-transform: uppercase; letter-spacing: .4px; display: flex; align-items: center; gap: 3px; }
.hm-cm-lbl i { font-size: 8px; }
.hm-cm-val { font-size: 11px; font-weight: 700; display: flex; align-items: center; gap: 3px; }
.hm-cm-val.ok { color: #22c55e; }
.hm-cm-val.wn { color: #f59e0b; }
.hm-cm-val.er { color: #ef4444; }
.hm-cm-val.na { color: var(--LT); }
.hm-cm-sub { font-size: 8px; color: var(--LT); line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ── Diagnostics ─────────────────────────────────────────────────────────── */
.hm-diag { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 4px; padding: 0 10px; }
.hm-diag-item {
    display: flex; flex-direction: column; gap: 1px;
    padding: 3px 6px; background: rgba(255,255,255,.02);
    border: 1px solid var(--BD); border-radius: 4px;
}
.hm-diag-lbl { font-size: 8px; color: var(--LT); font-weight: 600; }
.hm-diag-val { font-size: 10px; font-weight: 700; }
.hm-diag-val.good { color: #22c55e; }
.hm-diag-val.warn { color: #f59e0b; }
.hm-diag-val.bad  { color: #ef4444; }

/* ── Mini lista de backups ────────────────────────────────────────────────── */
.hm-bkp-list { padding: 0 10px; display: flex; flex-direction: column; gap: 3px; }
.hm-bkp-list-empty {
    display: flex; align-items: center; gap: 5px; padding: 5px 8px; font-size: 10px; color: var(--LT);
    background: rgba(255,255,255,.02); border-radius: 4px; border: 1px dashed var(--BD);
}
.hm-bkp-list-empty i { font-size: 9px; opacity: .5; }
.hm-bkp-row {
    display: flex; align-items: center; justify-content: space-between;
    padding: 4px 8px; border-radius: 4px;
    background: rgba(255,255,255,.02); border: 1px solid var(--BD); transition: border-color .12s;
}
.hm-bkp-row:hover { border-color: rgba(14,165,233,.3); }
.hm-bkp-row-info { display: flex; align-items: center; gap: 5px; min-width: 0; flex: 1; }
.hm-bkp-badge-new, .hm-bkp-badge-bd {
    display: inline-flex; align-items: center; gap: 3px;
    padding: 1px 5px; border-radius: 3px; font-size: 8px; font-weight: 700; flex-shrink: 0;
}
.hm-bkp-badge-new { background: rgba(34,197,94,.15); color: #22c55e; }
.hm-bkp-badge-bd  { background: rgba(255,255,255,.06); color: var(--MT); }
.hm-bkp-row-ago { font-size: 9px; color: var(--MT); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hm-bkp-row-size { font-size: 9px; color: var(--LT); font-weight: 600; flex-shrink: 0; }
.hm-bkp-row-btns { display: flex; gap: 2px; flex-shrink: 0; }
.hm-bkp-row-btn {
    width: 20px; height: 20px; border: 1px solid var(--BD); background: var(--BG);
    border-radius: 3px; color: var(--MT); cursor: pointer;
    display: flex; align-items: center; justify-content: center; font-size: 9px; transition: all .12s;
}
.hm-bkp-row-btn:hover { border-color: var(--A); color: var(--A); }
.hm-bkp-row-btn-restore:hover { border-color: #f59e0b; color: #f59e0b; }

/* ── Issues ──────────────────────────────────────────────────────────────── */
.hm-ci { display: flex; flex-direction: column; gap: 3px; padding: 0 10px 5px; }
.hm-issue {
    display: flex; align-items: flex-start; gap: 5px;
    font-size: 10px; padding: 4px 6px; border-radius: 4px; line-height: 1.4; border: 1px solid;
}
.hm-issue.er { background: rgba(239,68,68,.06); color: #ef4444; border-color: rgba(239,68,68,.15); }
.hm-issue.wn { background: rgba(245,158,11,.06); color: #f59e0b; border-color: rgba(245,158,11,.15); }
.hm-issue.ok { background: rgba(34,197,94,.06);  color: #22c55e; border-color: rgba(34,197,94,.15);  }
.hm-issue i  { margin-top: 1px; flex-shrink: 0; font-size: 9px; }

/* ── Rodapé do card ───────────────────────────────────────────────────────── */
.hm-cf {
    padding: 5px 10px; display: flex; gap: 4px; align-items: center; flex-wrap: wrap;
    border-top: 1px solid var(--BD); background: rgba(0,0,0,.06); margin-top: auto;
}
.hm-cf-btn {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 8px; border-radius: 4px; font-size: 10px; font-weight: 600;
    border: 1px solid var(--BD); background: transparent; color: var(--MT);
    cursor: pointer; transition: all .14s; text-decoration: none;
    font-family: 'Outfit', sans-serif; white-space: nowrap;
}
.hm-cf-btn:hover { border-color: var(--A); color: var(--T); background: rgba(255,255,255,.04); }
.hm-cf-btn.accent { background: rgba(14,165,233,.1); border-color: rgba(14,165,233,.25); color: var(--A); margin-left: auto; }
.hm-cf-btn.accent:hover { background: rgba(14,165,233,.2); border-color: var(--A); }
.hm-click-badge {
    display: inline-flex; align-items: center; gap: 2px;
    background: rgba(14,165,233,.2); color: var(--A);
    border: 1px solid rgba(14,165,233,.3); border-radius: 99px;
    font-size: 8px; font-weight: 700; padding: 1px 4px; flex-shrink: 0; white-space: nowrap;
}

/* ── Links inline ─────────────────────────────────────────────────────────── */
.hm-links-inline { display: flex; flex-direction: column; border-top: 1px solid var(--BD); padding: 2px 0; }
.hm-link-inline-item {
    padding: 4px 10px; border-bottom: 1px solid rgba(255,255,255,.04);
    display: flex; flex-direction: column; gap: 3px; transition: background .12s;
}
.hm-link-inline-item:hover { background: rgba(14,165,233,.04); }
.hm-link-inline-item:last-child { border-bottom: none; }
.hm-link-inline-main { display: flex; align-items: flex-start; gap: 6px; }
.hm-link-inline-fav { width: 14px; height: 14px; border-radius: 3px; object-fit: contain; flex-shrink: 0; margin-top: 1px; }
.hm-link-inline-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.hm-link-inline-title { font-size: 10px; font-weight: 600; color: var(--T); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; line-height: 1.3; }
.hm-link-inline-title:hover { color: var(--A); }
.hm-link-inline-desc { font-size: 8.5px; color: var(--LT); line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.hm-link-inline-foot { display: flex; align-items: center; justify-content: flex-end; gap: 4px; }
.hm-link-status-select {
    appearance: none; -webkit-appearance: none; border: 1px solid currentColor; border-radius: 99px;
    font-size: 8px; font-weight: 700; padding: 1px 5px; cursor: pointer; outline: none;
    transition: all .15s; white-space: nowrap; color-scheme: dark;
}
.hm-lss-concluido  { color: #22c55e !important; border-color: rgba(34,197,94,.4)  !important; background: rgba(34,197,94,.1)  !important; }
.hm-lss-atualizado { color: #38bdf8 !important; border-color: rgba(56,189,248,.4)  !important; background: rgba(56,189,248,.1)  !important; }
.hm-lss-manutencao { color: #a855f7 !important; border-color: rgba(168,85,247,.4)  !important; background: rgba(168,85,247,.1)  !important; }
.hm-lss-reparar    { color: #f59e0b !important; border-color: rgba(245,158,11,.4) !important; background: rgba(245,158,11,.1) !important; }
.hm-lss-erro       { color: #ef4444 !important; border-color: rgba(239,68,68,.4)  !important; background: rgba(239,68,68,.1)  !important; }
.hm-lss-atencao    { color: #f59e0b !important; border-color: rgba(245,158,11,.4) !important; background: rgba(245,158,11,.1) !important; }
.hm-link-status-select option { background: #1a1a2e; color: #e2e8f0; font-weight: 600; }
.hm-links-empty { padding: 4px 10px; font-size: 9px; color: var(--LT); display: flex; align-items: center; gap: 4px; border-top: 1px solid var(--BD); }
.hm-links-empty i { font-size: 8px; opacity: .4; }

/* ═══ MODOS DE VISUALIZAÇÃO — Todos melhorados ═══════════════════════════════ */

/* ── Modo LISTA — Compacto e profissional ─────────────────────────────────── */
.hm-grid.view-list { grid-template-columns: 1fr !important; gap: 4px !important; }
.hm-grid.view-list .hm-card {
    flex-direction: row !important; align-items: stretch !important;
    min-height: 44px; padding: 0 !important; border-radius: 6px !important;
    cursor: pointer; overflow: hidden !important;
}
.hm-grid.view-list .hm-card:hover { transform: none !important; box-shadow: 0 0 0 1px var(--A), 0 4px 12px rgba(0,0,0,.2) !important; }
.hm-grid.view-list .hm-card .hm-thumb {
    width: 56px !important; min-width: 56px !important; aspect-ratio: auto !important;
    height: 100% !important; flex-shrink: 0 !important; border-radius: 0 !important;
}
.hm-grid.view-list .hm-card .hm-shimmer { display: none !important; }
.hm-grid.view-list .hm-card .hm-thumb-overlay { background: rgba(0,0,0,.3) !important; }
.hm-grid.view-list .hm-card .hm-thumb-content { display: none !important; }
.hm-grid.view-list .hm-card .hm-drag-handle { display: none !important; }
.hm-grid.view-list .hm-card .hm-cb {
    flex: 1 !important; display: flex !important; flex-direction: row !important;
    align-items: center !important; padding: 0 8px !important; min-width: 0 !important; gap: 8px !important;
}
.hm-grid.view-list .hm-card .hm-cm { display: none !important; }
.hm-grid.view-list .hm-card .hm-diag { display: none !important; }
.hm-grid.view-list .hm-card .hm-bkp-list { display: none !important; }
.hm-grid.view-list .hm-card .hm-ci { display: none !important; }
.hm-grid.view-list .hm-card .hm-links-inline { display: none !important; }
.hm-grid.view-list .hm-card .hm-card-header-row { padding: 0 !important; flex: 1 !important; }
.hm-grid.view-list .hm-card .hm-cf {
    flex-direction: row !important; align-items: center !important; gap: 3px !important;
    padding: 0 6px !important; border-top: none !important; border-left: 1px solid var(--BD) !important;
    flex-shrink: 0 !important; background: transparent !important;
}
.hm-grid.view-list .hm-card .hm-cf-btn { padding: 3px 7px !important; font-size: 9px !important; }
.hm-grid.view-list .hm-card .hm-cf-btn.accent { margin-left: 0 !important; }
.hm-grid.view-list .hm-card .hm-card-btns { position: static !important; background: none !important; backdrop-filter: none !important; border: none !important; gap: 2px !important; }
.hm-grid.view-list .hm-card .hm-card-btn { background: var(--BG) !important; border: 1px solid var(--BD) !important; width: 22px !important; height: 22px !important; }

/* ── Modo CARDS-SM — Compacto ────────────────────────────────────────────── */
.hm-grid.view-cards-sm { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important; gap: 8px !important; }
.hm-grid.view-cards-sm .hm-card .hm-thumb { aspect-ratio: 16/9 !important; }
.hm-grid.view-cards-sm .hm-card .hm-cb { padding: 0 !important; }
.hm-grid.view-cards-sm .hm-card .hm-card-header-row { padding: 4px 8px 0 !important; }
.hm-grid.view-cards-sm .hm-card .hm-thumb-title { font-size: 11px !important; }
.hm-grid.view-cards-sm .hm-card .hm-cm { margin: 4px 8px !important; }
.hm-grid.view-cards-sm .hm-card .hm-cm-lbl { font-size: 7px !important; }
.hm-grid.view-cards-sm .hm-card .hm-cm-val { font-size: 10px !important; }
.hm-grid.view-cards-sm .hm-card .hm-cm-sub { font-size: 7px !important; }
.hm-grid.view-cards-sm .hm-card .hm-diag { display: none !important; }
.hm-grid.view-cards-sm .hm-card .hm-bkp-list { display: none !important; }
.hm-grid.view-cards-sm .hm-card .hm-ci { display: none !important; }
.hm-grid.view-cards-sm .hm-card .hm-cf { padding: 4px 8px !important; }
.hm-grid.view-cards-sm .hm-card .hm-cf-btn { font-size: 9px !important; padding: 3px 6px !important; }
.hm-grid.view-cards-sm .hm-card .hm-drag-handle { display: none !important; }

/* ── Modo CARDS-MD (padrão) ──────────────────────────────────────────────── */
.hm-grid.view-cards-md { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important; gap: 10px !important; }

/* ── Modo CARDS-LG ─────────────────────────────────────────────────────────── */
.hm-grid.view-cards-lg { grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)) !important; gap: 12px !important; }
.hm-grid.view-cards-lg .hm-card .hm-thumb { aspect-ratio: 16/8 !important; }
.hm-grid.view-cards-lg .hm-card .hm-thumb-title { font-size: 15px !important; }
.hm-grid.view-cards-lg .hm-card .hm-cm-val { font-size: 13px !important; }
.hm-grid.view-cards-lg .hm-card .hm-cm-sub { font-size: 9px !important; }

/* ── Modo DOTS — Bolinhas com anel de status ─────────────────────────────── */
.hm-grid.view-dots { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; padding: 10px 0 !important; }
.hm-grid.view-dots .hm-card {
    width: 40px !important; height: 40px !important; min-width: 40px !important; min-height: 40px !important;
    border-radius: 50% !important; overflow: visible !important; cursor: pointer; position: relative;
    transition: transform .2s, box-shadow .2s !important; border: 2px solid transparent !important;
}
.hm-grid.view-dots .hm-card.ok { border-color: #22c55e !important; box-shadow: 0 0 0 2px rgba(34,197,94,.15) !important; }
.hm-grid.view-dots .hm-card.wn { border-color: #f59e0b !important; box-shadow: 0 0 0 2px rgba(245,158,11,.15) !important; }
.hm-grid.view-dots .hm-card.er { border-color: #ef4444 !important; box-shadow: 0 0 0 2px rgba(239,68,68,.15) !important; }
.hm-grid.view-dots .hm-card.manutencao { border-color: #a855f7 !important; }
.hm-grid.view-dots .hm-card.erro { border-color: #f97316 !important; }
.hm-grid.view-dots .hm-card:hover { transform: scale(1.2) !important; box-shadow: 0 6px 20px rgba(0,0,0,.4) !important; z-index: 10 !important; }
.hm-grid.view-dots .hm-card .hm-thumb { height: 36px !important; width: 36px !important; position: absolute; inset: 0; margin: auto; border-radius: 50% !important; }
.hm-grid.view-dots .hm-card .hm-shimmer { display: none !important; }
.hm-grid.view-dots .hm-card .hm-cb { display: none !important; }
.hm-grid.view-dots .hm-card .hm-cf { display: none !important; }
.hm-grid.view-dots .hm-card .hm-card-btns { display: none !important; }
.hm-grid.view-dots .hm-card .hm-drag-handle { display: none !important; }
.hm-grid.view-dots .hm-card::after {
    content: attr(data-label); position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%);
    background: var(--CARD); border: 1px solid var(--BD); color: var(--T);
    font-size: 10px; font-weight: 600; padding: 4px 8px; border-radius: 6px;
    white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .15s, transform .15s;
    z-index: 100; box-shadow: 0 4px 16px rgba(0,0,0,.4);
}
.hm-grid.view-dots .hm-card:hover::after { opacity: 1; transform: translateX(-50%) translateY(-2px); }

/* ── Modo THUMBS — Miniaturas grandes ────────────────────────────────────── */
.hm-grid.view-thumbs { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important; gap: 10px !important; }
.hm-grid.view-thumbs .hm-card {
    height: 160px !important; border-radius: 10px !important; overflow: hidden !important;
    cursor: pointer; position: relative; transition: transform .2s, box-shadow .2s !important;
}
.hm-grid.view-thumbs .hm-card:hover { transform: scale(1.03) !important; box-shadow: 0 8px 24px rgba(0,0,0,.4) !important; }
.hm-grid.view-thumbs .hm-card .hm-thumb { position: absolute; inset: 0; height: 100% !important; aspect-ratio: auto !important; }
.hm-grid.view-thumbs .hm-card .hm-cb { display: none !important; }
.hm-grid.view-thumbs .hm-card .hm-cf { display: none !important; }
.hm-grid.view-thumbs .hm-card .hm-drag-handle { display: none !important; }
.hm-grid.view-thumbs .hm-card .hm-card-btns { top: 6px; right: 6px; }
.hm-grid.view-thumbs .hm-card::after {
    content: attr(data-label); position: absolute; bottom: calc(100% + 6px); left: 50%; transform: translateX(-50%);
    background: var(--CARD); border: 1px solid var(--BD); color: var(--T);
    font-size: 10px; font-weight: 600; padding: 3px 8px; border-radius: 6px;
    white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .15s;
    z-index: 100; box-shadow: 0 4px 12px rgba(0,0,0,.3);
}
.hm-grid.view-thumbs .hm-card:hover::after { opacity: 1; }

/* ── Sino de notificações ─────────────────────────────────────────────────── */
.hm-notif-bell { position: relative; background: none; border: none; color: var(--MT, #94a3b8); cursor: pointer; padding: 4px; border-radius: 6px; transition: all 0.2s; }
.hm-notif-bell:hover { color: var(--A, #0ea5e9); background: rgba(14, 165, 233, 0.1); }
.hm-notif-badge { position: absolute; top: -3px; right: -3px; background: #ef4444; color: white; font-size: 8px; font-weight: 700; padding: 1px 4px; border-radius: 10px; min-width: 14px; text-align: center; border: 1.5px solid var(--CARD); }
.hm-notif-modal {
    display: none; position: fixed; z-index: 2000; top: 50%; left: 50%; transform: translate(-50%, -50%);
    background: var(--C2, #161b27); border: 1px solid var(--BD, #1e293b); border-radius: 12px;
    width: 320px; max-height: 400px; overflow-y: auto; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    opacity: 0; transition: opacity 0.2s ease;
}
.hm-notif-modal.show { display: block; opacity: 1; }
.hm-notif-list { max-height: 300px; overflow-y: auto; }
.hm-notif-item { padding: 10px 14px; border-bottom: 1px solid var(--BD, #1e293b); cursor: pointer; display: flex; align-items: flex-start; gap: 8px; transition: background 0.2s; }
.hm-notif-item:hover { background: rgba(255, 255, 255, 0.05); }
.hm-notif-item .fas { margin-top: 2px; font-size: 14px; flex-shrink: 0; }
.hm-notif-item .text { flex: 1; font-size: 13px; color: var(--TX, #e2e8f0); }
.hm-notif-item .action { font-size: 10px; color: var(--A, #0ea5e9); opacity: 0.8; white-space: nowrap; }
.hm-notif-header { padding: 12px 14px; border-bottom: 1px solid var(--BD, #1e293b); display: flex; justify-content: space-between; align-items: center; position: sticky; top: 0; background: var(--C2, #161b27); z-index: 1; }
.hm-notif-header h3 { margin: 0; font-size: 14px; font-weight: 600; color: var(--TX, #e2e8f0); }
.hm-notif-close { background: none; border: none; color: var(--MT, #94a3b8); cursor: pointer; font-size: 16px; padding: 4px; transition: color 0.2s; }
.hm-notif-close:hover { color: #ef4444; }

/* ── Empty state ──────────────────────────────────────────────────────────── */
.hm-empty { text-align: center; padding: 40px 20px; color: var(--LT); font-size: 13px; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.hm-empty i { font-size: 30px; opacity: .3; }
#hm-search-results { margin-bottom: 10px; }

/* ── Super Backup Modal ──────────────────────────────────────────────────── */
.sbkp-type-card { display: flex; flex-direction: column; align-items: center; padding: 14px 6px; background: rgba(255,255,255,.03); border: 2px solid var(--BD); border-radius: 8px; cursor: pointer; transition: all .15s; text-align: center; }
.sbkp-type-card:hover { border-color: var(--A); background: rgba(14,165,233,.05); }
.sbkp-type-card.active { border-color: var(--A); background: rgba(14,165,233,.08); }
.hm-chk-opt { display:flex; align-items:center; gap:8px; padding:8px 10px; border:1.5px solid var(--BD); border-radius:var(--r2); cursor:pointer; transition:all .15s; user-select:none; }
.hm-chk-opt:hover { background:var(--CARD-H); border-color:rgba(14,165,233,.3); }
.hm-chk-opt.checked { border-color:var(--A);background:rgba(14,165,233,.08); }
.hm-chk-opt input[type=checkbox] { display:none; }
.hm-chk-box { width:16px;height:16px;border-radius:3px;border:2px solid var(--BD);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;background:var(--BG); }
.hm-chk-opt.checked .hm-chk-box { background:var(--A);border-color:var(--A); }
.hm-chk-box i { font-size:9px;color:#fff;display:none; }
.hm-chk-opt.checked .hm-chk-box i { display:block; }
.hm-batch-progress { display:none;flex-direction:column;gap:6px;margin-top:10px; }
.hm-batch-item { display:flex;align-items:center;gap:6px;font-size:11px;padding:6px 8px;border-radius:var(--r2);background:var(--BG);border:1px solid var(--BD); }
.hm-batch-item-status { width:14px;height:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center; }
@keyframes bkpSpin { to { transform: rotate(360deg); } }
.hm-spin-ring { position: absolute; top: -4px; left: -4px; right: -4px; bottom: -4px; border-radius: 50%; border: 3px solid transparent; border-top-color: var(--A); border-right-color: var(--A); animation: bkpSpin 1s linear infinite; }

/* ── Responsivo ───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    #content { padding: 0 10px 10px 10px; height: calc(100vh - 60px); }
    .hm-info-bar { gap: 4px; }
    .hm-chip { padding: 3px 8px; font-size: 10px; }
    .hm-chip-lbl { display: none; }
    .hm-actionbar { padding: 4px 6px; gap: 4px; }
    .hm-search-wrap { min-width: 100px; }
    .hm-search-wrap input { font-size: 11px; padding: 5px 8px 5px 26px; }
    .hm-fc { font-size: 10px; padding: 4px 6px; height: 26px; }
    .hm-bkp-btn { font-size: 10px; padding: 4px 7px; height: 26px; }
    .hm-refresh-btn { padding: 4px 8px; height: 26px; }
    .hm-vm-btn { width: 22px; height: 22px; font-size: 9px; }
    .hm-grid { gap: 8px; }
    .hm-grid.view-cards-md { grid-template-columns: 1fr !important; }
    .hm-grid.view-cards-sm { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important; }
    .hm-grid.view-cards-lg { grid-template-columns: 1fr !important; }
    .hm-grid.view-thumbs { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important; }
}

@media (max-width:768px){
  #content{height:calc(100dvh - 58px)!important;min-height:0!important;overflow:hidden!important;padding:0 10px calc(98px + env(safe-area-inset-bottom)) 10px!important;}
  .hm-fixed-area{position:relative;z-index:4;flex:0 0 auto;background:linear-gradient(180deg,var(--BG) 90%,transparent);}
  .hm-scroll-area{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;}
  .hm-actionbar{overflow:visible!important;}
}



/* ── Seletor de domínio ativo ─────────────────────────── */
.dom-selector-wrap {
  background: var(--CARD, rgba(255,255,255,.03));
  border: 1px solid rgba(14,165,233,.25);
  border-radius: 12px;
  padding: 14px 16px;
  margin-bottom: 18px;
}
.dom-selector-head {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--T);
  margin-bottom: 6px;
}
.dom-selector-hint {
  font-size: 11px;
  color: var(--MT);
  margin: 0 0 12px;
  line-height: 1.5;
}
.dom-selector-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.dom-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  border: 1px solid var(--BD, rgba(255,255,255,.08));
  background: rgba(255,255,255,.04);
  color: var(--MT);
  transition: all .15s;
  white-space: nowrap;
}
.dom-pill i { color: var(--pc, var(--A)); font-size: 11px; }
.dom-pill:hover {
  background: rgba(14,165,233,.1);
  border-color: var(--pc, var(--A));
  color: var(--T);
}
.dom-pill-active {
  background: rgba(14,165,233,.15) !important;
  border-color: var(--pc, var(--A)) !important;
  color: var(--pc, var(--A)) !important;
}
.dom-pill-active i { color: var(--pc, var(--A)) !important; }
.dom-pill-check { color: #22c55e !important; }

/* Card com domínio ativo destacado */
.n-domain-card-selected {
  border-color: rgba(14,165,233,.5) !important;
  box-shadow: 0 0 0 1px rgba(14,165,233,.2), 0 4px 20px rgba(14,165,233,.08) !important;
}
.dom-use-sidebar-btn { flex-shrink: 0; }

/* Responsividade mobile */
@media (max-width: 768px) {
  .dom-selector-wrap { padding: 12px; }
  .dom-selector-pills { gap: 5px; }
  .dom-pill { font-size: 10px; padding: 4px 10px; }
  .n-domain-actions { flex-wrap: wrap; gap: 5px; }
}
@media (max-width: 480px) {
  .dom-selector-head { font-size: 12px; }
  .dom-pill { font-size: 10px; }
}

/* ── CSS extraído de includes/header.php · bloco 1 ───────────────────────────── */
/* ── Topbar nav ──────────────────────────────────────────────────────── */
.tb-main-nav {
    display: flex;
    align-items: stretch;
    gap: 0;
    flex: 1;
    min-width: 0;
    height: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 4px 2px;
}
.tb-main-nav::-webkit-scrollbar { display: none; }

.tb-main-nav-item {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 6px 8px;
    color: var(--MT);
    background: transparent;
    font-size: 10px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    min-width: 54px;
    max-width: 70px;
    text-align: center;
    border-radius: 7px;
    transition: background .13s, color .13s;
    flex-shrink: 0;
}
.tb-main-nav-item span {
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.1;
}
.tb-main-nav-item i { font-size: 15px; line-height: 1; }
.tb-main-nav-item:hover { background: rgba(255,255,255,.06); color: var(--T); }
.tb-main-nav-item.active { color: var(--A); background: rgba(14,165,233,.12); }

.divisor-vertical {
    width: 1px;
    background: rgba(255,255,255,.08);
    margin: 8px 1px;
    flex-shrink: 0;
    align-self: stretch;
}

/* Topbar wrapper garante que o nav não empurre os botões */
#topbar {
    flex-wrap: nowrap !important;
    overflow: hidden;
}

/* ── Responsivo: telas médias — nav scroll horizontal ── */
@media (max-width: 1100px) {
    .tb-main-nav {
        flex: 1;
        overflow-x: auto;
    }
    .tb-main-nav-item {
        min-width: 48px;
        padding: 5px 6px;
    }
    .divisor-vertical { display: none; }
}

/* ── Mobile ≤ 768px — nav oculto; sidebar hamburger usa nav dentro da sidebar ── */
@media (max-width: 768px) {
    .tb-main-nav {
        display: none !important;
    }
    .divisor-vertical { display: none !important; }
    #topbar {
        padding: 0 10px !important;
        gap: 6px !important;
    }
}

/* ── CSS extraído de includes/header.php · bloco 2 ───────────────────────────── */
#tb-user-dropdown a,#tb-user-dropdown button{font-family:inherit;transition:background .12s}

/* ── CSS extraído de includes/header.php · bloco 3 ───────────────────────────── */
/* ═══ AGENTE IA v3.0 — PANEL CSS ═══════════════════════════════════════ */
.ia-fab-btn{position:fixed;bottom:24px;right:24px;width:52px;height:52px;border-radius:50%;background:var(--A);color:#fff;border:none;cursor:pointer;z-index:9990;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 24px rgba(0,0,0,.35);transition:transform .2s,box-shadow .2s}
.ia-fab-btn:hover{transform:scale(1.09);box-shadow:0 6px 28px rgba(0,0,0,.45)}
.ia-fab-btn.ia-fab-dismissed{display:none!important}
.ia-fab-pulse{position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--A);animation:iaPulse 2.2s infinite;pointer-events:none;opacity:.6}
.ia-fab-badge{position:absolute;top:1px;right:1px;background:#ef4444;color:#fff;border-radius:99px;font-size:9px;font-weight:800;min-width:15px;height:15px;line-height:15px;padding:0 3px;text-align:center;pointer-events:none}
.ia-fab-dismiss{position:absolute;top:-7px;right:-7px;width:19px;height:19px;border-radius:50%;background:#1f2937;border:1px solid var(--BD);color:#9ca3af;font-size:9px;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;z-index:1}
.ia-fab-btn:hover .ia-fab-dismiss{display:flex}
.ia-panel{position:fixed;bottom:88px;right:24px;width:420px;height:580px;background:#04040a;border:1px solid var(--BD);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.45);z-index:9989;display:none;flex-direction:column;overflow:hidden}
.ia-panel.open{display:flex;animation:iaSlideIn .18s ease}
.ia-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--BD);flex-shrink:0}
.ia-head-title{display:flex;align-items:center;gap:6px;flex:1;font-weight:700;font-size:13px;color:var(--T)}
.ia-head-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;flex-shrink:0;box-shadow:0 0 6px #22c55e}
.ia-ver-badge{background:var(--A);color:#fff;font-size:9px;font-weight:800;padding:1px 6px;border-radius:99px;flex-shrink:0}
.ia-mode-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:99px;flex-shrink:0}
.ia-mode-code{background:rgba(168,85,247,.15);color:#a855f7;border:1px solid rgba(168,85,247,.3)}
.ia-mode-system{background:rgba(14,165,233,.15);color:#0ea5e9;border:1px solid rgba(14,165,233,.3)}
.ia-mode-auto{background:rgba(107,114,128,.1);color:#6b7280;border:1px solid rgba(107,114,128,.2)}
.ia-tabs{display:flex;gap:2px;padding:5px 8px;border-bottom:1px solid var(--BD);flex-shrink:0;background:var(--BG)}
.ia-tab-btn{flex:1;padding:5px 6px;border:none;background:transparent;color:var(--LT);cursor:pointer;border-radius:7px;font-size:11px;font-weight:600;transition:all .13s;display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}
.ia-tab-btn:hover{background:rgba(255,255,255,.06);color:var(--T)}
.ia-tab-btn.active{background:var(--A);color:#fff}
.ia-tab-pane{display:none;flex-direction:column;flex:1;overflow:hidden}
.ia-tab-pane.active{display:flex}
.ia-msgs{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px;scroll-behavior:smooth}
.ia-msg{max-width:88%;border-radius:10px;padding:9px 12px;font-size:12.5px;line-height:1.55;word-break:break-word}
.ia-msg-user{align-self:flex-end;background:var(--A);color:#fff;border-bottom-right-radius:3px}
.ia-msg-ai{align-self:flex-start;background:var(--BG);border:1px solid var(--BD);color:var(--T);border-bottom-left-radius:3px}
.ia-msg-sys{align-self:stretch;background:rgba(14,165,233,.07);border:1px solid rgba(14,165,233,.15);color:var(--MT);font-size:11.5px;border-radius:8px;text-align:center}
.ia-msg pre{background:rgba(0,0,0,.25);border-radius:6px;padding:8px;overflow-x:auto;font-size:11px;margin:5px 0}
.ia-msg code{background:rgba(0,0,0,.2);border-radius:3px;padding:1px 4px;font-size:11px}
.ia-inp-row{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--BD);flex-shrink:0;align-items:flex-end}
.ia-textarea{flex:1;background:var(--BG);border:1px solid var(--BD);border-radius:9px;color:var(--T);font-size:12px;padding:7px 10px;resize:none;max-height:100px;overflow-y:auto;line-height:1.4;font-family:inherit;outline:none;transition:border-color .15s}
.ia-textarea:focus{border-color:var(--A)}
.ia-send-btn{width:34px;height:34px;border-radius:8px;padding:0;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.ia-ctx-bar{display:flex;align-items:center;gap:6px;padding:5px 10px;background:rgba(168,85,247,.07);border-bottom:1px solid rgba(168,85,247,.15);font-size:11px;flex-shrink:0}
.ia-cmd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px}
.ia-cmd-btn{background:var(--BG);border:1px solid var(--BD);color:var(--T);border-radius:8px;padding:9px 6px;cursor:pointer;font-size:11px;font-weight:600;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .15s}
.ia-cmd-btn:hover{background:var(--c,var(--A));color:#fff;border-color:var(--c,var(--A))}
.ia-cmd-btn i{font-size:16px;color:var(--c,var(--A));transition:color .15s}
.ia-cmd-btn:hover i{color:#fff}
.ia-sys-metric{background:var(--BG);border:1px solid var(--BD);border-radius:8px;padding:8px 10px}
.ia-metric-val{font-size:18px;font-weight:800;color:var(--A);line-height:1}
.ia-metric-lbl{font-size:10px;color:var(--LT);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}
.ia-cfg-scroll{overflow-y:auto}
.ia-cfg-section{padding:12px 14px;border-bottom:1px solid var(--BD)}
.ia-cfg-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--LT);margin-bottom:8px;display:flex;align-items:center;gap:5px}
.ia-cfg-label{font-size:11px;color:var(--MT);margin-bottom:3px;display:block;font-weight:600}
.ia-cfg-input,.ia-cfg-select{width:100%;background:var(--BG);border:1px solid var(--BD);border-radius:7px;color:var(--T);font-size:11.5px;padding:6px 9px;outline:none;font-family:inherit;transition:border-color .15s;box-sizing:border-box}
.ia-cfg-input:focus,.ia-cfg-select:focus{border-color:var(--A)}
.ia-cfg-hint{font-size:10px;color:var(--LT);margin-top:3px;line-height:1.4}
.ia-cfg-range{width:100%;accent-color:var(--A);cursor:pointer;padding:0;margin:4px 0}
@keyframes iaPulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:0;transform:scale(1.45)}}
@keyframes iaSlideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* ── CSS extraído de includes/sidebar.php · bloco 1 ───────────────────────────── */
/* Mobile styles */
        @media (max-width: 768px) {
            .sb-mobile-main-nav { display: flex !important; }
            #sidebar {
                position: fixed !important;
                left: -280px !important;
                top: 0 !important;
                width: min(260px, 85vw) !important;
                z-index: 300 !important;
                transition: left .27s cubic-bezier(.4,0,.2,1) !important;
                box-shadow: 4px 0 24px rgba(0,0,0,.5) !important;
                height: 100vh !important;
                height: 100dvh !important;
                border-right: 1px solid rgba(255,255,255,0.06);
            }
            #sidebar.mob-open { left: 0 !important; }
            #sb-overlay.active { display: block !important; }
            .sb-mobile-nav-item:hover { background: rgba(255,255,255,.05); color: var(--T); }
            .sb-mobile-nav-item.active { background: rgba(14,165,233,.12); color: var(--A); }
            .sb-mobile-nav-item.active i { color: var(--A); }
            #sidebar .sb-section-body { flex: 1 1 auto !important; min-height: 0 !important; }
            #sidebar .sb-mobile-main-nav { max-height: 50vh; }
            .sb-domain-row:hover .sb-domain-tools { display: flex !important; }
            .sb-domain-tools { display: none !important; }
            .sb-domain-row:hover .sb-domain-tools { display: flex !important; }
        }

        @media (min-width: 769px) {
            .sb-mobile-main-nav { display: none !important; }
            .sb-domain-row:hover .sb-domain-tools { display: flex !important; }
        }

        /* Hover effects */
        .sb-domain-tool-btn:hover { background: rgba(148,163,184,.15); color: var(--TX); }
        .sb-domain-tool-btn-active { color: #f59e0b; }
        .sb-domain-tool-btn-active:hover { background: rgba(245,158,11,.15); color: #f59e0b; }
        .sb-domain-main-row { background: rgba(14,165,233,.05); }
        .sb-root-header:hover { background: var(--CARD); color: var(--T); }
        .sb-root-header.active { background: rgba(14,165,233,.12); color: var(--A); }
        .btn-logout:hover { color: var(--ER) !important; }
        .sb-collapse-btn:hover { color: var(--T); }

        /* Scrollbar */
        .sb-section-body::-webkit-scrollbar { width: 4px; }
        .sb-section-body::-webkit-scrollbar-track { background: transparent; }
        .sb-section-body::-webkit-scrollbar-thumb { background: rgba(148,163,184,.2); border-radius: 99px; }
        .sb-section-body::-webkit-scrollbar-thumb:hover { background: rgba(148,163,184,.3); }

/* ── CSS extraído de includes/footer.php · bloco 1 ───────────────────────────── */
.icon-item-g { display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 6px;border-radius:7px;cursor:pointer;border:1px solid transparent;transition:all .12s;font-size:10px;color:var(--LT);text-align:center;word-break:break-all; }
.icon-item-g:hover { background:var(--CARD);border-color:var(--A);color:var(--T); }
.icon-item-g i { font-size:20px;color:var(--A); }
.icon-item-g.selected { background:rgba(14,165,233,.15);border-color:var(--A);color:var(--A); }

/* ── CSS extraído de includes/footer.php · bloco 2 ───────────────────────────── */
#footer-status-bar .footer-meta span{font-size:10px;line-height:1.2}
#footer-status-bar .footer-meta>span:last-child{color:var(--T);font-weight:700}
#footer-status-bar .footer-ticker-wrap{mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
#footer-status-bar .footer-server-wrap .tb-kpi-btn{width:30px;height:30px}
@media(max-width:900px){#footer-status-bar{gap:4px;padding-inline:7px}.footer-meta{padding-inline:6px!important}.footer-meta span:first-of-type{display:none}.footer-ticker-wrap{min-width:40px!important}}
@keyframes tickerScroll {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}

/* ── CSS extraído de includes/footer.php · bloco 3 ───────────────────────────── */
.domain-progress-modal{max-width:430px;text-align:center}.domain-progress-track{height:10px;border-radius:99px;background:var(--BG);border:1px solid var(--BD);overflow:hidden}.domain-progress-track i{display:block;width:0;height:100%;border-radius:99px;background:linear-gradient(90deg,#0ea5e9,#8b5cf6,#22c55e);transition:width .25s ease}

/* ── CSS extraído de includes/footer.php · bloco 4 ───────────────────────────── */
.modal-bg{display:none;position:fixed;inset:0;align-items:center;justify-content:center;padding:20px;background:rgba(2,6,23,.78);backdrop-filter:blur(7px);z-index:100000}
.modal-bg.open{display:flex!important}
#modal-kpi-info{z-index:124000}
.kpi-info-modal{max-width:760px}.kpi-hero{display:flex;align-items:center;gap:16px;padding:16px;margin-bottom:14px;border:1px solid rgba(14,165,233,.28);border-radius:12px;background:linear-gradient(135deg,rgba(14,165,233,.12),rgba(139,92,246,.08))}.kpi-hero-ring{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--A) var(--kpi-pct,70%),rgba(255,255,255,.08) 0);position:relative;flex-shrink:0}.kpi-hero-ring:after{content:'';position:absolute;inset:7px;border-radius:50%;background:var(--BG)}.kpi-hero-ring strong{position:relative;z-index:1;font-size:17px;color:var(--T)}.kpi-hero-copy{flex:1}.kpi-hero-copy b{display:block;font-size:15px;color:var(--T)}.kpi-hero-copy small{display:block;color:var(--MT);font-size:11px;margin-top:5px;line-height:1.5}.kpi-meter{height:7px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:10px}.kpi-meter i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--A),#8b5cf6);width:var(--kpi-pct,70%)}.kpi-domain-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}.kpi-domain-card{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--BD);border-radius:9px;background:rgba(255,255,255,.035);color:var(--T);text-decoration:none;transition:.16s}.kpi-domain-card:hover{border-color:var(--A);background:rgba(14,165,233,.08);transform:translateY(-1px)}.kpi-domain-card-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:rgba(239,68,68,.12);color:#f87171;flex-shrink:0}.kpi-domain-card b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.kpi-domain-card small{display:block;margin-top:3px;color:var(--LT);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.kpi-domain-card>.fa-chevron-right{margin-left:auto;color:var(--LT);font-size:10px}.kpi-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 16px}.kpi-info-card{padding:14px;border:1px solid var(--BD);border-radius:10px;background:rgba(255,255,255,.035)}.kpi-info-card strong{display:block;font-size:22px;color:var(--T);margin-top:4px}.kpi-info-card small{font-size:10px;color:var(--LT);text-transform:uppercase;letter-spacing:.06em}.kpi-info-copy{padding:13px 15px;border:1px solid var(--BD);border-radius:10px;background:var(--BG);color:var(--MT);font-size:12.5px;line-height:1.7}.kpi-info-list{display:grid;gap:7px;margin-top:12px}.kpi-info-row{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;background:rgba(255,255,255,.03);font-size:11.5px;color:var(--MT)}.kpi-info-row i{width:16px;color:var(--A);text-align:center}.kpi-info-row b{margin-left:auto;color:var(--T)}@media(max-width:600px){.kpi-info-grid{grid-template-columns:1fr 1fr}}

/* ── CSS extraído de includes/lay_notas.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   NOTAS v4.0 — Design System Premium
   ══════════════════════════════════════════════════════════════════════════════ */

:root {
    --ntas-radius: 16px;
    --ntas-radius-sm: 10px;
    --ntas-transition: 0.25s cubic-bezier(.4, 0, .2, 1);
}

/* ── Modal Container ── */
#modal-ntas-global {
    background: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    animation: ntasFadeIn .25s ease;
    z-index: 110000 !important;
}
#modal-ntas-global.ntas-fullscreen .ntas-modal {
    max-width: 100vw !important;
    height: 100vh !important;
    border-radius: 0 !important;
}

.ntas-modal {
    background: var(--CARD);
    border-radius: var(--ntas-radius);
    width: 96%;
    max-width: 1280px;
    height: 92vh;
    max-height: 92vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 32px 96px rgba(0, 0, 0, .6);
    border: 1px solid rgba(255, 255, 255, .06);
    overflow: hidden;
    transition: all var(--ntas-transition);
}

/* ── Header Premium ── */
.ntas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    background: rgba(0, 0, 0, .2);
    flex-shrink: 0;
    gap: 12px;
    flex-wrap: wrap;
}
.ntas-header-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 200px;
}
.ntas-icon-badge {
    width: 40px;
    height: 40px;
    border-radius: var(--ntas-radius-sm);
    background: rgba(14, 165, 233, .12);
    border: 2px solid rgba(14, 165, 233, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: var(--A);
    cursor: pointer;
    transition: all var(--ntas-transition);
    flex-shrink: 0;
}
.ntas-icon-badge:hover {
    background: rgba(14, 165, 233, .22);
    border-color: var(--A);
    transform: scale(1.05);
}
.ntas-title-wrap {
    flex: 1;
    min-width: 0;
}
.ntas-title-input {
    width: 100%;
    font-size: 18px;
    font-weight: 800;
    background: transparent;
    border: none;
    color: var(--T);
    padding: 0;
    font-family: 'Outfit', sans-serif;
    outline: none;
}
.ntas-title-input::placeholder {
    color: var(--LT);
    opacity: .5;
}
.ntas-meta-row {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    color: var(--LT);
    margin-top: 2px;
}
.ntas-meta-row .ntas-saving-ind {
    font-size: 10px;
}
.ntas-meta-row .ntas-saving-ind.saving {
    color: var(--A);
}
.ntas-meta-row .ntas-saving-ind.saved {
    color: #22c55e;
}
.ntas-modal-label {
    font-weight: 600;
    color: var(--A);
    padding: 2px 10px;
    background: rgba(14, 165, 233, .08);
    border-radius: 99px;
    font-size: 10px;
}

.ntas-header-right {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    flex-wrap: wrap;
}
.ntas-hbtn {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: var(--MT);
    font-size: 13px;
    cursor: pointer;
    transition: all var(--ntas-transition);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.ntas-hbtn:hover {
    background: rgba(255, 255, 255, .06);
    color: var(--T);
}
.ntas-hbtn.ntas-hbtn-ai {
    background: linear-gradient(135deg, rgba(168, 85, 247, .15), rgba(14, 165, 233, .15));
    color: #a855f7;
    gap: 4px;
    padding: 0 12px;
    width: auto;
    font-weight: 600;
    font-size: 12px;
    border: 1px solid rgba(168, 85, 247, .2);
}
.ntas-hbtn.ntas-hbtn-ai:hover {
    background: linear-gradient(135deg, rgba(168, 85, 247, .25), rgba(14, 165, 233, .25));
    border-color: #a855f7;
}
.ntas-hbtn.ntas-hbtn-close {
    color: #ef4444;
}
.ntas-hbtn.ntas-hbtn-close:hover {
    background: rgba(239, 68, 68, .12);
}

/* ── AI Dropdown Premium ── */
.ntas-ai-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: var(--CARD);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: var(--ntas-radius-sm);
    padding: 8px;
    min-width: 220px;
    max-height: 420px;
    overflow-y: auto;
    box-shadow: 0 16px 48px rgba(0, 0, 0, .5);
    z-index: 100;
    backdrop-filter: blur(12px);
}
.ntas-ai-dropdown .ntas-ai-dd-header {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--LT);
    padding: 6px 10px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, .04);
}
.ntas-ai-dropdown button {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: transparent;
    color: var(--MT);
    font-size: 12.5px;
    cursor: pointer;
    border-radius: 6px;
    transition: all .15s;
    font-family: 'Outfit', sans-serif;
    text-align: left;
}
.ntas-ai-dropdown button:hover {
    background: rgba(14, 165, 233, .08);
    color: var(--T);
}
.ntas-ai-dropdown button i {
    width: 18px;
    text-align: center;
    color: #a855f7;
}
.ntas-ai-dropdown .ntas-ai-sep {
    height: 1px;
    background: rgba(255, 255, 255, .06);
    margin: 4px 8px;
}
.ntas-ai-dropdown .ntas-ai-custom-btn {
    color: var(--A);
    font-weight: 600;
}
.ntas-ai-dropdown .ntas-ai-custom-btn i {
    color: var(--A);
}

/* ── Body ── */
.ntas-body {
    display: flex;
    flex: 1;
    overflow: hidden;
    min-height: 0;
}

/* ── Editor Column ── */
.ntas-editor-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    position: relative;
}

/* ── Format Bar Premium ── */
.ntas-fmt-bar {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 6px 12px;
    background: rgba(0, 0, 0, .15);
    border-bottom: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    flex-wrap: wrap;
    overflow-x: auto;
}
.ntas-fmt-bar::-webkit-scrollbar {
    height: 2px;
}
.ntas-fmt-bar::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}
.ntas-fb {
    height: 30px;
    min-width: 30px;
    border: none;
    background: transparent;
    color: var(--MT);
    border-radius: 6px;
    font-size: 12px;
    cursor: pointer;
    transition: all .15s;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    padding: 0 6px;
}
.ntas-fb:hover {
    background: rgba(255, 255, 255, .06);
    color: var(--T);
}
.ntas-fb.active-fmt {
    background: rgba(14, 165, 233, .15);
    color: var(--A);
}
.ntas-fb.ntas-fb-h1 { font-size: 11px; font-weight: 800; color: #f59e0b; }
.ntas-fb.ntas-fb-h2 { font-size: 10px; font-weight: 700; color: #0ea5e9; }
.ntas-fb.ntas-fb-h3 { font-size: 9px; font-weight: 700; color: #22c55e; }
.ntas-fb.ntas-fb-code { color: #a855f7; }
.ntas-fb.ntas-fb-code:hover { background: rgba(168, 85, 247, .12); }
.ntas-fb.ntas-fb-check { color: #22c55e; }
.ntas-fb.ntas-fb-media { color: #f59e0b; cursor: pointer; }
.ntas-fb.ntas-fb-media input { display: none; }
.ntas-fb.ntas-fb-url { color: #0ea5e9; }
.ntas-fb.ntas-fb-cols { color: #a855f7; }
.ntas-fb.ntas-fb-banner { color: #f59e0b; }
.ntas-fb.ntas-fb-source { color: #f97316; }
.ntas-fb.ntas-fb-source:hover { background: rgba(249, 115, 22, .12); }
.ntas-fb-lbl { font-size: 8px; margin-left: 2px; }
.ntas-fmt-sep {
    width: 1px;
    height: 20px;
    background: rgba(255, 255, 255, .06);
    flex-shrink: 0;
    margin: 0 2px;
}

/* ── Painéis Inline ── */
.ntas-inline-panel {
    background: rgba(0, 0, 0, .2);
    border-bottom: 1px solid rgba(255, 255, 255, .04);
    padding: 12px 16px;
    flex-shrink: 0;
    display: none;
}
.ntas-inline-panel .ntas-fp-header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: var(--T);
    margin-bottom: 10px;
}
.ntas-inline-panel .ntas-fp-close {
    margin-left: auto;
    background: none;
    border: none;
    color: var(--LT);
    cursor: pointer;
    font-size: 14px;
}
.ntas-inline-panel .ntas-fp-close:hover {
    color: var(--T);
}

/* ── Code Panel Premium ── */
.ntas-panel-code-body .ntas-code-panel-controls {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}
.ntas-code-lang-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    min-width: 120px;
}
.ntas-code-lang-sel {
    flex: 1;
    padding: 6px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 6px;
    color: var(--T);
    font-size: 12px;
    font-family: 'Outfit', sans-serif;
}
.ntas-code-textarea {
    width: 100%;
    min-height: 100px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 12px;
    color: var(--T);
    font-family: 'JetBrains Mono', monospace;
    font-size: 13px;
    line-height: 1.6;
    resize: vertical;
    outline: none;
}
.ntas-code-textarea:focus {
    border-color: var(--A);
}
.ntas-code-detect-badge {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 99px;
    font-size: 10px;
    font-weight: 700;
    background: rgba(34, 197, 94, .1);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, .2);
    margin-top: 6px;
}
.ntas-code-panel-hint {
    font-size: 11px;
    color: var(--LT);
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.ntas-code-copy-btn {
    font-size: 10px;
    padding: 2px 10px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--BD);
    border-radius: 4px;
    color: var(--MT);
    cursor: pointer;
    transition: all .15s;
}
.ntas-code-copy-btn:hover {
    background: rgba(14, 165, 233, .1);
    color: var(--A);
}

/* ── WYSIWYG Editor ── */
.ntas-wysiwyg {
    flex: 1;
    padding: 20px 24px;
    overflow-y: auto;
    font-size: 15px;
    line-height: 1.8;
    color: var(--T);
    outline: none;
    min-height: 200px;
    font-family: 'Outfit', sans-serif;
    background: transparent;
    cursor: text;
}
.ntas-wysiwyg:empty::before {
    content: attr(data-placeholder);
    color: var(--LT);
    opacity: .4;
}
.ntas-wysiwyg img {
    max-width: 100%;
    border-radius: 10px;
    display: block;
    margin: 12px auto;
    transition: all .2s;
    border: 2px solid transparent;
}
.ntas-wysiwyg img.ntas-img-selected {
    border-color: var(--A);
    box-shadow: 0 0 0 4px rgba(14, 165, 233, .15);
}
.ntas-wysiwyg blockquote {
    border-left: 4px solid var(--A);
    padding: 12px 18px;
    background: rgba(14, 165, 233, .04);
    border-radius: 0 8px 8px 0;
    margin: 12px 0;
    color: var(--MT);
}
.ntas-wysiwyg h1 { font-size: 28px; font-weight: 800; color: #f59e0b; margin: 16px 0 8px; }
.ntas-wysiwyg h2 { font-size: 22px; font-weight: 700; color: var(--T); margin: 14px 0 6px; }
.ntas-wysiwyg h3 { font-size: 18px; font-weight: 700; color: var(--T); margin: 12px 0 6px; }
.ntas-wysiwyg .ntas-block-code {
    background: #0a0a1a;
    border-radius: 10px;
    padding: 16px;
    overflow-x: auto;
    font-family: 'JetBrains Mono', monospace;
    font-size: 13px;
    line-height: 1.65;
    margin: 10px 0;
    border: 1px solid rgba(255, 255, 255, .04);
}
.ntas-wysiwyg .ntas-code-block-wrap {
    margin: 10px 0;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .06);
}
.ntas-wysiwyg .ntas-code-block-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 12px;
    background: rgba(0, 0, 0, .3);
    border-bottom: 1px solid rgba(255, 255, 255, .04);
}
.ntas-wysiwyg .ntas-code-lang-badge {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--A);
    letter-spacing: .5px;
}
.ntas-wysiwyg .ntas-check-block {
    margin: 10px 0;
}
.ntas-wysiwyg .ntas-check-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
    cursor: pointer;
}
.ntas-wysiwyg .ntas-check-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: var(--A);
    cursor: pointer;
}
.ntas-wysiwyg .ntas-check-row span {
    flex: 1;
}
.ntas-wysiwyg .ntas-block-table {
    width: 100%;
    border-collapse: collapse;
    margin: 12px 0;
    border-radius: 8px;
    overflow: hidden;
}
.ntas-wysiwyg .ntas-block-table th,
.ntas-wysiwyg .ntas-block-table td {
    border: 1px solid rgba(255, 255, 255, .06);
    padding: 8px 12px;
    text-align: left;
}
.ntas-wysiwyg .ntas-block-table th {
    background: rgba(14, 165, 233, .08);
    font-weight: 700;
}
.ntas-wysiwyg .ntas-block-btn {
    display: inline-block;
    padding: 10px 24px;
    background: linear-gradient(135deg, var(--P), var(--A));
    color: #fff;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
    transition: all .2s;
    border: none;
    cursor: pointer;
}
.ntas-wysiwyg .ntas-block-btn:hover {
    transform: scale(1.03);
    box-shadow: 0 4px 16px rgba(14, 165, 233, .3);
}
.ntas-wysiwyg .ntas-cols-block {
    display: flex;
    gap: 14px;
    margin: 14px 0;
    flex-wrap: wrap;
}
.ntas-wysiwyg .ntas-cols-block .ntas-col {
    flex: 1;
    min-width: 120px;
    padding: 14px;
    background: rgba(255, 255, 255, .02);
    border-radius: 10px;
    border: 1px dashed rgba(255, 255, 255, .08);
}
.ntas-wysiwyg .ntas-block-banner {
    padding: 14px 18px;
    margin: 12px 0;
    border-radius: 0 10px 10px 0;
    display: flex;
    gap: 12px;
    align-items: flex-start;
}
.ntas-wysiwyg .ntas-block-banner > div {
    flex: 1;
}
.ntas-wysiwyg .ntas-block-banner .ntas-banner-icon {
    font-size: 20px;
    flex-shrink: 0;
}
.ntas-word-count {
    padding: 6px 16px;
    font-size: 11px;
    color: var(--LT);
    border-top: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    background: rgba(0, 0, 0, .1);
}

/* ── Image Toolbar ── */
.ntas-img-toolbar {
    display: none;
    position: absolute;
    background: var(--CARD);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 10px;
    padding: 6px 10px;
    gap: 4px;
    align-items: center;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .5);
    z-index: 50;
    flex-wrap: wrap;
}
.ntas-img-toolbar .ntas-img-tb-group {
    display: flex;
    gap: 2px;
    align-items: center;
}
.ntas-img-toolbar .ntas-img-tb-sep {
    width: 1px;
    height: 24px;
    background: rgba(255, 255, 255, .06);
    margin: 0 4px;
}
.ntas-img-toolbar button {
    height: 28px;
    padding: 0 8px;
    border: none;
    background: transparent;
    color: var(--MT);
    border-radius: 4px;
    font-size: 11px;
    cursor: pointer;
    transition: all .15s;
    font-weight: 600;
}
.ntas-img-toolbar button:hover {
    background: rgba(14, 165, 233, .1);
    color: var(--T);
}
.ntas-img-toolbar .ntas-img-tb-alt { color: #0ea5e9; }
.ntas-img-toolbar .ntas-img-tb-del { color: #ef4444; }
.ntas-img-toolbar .ntas-img-tb-del:hover { background: rgba(239, 68, 68, .12); }
.ntas-img-toolbar input[type="number"] {
    width: 50px;
    padding: 2px 4px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 4px;
    color: var(--T);
    font-size: 11px;
    text-align: center;
    outline: none;
}
.ntas-img-toolbar input[type="number"]:focus {
    border-color: var(--A);
}

/* ── Source Mode ── */
.ntas-source-pane {
    display: none;
    flex-direction: column;
    flex: 1;
    min-height: 0;
}
.ntas-source-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 16px;
    background: rgba(0, 0, 0, .2);
    border-bottom: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    flex-wrap: wrap;
    gap: 8px;
}
.ntas-source-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 700;
    color: var(--T);
}
.ntas-source-badge {
    font-size: 9px;
    font-weight: 700;
    padding: 2px 8px;
    background: rgba(245, 158, 11, .15);
    color: #f59e0b;
    border-radius: 99px;
    border: 1px solid rgba(245, 158, 11, .2);
}
.ntas-source-header-right {
    display: flex;
    gap: 6px;
}
.ntas-source-action-btn {
    padding: 4px 12px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: transparent;
    color: var(--MT);
    font-size: 11px;
    cursor: pointer;
    transition: all .15s;
    font-weight: 600;
}
.ntas-source-action-btn:hover {
    background: rgba(255, 255, 255, .04);
    color: var(--T);
}
.ntas-source-action-btn.ntas-source-apply-btn {
    background: rgba(14, 165, 233, .12);
    border-color: rgba(14, 165, 233, .3);
    color: var(--A);
}
.ntas-source-action-btn.ntas-source-apply-btn:hover {
    background: rgba(14, 165, 233, .22);
}
.ntas-source-nums-wrap {
    display: flex;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}
.ntas-source-nums {
    padding: 12px 10px 12px 14px;
    background: rgba(0, 0, 0, .2);
    font-family: 'JetBrains Mono', monospace;
    font-size: 12px;
    line-height: 1.65;
    color: var(--LT);
    text-align: right;
    overflow-y: hidden;
    flex-shrink: 0;
    min-width: 32px;
    user-select: none;
}
.ntas-source-nums div {
    opacity: .6;
}
.ntas-source-textarea {
    flex: 1;
    padding: 12px 16px;
    background: transparent;
    border: none;
    color: var(--T);
    font-family: 'JetBrains Mono', monospace;
    font-size: 13px;
    line-height: 1.65;
    resize: none;
    outline: none;
    overflow-y: auto;
    min-height: 200px;
}
.ntas-source-footer {
    display: flex;
    gap: 16px;
    padding: 6px 16px;
    font-size: 11px;
    color: var(--LT);
    border-top: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    background: rgba(0, 0, 0, .1);
}

/* ── Live Preview ── */
.ntas-preview-box {
    padding: 20px 24px;
    font-size: 15px;
    line-height: 1.8;
    color: var(--T);
    overflow-y: auto;
}
.ntas-preview-header {
    padding: 8px 16px;
    font-size: 11px;
    font-weight: 700;
    color: var(--LT);
    border-bottom: 1px solid rgba(255, 255, 255, .04);
    background: rgba(0, 0, 0, .1);
    flex-shrink: 0;
}

/* ── Sidebar Premium ── */
.ntas-sidebar {
    width: 280px;
    min-width: 240px;
    border-left: 1px solid rgba(255, 255, 255, .04);
    background: rgba(0, 0, 0, .15);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    flex-shrink: 0;
}
.ntas-sb-tabs {
    display: flex;
    border-bottom: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    background: rgba(0, 0, 0, .1);
}
.ntas-sb-tab {
    flex: 1;
    padding: 10px 8px;
    border: none;
    background: transparent;
    color: var(--LT);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    border-bottom: 2px solid transparent;
    font-family: 'Outfit', sans-serif;
    text-align: center;
}
.ntas-sb-tab:hover {
    color: var(--T);
}
.ntas-sb-tab.active {
    color: var(--A);
    border-bottom-color: var(--A);
}
.ntas-sb-panel {
    flex: 1;
    overflow-y: auto;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ntas-sidebar-section {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.ntas-sidebar-lbl {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--LT);
    display: flex;
    align-items: center;
    gap: 6px;
}
.ntas-sidebar-lbl i {
    font-size: 11px;
}

/* ── Color Grid ── */
.ntas-color-grid {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}
.ntas-color-dot {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all .2s;
}
.ntas-color-dot:hover {
    transform: scale(1.12);
}
.ntas-color-dot.active {
    border-color: #fff;
    box-shadow: 0 0 0 2px var(--A);
}

/* ── Icon Preview ── */
.ntas-icon-preview {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--BD);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    cursor: pointer;
    transition: all .15s;
}
.ntas-icon-preview:hover {
    border-color: var(--A);
    background: rgba(14, 165, 233, .06);
}

/* ── View Mode Buttons ── */
.ntas-view-mode-row {
    display: flex;
    gap: 4px;
}
.ntas-qa-btn {
    padding: 6px 12px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: transparent;
    color: var(--MT);
    font-size: 11px;
    cursor: pointer;
    transition: all .15s;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
    font-family: 'Outfit', sans-serif;
    flex: 1;
    justify-content: center;
}
.ntas-qa-btn:hover {
    background: rgba(255, 255, 255, .04);
    color: var(--T);
}
.ntas-qa-btn.active {
    background: rgba(14, 165, 233, .12);
    border-color: var(--A);
    color: var(--A);
}
.ntas-pin-btn-modal {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border: 1px solid var(--BD);
    border-radius: 8px;
    background: transparent;
    color: var(--MT);
    cursor: pointer;
    transition: all .15s;
    font-weight: 600;
    font-size: 12px;
    font-family: 'Outfit', sans-serif;
}
.ntas-pin-btn-modal:hover {
    border-color: var(--A);
    color: var(--T);
}
.ntas-pin-btn-modal.pinned {
    border-color: #f59e0b;
    background: rgba(245, 158, 11, .08);
    color: #f59e0b;
}

/* ── Stats Grid ── */
.ntas-stats-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}
.ntas-stat-box {
    background: rgba(255, 255, 255, .02);
    border: 1px solid rgba(255, 255, 255, .04);
    border-radius: 8px;
    padding: 8px 10px;
    text-align: center;
}
.ntas-stat-box span {
    display: block;
    font-size: 16px;
    font-weight: 800;
    color: var(--T);
}
.ntas-stat-box small {
    font-size: 9px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* ── Quick Actions ── */
.ntas-quick-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
}
.ntas-quick-actions .ntas-qa-btn {
    font-size: 10px;
    padding: 5px 8px;
}

/* ── Share ── */
.ntas-share-link-box {
    display: flex;
    gap: 6px;
}
.ntas-share-link-box input {
    flex: 1;
    font-size: 11px;
    font-family: 'JetBrains Mono', monospace;
    padding: 6px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 6px;
    color: var(--T);
    outline: none;
}
.ntas-share-link-box input:focus {
    border-color: var(--A);
}
.ntas-share-copy-btn {
    padding: 6px 12px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: transparent;
    color: var(--MT);
    cursor: pointer;
    transition: all .15s;
}
.ntas-share-copy-btn:hover {
    border-color: var(--A);
    color: var(--A);
}
.ntas-vis-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
}
.ntas-vis-btn {
    padding: 6px 8px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: transparent;
    color: var(--MT);
    cursor: pointer;
    transition: all .15s;
    font-size: 11px;
    font-weight: 600;
    font-family: 'Outfit', sans-serif;
    text-align: center;
}
.ntas-vis-btn:hover {
    background: rgba(255, 255, 255, .04);
}
.ntas-vis-btn.active {
    background: rgba(14, 165, 233, .12);
    border-color: var(--A);
    color: var(--A);
}
.ntas-vis-status {
    font-size: 12px;
    padding: 8px 12px;
    background: rgba(255, 255, 255, .02);
    border-radius: 6px;
    color: var(--MT);
    text-align: center;
}

/* ── Footer ── */
.ntas-footer {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border-top: 1px solid rgba(255, 255, 255, .04);
    flex-shrink: 0;
    background: rgba(0, 0, 0, .1);
}

/* ── AI Result ── */
.ntas-ai-result {
    border-top: 1px solid rgba(168, 85, 247, .2);
    background: rgba(168, 85, 247, .04);
    padding: 12px 16px;
    flex-shrink: 0;
}
.ntas-ai-result-head {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: var(--T);
    margin-bottom: 6px;
}
.ntas-ai-result-text {
    font-size: 14px;
    line-height: 1.7;
    color: var(--MT);
    background: rgba(0, 0, 0, .15);
    padding: 12px 16px;
    border-radius: 8px;
    max-height: 200px;
    overflow-y: auto;
    white-space: pre-wrap;
    font-family: 'Outfit', sans-serif;
}

/* ── Custom AI Overlay ── */
.ntas-ai-custom-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .7);
    backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100000;
    animation: ntasFadeIn .2s ease;
}
.ntas-ai-custom-modal {
    background: var(--CARD);
    border-radius: var(--ntas-radius);
    padding: 24px 28px;
    max-width: 500px;
    width: 92%;
    border: 1px solid rgba(255, 255, 255, .06);
    box-shadow: 0 24px 64px rgba(0, 0, 0, .5);
}
.ntas-ai-custom-modal h3 {
    font-size: 18px;
    font-weight: 800;
    color: var(--T);
    margin: 0 0 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.ntas-ai-custom-textarea {
    width: 100%;
    min-height: 100px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 12px;
    color: var(--T);
    font-size: 13px;
    font-family: 'Outfit', sans-serif;
    resize: vertical;
    outline: none;
}
.ntas-ai-custom-textarea:focus {
    border-color: var(--A);
}
.ntas-ai-custom-footer {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 12px;
}

/* ── Animations ── */
@keyframes ntasFadeIn {
    from { opacity: 0; transform: scale(.96); }
    to { opacity: 1; transform: scale(1); }
}

/* ── Responsive ── */
@media (max-width: 900px) {
    .ntas-sidebar {
        width: 220px;
        min-width: 180px;
    }
    .ntas-modal {
        height: 96vh;
        max-height: 96vh;
        width: 98%;
    }
}
@media (max-width: 700px) {
    .ntas-sidebar {
        width: 100%;
        min-width: 0;
        max-height: 300px;
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, .04);
    }
    .ntas-body {
        flex-direction: column;
    }
    .ntas-header {
        padding: 10px 14px;
    }
    .ntas-title-input {
        font-size: 15px;
    }
    .ntas-wysiwyg {
        padding: 14px 16px;
        font-size: 14px;
    }
    .ntas-fmt-bar {
        padding: 4px 8px;
    }
    .ntas-fb {
        height: 26px;
        min-width: 26px;
        font-size: 11px;
    }
    .ntas-hbtn {
        width: 30px;
        height: 30px;
        font-size: 12px;
    }
    .ntas-hbtn.ntas-hbtn-ai {
        padding: 0 8px;
        font-size: 11px;
    }
    .ntas-modal-label {
        display: none;
    }
    .ntas-stats-grid {
        grid-template-columns: 1fr 1fr;
    }
    .ntas-quick-actions {
        grid-template-columns: 1fr 1fr;
    }
    .ntas-vis-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 480px) {
    .ntas-modal {
        height: 100vh;
        max-height: 100vh;
        width: 100%;
        border-radius: 0;
    }
    .ntas-header-left {
        gap: 8px;
    }
    .ntas-icon-badge {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }
    .ntas-fmt-bar .ntas-fb-lbl {
        display: none;
    }
}

/* ── CSS extraído de admin/home.php · bloco 1 ───────────────────────────── */
#hm-errlog-modal{display:none;position:fixed;inset:0;z-index:9999;background:rgba(2,6,23,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:16px}
.hm-errlog-card{background:var(--CARD,#161b27);border:1px solid var(--BD,#1e293b);border-radius:16px;max-width:820px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 32px 80px rgba(0,0,0,.55);overflow:hidden}
.hm-errlog-head{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--BD,#1e293b);flex-shrink:0;background:rgba(0,0,0,.18)}
.hm-errlog-badge{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#f59e0b,#ef4444);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(239,68,68,.3)}
.hm-errlog-title{font-weight:800;font-size:15px;color:var(--T,#e2e8f0);letter-spacing:-.01em}
.hm-errlog-sub{font-size:11px;color:var(--LT,#64748b);margin-top:2px}
.hm-errlog-raw-wrap{padding:14px 22px;flex-shrink:0;border-bottom:1px solid var(--BD,#1e293b)}
.hm-errlog-raw-label{font-size:9px;color:var(--LT,#64748b);margin-bottom:7px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:6px}
.hm-errlog-raw-label i{color:#f59e0b}
#hm-errlog-raw{background:rgba(0,0,0,.25);border:1px solid var(--BD,#1e293b);border-radius:8px;padding:12px;font-size:11px;color:#94a3b8;max-height:130px;overflow-y:auto;margin:0;white-space:pre-wrap;word-break:break-all;font-family:monospace;line-height:1.55;scrollbar-width:thin}
.hm-errlog-ia-wrap{padding:16px 22px;overflow-y:auto;flex:1;min-height:80px}
.hm-errlog-ia-label{font-size:9px;color:var(--A,#0ea5e9);margin-bottom:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:6px}
#hm-errlog-ia-resp{font-size:13px;color:var(--T,#e2e8f0);line-height:1.75;white-space:pre-wrap}
.hm-errlog-foot{display:flex;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--BD,#1e293b);flex-shrink:0;background:rgba(0,0,0,.12)}

/* ── CSS extraído de admin/home.php · bloco 2 ───────────────────────────── */
@keyframes hmSpinArc{to{transform:rotate(360deg)}}

/* ── CSS extraído de admin/home.php · bloco 3 ───────────────────────────── */
.admin-home-main{background:var(--BG);}
.admin-home-main #content{width:100%;max-width:none;}
.hm-ai-strip{margin:0 0 8px;padding:8px 10px;border:1px solid rgba(139,92,246,.28);border-radius:var(--R);background:linear-gradient(120deg,rgba(139,92,246,.10),rgba(14,165,233,.06));}
.hm-ai-strip-head{display:flex;align-items:center;gap:8px;min-width:0;}
.hm-ai-orb{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;flex:0 0 28px;color:#fff;background:linear-gradient(135deg,#8b5cf6,#0ea5e9);box-shadow:0 4px 14px rgba(139,92,246,.3);}
.hm-ai-strip-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;}
.hm-ai-strip-copy strong{font-size:11px;color:var(--T);}
.hm-ai-strip-copy small{font-size:9px;color:var(--MT);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hm-ai-panel{padding:8px 0 0;display:flex;flex-direction:column;gap:6px;}
.hm-ai-input{width:100%;resize:vertical;min-height:48px;background:var(--BG);border:1px solid var(--BD);border-radius:var(--r2);padding:7px 9px;color:var(--T);font:inherit;font-size:11px;}
.hm-ai-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.12);}
.hm-ai-panel-actions{display:flex;align-items:center;gap:8px;}
.hm-ai-status{flex:1;font-size:9px;color:var(--LT);}
.hm-ai-result{white-space:pre-wrap;max-height:180px;overflow:auto;padding:9px 10px;border:1px solid rgba(14,165,233,.25);border-radius:var(--r2);background:rgba(14,165,233,.06);font-size:11px;line-height:1.55;color:var(--T);}
.hm-issue-action,.hm-issue-dismiss{border:0;background:transparent;color:currentColor;cursor:pointer;font-size:9px;white-space:nowrap;padding:2px 4px;}
.hm-issue-action{font-weight:700;text-decoration:underline;}
.hm-issue-dismiss{opacity:.65;}
.hm-links-inline-titlebar{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;font-size:9px;color:var(--MT);cursor:pointer;border-top:1px solid var(--BD);}
.hm-links-inline-titlebar:hover{color:var(--A);background:rgba(14,165,233,.04);}
.hm-links-inline-body{display:flex;flex-direction:column;}
@media(max-width:768px){.hm-ai-strip-head{flex-wrap:wrap}.hm-ai-strip-copy{min-width:calc(100% - 44px);}.hm-ai-strip-head .hm-fc{flex:1;min-width:140px}.hm-ai-strip-head .hm-bkp-btn{margin-left:auto}.hm-ai-strip-copy small{white-space:normal}.hm-ai-panel-actions{align-items:flex-start;flex-direction:column}.hm-ai-panel-actions .hm-bkp-btn{align-self:flex-end}}

/* ── CSS extraído de admin/painel.php · bloco 1 ───────────────────────────── */
/* ─── Day Trade Style ─────────────────────────────────────────────────────── */
.dt-header { background:rgba(0,0,0,.4); border-bottom:1px solid var(--BD); padding:8px 20px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:11px; color:var(--MT); }
.dt-ticker { display:flex; align-items:center; gap:6px; padding:4px 10px; background:rgba(255,255,255,.04); border:1px solid var(--BD); border-radius:6px; font-family:'JetBrains Mono',monospace; font-size:11px; }
.dt-ticker-val { font-weight:800; font-size:14px; }
.dt-ticker-up { color:#22c55e; }
.dt-ticker-dn { color:#ef4444; }
.dt-ticker-neutral { color:#94a3b8; }
.dt-main { display:grid; grid-template-columns:1fr 320px; gap:14px; padding:14px 20px; height:calc(100vh - var(--TB-H,56px) - 54px); overflow:hidden; }
.dt-left { display:flex; flex-direction:column; gap:12px; overflow-y:auto; min-height:0; }
.dt-right { display:flex; flex-direction:column; gap:12px; overflow-y:auto; min-height:0; }
.dt-chart-card { background:rgba(0,0,0,.3); border:1px solid var(--BD); border-radius:10px; padding:14px; flex-shrink:0; }
.dt-chart-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:10px; flex-wrap:wrap; }
.dt-chart-title { font-size:12px; font-weight:700; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.dt-timeframe-btns { display:flex; gap:4px; flex-wrap:wrap; }
.dt-tf-btn { padding:3px 8px; border:1px solid var(--BD); border-radius:5px; font-size:10px; font-weight:700; cursor:pointer; background:transparent; color:var(--MT); transition:all .12s; font-family:inherit; }
.dt-tf-btn.active { background:var(--A); color:#fff; border-color:var(--A); }
.dt-mini-card { background:rgba(0,0,0,.35); border:1px solid var(--BD); border-radius:8px; padding:12px; }
.dt-mini-title { font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--LT); margin-bottom:8px; display:flex; align-items:center; gap:5px; }
.dt-domain-row { display:flex; align-items:center; gap:8px; padding:7px 0; border-bottom:1px solid rgba(255,255,255,.04); font-size:11px; }
.dt-domain-row:last-child { border-bottom:none; }
.dt-status-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.dt-ok  { background:#22c55e; box-shadow:0 0 6px #22c55e; }
.dt-er  { background:#ef4444; box-shadow:0 0 6px #ef4444; }
.dt-unk { background:#94a3b8; }
@media(max-width:1024px){ .dt-main { grid-template-columns:1fr; } .dt-right { display:grid; grid-template-columns:repeat(2,1fr); } }
@media(max-width:768px){ .dt-main { height:auto; overflow:visible; } .dt-right { grid-template-columns:1fr; } }

/* ─── Super-gráfico ───────────────────────────────────────────────────────── */
.dt-super-card { position:relative; }
.dt-metric-select { position:relative; }
.dt-metric-btn { display:flex; align-items:center; gap:7px; padding:5px 10px; border:1px solid var(--BD); border-radius:6px; background:rgba(255,255,255,.04); color:var(--T); font-size:12px; font-weight:700; cursor:pointer; font-family:inherit; }
.dt-metric-btn:hover { background:rgba(255,255,255,.08); }
.dt-metric-menu, .dt-domain-menu { display:none; position:absolute; top:calc(100% + 6px); left:0; z-index:40; background:#0d0d1a; border:1px solid var(--BD); border-radius:8px; padding:6px; min-width:230px; box-shadow:0 10px 30px rgba(0,0,0,.5); max-height:340px; overflow-y:auto; }
.dt-metric-menu.open, .dt-domain-menu.open { display:block; }
.dt-metric-item { display:flex; align-items:center; gap:8px; padding:7px 9px; border-radius:6px; font-size:12px; color:var(--MT); cursor:pointer; }
.dt-metric-item:hover { background:rgba(255,255,255,.06); color:var(--T); }
.dt-metric-item.active { background:rgba(14,165,233,.12); color:var(--A); font-weight:700; }
.dt-domain-filter { position:relative; }
.dt-domain-item { display:flex; align-items:center; gap:8px; padding:6px 9px; border-radius:6px; font-size:11px; color:var(--MT); }
.dt-domain-item:hover { background:rgba(255,255,255,.05); }
.dt-domain-item label { display:flex; align-items:center; gap:7px; flex:1; cursor:pointer; }
.dt-domain-menu-foot { border-top:1px solid var(--BD); margin-top:6px; padding-top:8px; display:flex; gap:6px; }
.dt-ext-add { display:flex; gap:5px; padding:6px 4px; border-top:1px solid var(--BD); margin-top:6px; }
.dt-ext-add input { flex:1; min-width:0; background:rgba(255,255,255,.05); border:1px solid var(--BD); border-radius:5px; color:var(--T); font-size:11px; padding:5px 7px; }
.dt-ext-row { display:flex; align-items:center; gap:6px; font-size:10px; color:var(--LT); padding:3px 4px; }
.dt-explain-panel { margin-top:10px; background:rgba(14,165,233,.06); border:1px solid rgba(14,165,233,.3); border-radius:8px; padding:10px 12px; }
.dt-explain-head { display:flex; align-items:center; gap:7px; font-size:11px; font-weight:700; color:var(--T); margin-bottom:6px; }
.dt-super-card.dt-fullscreen { position:fixed; inset:0; z-index:2000; border-radius:0; display:flex; flex-direction:column; background:#08080f; padding:18px 22px; overflow-y:auto; }
.dt-super-card.dt-fullscreen canvas { flex:1; }
.dt-note { font-size:10px; color:#f59e0b; margin-top:4px; }

/* ── CSS extraído de domini/backups.php · bloco 1 ───────────────────────────── */
.bk-progress-wrap { background: rgba(0,0,0,.3); border-radius: 10px; overflow: hidden; height: 14px; margin: 10px 0; }
.bk-progress-bar { height: 100%; background: linear-gradient(90deg, var(--A), #22c55e); border-radius: 10px; transition: width .4s ease; }
.bk-step { display: flex; align-items: center; gap: 8px; padding: 6px 0; font-size: 12px; color: var(--MT); border-bottom: 1px solid rgba(255,255,255,.04); }
.bk-step i { width: 16px; text-align: center; flex-shrink: 0; }
.bk-step.done i { color: #22c55e; }
.bk-step.running i { color: var(--A); animation: spin .8s linear infinite; }
.bk-step.err i { color: #ef4444; }
@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* ── CSS extraído de domini/explorador.php · bloco 1 ───────────────────────────── */
.bak-item{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--BD)}
.bak-item:last-child{border-bottom:none}
.bak-item-info{flex:1;min-width:0}
.bak-item-name{font-size:12.5px;font-weight:600;word-break:break-all}
.bak-item-meta{font-size:11px;color:var(--LT);margin-top:2px}
.bak-item-actions{display:flex;gap:4px;flex-shrink:0}
.fm-web-help{margin:8px 10px;padding:10px 12px;border:1px solid rgba(14,165,233,.25);background:rgba(14,165,233,.06);border-radius:8px;color:var(--MT);font-size:11px;line-height:1.55}
.fm-web-help strong{color:var(--T)}
#content{padding:0}
.fm-wrap{gap:0;height:calc(90vh - 115px);border:0;border-radius:0}
.fm-unibar{border:0;border-radius:0;border-bottom:1px solid var(--BD);padding:0 10px}
.ed-toolbar-group{display:flex;align-items:center;gap:3px}
.ed-toolbar-sep{width:1px;height:18px;background:var(--BD);margin:0 4px;flex-shrink:0}
.ed-info-badge{font-size:10.5px;color:var(--LT);background:rgba(255,255,255,.05);border:1px solid var(--BD);border-radius:4px;padding:1px 6px;font-family:monospace;white-space:nowrap;cursor:default}
.fm-unibar{display:flex;align-items:center;gap:2px;min-height:40px;padding:0 6px}
.fm-unibar-group{display:flex;align-items:center;gap:2px;flex-shrink:0}
.fm-unibar-divider{width:1px;height:20px;background:var(--BD);margin:0 6px;flex-shrink:0}
.fm-unibar .fm-act-btn{width:29px;height:29px;padding:0;justify-content:center;border-radius:6px;font-size:12.5px}
.fm-unibar .fm-act-btn span.fm-act-label{display:none}
.fm-unibar #fm-upload-zone{width:29px;height:29px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--BD);border-radius:6px;background:rgba(255,255,255,.06);color:var(--MT);font-size:12.5px;transition:all .15s}
.fm-unibar #fm-upload-zone:hover{background:rgba(255,255,255,.12);color:var(--T);border-color:var(--A)}
.fm-unibar-bc{font-size:12px;color:var(--MT)}
.fm-unibar-fname{font-weight:700}

/* ── CSS extraído de domini/explorador.php · bloco 2 ───────────────────────────── */
/* ── Layout principal do explorador ────────────────────────────────────────── */
.exp-wrap {
    display: flex;
    height: calc(100vh - var(--TB-H,56px) - 38px);
    overflow: hidden;
}
/* Árvore de arquivos (esquerda) */
.exp-tree {
    width: 260px;
    flex-shrink: 0;
    border-right: 1px solid var(--BD);
    overflow-y: auto;
    background: var(--SB-BG, #1a1a2e);
    display: flex;
    flex-direction: column;
}
.exp-tree-header {
    padding: 10px 12px;
    border-bottom: 1px solid var(--BD);
    display: flex;
    align-items: center;
    gap: 7px;
    flex-shrink: 0;
    background: rgba(0,0,0,.2);
}
.exp-tree-search {
    padding: 8px 10px;
    border-bottom: 1px solid var(--BD);
    flex-shrink: 0;
}
.exp-tree-search input {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid var(--BD);
    border-radius: 6px;
    color: var(--T);
    font-size: 11px;
    padding: 5px 8px;
    outline: none;
    box-sizing: border-box;
}
.exp-tree-body { flex: 1; overflow-y: auto; padding: 6px 0; }
.exp-tree-item {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px 10px;
    font-size: 11.5px;
    color: var(--MT);
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-radius: 5px;
    margin: 1px 4px;
    transition: background .1s;
}
.exp-tree-item:hover { background: rgba(255,255,255,.05); color: var(--T); }
.exp-tree-item.active { background: rgba(14,165,233,.15); color: var(--A); }
.exp-tree-item i { font-size: 11px; flex-shrink: 0; }
.exp-tree-item .exp-item-name { overflow: hidden; text-overflow: ellipsis; flex: 1; }

/* Painel central — editor / visualizador */
.exp-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
}
.exp-toolbar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-bottom: 1px solid var(--BD);
    background: rgba(0,0,0,.15);
    flex-shrink: 0;
    flex-wrap: wrap;
}
.exp-breadcrumb {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--LT);
    flex: 1;
    overflow: hidden;
}
.exp-breadcrumb span { color: var(--A); cursor: pointer; }
.exp-breadcrumb span:hover { text-decoration: underline; }

/* PAINEL DE CÓDIGO: ocupa TODA a área restante */
.exp-editor-wrap {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-height: 0;
}
.exp-editor-tabs {
    display: flex;
    align-items: center;
    gap: 0;
    border-bottom: 1px solid var(--BD);
    background: rgba(0,0,0,.1);
    flex-shrink: 0;
}
.exp-editor-tab {
    padding: 6px 14px;
    font-size: 11px;
    font-weight: 600;
    color: var(--LT);
    cursor: pointer;
    border-right: 1px solid var(--BD);
    transition: all .12s;
    white-space: nowrap;
}
.exp-editor-tab:hover { background: rgba(255,255,255,.05); color: var(--T); }
.exp-editor-tab.active { background: rgba(14,165,233,.1); color: var(--A); border-bottom: 2px solid var(--A); }

.exp-editor-content {
    flex: 1;
    overflow: hidden;
    position: relative;
    min-height: 0;
}
#exp-code-editor {
    width: 100%;
    height: 100%;
    background: #0d1117;
    color: #c9d1d9;
    font-family: 'JetBrains Mono', monospace;
    font-size: 13px;
    padding: 14px;
    border: none;
    outline: none;
    resize: none;
    line-height: 1.6;
    tab-size: 2;
    box-sizing: border-box;
    overflow: auto;
}

/* Iframe web — ocupa toda a área */
#exp-web-frame {
    width: 100%;
    height: 100%;
    border: none;
    display: none;
    background: #fff;
}

/* Estado vazio */
.exp-empty-state {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--LT);
    font-size: 13px;
    gap: 12px;
    text-align: center;
    padding: 40px;
}
.exp-empty-state i { font-size: 48px; opacity: .25; }

/* Arquivos na lista (painel central quando nenhum arquivo aberto) */
.exp-file-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 8px;
    padding: 12px;
    overflow-y: auto;
}
.exp-file-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 14px 10px;
    background: rgba(255,255,255,.02);
    border: 1px solid var(--BD);
    border-radius: 8px;
    cursor: pointer;
    font-size: 11px;
    text-align: center;
    transition: all .15s;
    word-break: break-all;
    color: var(--MT);
}
.exp-file-card:hover { background: rgba(255,255,255,.06); border-color: var(--A); color: var(--T); }
.exp-file-card i { font-size: 28px; }

/* Mobile */
@media(max-width:768px) {
    .exp-tree { width: 200px; }
    .exp-file-grid { grid-template-columns: repeat(auto-fill, minmax(120px,1fr)); }
}
@media(max-width:480px) {
    .exp-tree { display: none; }
    .exp-wrap { flex-direction: column; }
    .exp-main { height: 100%; }
}

/* ── CSS extraído de domini/painel.php · bloco 1 ───────────────────────────── */
.dt-ticker{display:flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(255,255,255,.04);border:1px solid var(--BD);border-radius:6px;font-family:'JetBrains Mono',monospace;font-size:11px}
.dt-ticker-val{font-weight:800;font-size:13px}
.dt-ok{color:#22c55e}.dt-er{color:#ef4444}.dt-neutral{color:#94a3b8}.dt-warn{color:#f59e0b}

/* ── CSS extraído de views/agent.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   AGENTE IA v5.0 — Design Revolucionário
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Container Principal ──────────────────────────────────────────────────── */
.agent-page {
    display: grid;
    grid-template-columns: 330px 1fr;
    gap: 10px;
    height: calc(85vh - 100px);
    min-height: 526px;
    max-height: calc(90vh - 100px);
}

@media(max-width: 900px) {
    .agent-page {
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr;
        height: auto;
        max-height: none;
    }
}

/* ── Sidebar ───────────────────────────────────────────────────────────────── */
.agent-sidebar {
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow-y: auto;
    padding-right: 4px;
}
.agent-sidebar::-webkit-scrollbar {
    width: 4px;
}
.agent-sidebar::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}

.agent-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    padding: 5px 15px;
    transition: border-color .2s;
}
.agent-card:hover {
    border-color: rgba(14, 165, 233, .15);
}
.agent-card-title {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--LT);
    margin: 0 0 10px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.agent-card-title i {
    color: var(--A);
}

/* ── Status IA ── */
.agent-status-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.agent-ia-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border-radius: 99px;
    font-size: 11px;
    font-weight: 700;
}
.agent-ia-badge.active {
    background: rgba(34, 197, 94, .1);
    border: 1px solid rgba(34, 197, 94, .25);
    color: #22c55e;
}
.agent-ia-badge.inactive {
    background: rgba(239, 68, 68, .08);
    border: 1px solid rgba(239, 68, 68, .2);
    color: #ef4444;
}
.agent-ia-badge .dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    display: inline-block;
}
.agent-ia-badge.active .dot {
    background: #22c55e;
    animation: pulse-dot 2s infinite;
}
.agent-ia-badge.inactive .dot {
    background: #ef4444;
}
@keyframes pulse-dot {
    0%,100% { opacity: 1; }
    50% { opacity: .4; }
}

/* ── Métricas ── */
.agent-metrics-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6px;
}
.agent-metric-item {
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 8px 6px;
    text-align: center;
}
.agent-metric-lbl {
    font-size: 8.5px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 700;
}
.agent-metric-val {
    font-size: 15px;
    font-weight: 800;
    color: var(--T);
    line-height: 1.3;
}
.agent-metric-val.good { color: #22c55e; }
.agent-metric-val.warn { color: #f59e0b; }
.agent-metric-val.bad  { color: #ef4444; }

/* ── Raízes ── */
.agent-root-list {
    max-height: 140px;
    overflow-y: auto;
}
.agent-root-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(255,255,255,.03);
    font-size: 12px;
}
.agent-root-item:last-child {
    border-bottom: none;
}
.agent-root-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}
.agent-root-name {
    flex: 1;
    font-weight: 600;
    color: var(--T);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.agent-root-bkp {
    font-size: 10px;
    color: var(--LT);
    white-space: nowrap;
}

/* ── Insights Rápidos ── */
.agent-insight-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}
.agent-insight-item {
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 10px 12px;
    text-align: center;
    transition: all .15s;
    cursor: default;
}
.agent-insight-item:hover {
    border-color: rgba(14, 165, 233, .2);
}
.agent-insight-item .insight-icon {
    font-size: 18px;
    margin-bottom: 4px;
}
.agent-insight-item .insight-val {
    font-size: 18px;
    font-weight: 800;
    color: var(--T);
}
.agent-insight-item .insight-lbl {
    font-size: 9px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* ── Ações Rápidas ── */
.agent-actions-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}
.agent-action-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    cursor: pointer;
    font-size: 11px;
    font-weight: 600;
    color: var(--T);
    transition: all .18s;
    text-align: left;
    font-family: 'Outfit', sans-serif;
}
.agent-action-btn:hover {
    border-color: var(--A);
    color: var(--A);
    background: rgba(14, 165, 233, .04);
    transform: translateY(-1px);
}
.agent-action-btn i {
    width: 14px;
    flex-shrink: 0;
}

/* ── Chat ── */
.agent-chat-wrap {
    display: flex;
    flex-direction: column;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    overflow: hidden;
}
.agent-chat-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-bottom: 1px solid var(--BD);
    background: rgba(0,0,0,.1);
    flex-shrink: 0;
}
.agent-chat-head-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 14px;
    color: var(--T);
    flex: 1;
}
.agent-head-pulse {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--A);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, .15);
    animation: agentPulse 2s infinite;
    flex-shrink: 0;
}
@keyframes agentPulse {
    0%,100% { box-shadow: 0 0 0 3px rgba(14, 165, 233, .15); }
    50% { box-shadow: 0 0 0 6px rgba(14, 165, 233, .05); }
}
.agent-chat-actions {
    display: flex;
    gap: 4px;
}
.agent-chat-actions button {
    background: none;
    border: 1px solid transparent;
    border-radius: 6px;
    color: var(--LT);
    cursor: pointer;
    padding: 4px 8px;
    font-size: 13px;
    transition: all .15s;
}
.agent-chat-actions button:hover {
    color: var(--T);
    border-color: var(--BD);
}

/* ── Mensagens ── */
#agent-msgs {
    flex: 1;
    overflow-y: auto;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    scroll-behavior: smooth;
}
#agent-msgs::-webkit-scrollbar {
    width: 4px;
}
#agent-msgs::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}

.agent-msg {
    display: flex;
    flex-direction: column;
    max-width: 92%;
    animation: msgSlideIn .3s ease;
}
@keyframes msgSlideIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.agent-msg-user {
    align-self: flex-end;
    align-items: flex-end;
}
.agent-msg-ai {
    align-self: flex-start;
    align-items: flex-start;
}
.agent-msg-system {
    align-self: center;
    max-width: 80%;
}

.agent-bubble {
    padding: 10px 16px;
    border-radius: 12px;
    font-size: 13.5px;
    line-height: 1.7;
    color: var(--T);
    word-break: break-word;
    position: relative;
}
.agent-msg-user .agent-bubble {
    background: var(--A);
    color: #fff;
    border-bottom-right-radius: 4px;
}
.agent-msg-ai .agent-bubble {
    background: var(--BG);
    border: 1px solid var(--BD);
    border-bottom-left-radius: 4px;
}
.agent-msg-system .agent-bubble {
    background: rgba(14, 165, 233, .04);
    border: 1px solid rgba(14, 165, 233, .08);
    font-size: 12px;
    color: var(--LT);
    text-align: center;
    border-radius: 99px;
    padding: 6px 16px;
}

.agent-bubble .msg-avatar {
    font-size: 20px;
    margin-right: 6px;
}
.agent-bubble .msg-time {
    font-size: 10px;
    color: var(--LT);
    margin-top: 4px;
    display: block;
}
.agent-msg-user .msg-time {
    color: rgba(255,255,255,.6);
}

/* ── Conteúdo das mensagens ── */
.agent-bubble h2, .agent-bubble h3, .agent-bubble h4 {
    margin: .5em 0 .2em;
    font-weight: 700;
}
.agent-bubble h2 { font-size: 1.1em; color: var(--A); }
.agent-bubble h3 { font-size: 1em; }
.agent-bubble ul, .agent-bubble ol {
    margin: .4em 0;
    padding-left: 20px;
}
.agent-bubble li {
    margin: 2px 0;
}
.agent-bubble pre {
    background: #0a0a18;
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 12px 16px;
    overflow-x: auto;
    margin: .5em 0;
    font-size: 12px;
    line-height: 1.6;
    position: relative;
}
.agent-bubble pre code {
    font-family: 'JetBrains Mono', monospace;
    color: #c9d1d9;
}
.agent-bubble .code-copy {
    position: absolute;
    top: 6px;
    right: 6px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 4px;
    color: var(--LT);
    padding: 2px 8px;
    font-size: 10px;
    cursor: pointer;
    transition: all .15s;
}
.agent-bubble .code-copy:hover {
    background: var(--A);
    color: #fff;
}
.agent-bubble blockquote {
    border-left: 3px solid var(--A);
    padding: 6px 14px;
    margin: .5em 0;
    background: rgba(14, 165, 233, .04);
    border-radius: 0 6px 6px 0;
}
.agent-bubble table {
    width: 100%;
    border-collapse: collapse;
    margin: .5em 0;
    font-size: 12px;
}
.agent-bubble th, .agent-bubble td {
    border: 1px solid var(--BD);
    padding: 6px 10px;
    text-align: left;
}
.agent-bubble th {
    background: rgba(0,0,0,.1);
    font-weight: 700;
}
.agent-bubble .status-badge {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 99px;
    font-size: 10px;
    font-weight: 700;
}
.agent-bubble .status-badge.ok { background: rgba(34,197,94,.12); color: #22c55e; }
.agent-bubble .status-badge.warn { background: rgba(245,158,11,.12); color: #f59e0b; }
.agent-bubble .status-badge.er { background: rgba(239,68,68,.12); color: #ef4444; }
.agent-bubble .status-badge.info { background: rgba(14,165,233,.12); color: #0ea5e9; }

/* ── Typing Indicator ── */
.agent-typing {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px !important;
}
.agent-typing span {
    width: 6px;
    height: 6px;
    background: var(--A);
    border-radius: 50%;
    animation: agentDot 1.3s ease-in-out infinite;
}
.agent-typing span:nth-child(2) { animation-delay: .2s; }
.agent-typing span:nth-child(3) { animation-delay: .4s; }
@keyframes agentDot {
    0%,60%,100% { transform: translateY(0); }
    30% { transform: translateY(-8px); }
}

/* ── Input ── */
.agent-inp-area {
    padding: 10px 16px;
    border-top: 1px solid var(--BD);
    background: rgba(0,0,0,.05);
    display: flex;
    gap: 8px;
    align-items: flex-end;
    flex-shrink: 0;
}
#agent-input {
    flex: 1;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    color: var(--T);
    resize: none;
    min-height: 38px;
    max-height: 120px;
    font-family: 'Outfit', sans-serif;
    line-height: 1.5;
    transition: border-color .2s;
}
#agent-input:focus {
    outline: none;
    border-color: var(--A);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, .06);
}
#agent-input::placeholder {
    color: var(--LT);
    opacity: .6;
}
.agent-send-btn {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    border: none;
    background: var(--A);
    color: #fff;
    cursor: pointer;
    transition: all .15s;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.agent-send-btn:hover {
    opacity: .85;
    transform: scale(.95);
}
.agent-send-btn:disabled {
    opacity: .4;
    cursor: default;
    transform: none;
}
.agent-send-btn i {
    font-size: 16px;
}

/* ── Quick Suggestions ── */
.agent-suggestions {
    display: flex;
    gap: 6px;
    padding: 6px 16px 10px;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.agent-suggestion {
    padding: 4px 12px;
    border-radius: 99px;
    border: 1px solid var(--BD);
    background: rgba(255,255,255,.02);
    color: var(--MT);
    font-size: 11px;
    cursor: pointer;
    transition: all .15s;
    font-family: 'Outfit', sans-serif;
    white-space: nowrap;
}
.agent-suggestion:hover {
    border-color: var(--A);
    color: var(--A);
    background: rgba(14, 165, 233, .04);
}

/* ── No key banner ── */
.agent-nokey-banner {
    background: rgba(239,68,68,.06);
    border: 1px solid rgba(239,68,68,.15);
    border-radius: 10px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12.5px;
    color: #ef4444;
    margin-bottom: 14px;
}
.agent-nokey-banner i {
    flex-shrink: 0;
}
.agent-nokey-banner a {
    color: #ef4444;
    font-weight: 700;
}

/* ── Responsive ── */
@media (max-width: 700px) {
    .agent-page {
        gap: 12px;
    }
    .agent-metrics-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .agent-insight-grid {
        grid-template-columns: 1fr 1fr;
    }
    .agent-actions-grid {
        grid-template-columns: 1fr 1fr;
    }
    .agent-chat-head-title span:last-child {
        display: none;
    }
    .agent-suggestions {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 6px;
    }
    .agent-suggestion {
        white-space: nowrap;
        flex-shrink: 0;
    }
}
@media (max-width: 480px) {
    .agent-metrics-grid {
        grid-template-columns: 1fr 1fr;
    }
    .agent-insight-grid {
        grid-template-columns: 1fr 1fr;
    }
    .agent-actions-grid {
        grid-template-columns: 1fr 1fr;
    }
    #agent-msgs {
        padding: 12px;
    }
    .agent-bubble {
        font-size: 12.5px;
        padding: 8px 12px;
    }
    .agent-inp-area {
        padding: 8px 10px;
    }
    .agent-suggestions {
        padding: 4px 10px 6px;
    }
}

/* ── CSS extraído de views/agent.php · bloco 2 ───────────────────────────── */
.agent-findings-wrap{display:flex;flex-direction:column;gap:12px}
.agent-findings-head{display:flex;align-items:center;gap:10px;padding:14px 18px;background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);flex-wrap:wrap}
.agent-findings-head h3{font-size:15px;font-weight:800;color:var(--T);margin:0;flex:1}
.agent-findings-empty{text-align:center;padding:60px 20px;color:var(--LT)}
.agent-findings-table-wrap{background:var(--CARD);border:1px solid var(--BD);border-radius:var(--R);overflow:auto}
.agent-findings-table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:600px}
.agent-findings-table th{padding:10px 14px;text-align:left;color:var(--LT);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--BD);background:rgba(0,0,0,.12);white-space:nowrap}
.agent-findings-table td{padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.035);color:var(--MT);vertical-align:top}
.agent-findings-table tbody tr:hover{background:rgba(14,165,233,.04)}
.agent-findings-table tbody tr:last-child td{border-bottom:none}
.agent-findings-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700;white-space:nowrap}
.agent-findings-badge.ok{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);color:#22c55e}
.agent-findings-badge.er{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);color:#ef4444}
.agent-findings-badge.wn{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.25);color:#f59e0b}
.agent-findings-content{color:var(--T);font-size:12px;line-height:1.65;white-space:pre-wrap;max-width:520px}
.agent-findings-meta{font-size:10px;color:var(--LT);margin-top:3px}

/* ── CSS extraído de views/agent.php · bloco 3 ───────────────────────────── */
@keyframes spin { to { transform: rotate(360deg); } }

/* ── CSS extraído de views/backups.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   BACKUPS v6.0 — Design Revolucionário
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Container ────────────────────────────────────────────────────────────── */
.bkp-container {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 100px);
    min-height: 500px;
    max-height: calc(100vh - 100px);
}

/* ── Header ────────────────────────────────────────────────────────────────── */
.bkp-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0 16px 0;
    flex-wrap: wrap;
    gap: 12px;
    flex-shrink: 0;
}
.bkp-header .title {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 20px;
    font-weight: 800;
    color: var(--T);
}
.bkp-header .title i {
    color: var(--A);
}
.bkp-header .sub {
    font-size: 13px;
    color: var(--LT);
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.bkp-header .actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* ── Stats Grid ───────────────────────────────────────────────────────────── */
.bkp-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
    margin-bottom: 16px;
    flex-shrink: 0;
}
.bkp-stat {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: all .2s ease;
}
.bkp-stat:hover {
    border-color: rgba(14,165,233,.25);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.15);
}
.bkp-stat .icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}
.bkp-stat .value {
    font-size: 18px;
    font-weight: 800;
    color: var(--T);
    line-height: 1.2;
}
.bkp-stat .label {
    font-size: 9.5px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 600;
}

/* ── Toolbar ───────────────────────────────────────────────────────────────── */
.bkp-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    margin-bottom: 12px;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.bkp-toolbar .search {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 180px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 0 12px;
}
.bkp-toolbar .search i {
    color: var(--LT);
    font-size: 13px;
}
.bkp-toolbar .search input {
    background: none;
    border: none;
    outline: none;
    color: var(--T);
    font-size: 13px;
    width: 100%;
    padding: 8px 0;
    font-family: 'Outfit', sans-serif;
}
.bkp-toolbar .search input::placeholder {
    color: var(--LT);
    opacity: .6;
}
.bkp-toolbar .filters {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}
.bkp-toolbar .filter-btn {
    padding: 5px 12px;
    border-radius: 6px;
    border: 1px solid var(--BD);
    background: transparent;
    color: var(--MT);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    font-family: 'Outfit', sans-serif;
    white-space: nowrap;
}
.bkp-toolbar .filter-btn:hover {
    background: var(--CARD-H);
    color: var(--T);
}
.bkp-toolbar .filter-btn.active {
    background: rgba(14,165,233,.12);
    color: var(--A);
    border-color: var(--A);
}
.bkp-toolbar .count {
    font-size: 11px;
    font-weight: 600;
    color: var(--LT);
    padding: 3px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 20px;
    white-space: nowrap;
}

/* ── Bulk Bar ──────────────────────────────────────────────────────────────── */
.bkp-bulk {
    display: none;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    background: rgba(14,165,233,.05);
    border: 1px solid rgba(14,165,233,.15);
    border-radius: var(--R);
    margin-bottom: 12px;
    flex-wrap: wrap;
    flex-shrink: 0;
    animation: bkpFadeIn .25s ease;
}
.bkp-bulk.show { display: flex; }
@keyframes bkpFadeIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ── Grid ──────────────────────────────────────────────────────────────────── */
.bkp-grid {
    flex: 1;
    overflow-y: auto;
    padding-right: 4px;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
    align-content: start;
}
.bkp-grid::-webkit-scrollbar { width: 5px; }
.bkp-grid::-webkit-scrollbar-track { background: transparent; }
.bkp-grid::-webkit-scrollbar-thumb { background: var(--BD); border-radius: 99px; }
.bkp-grid::-webkit-scrollbar-thumb:hover { background: var(--A); }

/* ── Card ──────────────────────────────────────────────────────────────────── */
.bkp-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    overflow: hidden;
    transition: all .2s ease;
    position: relative;
}
.bkp-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 40px rgba(0,0,0,.2);
    border-color: rgba(14,165,233,.2);
}
.bkp-card .top {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px 10px;
}
.bkp-card .top .icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.bkp-card .top .info {
    flex: 1;
    min-width: 0;
}
.bkp-card .top .info .name {
    font-size: 13px;
    font-weight: 700;
    color: var(--T);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.bkp-card .top .info .meta {
    font-size: 11px;
    color: var(--LT);
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 2px;
}
.bkp-card .top .info .meta .badge {
    font-size: 9px;
    font-weight: 700;
    padding: 1px 8px;
    border-radius: 99px;
    text-transform: uppercase;
}
.bkp-card .top .info .meta .badge.full { background: rgba(14,165,233,.1); color: #0ea5e9; border: 1px solid rgba(14,165,233,.15); }
.bkp-card .top .info .meta .badge.db_only { background: rgba(168,85,247,.1); color: #a855f7; border: 1px solid rgba(168,85,247,.15); }
.bkp-card .top .info .meta .badge.files_only { background: rgba(245,158,11,.1); color: #f59e0b; border: 1px solid rgba(245,158,11,.15); }
.bkp-card .top .actions {
    display: flex;
    gap: 2px;
    flex-shrink: 0;
}
.bkp-card .top .actions button {
    background: none;
    border: 1px solid transparent;
    border-radius: 5px;
    color: var(--LT);
    cursor: pointer;
    padding: 4px 6px;
    font-size: 12px;
    transition: all .12s;
}
.bkp-card .top .actions button:hover {
    background: var(--CARD-H);
    color: var(--T);
    border-color: var(--BD);
}
.bkp-card .top .actions .dl { color: #22c55e; }
.bkp-card .top .actions .dl:hover { background: rgba(34,197,94,.08); border-color: rgba(34,197,94,.2); }
.bkp-card .top .actions .restore { color: #f59e0b; }
.bkp-card .top .actions .restore:hover { background: rgba(245,158,11,.08); border-color: rgba(245,158,11,.2); }
.bkp-card .top .actions .email { color: #a855f7; }
.bkp-card .top .actions .email:hover { background: rgba(168,85,247,.08); border-color: rgba(168,85,247,.2); }
.bkp-card .top .actions .del { color: #ef4444; }
.bkp-card .top .actions .del:hover { background: rgba(239,68,68,.08); border-color: rgba(239,68,68,.2); }
.bkp-card .body {
    padding: 0 16px 12px;
}
.bkp-card .body .size {
    font-size: 13px;
    font-weight: 700;
    color: var(--T);
}
.bkp-card .body .detail {
    font-size: 11px;
    color: var(--LT);
    margin-top: 2px;
}
.bkp-card .check {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: 2px solid var(--BD);
    background: var(--BG);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .15s;
    opacity: 0;
}
.bkp-card:hover .check { opacity: 1; }
.bkp-card .check.checked { background: var(--A); border-color: var(--A); opacity: 1; }
.bkp-card .check i { font-size: 10px; color: #fff; opacity: 0; transition: opacity .15s; }
.bkp-card .check.checked i { opacity: 1; }
.bkp-card .bar {
    height: 3px;
    background: var(--BG);
    margin: 0 16px 8px;
    border-radius: 99px;
    overflow: hidden;
}
.bkp-card .bar .fill {
    height: 100%;
    border-radius: 99px;
    transition: width .6s ease;
}

/* ── Empty ────────────────────────────────────────────────────────────────── */
.bkp-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    gap: 12px;
    color: var(--LT);
    text-align: center;
    grid-column: 1 / -1;
}
.bkp-empty i { font-size: 56px; opacity: .15; }
.bkp-empty .title { font-size: 20px; font-weight: 800; color: var(--MT); }
.bkp-empty .desc { font-size: 14px; max-width: 400px; }

/* ── MODAL DE PROGRESSO PREMIUM ───────────────────────────────────────────── */
.bkp-progress .modal { max-width: 480px; border-radius: 20px; background: var(--CARD); overflow: hidden; box-shadow: 0 32px 80px rgba(0,0,0,.5); border: 1px solid rgba(255,255,255,.06); }
.bkp-progress .modal-head { padding: 20px 24px; border-bottom: 1px solid rgba(255,255,255,.06); background: linear-gradient(135deg, rgba(14,165,233,.08), rgba(168,85,247,.05)); }
.bkp-progress .modal-body { padding: 32px 28px 28px; text-align: center; }

.bkp-ring {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 20px;
}
.bkp-ring svg { width: 120px; height: 120px; transform: rotate(-90deg); }
.bkp-ring .bg { fill: none; stroke: rgba(255,255,255,.04); stroke-width: 7; }
.bkp-ring .progress {
    fill: none;
    stroke: url(#ring-grad);
    stroke-width: 7;
    stroke-linecap: round;
    stroke-dasharray: 339.292;
    stroke-dashoffset: 339.292;
    transition: stroke-dashoffset .5s cubic-bezier(.4,0,.2,1);
    filter: drop-shadow(0 0 8px rgba(14,165,233,.3));
}
.bkp-ring .center {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.bkp-ring .center .pct { font-size: 28px; font-weight: 900; color: var(--T); line-height: 1; }
.bkp-ring .center .lbl { font-size: 10px; color: var(--LT); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; margin-top: 4px; }

.bkp-steps {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 18px 0 20px;
    text-align: left;
}
.bkp-step {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 12px;
    border-radius: 10px;
    transition: all .4s;
}
.bkp-step .dot {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    border: 2px solid var(--BD);
    transition: all .4s;
    flex-shrink: 0;
}
.bkp-step .text { font-size: 12.5px; color: var(--LT); font-weight: 600; transition: color .3s; }
.bkp-step .status { margin-left: auto; font-size: 10px; font-weight: 700; text-transform: uppercase; opacity: 0; transition: all .3s; }
.bkp-step.active { opacity: 1; }
.bkp-step.active .dot { border-color: var(--A); background: rgba(14,165,233,.08); animation: stepPulse 1.5s ease-in-out infinite; }
.bkp-step.active .text { color: var(--T); }
.bkp-step.active .status { color: var(--A); opacity: 1; }
.bkp-step.done { opacity: 1; }
.bkp-step.done .dot { border-color: #22c55e; background: rgba(34,197,94,.08); }
.bkp-step.done .text { color: #22c55e; }
.bkp-step.done .status { color: #22c55e; opacity: 1; }

.bkp-bar { background: rgba(255,255,255,.04); border-radius: 99px; height: 6px; overflow: hidden; margin: 0 0 6px; }
.bkp-bar .fill { height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--P), var(--A)); width: 0%; transition: width .5s cubic-bezier(.4,0,.2,1); }
.bkp-labels { display: flex; justify-content: space-between; font-size: 11px; color: var(--LT); font-weight: 600; }

.bkp-result { display: none; margin-top: 18px; padding: 14px 18px; border-radius: 12px; animation: resultIn .5s cubic-bezier(.4,0,.2,1); }
.bkp-result.show { display: block; }
.bkp-result.success { background: rgba(34,197,94,.06); border: 1px solid rgba(34,197,94,.15); }
.bkp-result.success .msg { color: #22c55e; }
.bkp-result.error { background: rgba(239,68,68,.06); border: 1px solid rgba(239,68,68,.15); }
.bkp-result.error .msg { color: #ef4444; }
.bkp-result .msg { font-size: 14px; font-weight: 700; }
.bkp-result .detail { font-size: 12.5px; color: var(--LT); margin-top: 4px; }

.bkp-download {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 16px;
    padding: 14px 28px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--P), var(--A));
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    transition: all .3s;
    width: 100%;
    box-sizing: border-box;
}
.bkp-download:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(14,165,233,.3); }
.bkp-download.show { display: flex; animation: btnIn .5s cubic-bezier(.4,0,.2,1); }
.bkp-download .icon { font-size: 20px; animation: bounce 2s ease-in-out infinite; }
@keyframes bounce { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }

@keyframes stepPulse { 0%,100% { box-shadow: 0 0 0 0 rgba(14,165,233,.2); } 50% { box-shadow: 0 0 0 8px rgba(14,165,233,0); } }
@keyframes resultIn { 0% { opacity: 0; transform: translateY(20px) scale(.96); } 100% { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes btnIn { 0% { opacity: 0; transform: translateY(20px) scale(.9); } 100% { opacity: 1; transform: translateY(0) scale(1); } }

/* ── Outros Modais ────────────────────────────────────────────────────────── */
.bkp-type-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
}
.bkp-type-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18px 10px;
    background: rgba(255,255,255,.02);
    border: 2px solid var(--BD);
    border-radius: 10px;
    cursor: pointer;
    transition: all .15s;
    text-align: center;
    user-select: none;
}
.bkp-type-card:hover { border-color: var(--A); background: rgba(14,165,233,.04); }
.bkp-type-card.active { border-color: var(--A); background: rgba(14,165,233,.08); }
.bkp-type-card i { font-size: 24px; margin-bottom: 8px; }
.bkp-type-card .name { font-weight: 700; font-size: 13px; color: var(--T); }
.bkp-type-card .desc { font-size: 10px; color: var(--LT); margin-top: 3px; }

.bkp-recipient {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
}
.bkp-recipient .avatar {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
}
.bkp-recipient .info { flex: 1; min-width: 0; }
.bkp-recipient .info .name { font-size: 13px; font-weight: 600; color: var(--T); }
.bkp-recipient .info .email { font-size: 11px; color: var(--LT); }

/* ── Responsive ────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .bkp-container { height: auto; max-height: none; }
    .bkp-stats { grid-template-columns: 1fr 1fr; }
    .bkp-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
    .bkp-toolbar { padding: 8px 12px; }
    .bkp-toolbar .search { min-width: 0; }
    .bkp-toolbar .filters { overflow-x: auto; flex-wrap: nowrap; }
    .bkp-toolbar .filter-btn { font-size: 10px; padding: 4px 8px; }
    .bkp-header .title { font-size: 17px; }
    .bkp-progress .modal-body { padding: 24px 16px 20px; }
    .bkp-ring { width: 100px; height: 100px; }
    .bkp-ring svg { width: 100px; height: 100px; }
    .bkp-ring .center .pct { font-size: 22px; }
    .bkp-step { padding: 6px 10px; font-size: 11px; }
    .bkp-step .dot { width: 24px; height: 24px; font-size: 9px; }
}
@media (max-width: 480px) {
    .bkp-stats { grid-template-columns: 1fr 1fr; gap: 8px; }
    .bkp-stat { padding: 10px 12px; }
    .bkp-stat .value { font-size: 15px; }
    .bkp-stat .icon { width: 32px; height: 32px; font-size: 14px; }
    .bkp-grid { grid-template-columns: 1fr; }
    .bkp-type-grid { grid-template-columns: 1fr; }
}

/* ── CSS extraído de views/configuracoes.php · bloco 1 ───────────────────────────── */
/* ── BARRA DE ABAS PRINCIPAL ── */
.cfg-tabs {
    display: flex;
    align-items: flex-end;
    gap: 2px;
    min-height: 38px;
    padding: 4px 14px 0 14px;
    background: rgba(9,9,21,.96);
    border-bottom: 2px solid var(--BD);
    overflow-x: auto;
    scrollbar-width: none;
}

.cfg-tab {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 29px;
    padding: 6px 14px 8px 14px;
    border: 1px solid transparent;
    border-bottom: 2px solid transparent;
    border-radius: 6px 6px 0 0;
    background: transparent;
    color: var(--MT);
    opacity: 0.5;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.25s ease;
    margin-bottom: -1px;
    position: relative;
    top: 2px;
    cursor: pointer;
    font-family: inherit;
}

.cfg-tab:hover {
    color: var(--T);
    background: rgba(255,255,255,.04);
    opacity: 0.8;
}

.cfg-tab.active {
    color: var(--A);
    background: rgba(14,165,233,.08);
    border-color: var(--BD);
    border-bottom-color: var(--A);
    opacity: 1;
}

/* ── CONTAINER COM ROLAGEM ── */
.cfg-content {
    flex: 1;
    overflow-y: auto;
    padding: 0 14px 20px 14px;
    max-height: calc(100vh - 180px);
    scroll-behavior: smooth;
}

/* ── PAINÉIS DAS ABAS ── */
.cfg-panel {
    display: none;
    padding-top: 20px;
    animation: cfgFadeIn .18s ease;
}

.cfg-panel.active {
    display: block;
}

@keyframes cfgFadeIn {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ── SUB-ABAS DO EMAIL ── */
.gest-panel { display: none; }
.gest-panel.active { display: block; }

.ecfg-tab {
    background: none;
    border: none;
    border-radius: 7px;
    padding: 7px 14px;
    font-size: 12px;
    font-weight: 600;
    color: var(--MT);
    cursor: pointer;
    transition: all .15s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
}

.ecfg-tab:hover { background: rgba(255,255,255,.07); color: var(--T); }
.ecfg-tab.active { background: var(--A); color: #fff; }

/* ── SUB-ABAS DO MODAL USUÁRIO ── */
.eu-tab {
    padding: 7px 14px;
    border-radius: 7px 7px 0 0;
    border: none;
    border-bottom: 2px solid transparent;
    background: none;
    color: var(--LT);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-family: inherit;
    margin-bottom: -1px;
}

.eu-tab:hover { color: var(--T); }
.eu-tab.active { color: var(--A)!important; border-bottom-color: var(--A)!important; background: var(--BG)!important; }

.eu-pane { display: none; animation: prfFade .15s ease; }
.eu-pane.active { display: block; }

@keyframes prfFade {
    from { opacity: 0; transform: translateY(3px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ── OUTROS ESTILOS ── */
.smtp-preset-btn {
    background: rgba(255,255,255,.04);
    border: 1px solid var(--BD);
    color: var(--T);
    border-radius: 8px;
    padding: 6px 14px;
    font-size: 12px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: all .12s;
    font-weight: 600;
}
.smtp-preset-btn:hover { background: rgba(255,255,255,.09); border-color: var(--A); color: var(--A); }

.rcpt-list-pro { display: flex; flex-direction: column; gap: 6px; }
.rcpt-item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--BD);
    border-radius: 9px;
    padding: 9px 14px;
    font-size: 13px;
    transition: border-color .15s;
}
.rcpt-item:hover { border-color: rgba(255,255,255,.15); }
.rcpt-item .rcpt-remove {
    margin-left: auto;
    background: none;
    border: none;
    color: #ef4444;
    cursor: pointer;
    padding: 3px 8px;
    border-radius: 5px;
    opacity: .6;
    transition: opacity .12s;
}
.rcpt-item .rcpt-remove:hover { opacity: 1; background: rgba(239,68,68,.1); }
.rcpt-add-form { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }

.tmpl-var {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    border: 1px solid var(--BD);
    border-radius: 5px;
    padding: 2px 8px;
    font-size: 11.5px;
    background: rgba(255,255,255,.03);
    transition: all .1s;
    font-family: monospace;
}
.tmpl-var:hover { background: rgba(14,165,233,.12); border-color: var(--A); color: var(--A); }

.cfg-sep { border: none; border-top: 1px solid var(--BD); margin: 20px 0; }
.cfg-section-title {
    font-size: 12px;
    font-weight: 800;
    color: var(--A);
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--BD);
}
.fg-hint { font-size: 11.5px; color: var(--MT); margin-top: 4px; line-height: 1.5; }

/* Toggle switch */
.toggle-switch { position: relative; display: inline-block; width: 54px; height: 28px; flex-shrink: 0; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.toggle-slider {
    position: absolute;
    cursor: pointer;
    inset: 0;
    background: #333;
    border-radius: 28px;
    transition: .25s;
}
.toggle-slider:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    left: 4px;
    bottom: 4px;
    background: #fff;
    border-radius: 50%;
    transition: .25s;
}
.toggle-switch input:checked+.toggle-slider { background: var(--A); }
.toggle-switch input:checked+.toggle-slider:before { transform: translateX(26px); }

.usr-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    width: 38px;
    height: 20px;
    flex-shrink: 0;
}
.usr-toggle input { opacity: 0; width: 0; height: 0; }
.usr-toggle-slider {
    position: absolute;
    inset: 0;
    background: #374151;
    border-radius: 20px;
    transition: .2s;
}
.usr-toggle-slider:before {
    content: '';
    position: absolute;
    width: 14px;
    height: 14px;
    left: 3px;
    bottom: 3px;
    background: #fff;
    border-radius: 50%;
    transition: .2s;
    box-shadow: 0 1px 3px rgba(0,0,0,.3);
}
.usr-toggle input:checked+.usr-toggle-slider { background: var(--A); }
.usr-toggle input:checked+.usr-toggle-slider:before { transform: translateX(18px); }

/* Usuários */
.usr-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--BD);
    transition: background .15s;
}
.usr-row:last-child { border-bottom: none; }
.usr-row:hover { background: var(--CARD-H); }
.usr-row.usr-blocked { opacity: .55; }

.usr-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg,var(--P),var(--A));
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
}
.usr-avatar-blocked { background: linear-gradient(135deg,#4b5563,#374151)!important; }

.usr-info { flex: 1; min-width: 0; }
.usr-name {
    font-size: 13.5px;
    font-weight: 700;
    color: var(--T);
    display: flex;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    margin-bottom: 2px;
}
.usr-sub {
    font-size: 11.5px;
    color: var(--LT);
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.usr-actions {
    display: flex;
    gap: 5px;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.usr-access-btn {
    display: inline-flex!important;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 30px;
    padding: 6px 10px!important;
    border: 1px solid var(--BD)!important;
    border-radius: 7px!important;
    background: var(--CARD)!important;
    color: var(--T)!important;
    font-size: 11px!important;
    font-weight: 700!important;
    cursor: pointer!important;
    transition: all .15s ease!important;
}
.usr-access-btn:hover {
    background: var(--A)!important;
    border-color: var(--A)!important;
    color: #fff!important;
    transform: translateY(-1px);
}

.usr-badge {
    padding: 2px 8px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 3px;
}
.usr-badge-me { background: rgba(14,165,233,.12); color: #38bdf8; border: 1px solid rgba(14,165,233,.25); }
.usr-badge-blocked { background: rgba(239,68,68,.12); color: #f87171; border: 1px solid rgba(239,68,68,.2); }
.usr-badge-custom { background: rgba(168,85,247,.12); color: #c084fc; border: 1px solid rgba(168,85,247,.2); }

/* Permissions */
.perm-group-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 10px 12px;
}
.perm-group-header {
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--LT);
    margin-bottom: 8px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--BD);
    display: flex;
    align-items: center;
    gap: 5px;
}
.perm-group-count {
    margin-left: auto;
    background: var(--BG);
    color: var(--MT);
    border-radius: 10px;
    padding: 1px 7px;
    font-size: 10px;
    font-weight: 700;
    border: 1px solid var(--BD);
}
.perm-chk-row {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 4px 2px;
    cursor: pointer;
    user-select: none;
    border-radius: 5px;
    transition: background .1s;
}
.perm-chk-row:hover { background: var(--CARD-H); }
.perm-chk { display: none; }
.perm-chk-box {
    width: 15px;
    height: 15px;
    border: 1.5px solid var(--BD);
    border-radius: 3px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .15s;
}
.perm-chk:checked~.perm-chk-box {
    background: var(--perm-color,var(--A));
    border-color: var(--perm-color,var(--A));
}
.perm-chk:checked~.perm-chk-box::after { content: '✓'; color: #fff; font-size: 9px; line-height: 1; }
.perm-chk-label { font-size: 12px; color: var(--MT); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#perm-grid.perm-disabled { opacity: .4; pointer-events: none; user-select: none; }

/* Root access */
.root-access-card {
    border: 1px solid var(--BD);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color .15s;
}
.root-access-card.root-selected { border-color: var(--A); }
.root-access-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 13px;
    background: var(--CARD);
    cursor: default;
}
.root-main-toggle {
    display: flex;
    align-items: center;
    cursor: pointer;
    flex-shrink: 0;
}
.root-chk { display: none; }
.root-chk-box {
    width: 18px;
    height: 18px;
    border: 2px solid var(--BD);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .15s;
    flex-shrink: 0;
}
.root-chk:checked~.root-chk-box { background: var(--A); border-color: var(--A); }
.root-chk:checked~.root-chk-box::after { content: '✓'; color: #fff; font-size: 11px; line-height: 1; font-weight: 700; }
.root-sub-count {
    font-size: 10.5px;
    color: var(--LT);
    font-weight: 600;
    white-space: nowrap;
    padding: 2px 8px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 10px;
    flex-shrink: 0;
}
.root-sub-perms { background: var(--BG); border-top: 1px solid var(--BD); }
#roots-access-grid.roots-disabled { opacity: .4; pointer-events: none; user-select: none; }

/* ── CSS extraído de views/db.php · bloco 1 ───────────────────────────── */
.db-folder-tree-wrap{background:rgba(0,0,0,.15);border:1px solid var(--BD);border-radius:10px;padding:10px;max-height:300px;overflow-y:auto}
.db-folder-tree-wrap::-webkit-scrollbar{width:4px}.db-folder-tree-wrap::-webkit-scrollbar-thumb{background:var(--BD);border-radius:2px}
.db-folder-item{margin:1px 0}
.db-folder-label{display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:7px;cursor:pointer;font-size:12.5px;transition:background .12s;user-select:none}
.db-folder-label:hover{background:rgba(255,255,255,.06)}
.db-folder-item.excluded > .db-folder-label{color:#ef4444}
.db-folder-chk{accent-color:#ef4444}

/* ── CSS extraído de views/db.php · bloco 2 ───────────────────────────── */
.toggle-switch{position:relative;display:inline-block;width:54px;height:28px;flex-shrink:0}
.toggle-switch input{opacity:0;width:0;height:0}
.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#333;border-radius:28px;transition:.25s}
.toggle-slider:before{content:"";position:absolute;width:20px;height:20px;left:4px;bottom:4px;background:#fff;border-radius:50%;transition:.25s}
.toggle-switch input:checked+.toggle-slider{background:var(--A)}
.toggle-switch input:checked+.toggle-slider:before{transform:translateX(26px)}

/* ── CSS extraído de views/files.php · bloco 1 ───────────────────────────── */
#content {
    padding: 0px;
}

.fm-wrap {
    gap: 0;
    height: calc(90vh - 115px);
    border: 0px;
    border-radius: 0px;
}

.fm-unibar {
     border: 0px;
    border-radius: 0px;
    border-bottom: 1px solid var(--BD);
    padding: 0px 10px;
}

/* Toolbar grupos */
.ed-toolbar-group {
  display: flex;
  align-items: center;
  gap: 3px;
}

.ed-toolbar-sep {
  width: 1px;
  height: 18px;
  background: var(--BD);
  margin: 0 4px;
  flex-shrink: 0;
}

.ed-info-badge {
  font-size: 10.5px;
  color: var(--LT);
  background: rgba(255,255,255,.05);
  border: 1px solid var(--BD);
  border-radius: 4px;
  padding: 1px 6px;
  font-family: monospace;
  white-space: nowrap;
  cursor: default;
}

/* Version history cards */
.bak-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid var(--BD);
}
.bak-item:last-child { border-bottom: none; }
.bak-item-info { flex:1; min-width:0; }
.bak-item-name { font-size:12.5px;font-weight:600;word-break:break-all; }
.bak-item-meta { font-size:11px;color:var(--LT);margin-top:2px; }
  .bak-item-actions { display:flex;gap:4px;flex-shrink:0; }
  .fm-domain-use,.fm-domain-analyze{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(14,165,233,.35);background:rgba(14,165,233,.1);color:#38bdf8;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:700;cursor:pointer;transition:all .15s}
  .fm-domain-use:hover,.fm-domain-analyze:hover{background:#0ea5e9;color:#fff;border-color:#0ea5e9;transform:translateY(-1px)}
  .fm-domain-unused{filter:grayscale(1);opacity:.72}
  .fm-domain-unused:hover{filter:grayscale(.15);opacity:1}
  .fm-domain-used{filter:none;opacity:1;border-left:2px solid #22c55e}
  #fm-domain-ai-panel{display:none;flex:1;min-width:300px;flex-direction:column;background:linear-gradient(180deg,rgba(14,165,233,.06),rgba(2,6,23,.2));border-left:1px solid var(--BD);overflow:auto}
  .fm-domain-ai-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--BD);background:rgba(2,6,23,.4)}
  .fm-domain-ai-body{padding:18px;line-height:1.65;color:var(--MT);font-size:12.5px}
  .fm-domain-ai-actions{display:flex;gap:8px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--BD);margin-top:auto}
  .fm-domain-ai-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 15px;border:1px solid var(--BD);border-radius:8px;background:var(--CARD);color:var(--T);font-weight:700;cursor:pointer}
  .fm-domain-ai-btn.primary{background:linear-gradient(135deg,#0284c7,#0ea5e9);border-color:#38bdf8;color:white}
  .fm-domain-ai-btn.danger{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35);color:#f87171}
  .fm-domain-ai-btn:hover{transform:translateY(-1px);filter:brightness(1.12)}
  .fm-domain-applied{display:inline-flex;align-items:center;justify-content:center;color:#22c55e;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.35);border-radius:6px;width:28px;height:25px}
  .fm-domain-remove{color:#ef4444!important;border:1px solid rgba(239,68,68,.25)!important;background:rgba(239,68,68,.08)!important;width:28px;height:25px}
  .fm-domain-remove:hover{background:#ef4444!important;color:#fff!important}
  .fm-domain-applied{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(34,197,94,.35);background:rgba(34,197,94,.1);color:#4ade80;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:700;white-space:nowrap}
  .fm-web-help{margin:8px 10px;padding:10px 12px;border:1px solid rgba(14,165,233,.25);background:rgba(14,165,233,.06);border-radius:8px;color:var(--MT);font-size:11px;line-height:1.55}
  .fm-web-help strong{color:var(--T)}
  .fm-domain-explorer .fm-unibar{display:flex!important;align-items:center;min-height:42px;overflow:hidden}
  .fm-domain-explorer .fm-sidebar{width:100%;min-width:0;border:0;background:transparent;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
  .fm-domain-explorer .fm-sidebar-toggle-bar{display:flex!important;position:relative;flex:0 0 auto}
  .fm-domain-explorer .fm-search-bar,.fm-domain-explorer .fm-favs-panel{display:none!important}
  .fm-domain-explorer #fm-list-body{border:0!important;overflow:visible!important;height:auto!important;min-height:360px;padding:18px 20px 28px;background:var(--BG)}
  .fm-domain-explorer .fm-domain-table-wrap{overflow:visible;max-height:none}
  .fm-domain-grid-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
  .fm-domain-grid-title{font-size:18px;font-weight:800;color:var(--T);margin-right:auto;display:flex;align-items:center;gap:9px}.fm-domain-grid-title i{color:#38bdf8}
  .fm-domain-search{display:flex;align-items:center;gap:8px;min-width:260px;flex:0 1 360px;background:var(--CARD);border:1px solid var(--BD);border-radius:8px;padding:7px 10px;color:var(--LT)}.fm-domain-search input{border:0;outline:0;background:transparent;color:var(--T);width:100%;font-size:12px}
  .fm-domain-kpis{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin-bottom:14px}.fm-domain-kpi{background:var(--CARD);border:1px solid var(--BD);border-radius:8px;padding:10px 12px;min-width:0}.fm-domain-kpi-label{font-size:9px;color:var(--LT);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-domain-kpi-value{font-size:18px;font-weight:800;color:var(--T);margin-top:3px}
  /* Colunas da tabela de domínios */
  .fm-domain-table td.td-folders,.fm-domain-table td.td-files,.fm-domain-table td.td-size{font-variant-numeric:tabular-nums;font-family:monospace;font-size:11.5px;color:var(--MT)}
  .fm-domain-table td.td-folders strong,.fm-domain-table td.td-files strong,.fm-domain-table td.td-size strong{color:var(--T);font-weight:700}
  .fm-col-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.15);border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700;color:#38bdf8}
  .fm-col-badge.green{background:rgba(34,197,94,.08);border-color:rgba(34,197,94,.15);color:#4ade80}
  .fm-col-badge.amber{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.15);color:#fbbf24}
  .fm-col-badge.loading{opacity:.5;animation:pulse .9s infinite alternate}
  .fm-domain-table-wrap{background:var(--CARD);border:1px solid var(--BD);border-radius:10px;overflow:auto;max-height:calc(100vh - 360px);min-height:180px}.fm-domain-table{width:100%;border-collapse:collapse;min-width:980px;font-size:12px}.fm-domain-table th{padding:11px 12px;text-align:left;color:var(--LT);font-size:10px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--BD);white-space:nowrap;cursor:pointer;user-select:none}.fm-domain-table th:hover{color:var(--A);background:rgba(14,165,233,.05)}.fm-domain-table td{padding:11px 12px;border-bottom:1px solid rgba(148,163,184,.1);color:var(--MT);white-space:nowrap}.fm-domain-table tbody tr:last-child td{border-bottom:0}.fm-domain-table tbody tr:hover{background:rgba(14,165,233,.045)}.fm-domain-table .domain-name{display:flex;align-items:center;gap:8px;color:var(--T);font-weight:700}.fm-domain-table tr.fm-domain-used .domain-name i{color:#22c55e}.fm-domain-table tr.fm-domain-unused{filter:grayscale(1);opacity:.72}.fm-domain-table tr.fm-domain-unused:hover{filter:none;opacity:1}.fm-domain-actions{display:flex;align-items:center;gap:5px}.fm-domain-icon-btn{width:29px;height:29px;border:1px solid var(--BD);border-radius:6px;background:rgba(255,255,255,.04);color:var(--MT);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.fm-domain-icon-btn:hover{color:#fff;background:#0ea5e9;border-color:#38bdf8}.fm-domain-icon-btn.danger{color:#f87171}.fm-domain-icon-btn.danger:hover{background:#ef4444;border-color:#f87171}.fm-domain-icon-btn.applied{color:#4ade80;border-color:rgba(34,197,94,.3)}
  .fm-domain-check{width:32px;text-align:center!important;padding-left:8px!important;padding-right:8px!important}.fm-domain-check input{accent-color:#0ea5e9;width:15px;height:15px;cursor:pointer}.fm-domain-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:29px;padding:5px 9px;border:1px solid var(--BD);border-radius:6px;background:rgba(255,255,255,.04);color:var(--MT);font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}.fm-domain-action-btn:hover{color:#fff;background:#0ea5e9;border-color:#38bdf8}.fm-domain-action-btn.applied{color:#4ade80;border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.08)}.fm-domain-action-btn.danger{color:#f87171;border-color:rgba(239,68,68,.3);background:rgba(239,68,68,.08)}.fm-domain-bulkbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;border:1px solid var(--BD);border-radius:9px;background:var(--CARD);color:var(--LT);font-size:11px}.fm-domain-bulkbar>span{margin-right:auto;color:var(--T);font-weight:700}.fm-domain-bulkbar .fm-domain-action-btn{min-height:32px}
  #fm-domain-analysis-modal{display:none;position:fixed;inset:0;z-index:9999;background:rgba(2,6,23,.78);align-items:center;justify-content:center;padding:20px}#fm-domain-analysis-modal .fm-domain-modal-card{width:min(780px,100%);max-height:min(760px,90vh);display:flex;flex-direction:column;background:var(--CARD);border:1px solid var(--BD);border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.45);overflow:hidden}.fm-domain-modal-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--BD)}  .fm-domain-modal-body{padding:18px;overflow:auto;color:var(--MT);font-size:12.5px;line-height:1.7}.fm-domain-modal-foot{display:flex;gap:8px;justify-content:flex-end;padding:14px 18px;border-top:1px solid var(--BD)}
  .fm-ai-dashboard{display:flex;flex-direction:column;gap:12px}.fm-ai-health{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(34,197,94,.25);background:rgba(34,197,94,.07);border-radius:9px;color:#4ade80}.fm-ai-health small{margin-left:auto;color:var(--LT);font-size:10px}.fm-ai-health-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
  .fm-ai-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fm-ai-kpi{min-width:0;padding:11px 12px;border:1px solid var(--BD);border-radius:9px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(15,23,42,.22));display:flex;flex-direction:column;gap:5px}.fm-ai-kpi i{color:#38bdf8;font-size:14px}.fm-ai-kpi small{color:var(--LT);font-size:9px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-ai-kpi strong{color:var(--T);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-ai-chart-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fm-ai-chart-card,.fm-ai-summary{border:1px solid var(--BD);border-radius:10px;background:rgba(15,23,42,.24);padding:13px}.fm-ai-section-title{display:flex;align-items:center;gap:7px;color:var(--T);font-size:11px;font-weight:800;margin-bottom:10px}.fm-ai-section-title i{color:#38bdf8}.fm-ai-donut{width:112px;height:112px;border-radius:50%;margin:2px auto 10px;display:grid;place-items:center}.fm-ai-donut>div{width:72px;height:72px;border-radius:50%;background:var(--CARD);display:flex;align-items:center;justify-content:center;flex-direction:column}.fm-ai-donut strong{color:var(--T);font-size:18px}.fm-ai-donut small{color:var(--LT);font-size:9px}.fm-ai-legend{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;color:var(--LT);font-size:10px}.fm-ai-legend span{display:inline-flex;align-items:center;gap:5px}.fm-ai-legend b{width:8px;height:8px;border-radius:50%;display:inline-block}.fm-ai-bar-label{display:flex;justify-content:space-between;color:var(--LT);font-size:10px;margin:9px 0 4px}.fm-ai-bar-label strong{color:var(--T)}.fm-ai-bar{height:8px;border-radius:99px;background:rgba(148,163,184,.14);overflow:hidden}.fm-ai-bar i{display:block;height:100%;border-radius:inherit}.fm-ai-total{margin-top:18px;color:var(--LT);font-size:10px}.fm-ai-total i{color:#a78bfa;margin-right:5px}.fm-ai-summary-text{padding:11px 12px;border-radius:8px;background:rgba(2,6,23,.28);color:var(--MT);font-size:12px;line-height:1.7}
  @media(max-width:700px){.fm-ai-kpis{grid-template-columns:repeat(2,1fr)}.fm-ai-chart-row{grid-template-columns:1fr}.fm-ai-health{align-items:flex-start;flex-wrap:wrap}.fm-ai-health small{width:100%;margin-left:16px}.fm-domain-kpis{grid-template-columns:repeat(2,1fr)}.fm-domain-kpis{grid-template-columns:repeat(2,1fr)}.fm-domain-explorer #fm-list-body{height:calc(100vh - 150px);padding:12px}.fm-domain-table-wrap{max-height:calc(100vh - 320px)}.fm-domain-grid-title{width:100%}.fm-domain-search{flex-basis:100%}}

  /* ═══ Toolbar do explorador — layout profissional, compacto, 1 linha ═══ */
  .fm-unibar{
    display:flex;
    align-items:center;
    gap:2px;
    min-height:40px;
    padding:0 6px;
  }
  .fm-unibar-group{
    display:flex;
    align-items:center;
    gap:2px;
    flex-shrink:0;
  }
  .fm-unibar-divider{
    width:1px;
    height:20px;
    background:var(--BD);
    margin:0 6px;
    flex-shrink:0;
  }
  .fm-unibar .fm-act-btn{
    width:29px;
    height:29px;
    padding:0;
    justify-content:center;
    border-radius:6px;
    font-size:12.5px;
  }
  .fm-unibar .fm-act-btn span.fm-act-label{display:none}
  .fm-unibar #fm-upload-zone{
    width:29px;height:29px;padding:0;
    display:flex;align-items:center;justify-content:center;
    border:1px solid var(--BD);border-radius:6px;
    background:rgba(255,255,255,.06);color:var(--MT);
    font-size:12.5px;transition:all .15s;
  }
  .fm-unibar #fm-upload-zone:hover{background:rgba(255,255,255,.12);color:var(--T);border-color:var(--A)}
  .fm-unibar-bc{font-size:12px;color:var(--MT)}
  .fm-unibar-fname{font-weight:700}

/* ── CSS extraído de views/historico.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   HISTÓRICO v5.0 — Design Premium
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Container Principal ──────────────────────────────────────────────────── */
.hist-wrap {
    display: flex;
    flex-direction: column;
    gap: 0;
    height: calc(100vh - 100px);
    min-height: 500px;
    max-height: calc(100vh - 100px);
}

/* ── Cabeçalho ────────────────────────────────────────────────────────────── */
.hist-header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0 0 16px 0;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.hist-header .hist-root-badge {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px;
    border-radius: 99px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    background: color-mix(in srgb, var(--root-color, var(--A)) 14%, transparent);
    color: var(--root-color, var(--A));
    border: 1px solid color-mix(in srgb, var(--root-color, var(--A)) 28%, transparent);
}
.hist-header .hist-root-badge i {
    font-size: 16px;
}
.hist-header .hist-sub {
    font-size: 13px;
    color: var(--LT);
    flex: 1;
}
.hist-header .hist-actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

/* ── Toolbar ───────────────────────────────────────────────────────────────── */
.hist-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    margin-bottom: 12px;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.hist-toolbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    flex-wrap: wrap;
}
.hist-toolbar-right {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.hist-search-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 180px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 0 12px;
}
.hist-search-wrap i {
    color: var(--LT);
    font-size: 13px;
    flex-shrink: 0;
}
.hist-search {
    background: none;
    border: none;
    outline: none;
    color: var(--T);
    font-size: 13px;
    width: 100%;
    padding: 8px 0;
    font-family: 'Outfit', sans-serif;
}
.hist-search::placeholder {
    color: var(--LT);
    opacity: .6;
}
.hist-filter-btns {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}
.hist-filter-btn {
    padding: 6px 12px;
    border-radius: 6px;
    border: 1px solid var(--BD);
    background: transparent;
    color: var(--MT);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    display: flex;
    align-items: center;
    gap: 4px;
    font-family: 'Outfit', sans-serif;
    white-space: nowrap;
}
.hist-filter-btn:hover {
    background: var(--CARD-H);
    color: var(--T);
}
.hist-filter-btn.active {
    background: rgba(14, 165, 233, .12);
    color: var(--A);
    border-color: var(--A);
}
.hist-filter-btn .filter-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
}
.hist-btn-new {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 18px;
    border-radius: 8px;
    border: none;
    background: var(--A);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    font-family: 'Outfit', sans-serif;
    transition: all .15s;
    white-space: nowrap;
    flex-shrink: 0;
}
.hist-btn-new:hover {
    opacity: .85;
    transform: scale(.97);
}
.hist-count-badge {
    font-size: 11px;
    font-weight: 600;
    color: var(--LT);
    padding: 3px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 20px;
    white-space: nowrap;
}

/* ── Área de Conteúdo ────────────────────────────────────────────────────── */
.hist-content {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-right: 4px;
}
.hist-content::-webkit-scrollbar {
    width: 5px;
}
.hist-content::-webkit-scrollbar-track {
    background: transparent;
}
.hist-content::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}
.hist-content::-webkit-scrollbar-thumb:hover {
    background: var(--A);
}

/* ── Timeline ─────────────────────────────────────────────────────────────── */
.hist-timeline {
    position: relative;
    padding-left: 32px;
}
.hist-timeline::before {
    content: '';
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--BD);
    border-radius: 99px;
}
.hist-entry {
    position: relative;
    margin-bottom: 2px;
    padding: 10px 14px 10px 20px;
    border-radius: var(--r2);
    transition: all .2s ease;
    cursor: pointer;
    border-left: 3px solid transparent;
}
.hist-entry:hover {
    background: rgba(255, 255, 255, .02);
}
.hist-entry::before {
    content: '';
    position: absolute;
    left: -26px;
    top: 16px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--BD);
    background: var(--CARD);
    transition: all .2s;
}
.hist-entry:hover::before {
    border-color: var(--A);
    transform: scale(1.15);
}
.hist-entry .entry-dot {
    position: absolute;
    left: -22px;
    top: 16px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    z-index: 1;
}
.hist-entry .entry-main {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.hist-entry .entry-top {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.hist-entry .entry-type {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 2px 10px;
    border-radius: 99px;
}
.hist-entry .entry-user {
    font-size: 11.5px;
    color: var(--LT);
    display: flex;
    align-items: center;
    gap: 4px;
}
.hist-entry .entry-time {
    font-size: 11px;
    color: var(--LT);
    margin-left: auto;
}
.hist-entry .entry-title {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--T);
    line-height: 1.4;
}
.hist-entry .entry-summary {
    font-size: 12.5px;
    color: var(--MT);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.hist-entry .entry-badges {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px;
}
.hist-entry .entry-badges .badge {
    font-size: 10px;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 99px;
}
.hist-entry .entry-badges .badge-pin {
    color: #f59e0b;
    background: rgba(245, 158, 11, .1);
    border: 1px solid rgba(245, 158, 11, .2);
}
.hist-entry .entry-badges .badge-upd {
    color: #22c55e;
    background: rgba(34, 197, 94, .1);
    border: 1px solid rgba(34, 197, 94, .2);
}
.hist-entry .entry-badges .badge-note {
    color: var(--A);
    background: rgba(14, 165, 233, .1);
    border: 1px solid rgba(14, 165, 233, .2);
}
.hist-entry .entry-actions {
    display: flex;
    gap: 2px;
    flex-shrink: 0;
    margin-left: auto;
    align-self: flex-start;
}
.hist-entry .entry-actions button {
    background: none;
    border: 1px solid transparent;
    border-radius: 5px;
    color: var(--LT);
    cursor: pointer;
    padding: 4px 6px;
    font-size: 12px;
    transition: all .12s;
}
.hist-entry .entry-actions button:hover {
    background: var(--CARD-H);
    color: var(--T);
    border-color: var(--BD);
}
.hist-entry .entry-actions .btn-pin {
    color: #f59e0b;
}
.hist-entry .entry-actions .btn-pin.active {
    background: rgba(245, 158, 11, .1);
    border-color: rgba(245, 158, 11, .2);
}
.hist-entry .entry-actions .btn-ia {
    color: #a855f7;
}
.hist-entry .entry-actions .btn-ia:hover {
    background: rgba(168, 85, 247, .1);
    border-color: rgba(168, 85, 247, .2);
}
.hist-entry .entry-actions .btn-delete {
    color: #ef4444;
}
.hist-entry .entry-actions .btn-delete:hover {
    background: rgba(239, 68, 68, .1);
    border-color: rgba(239, 68, 68, .2);
}
.hist-entry.is-pinned {
    border-left-color: #f59e0b;
    background: rgba(245, 158, 11, .04);
}
.hist-entry.is-pinned::before {
    border-color: #f59e0b;
    background: #f59e0b;
}
.hist-entry.expanded {
    background: rgba(255, 255, 255, .03);
    border-radius: var(--r2);
}
.hist-entry.expanded .entry-summary {
    -webkit-line-clamp: unset;
}

/* ── Detalhes Expandidos ──────────────────────────────────────────────────── */
.hist-detail {
    background: rgba(0, 0, 0, .15);
    border-radius: var(--r2);
    padding: 16px 18px;
    margin-top: 10px;
    display: none;
    animation: histFadeIn .25s ease;
}
.hist-detail.open {
    display: block;
}
@keyframes histFadeIn {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}
.hist-detail .detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}
.hist-detail .detail-field {
    background: rgba(0, 0, 0, .15);
    border: 1px solid var(--BD);
    border-radius: 6px;
    padding: 8px 12px;
}
.hist-detail .detail-field label {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--LT);
    display: block;
    margin-bottom: 2px;
}
.hist-detail .detail-field span {
    font-size: 12.5px;
    color: var(--T);
    word-break: break-all;
}
.hist-detail .detail-ai {
    background: rgba(168, 85, 247, .06);
    border: 1px solid rgba(168, 85, 247, .15);
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 14px;
}
.hist-detail .detail-ai .ai-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #a855f7;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.hist-detail .detail-ai .ai-text {
    font-size: 13px;
    color: var(--T);
    line-height: 1.7;
    white-space: pre-wrap;
}
.hist-detail .detail-note-area {
    width: 100%;
    background: rgba(0, 0, 0, .15);
    border: 1px solid var(--BD);
    border-radius: 6px;
    color: var(--T);
    font-size: 13px;
    font-family: 'Outfit', sans-serif;
    padding: 10px 12px;
    resize: vertical;
    min-height: 70px;
    outline: none;
    transition: border .15s;
    box-sizing: border-box;
}
.hist-detail .detail-note-area:focus {
    border-color: var(--A);
}
.hist-detail .detail-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

/* ── Atualizações ──────────────────────────────────────────────────────────── */
.hist-updates {
    margin-top: 14px;
    border-top: 1px solid var(--BD);
    padding-top: 14px;
}
.hist-updates .updates-head {
    font-size: 12px;
    font-weight: 700;
    color: var(--MT);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.hist-updates .updates-list {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--BD);
    border-radius: 8px;
    overflow: hidden;
    max-height: 260px;
    overflow-y: auto;
}
.hist-updates .update-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 14px;
    border-bottom: 1px solid var(--BD);
    background: rgba(0, 0, 0, .05);
}
.hist-updates .update-item:last-child {
    border-bottom: none;
}
.hist-updates .update-num {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(14, 165, 233, .12);
    color: var(--A);
    font-size: 10px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
}
.hist-updates .update-body {
    flex: 1;
    min-width: 0;
}
.hist-updates .update-text {
    font-size: 12.5px;
    color: var(--T);
    line-height: 1.5;
    word-break: break-word;
}
.hist-updates .update-meta {
    font-size: 10.5px;
    color: var(--LT);
    margin-top: 3px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.hist-updates .update-del {
    background: none;
    border: none;
    color: var(--LT);
    cursor: pointer;
    padding: 3px 5px;
    border-radius: 4px;
    font-size: 11px;
    transition: color .12s;
    flex-shrink: 0;
}
.hist-updates .update-del:hover {
    color: #ef4444;
}

/* ── Empty State ──────────────────────────────────────────────────────────── */
.hist-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    gap: 12px;
    color: var(--LT);
    text-align: center;
}
.hist-empty i {
    font-size: 48px;
    opacity: .2;
}
.hist-empty .empty-title {
    font-size: 18px;
    font-weight: 800;
    color: var(--MT);
}
.hist-empty .empty-desc {
    font-size: 14px;
}
.hist-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid var(--BD);
    border-top-color: var(--A);
    border-radius: 50%;
    animation: histSpin .6s linear infinite;
}
@keyframes histSpin {
    to { transform: rotate(360deg); }
}

/* ── Paginação ────────────────────────────────────────────────────────────── */
.hist-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: wrap;
    padding: 12px 0 4px;
    border-top: 1px solid var(--BD);
    margin-top: 8px;
    flex-shrink: 0;
}
.hist-pagination .page-btn {
    min-width: 32px;
    height: 32px;
    padding: 0 10px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: var(--CARD);
    color: var(--MT);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    transition: all .15s;
}
.hist-pagination .page-btn:hover {
    border-color: var(--A);
    color: var(--T);
}
.hist-pagination .page-btn.active {
    background: rgba(14, 165, 233, .12);
    border-color: var(--A);
    color: var(--A);
}
.hist-pagination .page-btn:disabled {
    opacity: .3;
    cursor: default;
}
.hist-pagination .page-info {
    font-size: 10px;
    color: var(--LT);
    margin-left: 8px;
}

/* ── Modais ────────────────────────────────────────────────────────────────── */
.hist-modal-bg {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .7);
    backdrop-filter: blur(8px);
    z-index: 1000;
    align-items: center;
    justify-content: center;
}
.hist-modal-bg.open {
    display: flex;
}
.hist-modal {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    width: min(560px, 96vw);
    max-height: 92vh;
    overflow-y: auto;
    box-shadow: 0 24px 64px rgba(0, 0, 0, .5);
}
.hist-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--BD);
    position: sticky;
    top: 0;
    background: var(--CARD);
    z-index: 1;
}
.hist-modal-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--T);
    display: flex;
    align-items: center;
    gap: 10px;
}
.hist-modal-close {
    background: none;
    border: none;
    color: var(--MT);
    font-size: 18px;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 6px;
    transition: color .12s;
}
.hist-modal-close:hover {
    color: var(--T);
}
.hist-modal-body {
    padding: 20px;
}
.hist-modal-foot {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid var(--BD);
    position: sticky;
    bottom: 0;
    background: var(--CARD);
}
.hist-fg {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 14px;
}
.hist-fg label {
    font-size: 12px;
    font-weight: 600;
    color: var(--MT);
}
.hist-fc {
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 6px;
    color: var(--T);
    font-size: 13px;
    font-family: 'Outfit', sans-serif;
    padding: 9px 12px;
    outline: none;
    transition: border .15s;
    width: 100%;
    box-sizing: border-box;
}
.hist-fc:focus {
    border-color: var(--A);
}
.hist-fc-ta {
    min-height: 110px;
    resize: vertical;
}
.hist-pin-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: rgba(245, 158, 11, .06);
    border: 1px solid rgba(245, 158, 11, .15);
    border-radius: 8px;
    margin-bottom: 4px;
}
.hist-pin-option input[type="checkbox"] {
    accent-color: #f59e0b;
    width: 16px;
    height: 16px;
}
.hist-pin-option label {
    font-size: 13px;
    color: var(--T);
    cursor: pointer;
    margin: 0;
    flex: 1;
}

/* ── Preview no modal de update ──────────────────────────────────────────── */
.upd-card-preview {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: rgba(0, 0, 0, .1);
    border: 1px solid var(--BD);
    border-radius: 8px;
    margin-bottom: 16px;
}
.upd-card-preview-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}
.upd-card-preview-title {
    font-size: 13px;
    font-weight: 700;
    color: var(--T);
}
.upd-card-preview-type {
    font-size: 11px;
    color: var(--MT);
    margin-top: 2px;
}

/* ── Responsive ────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .hist-wrap {
        height: calc(100vh - 80px);
        min-height: 400px;
    }
    .hist-header {
        flex-wrap: wrap;
    }
    .hist-header .hist-sub {
        width: 100%;
        order: 3;
    }
    .hist-toolbar {
        padding: 8px 12px;
        gap: 6px;
    }
    .hist-toolbar-left {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }
    .hist-toolbar-right {
        width: 100%;
        justify-content: space-between;
    }
    .hist-search-wrap {
        min-width: 0;
    }
    .hist-filter-btns {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 4px;
        -webkit-overflow-scrolling: touch;
    }
    .hist-filter-btns::-webkit-scrollbar {
        height: 2px;
    }
    .hist-filter-btns::-webkit-scrollbar-thumb {
        background: var(--BD);
        border-radius: 99px;
    }
    .hist-filter-btn {
        font-size: 10px;
        padding: 4px 8px;
        white-space: nowrap;
    }
    .hist-timeline {
        padding-left: 24px;
    }
    .hist-entry {
        padding: 8px 10px 8px 14px;
    }
    .hist-entry::before {
        left: -18px;
        width: 10px;
        height: 10px;
    }
    .hist-entry .entry-dot {
        left: -15px;
        width: 6px;
        height: 6px;
    }
    .hist-entry .entry-title {
        font-size: 12.5px;
    }
    .hist-entry .entry-summary {
        font-size: 11.5px;
        -webkit-line-clamp: 2;
    }
    .hist-detail {
        padding: 12px 14px;
    }
    .hist-detail .detail-grid {
        grid-template-columns: 1fr 1fr;
    }
    .hist-modal {
        width: 98vw;
        max-height: 98vh;
    }
    .hist-btn-new {
        padding: 6px 12px;
        font-size: 12px;
    }
    .hist-btn-new span {
        display: none;
    }
}
@media (max-width: 480px) {
    .hist-header .hist-root-badge {
        font-size: 12px;
        padding: 6px 12px;
    }
    .hist-entry .entry-top {
        flex-wrap: wrap;
    }
    .hist-entry .entry-time {
        margin-left: 0;
        width: 100%;
    }
    .hist-detail .detail-grid {
        grid-template-columns: 1fr;
    }
    .hist-detail .detail-actions {
        flex-direction: column;
        align-items: stretch;
    }
    .hist-updates .update-item {
        flex-wrap: wrap;
    }
}

/* ── CSS extraído de views/home_markup.php · bloco 1 ───────────────────────────── */
#hm-errlog-modal{display:none;position:fixed;inset:0;z-index:9999;background:rgba(2,6,23,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:16px}
.hm-errlog-card{background:var(--CARD,#161b27);border:1px solid var(--BD,#1e293b);border-radius:16px;max-width:820px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 32px 80px rgba(0,0,0,.55);overflow:hidden}
.hm-errlog-head{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--BD,#1e293b);flex-shrink:0;background:rgba(0,0,0,.18)}
.hm-errlog-badge{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#f59e0b,#ef4444);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(239,68,68,.3)}
.hm-errlog-title{font-weight:800;font-size:15px;color:var(--T,#e2e8f0);letter-spacing:-.01em}
.hm-errlog-sub{font-size:11px;color:var(--LT,#64748b);margin-top:2px}
.hm-errlog-raw-wrap{padding:14px 22px;flex-shrink:0;border-bottom:1px solid var(--BD,#1e293b)}
.hm-errlog-raw-label{font-size:9px;color:var(--LT,#64748b);margin-bottom:7px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:6px}
.hm-errlog-raw-label i{color:#f59e0b}
#hm-errlog-raw{background:rgba(0,0,0,.25);border:1px solid var(--BD,#1e293b);border-radius:8px;padding:12px;font-size:11px;color:#94a3b8;max-height:130px;overflow-y:auto;margin:0;white-space:pre-wrap;word-break:break-all;font-family:monospace;line-height:1.55;scrollbar-width:thin}
.hm-errlog-ia-wrap{padding:16px 22px;overflow-y:auto;flex:1;min-height:80px}
.hm-errlog-ia-label{font-size:9px;color:var(--A,#0ea5e9);margin-bottom:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:6px}
#hm-errlog-ia-resp{font-size:13px;color:var(--T,#e2e8f0);line-height:1.75;white-space:pre-wrap}
.hm-errlog-foot{display:flex;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--BD,#1e293b);flex-shrink:0;background:rgba(0,0,0,.12)}

/* ── CSS extraído de views/home_markup.php · bloco 2 ───────────────────────────── */
@keyframes hmSpinArc{to{transform:rotate(360deg)}}

/* ── CSS extraído de views/logs.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   LOGS v4.0 — Design Premium
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Stats Row ────────────────────────────────────────────────────────────── */
.logs-stats-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}
.logs-stat-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: all .2s ease;
}
.logs-stat-card:hover {
    border-color: rgba(14, 165, 233, .3);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
.logs-stat-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}
.logs-stat-val {
    font-size: 18px;
    font-weight: 800;
    color: var(--T);
    line-height: 1.2;
}
.logs-stat-lbl {
    font-size: 9px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 600;
}

/* ── Toolbar ──────────────────────────────────────────────────────────────── */
.logs-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    margin-bottom: 16px;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    flex-wrap: wrap;
}
.logs-toolbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    flex-wrap: wrap;
}
.logs-toolbar-right {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.logs-filter-sel {
    padding: 7px 12px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    color: var(--T);
    font-size: 12px;
    font-family: 'Outfit', sans-serif;
    cursor: pointer;
    outline: none;
    min-width: 120px;
}
.logs-filter-sel:focus {
    border-color: var(--A);
}
.logs-filter-sel option {
    background: var(--CARD);
}
.logs-search-wrap {
    position: relative;
    flex: 1;
    min-width: 180px;
}
.logs-search-wrap i {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--LT);
    font-size: 12px;
    pointer-events: none;
}
.logs-search-inp {
    width: 100%;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 7px 12px 7px 32px;
    color: var(--T);
    font-size: 13px;
    font-family: 'Outfit', sans-serif;
    outline: none;
    transition: border-color .15s;
}
.logs-search-inp:focus {
    border-color: var(--A);
}
.logs-search-inp::placeholder {
    color: var(--LT);
    opacity: .6;
}
.logs-count-badge {
    font-size: 11px;
    font-weight: 600;
    color: var(--LT);
    padding: 3px 10px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 20px;
    white-space: nowrap;
}

/* ── Grid 2 Colunas ───────────────────────────────────────────────────────── */
.logs-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
@media (max-width: 1000px) {
    .logs-grid {
        grid-template-columns: 1fr;
    }
}

/* ── Log Box ──────────────────────────────────────────────────────────────── */
.log-box {
    max-height: 500px;
    overflow-y: auto;
    font-family: 'JetBrains Mono', monospace;
    font-size: 12px;
    line-height: 1.7;
    background: rgba(0,0,0,.15);
    border-radius: 8px;
    padding: 4px 0;
}
.log-box::-webkit-scrollbar {
    width: 5px;
}
.log-box::-webkit-scrollbar-track {
    background: var(--BG);
    border-radius: 99px;
}
.log-box::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}
.log-box::-webkit-scrollbar-thumb:hover {
    background: var(--A);
}
.log-box .log-line {
    padding: 4px 14px;
    border-bottom: 1px solid rgba(255,255,255,.02);
    transition: background .12s;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.log-box .log-line:hover {
    background: rgba(255,255,255,.02);
}
.log-box .log-line .log-badge {
    font-size: 8px;
    font-weight: 800;
    padding: 1px 8px;
    border-radius: 99px;
    flex-shrink: 0;
    margin-top: 2px;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.log-box .log-line .log-badge.badge-er {
    background: rgba(239,68,68,.15);
    color: #ef4444;
    border: 1px solid rgba(239,68,68,.2);
}
.log-box .log-line .log-badge.badge-wn {
    background: rgba(245,158,11,.15);
    color: #f59e0b;
    border: 1px solid rgba(245,158,11,.2);
}
.log-box .log-line .log-badge.badge-ok {
    background: rgba(34,197,94,.15);
    color: #22c55e;
    border: 1px solid rgba(34,197,94,.2);
}
.log-box .log-line .log-badge.badge-in {
    background: rgba(14,165,233,.12);
    color: var(--A);
    border: 1px solid rgba(14,165,233,.15);
}
.log-box .log-line .log-badge.badge-bkp {
    background: rgba(168,85,247,.15);
    color: #a855f7;
    border: 1px solid rgba(168,85,247,.2);
}
.log-box .log-line .log-text {
    flex: 1;
    word-break: break-word;
    color: var(--MT);
}
.log-box .log-line .log-text .log-highlight {
    color: var(--A);
    font-weight: 600;
}
.log-box .log-line .log-text .log-time {
    color: var(--LT);
    font-size: 10px;
}
.log-box .log-line .log-text .log-error {
    color: #ef4444;
}
.log-box .log-line .log-text .log-warn {
    color: #f59e0b;
}
.log-box .log-line .log-text .log-success {
    color: #22c55e;
}
.log-box .log-line .log-text .log-info {
    color: var(--A);
}

/* ── Security Log ────────────────────────────────────────────────────────── */
.sec-log-box {
    max-height: 500px;
    overflow-y: auto;
}
.sec-log-box::-webkit-scrollbar {
    width: 5px;
}
.sec-log-box::-webkit-scrollbar-track {
    background: var(--BG);
    border-radius: 99px;
}
.sec-log-box::-webkit-scrollbar-thumb {
    background: var(--BD);
    border-radius: 99px;
}
.sec-log-box::-webkit-scrollbar-thumb:hover {
    background: var(--A);
}
.sec-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border-bottom: 1px solid rgba(255,255,255,.03);
    transition: background .12s;
}
.sec-item:hover {
    background: rgba(255,255,255,.02);
}
.sec-item .sec-badge {
    font-size: 9px;
    font-weight: 700;
    padding: 2px 12px;
    border-radius: 99px;
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.sec-item .sec-badge.b-ok {
    background: rgba(34,197,94,.12);
    color: #22c55e;
    border: 1px solid rgba(34,197,94,.15);
}
.sec-item .sec-badge.b-er {
    background: rgba(239,68,68,.12);
    color: #ef4444;
    border: 1px solid rgba(239,68,68,.15);
}
.sec-item .sec-badge.b-in {
    background: rgba(14,165,233,.12);
    color: var(--A);
    border: 1px solid rgba(14,165,233,.15);
}
.sec-item .sec-info {
    flex: 1;
    min-width: 0;
}
.sec-item .sec-info .sec-user {
    font-weight: 700;
    color: var(--T);
    font-size: 13px;
}
.sec-item .sec-info .sec-meta {
    font-size: 11px;
    color: var(--LT);
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.sec-item .sec-info .sec-meta .sec-ip {
    font-family: 'JetBrains Mono', monospace;
}
.sec-item .sec-info .sec-detail {
    font-size: 12px;
    color: var(--MT);
    margin-top: 2px;
}
.sec-item .sec-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
}
.sec-item .sec-icon.icon-ok {
    background: rgba(34,197,94,.12);
    color: #22c55e;
}
.sec-item .sec-icon.icon-er {
    background: rgba(239,68,68,.12);
    color: #ef4444;
}
.sec-item .sec-icon.icon-in {
    background: rgba(14,165,233,.12);
    color: var(--A);
}

/* ── Paginação ───────────────────────────────────────────────────────────── */
.logs-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: wrap;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--BD);
}
.logs-pagination .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 10px;
    border: 1px solid var(--BD);
    border-radius: 6px;
    background: var(--CARD);
    color: var(--MT);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    transition: all .15s;
}
.logs-pagination .page-link:hover {
    border-color: var(--A);
    color: var(--T);
    background: rgba(14,165,233,.04);
}
.logs-pagination .page-link.active {
    background: rgba(14,165,233,.14);
    border-color: var(--A);
    color: var(--A);
}
.logs-pagination .page-link.disabled {
    opacity: .4;
    pointer-events: none;
}
.logs-pagination .page-info {
    font-size: 10px;
    color: var(--LT);
    margin-left: 8px;
}

/* ── Card Header ──────────────────────────────────────────────────────────── */
.logs-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--BD);
}
.logs-card-header .card-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: var(--T);
}
.logs-card-header .card-title i {
    color: var(--A);
}
.logs-card-header .card-count {
    font-size: 10px;
    color: var(--LT);
    font-weight: 400;
}

/* ── Empty State ──────────────────────────────────────────────────────────── */
.logs-empty {
    text-align: center;
    padding: 40px 20px;
    color: var(--LT);
}
.logs-empty .empty-icon {
    font-size: 32px;
    opacity: .3;
    margin-bottom: 12px;
}
.logs-empty .empty-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--MT);
    margin-bottom: 4px;
}
.logs-empty .empty-desc {
    font-size: 12px;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 700px) {
    .logs-stats-row {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    .logs-stat-card {
        padding: 10px 12px;
    }
    .logs-stat-val {
        font-size: 15px;
    }
    .logs-toolbar {
        padding: 8px 12px;
    }
    .logs-toolbar-left {
        flex-direction: column;
        align-items: stretch;
    }
    .logs-toolbar-right {
        width: 100%;
        justify-content: space-between;
    }
    .logs-search-wrap {
        min-width: 0;
    }
    .logs-filter-sel {
        min-width: 0;
        flex: 1;
    }
    .log-box {
        font-size: 11px;
        max-height: 350px;
    }
    .log-box .log-line {
        padding: 3px 10px;
        flex-wrap: wrap;
    }
    .sec-item {
        padding: 8px 10px;
        flex-wrap: wrap;
    }
    .sec-item .sec-info .sec-meta {
        font-size: 10px;
    }
}
@media (max-width: 480px) {
    .logs-stats-row {
        grid-template-columns: 1fr 1fr;
    }
    .logs-stat-card {
        padding: 8px 10px;
    }
    .logs-stat-icon {
        width: 30px;
        height: 30px;
        font-size: 13px;
    }
    .logs-stat-val {
        font-size: 14px;
    }
    .logs-stat-lbl {
        font-size: 8px;
    }
}

/* ── CSS extraído de views/notes.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   NOTES v4.0 — Design Premium
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Stats Row ────────────────────────────────────────────────────────────── */
.ntas-stats-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}
.ntas-stat-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: all .2s ease;
}
.ntas-stat-card:hover {
    border-color: rgba(14, 165, 233, .3);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
.ntas-stat-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.ntas-stat-val {
    font-size: 20px;
    font-weight: 800;
    color: var(--T);
    line-height: 1.2;
}
.ntas-stat-lbl {
    font-size: 10px;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 600;
}
.ntas-stat-new {
    justify-content: center;
    background: rgba(14, 165, 233, .04);
    border-color: rgba(14, 165, 233, .15);
}
.ntas-stat-new .btn {
    width: 100%;
}

/* ── Toolbar Premium ─────────────────────────────────────────────────────── */
.nl3-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    margin-bottom: 16px;
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    flex-wrap: wrap;
}
.nl3-toolbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    flex-wrap: wrap;
}
.nl3-toolbar-right {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.nl3-search-wrap {
    position: relative;
    flex: 1;
    min-width: 200px;
}
.nl3-search-wrap i {
    position: absolute;
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--LT);
    font-size: 13px;
    pointer-events: none;
}
.nl3-search-inp {
    width: 100%;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 8px 12px 8px 34px;
    color: var(--T);
    font-size: 13px;
    font-family: 'Outfit', sans-serif;
    outline: none;
    transition: border-color .15s, box-shadow .15s;
}
.nl3-search-inp:focus {
    border-color: var(--A);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, .1);
}
.nl3-search-inp::placeholder {
    color: var(--LT);
    opacity: .6;
}
.nl3-filter-sel {
    padding: 8px 12px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    color: var(--T);
    font-size: 12px;
    font-family: 'Outfit', sans-serif;
    cursor: pointer;
    outline: none;
    min-width: 120px;
}
.nl3-filter-sel:focus {
    border-color: var(--A);
}
.nl3-filter-sel option {
    background: var(--CARD);
}
.nl3-count-badge {
    font-size: 12px;
    font-weight: 600;
    color: var(--LT);
    padding: 4px 12px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 20px;
    white-space: nowrap;
}
.nl3-view-btns {
    display: flex;
    gap: 2px;
    background: var(--BG);
    border: 1px solid var(--BD);
    border-radius: 8px;
    padding: 3px;
}
.nl3-view-btn {
    background: none;
    border: none;
    color: var(--LT);
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 13px;
    transition: all .15s;
}
.nl3-view-btn:hover {
    color: var(--T);
}
.nl3-view-btn.active {
    background: var(--A);
    color: #fff;
    box-shadow: 0 2px 8px rgba(14, 165, 233, .3);
}

/* ── Bulk Bar ────────────────────────────────────────────────────────────── */
#nl-bulk-bar {
    display: none;
    align-items: center;
    gap: 12px;
    background: rgba(14, 165, 233, .06);
    border: 1px solid rgba(14, 165, 233, .2);
    border-radius: var(--R);
    padding: 10px 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
    animation: ntasFadeIn .2s ease;
}
@keyframes ntasFadeIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}
#nl-bulk-bar #nl-sel-count {
    font-size: 13px;
    font-weight: 700;
    color: var(--A);
}

/* ── Grid de Cards ───────────────────────────────────────────────────────── */
.ntas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.ntas-grid .ntas-card {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    overflow: hidden;
    transition: all .2s ease;
    cursor: pointer;
    position: relative;
}
.ntas-grid .ntas-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0,0,0,.3);
    border-color: rgba(14, 165, 233, .3);
}
.ntas-grid .ntas-card .ntas-card-body {
    padding: 16px 18px 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.ntas-grid .ntas-card .ntas-card-header {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.ntas-grid .ntas-card .ntas-card-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
    background: rgba(14, 165, 233, .08);
}
.ntas-grid .ntas-card .ntas-card-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--T);
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.4;
}
.ntas-grid .ntas-card .ntas-card-excerpt {
    font-size: 12.5px;
    color: var(--MT);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 40px;
}
.ntas-grid .ntas-card .ntas-card-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    color: var(--LT);
    margin-top: 6px;
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,.04);
}
.ntas-grid .ntas-card .ntas-card-meta i {
    font-size: 11px;
}
.ntas-grid .ntas-card .ntas-card-pin {
    position: absolute;
    top: 12px;
    right: 12px;
    font-size: 14px;
    color: #f59e0b;
    opacity: .6;
}
.ntas-grid .ntas-card .ntas-card-check {
    position: absolute;
    top: 12px;
    left: 12px;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: 2px solid var(--BD);
    background: var(--BG);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .15s;
    opacity: 0;
}
.ntas-grid .ntas-card:hover .ntas-card-check {
    opacity: 1;
}
.ntas-grid .ntas-card .ntas-card-check.checked {
    background: var(--A);
    border-color: var(--A);
    opacity: 1;
}
.ntas-grid .ntas-card .ntas-card-check i {
    font-size: 10px;
    color: #fff;
    opacity: 0;
    transition: opacity .15s;
}
.ntas-grid .ntas-card .ntas-card-check.checked i {
    opacity: 1;
}
.ntas-grid .ntas-card .ntas-card-tags {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    margin-top: 6px;
}
.ntas-grid .ntas-card .ntas-card-tag {
    font-size: 9px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 99px;
    background: rgba(14, 165, 233, .08);
    color: var(--A);
    border: 1px solid rgba(14, 165, 233, .12);
    text-transform: lowercase;
}
.ntas-grid .ntas-card .ntas-card-actions {
    display: flex;
    gap: 4px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,.04);
}
.ntas-grid .ntas-card .ntas-card-actions button {
    padding: 4px 10px;
    border: 1px solid var(--BD);
    border-radius: 5px;
    background: transparent;
    color: var(--LT);
    font-size: 11px;
    cursor: pointer;
    transition: all .15s;
    font-family: 'Outfit', sans-serif;
}
.ntas-grid .ntas-card .ntas-card-actions button:hover {
    background: rgba(255,255,255,.04);
    color: var(--T);
}
.ntas-grid .ntas-card .ntas-card-actions .ntas-act-edit {
    color: var(--A);
    border-color: rgba(14, 165, 233, .2);
}
.ntas-grid .ntas-card .ntas-card-actions .ntas-act-edit:hover {
    background: rgba(14, 165, 233, .08);
}
.ntas-grid .ntas-card .ntas-card-actions .ntas-act-delete {
    color: #ef4444;
    border-color: rgba(239, 68, 68, .2);
}
.ntas-grid .ntas-card .ntas-card-actions .ntas-act-delete:hover {
    background: rgba(239, 68, 68, .08);
}
.ntas-grid .ntas-card .ntas-card-color-bar {
    height: 4px;
    width: 100%;
}

/* ── List View ───────────────────────────────────────────────────────────── */
.ntas-list-table {
    background: var(--CARD);
    border: 1px solid var(--BD);
    border-radius: var(--R);
    overflow: hidden;
    margin-bottom: 20px;
}
.ntas-list-table table {
    width: 100%;
    border-collapse: collapse;
}
.ntas-list-table thead {
    background: rgba(0,0,0,.15);
}
.ntas-list-table th {
    padding: 10px 14px;
    font-size: 10px;
    font-weight: 700;
    color: var(--LT);
    text-transform: uppercase;
    letter-spacing: .06em;
    text-align: left;
    border-bottom: 1px solid var(--BD);
    cursor: pointer;
    user-select: none;
    transition: color .15s;
}
.ntas-list-table th:hover {
    color: var(--T);
}
.ntas-list-table th i {
    font-size: 9px;
    margin-left: 4px;
    opacity: .5;
}
.ntas-list-table td {
    padding: 10px 14px;
    font-size: 13px;
    color: var(--T);
    border-bottom: 1px solid rgba(255,255,255,.03);
    vertical-align: middle;
}
.ntas-list-table tbody tr {
    transition: background .12s;
    cursor: pointer;
}
.ntas-list-table tbody tr:hover {
    background: rgba(14, 165, 233, .04);
}
.ntas-list-table tbody tr:last-child td {
    border-bottom: none;
}
.ntas-list-table .ntas-lt-title {
    font-weight: 600;
}
.ntas-list-table .ntas-lt-title .ntas-lt-icon {
    margin-right: 8px;
    font-size: 14px;
}
.ntas-list-table .ntas-lt-pin-btn {
    background: none;
    border: none;
    color: var(--LT);
    cursor: pointer;
    font-size: 14px;
    transition: all .15s;
    padding: 4px 8px;
    border-radius: 4px;
}
.ntas-list-table .ntas-lt-pin-btn:hover {
    background: rgba(255,255,255,.04);
}
.ntas-list-table .ntas-lt-pin-btn.pinned {
    color: #f59e0b;
}
.ntas-list-table .ntas-lt-actions {
    display: flex;
    gap: 4px;
    justify-content: center;
}
.ntas-list-table .ntas-lt-actions button {
    padding: 3px 8px;
    border: 1px solid var(--BD);
    border-radius: 4px;
    background: transparent;
    color: var(--LT);
    font-size: 11px;
    cursor: pointer;
    transition: all .12s;
}
.ntas-list-table .ntas-lt-actions .lt-edit {
    color: var(--A);
    border-color: rgba(14, 165, 233, .2);
}
.ntas-list-table .ntas-lt-actions .lt-edit:hover {
    background: rgba(14, 165, 233, .08);
}
.ntas-list-table .ntas-lt-actions .lt-delete {
    color: #ef4444;
    border-color: rgba(239, 68, 68, .2);
}
.ntas-list-table .ntas-lt-actions .lt-delete:hover {
    background: rgba(239, 68, 68, .08);
}
.ntas-list-table input[type="checkbox"] {
    accent-color: var(--A);
    width: 16px;
    height: 16px;
    cursor: pointer;
}
.ntas-list-table .ntas-lt-color-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: inline-block;
    border: 2px solid var(--BD);
    flex-shrink: 0;
}
.ntas-list-table .ntas-lt-tags {
    display: flex;
    gap: 3px;
    flex-wrap: wrap;
}
.ntas-list-table .ntas-lt-tag {
    font-size: 9px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 99px;
    background: rgba(14, 165, 233, .06);
    color: var(--A);
    border: 1px solid rgba(14, 165, 233, .1);
    text-transform: lowercase;
}

/* ── Empty State ─────────────────────────────────────────────────────────── */
#nl3-empty {
    text-align: center;
    padding: 80px 20px;
    color: var(--LT);
}
#nl3-empty .empty-icon {
    width: 80px;
    height: 80px;
    border-radius: 24px;
    background: rgba(14, 165, 233, .06);
    border: 1px solid rgba(14, 165, 233, .12);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 32px;
    color: rgba(14, 165, 233, .3);
}
#nl3-empty .empty-title {
    font-size: 18px;
    font-weight: 800;
    color: var(--MT);
    margin-bottom: 6px;
}
#nl3-empty .empty-desc {
    font-size: 13px;
    color: var(--LT);
    margin-bottom: 20px;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 700px) {
    .ntas-stats-row {
        grid-template-columns: 1fr 1fr;
    }
    .ntas-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    .ntas-grid .ntas-card .ntas-card-body {
        padding: 12px 14px;
    }
    .ntas-grid .ntas-card .ntas-card-title {
        font-size: 13px;
    }
    .ntas-grid .ntas-card .ntas-card-excerpt {
        font-size: 11.5px;
        -webkit-line-clamp: 2;
        min-height: 30px;
    }
    .ntas-list-table {
        overflow-x: auto;
    }
    .ntas-list-table table {
        min-width: 650px;
    }
    .nl3-toolbar {
        padding: 8px 12px;
    }
    .nl3-search-wrap {
        min-width: 140px;
    }
    .nl3-filter-sel {
        min-width: 80px;
        font-size: 11px;
        padding: 6px 8px;
    }
}
@media (max-width: 480px) {
    .ntas-stats-row {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    .ntas-stat-card {
        padding: 10px 12px;
    }
    .ntas-stat-val {
        font-size: 16px;
    }
    .ntas-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .ntas-grid .ntas-card .ntas-card-check {
        opacity: 1;
    }
    .nl3-toolbar-left {
        flex-direction: column;
        align-items: stretch;
    }
    .nl3-toolbar-right {
        width: 100%;
        justify-content: space-between;
    }
    .nl3-search-wrap {
        min-width: 0;
    }
}

/* ── CSS extraído de views/painex.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════
   PAINEX v3.0 — Terminal Day Trade / Bolsa de Valores
══════════════════════════════════════════════════════════════════ */
:root {
    --px-bg:      #0a0e14;
    --px-bg2:     #0d1117;
    --px-panel:   #131722;
    --px-panel2:  #1a1f2e;
    --px-header:  #1e2533;
    --px-border:  #1e2533;
    --px-border2: #2a3142;
    --px-text:    #d1d4dc;
    --px-text2:   #9ca3af;
    --px-text3:   #6b7280;
    --px-up:      #26a69a;
    --px-down:    #ef5350;
    --px-blue:    #2962ff;
    --px-yellow:  #f59e0b;
    --px-purple:  #a855f7;
}

* { box-sizing: border-box; }

.px3-wrap {
    background: var(--px-bg);
    border-radius: 6px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    font-family: 'JetBrains Mono', 'Outfit', monospace;
    color: var(--px-text);
    height: calc(100vh - 140px);
    min-height: 600px;
}

/* ── TICKER TAPE (fita de cotações rolando) ─────────────────── */
.px3-ticker {
    display: flex;
    align-items: center;
    background: var(--px-header);
    border-bottom: 1px solid var(--px-border);
    height: 30px;
    overflow: hidden;
    flex-shrink: 0;
    position: relative;
}
.px3-ticker-label {
    background: var(--px-blue);
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    padding: 0 10px;
    height: 100%;
    display: flex;
    align-items: center;
    letter-spacing: .05em;
    flex-shrink: 0;
    z-index: 2;
}
.px3-ticker-track {
    display: flex;
    align-items: center;
    gap: 24px;
    animation: px3Scroll 60s linear infinite;
    white-space: nowrap;
    padding-left: 12px;
}
@keyframes px3Scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.px3-ticker-item {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    font-weight: 600;
}
.px3-ticker-sym { color: var(--px-text); font-weight: 700; }
.px3-ticker-price { color: var(--px-text2); font-family: 'JetBrains Mono', monospace; }
.px3-ticker-chg { font-size: 9px; font-weight: 700; padding: 1px 4px; border-radius: 3px; }
.px3-ticker-chg.up { color: var(--px-up); background: rgba(38,166,154,.1); }
.px3-ticker-chg.down { color: var(--px-down); background: rgba(239,83,80,.1); }

/* ── TOP BAR ────────────────────────────────────────────────── */
.px3-topbar {
    display: flex;
    align-items: center;
    background: var(--px-panel);
    border-bottom: 1px solid var(--px-border);
    padding: 0 10px;
    height: 36px;
    flex-shrink: 0;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: none;
}
.px3-topbar::-webkit-scrollbar { display: none; }
.px3-logo {
    font-size: 13px;
    font-weight: 800;
    color: var(--px-text);
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    margin-right: 8px;
}
.px3-logo i { color: var(--px-yellow); }
.px3-symbol {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 8px;
    height: 26px;
    background: var(--px-panel2);
    border: 1px solid var(--px-border2);
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
}
.px3-symbol-select {
    background: transparent;
    border: none;
    color: var(--px-text);
    font-size: 11px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    outline: none;
}
.px3-price-display {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
}
.px3-price-now {
    font-size: 16px;
    font-weight: 800;
    font-family: 'JetBrains Mono', monospace;
}
.px3-price-now.up { color: var(--px-up); }
.px3-price-now.down { color: var(--px-down); }
.px3-price-chg {
    font-size: 10px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 3px;
}
.px3-price-chg.up { color: var(--px-up); background: rgba(38,166,154,.1); }
.px3-price-chg.down { color: var(--px-down); background: rgba(239,83,80,.1); }
.px3-tf-group { display: flex; gap: 1px; margin-left: auto; }
.px3-tf-btn {
    padding: 3px 8px;
    font-size: 9px;
    font-weight: 700;
    background: var(--px-panel2);
    border: 1px solid var(--px-border);
    color: var(--px-text3);
    cursor: pointer;
    border-radius: 3px;
    font-family: inherit;
}
.px3-tf-btn:hover { color: var(--px-text); }
.px3-tf-btn.active { background: var(--px-blue); color: #fff; border-color: var(--px-blue); }
.px3-ico-btn {
    width: 26px; height: 26px;
    border-radius: 4px;
    background: var(--px-panel2);
    border: 1px solid var(--px-border);
    color: var(--px-text3);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
}
.px3-ico-btn:hover { color: var(--px-text); border-color: var(--px-border2); }
.px3-ico-btn.active { color: var(--px-blue); border-color: var(--px-blue); }

/* ── STATUS STRIP ──────────────────────────────────────────── */
.px3-strip {
    display: flex;
    align-items: stretch;
    background: var(--px-panel);
    border-bottom: 1px solid var(--px-border);
    flex-shrink: 0;
    overflow-x: auto;
    scrollbar-width: none;
}
.px3-strip::-webkit-scrollbar { display: none; }
.px3-strip-item {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 0 12px;
    border-right: 1px solid var(--px-border);
    font-size: 10px;
    color: var(--px-text3);
    white-space: nowrap;
    height: 26px;
}
.px3-strip-item strong { color: var(--px-text2); font-weight: 700; }
.px3-strip-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}
.px3-strip-dot.live { background: var(--px-up); box-shadow: 0 0 0 2px rgba(38,166,154,.2); animation: px3Pulse 1.4s infinite; }
.px3-strip-dot.warn { background: var(--px-yellow); }
.px3-strip-dot.err { background: var(--px-down); }
@keyframes px3Pulse { 0%,100%{opacity:1} 50%{opacity:.4} }
.px3-strip-clock { margin-left: auto; font-family: 'JetBrains Mono', monospace; font-weight: 700; color: var(--px-blue); padding-right: 12px; }

/* ── MAIN LAYOUT ───────────────────────────────────────────── */
.px3-main {
    flex: 1;
    display: flex;
    min-height: 0;
    gap: 1px;
    background: var(--px-border);
}

/* ── LEFT: DOMÍNIOS LIST ───────────────────────────────────── */
.px3-left {
    width: 180px;
    flex-shrink: 0;
    background: var(--px-panel);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.px3-left-hdr {
    padding: 5px 10px;
    font-size: 9px;
    font-weight: 700;
    color: var(--px-text3);
    text-transform: uppercase;
    letter-spacing: .05em;
    background: var(--px-header);
    border-bottom: 1px solid var(--px-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.px3-left-hdr span { color: var(--px-blue); }
.px3-left-list {
    flex: 1;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--px-border2) transparent;
}
.px3-left-list::-webkit-scrollbar { width: 3px; }
.px3-left-list::-webkit-scrollbar-thumb { background: var(--px-border2); border-radius: 2px; }
.px3-dom-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(255,255,255,.02);
    cursor: pointer;
    transition: background .1s;
    font-size: 10px;
}
.px3-dom-item:hover { background: rgba(41,98,255,.06); }
.px3-dom-item.active { background: rgba(41,98,255,.12); border-left: 2px solid var(--px-blue); padding-left: 8px; }
.px3-dom-dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.px3-dom-dot.ok { background: var(--px-up); box-shadow: 0 0 4px var(--px-up); }
.px3-dom-dot.warn { background: var(--px-yellow); box-shadow: 0 0 4px var(--px-yellow); }
.px3-dom-dot.err { background: var(--px-down); box-shadow: 0 0 4px var(--px-down); }
.px3-dom-dot.chk { background: var(--px-text3); }
.px3-dom-label {
    flex: 1;
    font-size: 10px;
    color: var(--px-text2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
}
.px3-dom-rt {
    font-size: 9px;
    color: var(--px-text3);
    font-family: 'JetBrains Mono', monospace;
    font-weight: 600;
}
.px3-dom-chg {
    font-size: 8px;
    font-weight: 700;
    width: 36px;
    text-align: right;
}
.px3-dom-chg.up { color: var(--px-up); }
.px3-dom-chg.down { color: var(--px-down); }

/* ── CENTER: CHART ─────────────────────────────────────────── */
.px3-center {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: var(--px-bg2);
}
.px3-chart-hdr {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 10px;
    background: var(--px-panel);
    border-bottom: 1px solid var(--px-border);
    flex-shrink: 0;
    height: 28px;
    font-size: 10px;
}
.px3-chart-ohlc {
    display: flex;
    gap: 12px;
    font-size: 10px;
    color: var(--px-text3);
}
.px3-chart-ohlc span b { color: var(--px-text2); font-weight: 700; font-family: 'JetBrains Mono', monospace; }
.px3-chart-ohlc span b.up { color: var(--px-up); }
.px3-chart-ohlc span b.down { color: var(--px-down); }
.px3-chart-tools {
    display: flex;
    gap: 2px;
    margin-left: auto;
}

.px3-chart-stack {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    position: relative;
}
.px3-canvas-main { display: block; width: 100%; flex: 1; background: var(--px-bg2); min-height: 0; }
.px3-canvas-vol { display: block; width: 100%; height: 60px; background: var(--px-bg2); border-top: 1px solid var(--px-border); flex-shrink: 0; }
.px3-ind-label {
    position: absolute;
    top: 4px;
    left: 8px;
    font-size: 9px;
    color: var(--px-text3);
    font-weight: 600;
    pointer-events: none;
    z-index: 2;
    display: flex;
    gap: 12px;
}
.px3-ind-label b { color: var(--px-text2); font-weight: 700; }

/* ── RIGHT: BOOK DE OFERTAS + TIME & SALES ─────────────────── */
.px3-right {
    width: 200px;
    flex-shrink: 0;
    background: var(--px-panel);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.px3-right-tabs {
    display: flex;
    background: var(--px-header);
    border-bottom: 1px solid var(--px-border);
    flex-shrink: 0;
}
.px3-right-tab {
    flex: 1;
    padding: 5px;
    font-size: 9px;
    font-weight: 700;
    color: var(--px-text3);
    cursor: pointer;
    text-align: center;
    border-bottom: 2px solid transparent;
    transition: all .15s;
    font-family: 'Outfit', sans-serif;
}
.px3-right-tab:hover { color: var(--px-text2); }
.px3-right-tab.active { color: var(--px-text); border-bottom-color: var(--px-blue); }

.px3-book {
    flex: 1;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--px-border2) transparent;
    font-size: 9px;
}
.px3-book::-webkit-scrollbar { width: 3px; }
.px3-book::-webkit-scrollbar-thumb { background: var(--px-border2); border-radius: 2px; }
.px3-book-hdr {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 4px 8px;
    font-size: 8px;
    font-weight: 700;
    color: var(--px-text3);
    text-transform: uppercase;
    border-bottom: 1px solid var(--px-border);
    position: sticky;
    top: 0;
    background: var(--px-panel);
}
.px3-book-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 3px 8px;
    font-size: 9px;
    font-family: 'JetBrains Mono', monospace;
    border-bottom: 1px solid rgba(255,255,255,.02);
    position: relative;
    align-items: center;
}
.px3-book-row.ask { color: var(--px-down); }
.px3-book-row.bid { color: var(--px-up); }
.px3-book-row .px3-book-bar {
    position: absolute;
    top: 1px;
    bottom: 1px;
    opacity: .12;
    z-index: 0;
}
.px3-book-row.ask .px3-book-bar { right: 0; background: var(--px-down); }
.px3-book-row.bid .px3-book-bar { right: 0; background: var(--px-up); }
.px3-book-row span { position: relative; z-index: 1; }
.px3-book-spread {
    padding: 4px 8px;
    background: var(--px-panel2);
    border-top: 1px solid var(--px-border);
    border-bottom: 1px solid var(--px-border);
    font-size: 9px;
    color: var(--px-text3);
    text-align: center;
    font-weight: 700;
}
.px3-book-spread b { color: var(--px-text); font-family: 'JetBrains Mono', monospace; }

.px3-timesales {
    flex: 1;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--px-border2) transparent;
    font-size: 9px;
    display: none;
}
.px3-timesales.active { display: block; }
.px3-timesales::-webkit-scrollbar { width: 3px; }
.px3-timesales::-webkit-scrollbar-thumb { background: var(--px-border2); border-radius: 2px; }
.px3-ts-hdr {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 4px 8px;
    font-size: 8px;
    font-weight: 700;
    color: var(--px-text3);
    text-transform: uppercase;
    border-bottom: 1px solid var(--px-border);
    position: sticky;
    top: 0;
    background: var(--px-panel);
}
.px3-ts-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 3px 8px;
    font-size: 9px;
    font-family: 'JetBrains Mono', monospace;
    border-bottom: 1px solid rgba(255,255,255,.02);
}
.px3-ts-row.up { color: var(--px-up); }
.px3-ts-row.down { color: var(--px-down); }
.px3-ts-row .ts-time { color: var(--px-text3); }

/* ── BOTTOM: STATS + LOG ───────────────────────────────────── */
.px3-bottom {
    height: 120px;
    flex-shrink: 0;
    background: var(--px-panel);
    border-top: 1px solid var(--px-border);
    display: flex;
}
.px3-bottom-left {
    width: 280px;
    flex-shrink: 0;
    border-right: 1px solid var(--px-border);
    display: flex;
    flex-direction: column;
}
.px3-bottom-hdr {
    padding: 4px 10px;
    font-size: 9px;
    font-weight: 700;
    color: var(--px-text3);
    text-transform: uppercase;
    background: var(--px-header);
    border-bottom: 1px solid var(--px-border);
    display: flex;
    align-items: center;
    gap: 5px;
}
.px3-stats-mini {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: var(--px-border);
    flex: 1;
}
.px3-stat-mini {
    background: var(--px-panel);
    padding: 5px 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.px3-stat-mini-val { font-size: 13px; font-weight: 800; color: var(--px-text); font-family: 'JetBrains Mono', monospace; line-height: 1; }
.px3-stat-mini-lbl { font-size: 8px; color: var(--px-text3); text-transform: uppercase; margin-top: 2px; }

.px3-bottom-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.px3-log {
    flex: 1;
    overflow-y: auto;
    font-size: 10px;
    font-family: 'JetBrains Mono', monospace;
    color: var(--px-text3);
    line-height: 1.5;
    padding: 5px 10px;
    scrollbar-width: thin;
    scrollbar-color: var(--px-border2) transparent;
}
.px3-log::-webkit-scrollbar { width: 3px; }
.px3-log::-webkit-scrollbar-thumb { background: var(--px-border2); border-radius: 2px; }
.px3-log .ok { color: var(--px-up); }
.px3-log .warn { color: var(--px-yellow); }
.px3-log .err { color: var(--px-down); }
.px3-log .info { color: var(--px-blue); }
.px3-log .ai { color: var(--px-purple); }

/* ── FOOTER ────────────────────────────────────────────────── */
.px3-footer {
    display: flex;
    align-items: center;
    background: var(--px-header);
    border-top: 1px solid var(--px-border);
    padding: 0 10px;
    height: 20px;
    flex-shrink: 0;
    font-size: 9px;
    color: var(--px-text3);
    overflow-x: auto;
    scrollbar-width: none;
}
.px3-footer::-webkit-scrollbar { display: none; }
.px3-f-item {
    padding: 0 8px;
    border-right: 1px solid var(--px-border);
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 4px;
}
.px3-f-item:last-child { border-right: none; }
.px3-f-clock { margin-left: auto; font-family: 'JetBrains Mono', monospace; font-weight: 600; color: var(--px-text2); }

/* ── MODAL ────────────────────────────────────────────────── */
.px3-modal {
    position: fixed;
    inset: 0;
    z-index: 99990;
    background: rgba(5,8,12,.92);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
.px3-modal.open { display: flex; }
.px3-modal-inner {
    background: var(--px-bg2);
    border: 1px solid var(--px-border2);
    border-radius: 6px;
    width: 100%;
    max-width: 1300px;
    max-height: 92vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 30px 90px rgba(0,0,0,.7);
    position: relative;
}
.px3-modal-close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 5;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: var(--px-panel);
    border: 1px solid var(--px-border);
    color: var(--px-text2);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}
.px3-modal-close:hover { background: rgba(239,83,80,.15); border-color: var(--px-down); color: var(--px-down); }

/* ── RESPONSIVE ────────────────────────────────────────────── */
@media (max-width: 900px) {
    .px3-left { width: 130px; }
    .px3-right { width: 150px; }
    .px3-bottom-left { width: 200px; }
}
@media (max-width: 640px) {
    .px3-wrap { height: auto; min-height: 500px; }
    .px3-main { flex-direction: column; }
    .px3-left, .px3-right { width: 100%; max-height: 120px; }
    .px3-bottom { flex-direction: column; height: auto; }
    .px3-bottom-left { width: 100%; max-height: 80px; border-right: none; border-bottom: 1px solid var(--px-border); }
    .px3-ticker-track { animation-duration: 30s; }
}

/* ── CSS extraído de views/profile.php · bloco 1 ───────────────────────────── */
/* ── Tabs ── */
.prf-tabs{display:flex;gap:4px;padding:4px;background:var(--CARD);border:1px solid var(--BD);border-radius:10px;margin-bottom:16px;width:fit-content}
.prf-tab{padding:7px 18px;border-radius:7px;border:none;background:none;color:var(--LT);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px;font-family:inherit}
.prf-tab:hover{color:var(--T);background:var(--BG)}
.prf-tab.active{background:var(--A);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.prf-pane{animation:prfFade .2s ease}
@keyframes prfFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}

/* ── Identity Card ── */
.prf-identity-card{background:linear-gradient(135deg,var(--CARD),var(--BG));border:1px solid var(--BD);border-radius:14px;padding:22px 24px;display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap}
.prf-identity-left{display:flex;align-items:center;gap:18px;flex:1;min-width:260px}
.prf-big-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;font-weight:800;flex-shrink:0;overflow:hidden;border:3px solid var(--BD);box-shadow:0 4px 16px rgba(0,0,0,.25)}
.prf-identity-name{font-size:19px;font-weight:800;color:var(--T);margin-bottom:4px}
.prf-identity-role{margin-bottom:6px}
.prf-identity-stats{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
.prf-stat-chip{display:flex;align-items:center;gap:9px;padding:10px 14px;background:var(--BG);border:1px solid var(--BD);border-radius:10px;min-width:90px}
.prf-stat-chip i{font-size:18px}

/* ── Info List ── */
.prf-info-list{display:flex;flex-direction:column;gap:2px}
.prf-info-row{display:flex;align-items:center;gap:9px;padding:8px 6px;border-radius:6px;transition:background .1s}
.prf-info-row:hover{background:var(--BG)}
.prf-info-row i{width:16px;text-align:center;font-size:12px;flex-shrink:0}
.prf-info-label{font-size:12px;color:var(--LT);min-width:80px;flex-shrink:0}
.prf-info-val{font-size:12.5px;color:var(--T);font-weight:500;flex:1;word-break:break-all}

/* ── CSS extraído de views/roots.php · bloco 1 ───────────────────────────── */
/* ── Modal raiz wide ── */
.root-modal-wide { max-width: 720px; width: 100%; }
.root-modal-body { padding: 0 !important; display: flex; min-height: 420px; }
.root-dir-col {
  width: 50%;
  border-right: 1px solid var(--BD);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.root-form-col { flex: 1; padding: 18px 20px; overflow-y: auto; }
.root-dir-header {
  padding: 10px 14px;
  background: var(--CARD);
  border-bottom: 1px solid var(--BD);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--MT);
  flex-shrink: 0;
}
.root-dir-path {
  padding: 5px 12px;
  background: rgba(0,0,0,.05);
  border-bottom: 1px solid var(--BD);
  display: flex;
  align-items: flex-start;
  gap: 6px;
  flex-shrink: 0;
  min-height: 28px;
}
.root-dir-path .mono { font-size: 10.5px; color: var(--LT); word-break: break-all; line-height: 1.5; }
.root-dir-list { flex: 1; overflow-y: auto; }
/* Dir items */
.dir-item {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 12px 8px 14px;
  cursor: pointer;
  border-bottom: 1px solid var(--BD);
  transition: background .12s;
}
.dir-item:hover { background: var(--CARD-H,rgba(255,255,255,.05)); }
.dir-item.dir-selected { background: rgba(14,165,233,.1); border-left: 3px solid var(--A); }
.dir-item-name { font-size: 12.5px; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dir-use-btn {
  background: var(--A);
  color: #fff;
  border: none;
  border-radius: 5px;
  padding: 3px 10px;
  font-size: 11px;
  cursor: pointer;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity .15s;
  white-space: nowrap;
}
.dir-item:hover .dir-use-btn { opacity: 1; }
.dir-item.dir-selected .dir-use-btn { opacity: 1; background: #22c55e; }
/* Icon grid */
.icon-item {
  display: flex; flex-direction: column; align-items: center; gap: 5px;
  padding: 10px 6px; border-radius: 7px; cursor: pointer; border: 1px solid transparent;
  transition: all .12s; font-size: 10px; color: var(--LT); text-align: center; word-break: break-all;
}
.icon-item:hover { background: var(--CARD); border-color: var(--A); color: var(--T); }
.icon-item i { font-size: 20px; color: var(--A); }

/* ── CSS extraído de views/schedule.php · bloco 1 ───────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════════
   SCHEDULE v3.0 — Agendamento por Domínio
══════════════════════════════════════════════════════════════════════════════ */
.schedule-wrapper { display: flex; flex-direction: column; gap: 24px; }

.schedule-header {
    display: flex; align-items: center; justify-content: space-between;
    flex-wrap: wrap; gap: 12px; padding: 4px 0 16px 0; border-bottom: 1px solid var(--BD);
}
.schedule-header h1 { display: flex; align-items: center; gap: 10px; font-size: 20px; font-weight: 800; color: var(--T); margin: 0; }
.schedule-header h1 i { color: var(--A); }
.schedule-header .subtitle { font-size: 13px; color: var(--LT); margin-top: 2px; }
.schedule-header .domain-badge {
    display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px;
    background: rgba(14,165,233,.12); border: 1px solid rgba(14,165,233,.25);
    border-radius: 99px; color: var(--A); font-size: 12px; font-weight: 700;
}

.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.stat-card { background: var(--CARD); border: 1px solid var(--BD); border-radius: var(--R); padding: 16px 18px; position: relative; overflow: hidden; transition: all .2s ease; }
.stat-card:hover { border-color: rgba(14,165,233,.3); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.2); }
.stat-card .stat-label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--LT); margin-bottom: 6px; display: flex; align-items: center; gap: 6px; }
.stat-card .stat-value { font-size: 20px; font-weight: 800; color: var(--T); line-height: 1.2; }
.stat-card .stat-sub { font-size: 11px; color: var(--LT); margin-top: 4px; }
.stat-card .stat-icon { position: absolute; right: 12px; top: 12px; font-size: 22px; opacity: .12; }

.schedule-layout { display: grid; grid-template-columns: 1fr 320px; gap: 20px; align-items: start; }
@media (max-width: 1100px) { .schedule-layout { grid-template-columns: 1fr; } }

/* ── Cards de domínio (agendamento) ─────────────────────────────────────── */
.domain-sched-list { display: flex; flex-direction: column; gap: 14px; }
.domain-sched-card { background: var(--CARD); border: 1px solid var(--BD); border-radius: var(--R); padding: 18px 20px; transition: border-color .2s; }
.domain-sched-card.is-active-sched { border-color: rgba(34,197,94,.3); }
.domain-sched-card .dsc-head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; padding-bottom: 14px; border-bottom: 1px solid var(--BD); flex-wrap: wrap; }
.domain-sched-card .dsc-icon { width: 34px; height: 34px; border-radius: 9px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 14px; }
.domain-sched-card .dsc-title { font-size: 14px; font-weight: 800; color: var(--T); }
.domain-sched-card .dsc-next { font-size: 11px; color: var(--LT); margin-top: 2px; }
.domain-sched-card .dsc-toggle-wrap { margin-left: auto; display: flex; align-items: center; gap: 10px; }

.dsc-body { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 720px) { .dsc-body { grid-template-columns: 1fr; } }

.fg { margin-bottom: 14px; }
.fg:last-child { margin-bottom: 0; }
.fc-label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--LT); margin-bottom: 6px; }
.fc { width: 100%; padding: 9px 12px; background: var(--BG); border: 1px solid var(--BD); border-radius: var(--r2, 8px); color: var(--T); font-size: 13px; font-family: 'Outfit', sans-serif; }
.fc[type="time"] { color-scheme: dark; width: auto; min-width: 110px; }

.days-grid { display: flex; gap: 5px; flex-wrap: wrap; }
.day-item { display: flex; flex-direction: column; align-items: center; gap: 3px; cursor: pointer; padding: 5px 7px; border-radius: 8px; background: rgba(255,255,255,.02); border: 2px solid transparent; transition: all .2s; min-width: 34px; }
.day-item:hover { background: rgba(14,165,233,.05); border-color: rgba(14,165,233,.15); }
.day-item.checked { border-color: var(--A); background: rgba(14,165,233,.08); }
.day-item input { display: none; }
.day-item .day-label { font-size: 9.5px; font-weight: 700; color: var(--LT); text-transform: uppercase; }
.day-item.checked .day-label { color: var(--A); }
.day-item .day-check { width: 14px; height: 14px; border-radius: 50%; border: 2px solid var(--BD); display: flex; align-items: center; justify-content: center; transition: all .2s; }
.day-item.checked .day-check { background: var(--A); border-color: var(--A); }
.day-item .day-check i { font-size: 7px; color: #fff; opacity: 0; transition: opacity .2s; }
.day-item.checked .day-check i { opacity: 1; }

/* ── Chips de horário (múltiplos horários por domínio) ──────────────────── */
.time-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; min-height: 28px; }
.time-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 6px 4px 10px; background: rgba(14,165,233,.1); border: 1px solid rgba(14,165,233,.3); border-radius: 99px; font-size: 12px; font-weight: 700; color: var(--A); font-family: 'JetBrains Mono', monospace; }
.time-chip button { width: 16px; height: 16px; border: none; border-radius: 50%; background: rgba(239,68,68,.15); color: #ef4444; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 9px; padding: 0; }
.time-chip button:hover { background: rgba(239,68,68,.3); }
.time-add-row { display: flex; gap: 6px; }
.time-add-row .fc { flex: 1; }

.mode-options { display: grid; gap: 5px; }
.mode-option { display: flex; align-items: center; gap: 8px; padding: 7px 10px; background: rgba(255,255,255,.02); border: 1.5px solid var(--BD); border-radius: 8px; cursor: pointer; transition: all .15s; }
.mode-option:hover { background: rgba(14,165,233,.04); border-color: rgba(14,165,233,.2); }
.mode-option.checked { border-color: var(--A); background: rgba(14,165,233,.06); }
.mode-option input { accent-color: var(--A); width: 13px; height: 13px; flex-shrink: 0; }
.mode-option .mode-icon { width: 14px; text-align: center; flex-shrink: 0; font-size: 11px; }
.mode-option .mode-label { font-size: 11.5px; font-weight: 600; color: var(--T); }

.dsc-ai-note { display: flex; gap: 8px; align-items: flex-start; padding: 9px 12px; background: rgba(139,92,246,.07); border: 1px solid rgba(139,92,246,.2); border-radius: 8px; font-size: 11.5px; color: var(--MT); line-height: 1.5; margin-top: 12px; }
.dsc-ai-note i { color: #a78bfa; margin-top: 1px; flex-shrink: 0; }

.dsc-foot { display: flex; gap: 8px; margin-top: 16px; grid-column: 1 / -1; flex-wrap: wrap; }
.dsc-foot .btn { flex: 1; min-width: 140px; justify-content: center; }

/* ── Toggle Switch ───────────────────────────────────────────────────────── */
.toggle-switch { position: relative; display: inline-block; width: 40px; height: 22px; flex-shrink: 0; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.toggle-switch .slider { position: absolute; cursor: pointer; inset: 0; background: rgba(255,255,255,.15); border-radius: 24px; transition: .3s; }
.toggle-switch .slider:before { content: ''; position: absolute; width: 16px; height: 16px; left: 3px; bottom: 3px; background: #fff; border-radius: 50%; transition: .3s; }
.toggle-switch input:checked + .slider { background: #22c55e; }
.toggle-switch input:checked + .slider:before { transform: translateX(18px); }

/* ── Coluna lateral ──────────────────────────────────────────────────────── */
.config-card { background: var(--CARD); border: 1px solid var(--BD); border-radius: var(--R); padding: 20px; }
.config-card .card-header { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--BD); }
.config-card .card-header i { font-size: 14px; color: var(--A); width: 26px; height: 26px; display: flex; align-items: center; justify-content: center; background: rgba(14,165,233,.08); border-radius: 8px; }
.config-card .card-header .card-title { font-size: 14px; font-weight: 700; color: var(--T); }
.config-card .card-header .card-sub { font-size: 10.5px; color: var(--LT); }

.roots-list { display: grid; gap: 4px; }
.root-item { display: flex; align-items: center; gap: 10px; padding: 7px 10px; background: rgba(255,255,255,.02); border: 1.5px solid var(--BD); border-radius: 8px; cursor: pointer; transition: all .15s; }
.root-item:hover { background: rgba(14,165,233,.04); }
.root-item.checked { border-color: var(--A); background: rgba(14,165,233,.05); }
.root-item input { accent-color: var(--A); width: 13px; height: 13px; flex-shrink: 0; }
.root-item .root-icon { width: 13px; text-align: center; flex-shrink: 0; }
.root-item .root-info { flex: 1; min-width: 0; }
.root-item .root-name { font-size: 11.5px; font-weight: 600; color: var(--T); }
.root-item .root-path { font-size: 9.5px; color: var(--LT); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.btn-block { width: 100%; justify-content: center; }
.btn-run { background: linear-gradient(135deg, #f59e0b, #ef4444); color: #fff !important; font-weight: 700; border: none; }
.btn-run:hover { opacity: .9; }
.btn-ai { background: linear-gradient(135deg, rgba(139,92,246,.18), rgba(14,165,233,.18)); border: 1px solid rgba(139,92,246,.4); color: #a78bfa !important; font-weight: 700; }
.btn-ai:hover { opacity: .88; }
.btn-ai:disabled { opacity: .55; cursor: wait; }

.cron-info { background: rgba(14,165,233,.04); border: 1px solid rgba(14,165,233,.15); border-radius: var(--R); padding: 16px 18px; }
.cron-info .cron-title { font-size: 11.5px; font-weight: 700; color: var(--A); margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.cron-info .cron-code { background: rgba(0,0,0,.4); border-radius: 6px; padding: 9px 10px; font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: #22c55e; word-break: break-all; margin: 8px 0; }
.cron-info .cron-desc { font-size: 10px; color: var(--LT); line-height: 1.6; }
.cron-info code { color: var(--A); background: rgba(14,165,233,.08); padding: 1px 6px; border-radius: 3px; }

.lock-badge { display: flex; align-items: center; gap: 6px; padding: 8px 12px; background: rgba(14,165,233,.06); border: 1px solid rgba(14,165,233,.12); border-radius: 6px; font-size: 12px; color: var(--LT); }
.lock-badge i { color: var(--A); }
.lock-badge strong { color: var(--T); }

.alert-schedule { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: 8px; font-size: 13px; border: 1px solid; }
.alert-schedule.ok { background: rgba(34,197,94,.08); border-color: rgba(34,197,94,.2); color: #22c55e; }
.alert-schedule.err { background: rgba(239,68,68,.08); border-color: rgba(239,68,68,.2); color: #ef4444; }
.alert-schedule i { font-size: 16px; flex-shrink: 0; }

.empty-domains { padding: 40px 20px; text-align: center; color: var(--LT); }
.empty-domains i { font-size: 32px; opacity: .3; margin-bottom: 12px; display: block; }

/* ── CSS extraído de views/settings.php · bloco 1 ───────────────────────────── */
/* ── Settings Tabs ──────────────────────────────────────────────────────── */
.cfg-tabs{display:flex;gap:2px;margin-bottom:0;border-bottom:2px solid var(--BD);padding:0 2px}
.cfg-tab{background:none;border:none;border-bottom:3px solid transparent;padding:10px 20px;font-size:13px;font-weight:600;color:var(--MT);cursor:pointer;border-radius:8px 8px 0 0;transition:all .15s;display:inline-flex;align-items:center;gap:8px;margin-bottom:-2px}
.cfg-tab:hover{color:var(--T);background:rgba(255,255,255,.04)}
.cfg-tab.active{color:var(--A);background:var(--CARD);border-bottom:3px solid var(--A)}
.cfg-tab-panel{padding-top:20px;animation:fadeIn .18s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}

/* ── Section titles ─────────────────────────────────────────────────────── */
.cfg-section-title{font-size:12px;font-weight:800;color:var(--A);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--BD)}
.cfg-sep{border:none;border-top:1px solid var(--BD);margin:20px 0}
.fg-hint{font-size:11.5px;color:var(--MT);margin-top:4px;line-height:1.5}

/* ── Root / active root card ────────────────────────────────────────────── */
.active-root-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(135deg,rgba(var(--Ar),var(--Ag),var(--Ab),.12) 0%,rgba(var(--Ar),var(--Ag),var(--Ab),.04) 100%);border:1px solid rgba(var(--Ar),var(--Ag),var(--Ab),.3);border-radius:10px;margin-bottom:12px}

/* ── Folder tree ────────────────────────────────────────────────────────── */
.folder-tree-wrap{background:rgba(0,0,0,.15);border:1px solid var(--BD);border-radius:10px;padding:10px;max-height:300px;overflow-y:auto}
.folder-tree-wrap::-webkit-scrollbar{width:4px}.folder-tree-wrap::-webkit-scrollbar-thumb{background:var(--BD);border-radius:2px}
.folder-item{margin:1px 0}
.folder-label{display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:7px;cursor:pointer;font-size:12.5px;transition:background .12s;user-select:none}
.folder-label:hover{background:rgba(255,255,255,.06)}
.folder-item.excluded > .folder-label{color:#ef4444}
.folder-item.excluded > .folder-label i.fa-folder{color:#ef4444}
.folder-children{margin-left:18px;border-left:1px solid var(--BD);padding-left:8px}
.folder-chk{accent-color:#ef4444}
.table-chk{accent-color:#ef4444}

/* ── Email sub-tabs ─────────────────────────────────────────────────────── */
.ecfg-tab{background:none;border:none;border-radius:7px;padding:7px 14px;font-size:12px;font-weight:600;color:var(--MT);cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:6px}
.ecfg-tab:hover{background:rgba(255,255,255,.07);color:var(--T)}
.ecfg-tab.active{background:var(--A);color:#fff}

/* ── DB connection card ─────────────────────────────────────────────────── */
.db-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:99px;font-size:11px;font-weight:700}

/* ── Filtro de Arquivos: grupos recolhíveis ─────────────────────────────── */
.ext-group{margin-bottom:10px;border:1px solid var(--BD);border-radius:8px;overflow:hidden}
.ext-group-header{display:flex;align-items:center;gap:8px;padding:7px 10px;cursor:pointer;user-select:none;background:var(--BG)}
.ext-group-header:hover{background:var(--CARD-H,rgba(255,255,255,.05))}
.ext-group-chev{font-size:10px;color:var(--LT);transition:transform .15s;flex-shrink:0}
.ext-group.collapsed .ext-group-chev{transform:rotate(-90deg)}
.ext-group.collapsed .ext-group-body{display:none!important}
.ext-group-body{padding:10px}
.ext-group-mini{background:none;border:1px solid var(--BD);color:var(--LT);border-radius:4px;width:22px;height:22px;font-size:10px;cursor:pointer;flex-shrink:0}
.ext-group-mini:hover{border-color:var(--A);color:var(--A)}

/* ── Variáveis e utilitários do shell compartilhado ─────────────────────── */
:root{--SB-W:230px;--TB-H:56px;--r2:7px;--C2:var(--CARD);--TX:var(--T)}
html{min-width:320px;overflow-x:hidden}
body{overflow-x:hidden}
.sb-brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;flex:1;min-width:0;overflow:hidden;color:inherit}
.sb-logo-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(14,165,233,.12)}
.sb-logo-icon img{width:100%;height:100%;object-fit:contain;border-radius:6px}
.sb-logo-icon i{font-size:15px;color:var(--A)}
.sb-logo-text{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.sb-logo-text strong{font-size:13.5px;font-weight:700;color:var(--T);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-logo-text span{font-size:10.5px;color:var(--LT);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-collapse-btn{margin-left:-20px;background:none;border:none;color:var(--MT);cursor:pointer;padding:4px;border-radius:4px;line-height:1;transition:color .15s;flex-shrink:0}
.sb-brand{flex:0 0 auto}
.sb-mobile-main-nav{display:none;flex-direction:column;gap:2px;padding:4px 8px 8px;border-bottom:1px solid rgba(255,255,255,.08);flex:0 0 auto}
.sb-mobile-nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;font-size:12px;font-weight:500;color:var(--MT);text-decoration:none;transition:background .13s,color .13s;position:relative}
.sb-mobile-nav-item i{width:18px;text-align:center;font-size:14px;flex-shrink:0}
.sb-mobile-nav-item span{flex:1}
.sb-mobile-nav-item:hover,.sb-mobile-nav-item.active{background:rgba(14,165,233,.12);color:var(--A)}
.sb-mobile-nav-item.active i{color:var(--A)}
.sb-domain-row{--rc:var(--A);display:flex;align-items:center;border-radius:9px;padding:2px 4px;transition:background .15s}
.sb-domain-row:hover{background:rgba(255,255,255,.04)}
.sb-domain-row-disabled{opacity:.55}
.sb-domain-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-decoration:none;padding:9px 16px;border-radius:8px;cursor:pointer;color:var(--T);font-size:13px;font-weight:600;transition:background .15s,color .15s;position:relative;margin:0}
.sb-domain-main>i{color:var(--rc);width:16px;text-align:center;flex-shrink:0}
.sb-domain-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.sb-domain-badge{flex:0 0 auto;font-size:9px;opacity:.85;color:#f59e0b}
.sb-domain-tools{display:none;align-items:center;gap:2px;flex:0 0 auto;padding-right:4px}
.sb-domain-tool-btn{width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--MT);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10.5px;transition:all .15s}
.sb-domain-tool-btn:hover{background:rgba(148,163,184,.15);color:var(--T)}
.sb-server-footer{flex:0 0 44px;margin:0 8px 8px;border:1px solid rgba(14,165,233,.28);border-radius:9px;background:linear-gradient(145deg,rgba(14,165,233,.13),rgba(15,23,42,.84));display:flex;text-align:left;color:var(--T);cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:5px 12px;width:calc(100% - 16px)}
.sb-server-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border-radius:8px;background:rgba(14,165,233,.16);color:#38bdf8}
.sb-server-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.sb-server-copy strong{font-size:10px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--T)}
.sb-server-copy small{font-size:9px;color:var(--MT);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}
.sb-server-meter{width:34px;height:5px;flex:0 0 34px;border-radius:99px;background:rgba(148,163,184,.2);overflow:hidden}
.sb-server-meter i{display:block;width:var(--disk-pct,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,var(--server-color,var(--A)))}
.sb-server-footer>.fa-chevron-right{flex:0 0 auto;color:var(--LT);font-size:9px;opacity:.5}
.sb-foot{flex:0 0 auto;background:var(--SB-BG)}
.sb-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.tb-header-actions{display:flex;align-items:center;gap:5px;flex-shrink:0;margin-left:auto}
.tb-user-menu-wrap{position:relative;display:flex;align-items:center}
.tb-user-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:2px;border:1px solid var(--BD);border-radius:50%;background:var(--CARD);cursor:pointer}
.tb-user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--A),#a855f7);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#fff;overflow:hidden}
.tb-user-avatar.large{width:36px;height:36px;font-size:15px;flex-shrink:0}
.tb-user-avatar img{width:100%;height:100%;object-fit:cover}
.tb-user-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;width:215px;background:var(--SB-BG,#2d2d3f);border:1px solid var(--BD);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.35);z-index:2000;padding:6px}
.tb-user-dropdown.is-open{display:block}
.tb-user-summary{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--BD);margin-bottom:4px}
.tb-user-summary-copy{min-width:0}
.tb-user-summary-name{font-weight:700;font-size:13px;color:var(--T);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-user-summary-role{font-size:11px;color:var(--LT);text-transform:capitalize}
.tb-user-menu-link,.tb-user-menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border-radius:7px;font-size:12px;color:var(--T);text-decoration:none;background:transparent;border:0;text-align:left;cursor:pointer}
.tb-user-menu-link:hover,.tb-user-menu-item:hover{background:var(--CARD-H)}
.tb-user-menu-link i,.tb-user-menu-item i{width:15px;color:var(--A)}
.tb-user-menu-link-danger{color:#ef4444}
.tb-user-menu-link-danger i{color:inherit}
.tb-menu-divider{height:1px;background:var(--BD);margin:4px 2px}
.tb-menu-badge{margin-left:auto;background:#ef4444;color:#fff;border-radius:99px;font-size:9px;font-weight:800;padding:1px 5px}
.tb-domain-tabs{display:flex;align-items:flex-end;gap:2px;min-height:38px}
.tb-domain-tab{display:inline-flex;align-items:center;gap:6px;min-height:29px;padding:6px 14px 8px;border:1px solid transparent;border-bottom:2px solid transparent;border-radius:6px 6px 0 0;font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap;transition:all .2s;position:relative;cursor:pointer}
.tb-domain-tab i{font-size:12px}
.mobile-notes-modal{display:none;position:fixed;inset:0;z-index:120000;align-items:flex-end;justify-content:center;padding:12px;background:rgba(0,0,0,.6);backdrop-filter:blur(5px)}
.mobile-notes-modal.open{display:flex}
.mobile-notes-sheet{width:min(520px,100%);max-height:min(78dvh,620px);background:var(--CARD);border:1px solid var(--BD);border-radius:16px 16px 10px 10px;box-shadow:0 -15px 50px rgba(0,0,0,.5);overflow:hidden}
.mobile-notes-head{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--BD)}
.mobile-notes-head>div{flex:1}
.mobile-notes-kicker{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--A);font-weight:800}
.mobile-notes-head h2{font-size:17px;margin:3px 0 0;color:var(--T)}
.mobile-notes-close{background:none;border:0;color:var(--MT);font-size:18px;cursor:pointer;padding:5px}
.mobile-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px;overflow:auto}
.mobile-note-tile{display:flex;align-items:center;gap:8px;min-width:0;padding:11px;border:1px solid var(--BD);border-left:3px solid var(--note-color,var(--A));border-radius:9px;background:rgba(255,255,255,.03);color:var(--T);font-size:12px;text-align:left;cursor:pointer}
.mobile-note-tile i{color:var(--note-color,var(--A));flex:0 0 auto}
.mobile-note-tile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-note-tile-new{border-left-color:var(--A);color:var(--A)}
.mobile-notes-empty{grid-column:1/-1;padding:28px 10px;text-align:center;color:var(--LT);font-size:12px}
.n-notif-panel{min-width:0}

/* ── Shell unificado: header, abas, sidebar e conteúdo ─────────────────── */
.app-shell{display:flex;align-items:stretch;width:100%;min-height:100vh;min-height:100dvh;position:relative}
.app-shell>.n-content-full{flex:1;min-width:0;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;padding-top:calc(20px + var(--TB-H))}
#topbar{position:fixed!important;inset:0 0 auto var(--SB-W);width:auto!important;height:var(--TB-H);min-height:var(--TB-H);padding:0 14px!important;z-index:1000}
#topbar+.tb-domain-tabs{position:fixed;top:var(--TB-H);left:var(--SB-W);right:0;z-index:990;min-height:38px;padding:4px 14px 0!important;background:rgba(9,9,21,.97);border-bottom:1px solid var(--BD);box-shadow:0 5px 18px rgba(0,0,0,.16)}
.tb-domain-tab{opacity:1!important;color:var(--MT)!important;background:transparent!important;border-color:transparent!important;top:0!important;margin-bottom:-1px!important}
.tb-domain-tab:hover,.tb-domain-tab.active{color:var(--A)!important;background:rgba(14,165,233,.1)!important;border-color:var(--BD)!important}
.tb-domain-tab.active{border-bottom:2px solid var(--A)!important}
body:has(.tb-domain-tabs) .app-shell>.n-content-full{padding-top:calc(20px + var(--TB-H) + 38px)}
body:has(> #main){display:flex;align-items:stretch;min-width:0}
body:has(> #main)>#main{flex:1;min-width:0}
body:has(> #main)>#sidebar{flex:0 0 var(--SB-W)}
body:has(> #main) #content{padding-top:calc(20px + var(--TB-H))}
body:has(> #main):has(.tb-domain-tabs) #content{padding-top:calc(20px + var(--TB-H) + 38px)}
.admin-home-content{overflow:hidden!important;min-width:0;padding-bottom:44px!important}
.n-content-full{overflow-x:hidden;overflow-y:auto;min-width:0}
.n-page-actions{min-width:0}
.n-input[type=color]{height:38px;padding:4px}
/* ── Ajustes de interação e acessibilidade ─────────────────────────────── */
button,a,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--A);outline-offset:2px}
body.ui-modal-open{overflow:hidden}
#modal-notif{display:none;position:fixed;inset:0;z-index:9999;align-items:flex-start;justify-content:flex-end;padding:calc(var(--TB-H) + 8px) 16px 16px;background:rgba(0,0,0,.55);backdrop-filter:blur(4px)}
#modal-notif.open{display:flex}
#modal-notif>.n-notif-panel{background:#04040a;border:1px solid var(--BD);border-radius:14px;width:min(380px,100%);max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.4);overflow:hidden}

/* ── Sidebar e header em telas pequenas ────────────────────────────────── */
@media(max-width:768px){
  #topbar{left:0!important;padding:0 10px!important}
  #topbar+.tb-domain-tabs{left:0}
  .app-shell>.n-content-full{padding:calc(12px + var(--TB-H)) 12px 96px}
  body:has(.tb-domain-tabs) .app-shell>.n-content-full{padding-top:calc(12px + var(--TB-H) + 38px)}
  body:has(> #main) #content{padding:calc(12px + var(--TB-H)) 12px 96px}
  body:has(> #main):has(.tb-domain-tabs) #content{padding-top:calc(12px + var(--TB-H) + 38px)}
  .tb-domain-tabs{overflow-x:auto;overscroll-behavior-x:contain}
  .tb-domain-tab{padding:7px 11px!important;font-size:10.5px!important}
  .n-page-header{align-items:flex-start}
  .n-page-actions{width:100%;margin-left:0}
  .n-page-actions>.n-btn{flex:1 1 auto;justify-content:center}
  .n-modal-bg{padding:10px}
  .n-modal{max-height:calc(100dvh - 20px);border-radius:12px}
  #modal-notif{padding:calc(var(--TB-H) + 8px) 10px 10px}
  #modal-notif>.n-notif-panel{width:100%;max-height:calc(100dvh - var(--TB-H) - 18px)}
  .n-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .n-toolbar{align-items:stretch}
  .n-toolbar>.n-search{min-width:100%;max-width:none}
  .n-toolbar>.n-select{flex:1;min-width:0!important}
}
@media(max-width:480px){
  .n-content-full>.n-page-header .n-page-icon{width:36px;height:36px;border-radius:10px}
  .n-content-full>.n-page-header .n-page-title{font-size:17px}
  .n-card-body,.n-modal-body{padding:14px}
  .n-modal-head,.n-modal-foot{padding:12px 14px}
  .n-grid-auto{grid-template-columns:1fr}
  .n-domain-card{padding:12px}
  .n-domain-actions>.n-btn{flex:1 1 calc(50% - 5px);justify-content:center}
}

/* ── Utilitários HTML estáticos centralizados ───────────────────────────── */
.n-style-03df744e81{overflow-y:auto}
.n-style-ab0b5afc91{width:auto;min-width:150px}
.n-style-2b7ed66eec{width:auto;min-width:120px}
.n-style-a56c85e3df{display:flex;flex-direction:column;gap:10px}
.n-style-59eddc679e{flex:1;min-width:0}
.n-style-328b78c09c{color:#0ea5e9}
.n-style-6057e84851{display:flex;align-items:center;gap:8px;flex-shrink:0}
.n-style-579b182f6d{font-size:7px}
.n-style-f0abc1db33{gap:6px}
.n-style-f3d7ce7732{gap:10px}
.n-style-1169661891{margin:0}
.n-style-82ab7ea413{display:flex;gap:16px;margin-top:10px}
.n-style-d110fcd4ca{display:flex;align-items:center;gap:7px;font-size:12px;cursor:pointer}
.n-style-651b1b8ac0{height:560px;display:flex;flex-direction:column}
.n-style-fb2957a37e{font-size:9px}
.n-style-cd90f7a775{max-width:600px}
.n-style-cec581c729{font-size:11px;opacity:.7;margin-top:4px}
.n-style-6109bb5acb{opacity:.6}
.n-style-1a8e3ac51a{overflow-y:auto;padding-bottom:56px}
.n-style-433de30b36{font-size:14px}
.n-style-d1f21cf35a{width:auto;min-width:130px}
.n-style-e81ae133d0{display:none;align-items:center;gap:9px;margin-bottom:12px;padding:10px 12px;border-color:rgba(14,165,233,.35)}
.n-style-1852e8f877{font-family:monospace;font-size:11px}
.n-style-6a6a237e2c{color:#f59e0b}
.n-style-56f4356299{margin-top:12px}
.n-style-bcaa18054c{max-width:700px}
.n-style-ed7b3d8791{gap:12px}
.n-style-f6a0d1ab44{margin:0;display:flex;align-items:center;gap:10px;padding-top:20px}
.n-style-1cf3ac6a25{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}
.n-style-bca09b1b5d{font-family:monospace;font-size:12px}
.n-style-1d34c0943e{max-width:900px}
.n-style-8b777d40be{grid-template-columns:1fr 300px;gap:16px}
.n-style-93759ca33f{gap:12px;margin-top:10px}
.n-style-4e420aff3f{margin-bottom:6px}
.n-style-728aa97859{position:absolute;inset:0;background-size:cover;background-position:center;background:linear-gradient(135deg,#060610 0%,#0a0a22 50%,#060610 100%)}
.n-style-e8da6f5764{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;background:rgba(0,20,60,.82)}
.n-style-33be08ab22{font-size:14px;font-weight:800;color:#fff;margin-bottom:4px;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.n-style-59ad3fa81c{font-size:10px;color:rgba(255,255,255,.65)}
.n-style-1e8c4fde4a{margin-top:10px;border-radius:7px;padding:7px;font-size:10px;font-weight:700;text-align:center;color:#fff}
.n-style-e5df5b134e{grid-column:1/-1;margin:0}
.n-style-ed80cfe344{grid-column:1/-1;margin:0;display:flex;align-items:center;gap:10px}
.n-style-8f42c5fca0{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.n-style-015a5e7fbe{display:flex;align-items:center;gap:8px}
.n-style-b0eb59c131{color:#ef4444}
.n-style-263b6e75c5{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.n-style-97445a8d93{flex:1}
.n-style-41d7d7e25b{padding:0}
.n-style-769fed374b{padding:20px}
.n-style-81351bd1ac{font-size:24px}
.n-style-f918b2a5f3{color:#22c55e}
.n-style-6cb285c61d{font-size:12px}
.n-style-90de49f031{max-height:260px;overflow-y:auto}
.n-style-65fb53e934{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.04);font-size:11.5px}
.n-style-72126da263{font-family:monospace}
.n-style-368b4014fd{grid-template-columns:1fr 1fr;gap:14px}
.n-style-a76d597a07{display:flex;gap:8px}
.n-style-ea6f93707e{display:none;margin-bottom:10px}
.n-style-3de8f987ba{display:flex;gap:8px;flex-wrap:wrap}
.n-style-28e216c786{display:flex;flex-direction:column;gap:4px}
.n-style-82b09ae844{color:#a855f7;width:14px}
.n-style-495577b2d3{color:#10a37f;width:14px}
.n-style-987eec3264{color:#4285f4;width:14px}
.n-style-9e15441cd2{color:#f59e0b;width:14px}
.n-style-6e092bcae2{color:#ff7000;width:14px}
.n-style-1a6b7beb41{color:#06b6d4;width:14px}
.n-style-145919bc25{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.n-style-160b06753a{font-weight:600;font-size:13px}
.n-style-6d7b3847fc{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:4px 0}
.n-style-34d1e8e86f{gap:14px}
.n-style-2cff907ed4{width:100%;font-size:12px;border-collapse:collapse}
.n-style-fcdbd4cc1c{border-bottom:1px solid rgba(255,255,255,.04)}
.n-style-eed0f8fb89{font-weight:600}
.n-style-fe2d8d42e1{background:rgba(168,85,247,.12)}
.n-style-4c5cd5f645{color:#a855f7}
.n-style-391ef1246f{margin-left:6px}
.n-style-50413d23e8{font-size:5px}
.n-style-7a84321d2c{width:auto;min-width:200px}
.n-style-49cd09213e{display:flex;gap:6px}
.n-style-d461c96de5{position:relative}
.n-style-813e66cdff{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.n-style-9a7b8ec19f{display:none;margin-top:16px}
.n-style-0ddf068bfb{overflow-x:auto}
.n-style-f6ce4d1e15{gap:16px}
.n-style-30ed687de7{min-height:100px}
.n-style-82ab29cfd4{display:none;margin-top:10px}
.n-style-390034dcbd{background:#0d1117;color:#22c55e;font-family:monospace;font-size:12px;padding:12px;border-radius:8px;overflow-x:auto;white-space:pre-wrap}
.n-style-30b926c1b0{display:flex;gap:6px;margin-top:6px}
.n-style-3b58b3a618{display:flex;flex-direction:column;gap:5px}
.n-style-e2b01b0df3{max-width:640px}
.n-style-d6f2af6e0a{margin-top:14px}
.n-style-6d00061700{margin-left:auto}
.n-style-60a356bc4e{width:auto;min-width:140px}
.n-style-6ee0661ec0{flex-shrink:0}
.n-style-36764d1e63{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.n-style-0c88fe3a80{display:flex;align-items:center;gap:9px}
.n-style-a58f9cc3cd{margin-left:6px;font-size:9px}
.n-style-17e5a697b1{height:38px;padding:4px}
.n-style-869ddb11d0{background:rgba(14,165,233,.12)}
.n-style-7ca50a6218{grid-template-columns:1fr 1fr;gap:20px}
.n-style-c7da9158e3{display:flex;flex-direction:column;gap:14px}
.n-style-651b7f0427{display:flex;flex-direction:column;gap:8px;font-size:12px}
.n-style-a3d12b9b83{display:flex;justify-content:space-between}
.n-style-287f770e98{padding:16px}
.n-style-a2600b0e71{font-size:28px}
.n-style-4a09bf7535{border-color:rgba(34,197,94,.2)}
.n-style-6ed3951f86{color:#22c55e;margin-right:6px}
.n-style-ec0f58577c{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.n-style-866c08e023{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;background:rgba(34,197,94,.04);border:1px solid rgba(34,197,94,.15);border-radius:8px}
.n-style-da246c431c{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;background:rgba(239,68,68,.04);border:1px solid rgba(239,68,68,.15);border-radius:8px}
.n-style-8b77fe1221{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;background:rgba(245,158,11,.04);border:1px solid rgba(245,158,11,.15);border-radius:8px}
.n-style-4f6fb0aba6{display:none;margin-top:-8px;margin-bottom:12px;padding:12px;background:rgba(168,85,247,.06);border:1px solid rgba(168,85,247,.2);border-radius:8px;font-size:12px;white-space:pre-wrap}
.n-style-b9666ec1f9{min-height:200px}
.n-style-595ebdd22e{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.n-style-95fd837ece{display:flex;align-items:center;gap:12px}
.n-style-5ed47c0913{width:auto;min-width:110px}
.n-style-4dcfefd486{font-family:monospace;font-size:11px;max-width:200px}
.n-style-11a508128d{font-size:11px}
.n-style-1605ae0712{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px}
.n-style-e22d02c6f2{height:460px;max-height:460px}
.n-style-71e179386f{max-width:760px}
.n-style-68d9815d1e{color:#38bdf8}
.n-style-20679505b4{color:#fbbf24}
.n-style-f2a37d52e1{min-width:0;width:80px}
.n-style-b4ad56dc1a{flex:1;overflow:hidden;text-overflow:ellipsis}
.n-style-99529ce0eb{display:flex;justify-content:space-between;align-items:center;gap:4px;}
.n-style-c1241bc896{margin:0;padding:0;flex:1 1 auto;text-align:center;}
.n-style-8213441972{padding:2px 6px 3px;font-size:9px;text-align:right}
.n-style-3494e7efec{font-size:8px}
.n-style-34915eb9af{color:#fff;font-size:15px}
.n-style-e2dfd56b3c{background:linear-gradient(135deg,#0284c7,#0ea5e9);color:#fff;border:none;border-radius:9px;padding:10px 20px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7px;box-shadow:0 4px 12px rgba(14,165,233,.3);transition:all .15s}
.n-style-04391f0812{max-width:520px}
.n-style-284875151a{padding:20px;display:flex;flex-direction:column;gap:16px}
.n-style-f1f9da8c9b{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.n-style-e81a2ba971{font-weight:700;font-size:12px}
.n-style-58e5a2534f{font-size:18px;color:#a855f7;margin-bottom:6px}
.n-style-cbd7d43824{font-size:18px;color:#f59e0b;margin-bottom:6px}
.n-style-271fbb160c{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;padding-right:4px}
.n-style-dafae5786d{justify-content:flex-end;gap:8px}
.n-style-d84af8fb59{max-width:460px}
.n-style-3daa0382f8{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.n-style-74cac98b22{display:flex;gap:4px}
.n-style-0fd8744d8e{max-width:420px}
.n-style-84a1463ebf{padding:24px 20px 16px}
.n-style-e791a2c75a{display:flex;justify-content:center;margin-bottom:20px}
.n-style-38659c8d34{position:relative;width:64px;height:64px}
.n-style-3b87cfe4eb{position:absolute;inset:0;border-radius:50%;background:rgba(14,165,233,.12);display:flex;align-items:center;justify-content:center}
.n-style-da7895a5a9{position:absolute;inset:0;width:64px;height:64px}
.n-style-81011c4be6{transform-origin:center;animation:hmSpinArc 1.2s linear infinite}
.n-style-1f53cf15aa{display:flex;flex-direction:column;gap:2px}
.n-style-8c84c211c8{display:none;flex-direction:column;gap:8px;padding:12px 20px}
.n-style-a5ca015b5a{padding-bottom:8px}
.n-style-c25a7736ea{color:#f59e0b;font-size:11px}
.n-style-2f11217c37{font-size:11px;color:#ef4444}
.n-style-4260ebea52{padding-top:0}
.n-style-b3e343ffa4{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.n-style-e6cd93717c{font-size:9px;margin-left:auto}
.n-style-068a8ddc17{grid-column:1/-1}
.n-style-be773faa94{gap:10px;margin-bottom:10px}
.n-style-795693522d{min-height:180px}
.n-style-743a9fc7b7{margin:0;display:flex;align-items:flex-end;padding-bottom:2px}
.n-style-4c2173b696{margin-right:auto;display:none}
.n-style-b12974cb6c{max-width:720px}
.n-style-4bfdbbe49c{display:flex;flex-direction:column;overflow:hidden;padding:0}
.n-style-d96e9fd2ba{margin-left:auto;display:flex;align-items:center;gap:8px}
.n-style-f1abb02ad2{display:flex;align-items:center;gap:5px;font-size:10px;cursor:pointer}
.n-style-57d855441d{flex:1;display:flex;flex-direction:column;min-height:0}
.n-style-46cec891f0{margin-left:4px}
.n-style-33b59e827a{position:relative;flex:1;min-height:220px}
.n-style-ac6ea07e92{flex:0 0 auto}
.n-style-5e4ed9620a{display:flex;align-items:center;gap:7px;padding:5px 0;font-size:11px;border-bottom:1px solid rgba(255,255,255,.04)}
.n-style-8e66fbb9a0{color:#0ea5e9;flex-shrink:0}
.n-style-8a77e5a311{margin-top:8px}
.n-style-4a270024bb{width:100%;justify-content:center}
.n-style-489324a10a{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.n-style-03c4bb6fce{justify-content:center}
.n-style-4068e231a4{justify-content:center;grid-column:1/-1}
.n-style-1833b734db{width:auto;min-width:180px}
.n-style-6bfc730f24{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer;margin-top:10px}
.n-style-5c9dbc59d2{height:480px;display:flex;flex-direction:column;margin-bottom:16px}
.n-style-cd0c591e40{gap:16px;align-items:start}
.n-style-ee3c198e74{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.n-style-d2502801a2{max-height:340px;overflow-y:auto;padding-right:2px}
.n-style-84500ebc51{display:flex;align-items:center;gap:8px;padding:7px 10px;background:rgba(255,255,255,.03)}
.n-style-0d5be05fd9{font-size:10px}
.n-style-472f773ac3{display:flex;flex-wrap:wrap;gap:5px;padding:8px 10px}
.n-style-b37b9a5a64{display:flex;gap:8px;margin-bottom:10px}
.n-style-d9e4dc163a{min-height:70px;font-family:monospace}
.n-style-d778009271{color:#0ea5e9;font-size:18px;flex-shrink:0}
.n-style-55babddb27{font-weight:600;font-size:12px}
.n-style-4294bfa983{max-width:500px}
.n-style-4eb6966339{font-size:11px;margin-top:10px}
.n-style-57ea022dd6{text-align:center;padding:20px 0}
.n-style-da61af7954{font-size:40px;margin-bottom:12px}
.n-style-d2fba0f353{width:0%}
.n-style-02c99fd2eb{text-align:center;padding:20px}
.n-style-96df6b8d63{font-size:50px;margin-bottom:16px}
.n-style-29e53066e9{justify-content:center;gap:12px}
.n-style-4cb133dacf{background:linear-gradient(135deg,rgba(168,85,247,.2),rgba(14,165,233,.2));border-color:rgba(168,85,247,.4)}
.n-style-5c9e305a8e{display:none;margin-bottom:14px}
.n-style-fd1da6bdf8{font-weight:600;font-family:monospace}
.n-style-3ba460e0b1{display:flex;flex-direction:column;gap:12px;margin-top:10px}
.n-style-2b9cafa358{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.n-style-ed34497d9f{color:#f59e0b;margin-right:5px}
.n-style-c8be1ccba6{display:none;}
.n-style-f38a951c89{flex-shrink:0;}
.n-style-5b711a4d56{flex:1;display:flex;align-items:center;gap:6px;min-width:0;padding:0 8px;}
.n-style-bb5b90c19a{color:#22c55e;font-size:13px;flex-shrink:0;}
.n-style-5a40592d9d{font-size:14px;color:#3794ff;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;text-decoration:underline dotted;cursor:pointer;}
.n-style-e4bda6bd6e{display:flex;align-items:center;gap:4px;flex-shrink:0;}
.n-style-24a3a3a659{display:none;background: rgba(255,0,0,0.15);border:1px solid rgba(109,0,0,0.5);border-radius:6px;color:#ed0000;}
.n-style-25b7d62d21{display: flex;justify-content: space-between;align-items: flex-start;gap: 10px;}
.n-style-ee3d55bf99{flex: 1;}
.n-style-97196ce59e{display:none;flex:1;flex-direction:column;min-width:0}
.n-style-26e7d2540a{display:none;margin:8px 14px;padding:7px 12px}
.n-style-35f5100935{display:flex;flex-direction:row;flex:1;min-height:0;}
.n-style-6ad582f376{flex:1;min-width:0;height:100%;}
.n-style-49a61d0a00{display:none;font-size:10px;color:#e6a817;background:#fef3cd;border:1px solid #fde68a;border-radius:4px;padding:1px 6px;}
.n-style-7623f05545{flex:1;}
.n-style-92f75fe7a0{font-size:10px;padding:2px 6px;}
.n-style-e3237c1b3d{font-size:10px;padding:2px 6px;color:#f85149;}
.n-style-31cf367779{flex:1;border:none;width:100%;height:100%;}
.n-style-57b9a8b83d{display:none;flex:1;flex-direction:column}
.n-style-db4dbfe016{flex:1;border:none;background:#fff}
.n-style-8344327957{position:absolute;top:-4px;left:0;right:0;height:8px;cursor:ns-resize;z-index:10;}
.n-style-8896c95d8b{margin-right:5px}
.n-style-3716e01bf1{display:none;flex-direction:column;flex-shrink:0;}
.n-style-cbce07b9fa{flex:1;font-size:12px;padding:4px 8px;height:28px}
.n-style-08146310a9{font-size:11px;white-space:nowrap}
.n-style-e3c3442b2e{height:28px;padding:0 12px;font-size:12px}
.n-style-f35f457d66{flex:2;min-width:120px;font-size:12px;padding:4px 8px;height:28px}
.n-style-2ccf3165c2{flex:1;min-width:90px;font-size:12px;padding:4px 8px;height:28px}
.n-style-22199284ac{flex:1;min-width:80px;font-size:12px;padding:4px 8px;height:28px}
.n-style-af6513846c{height:28px;padding:0 10px;font-size:12px}
.n-style-86003b12b7{height:28px;padding:0 10px;font-size:12px;background:#ef4444;color:#fff;border-color:#ef4444}
.n-style-d88479185d{font-size:24px;opacity:.3}
.n-style-c5b0b89a0f{margin-top:8px;font-size:12px}
.n-style-452b88c43e{max-width:620px;width:96vw;max-height:92vh;display:flex;flex-direction:column}
.n-style-4e5862dd37{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-bottom:8px}
.n-style-be26537941{display:flex;flex-direction:column;gap:8px}
.n-style-f3de8a4572{display:inline-block;width:10px;height:10px;background:#f59e0b;border-radius:2px;margin-right:4px}
.n-style-285ababd6c{display:inline-block;width:10px;height:10px;background:#0ea5e9;border-radius:2px;margin-right:4px}
.n-style-86bb84256a{display:inline-block;width:10px;height:10px;background:#4b5563;border-radius:2px;margin-right:4px}
.n-style-df9f77a715{margin-left:auto;color:#f59e0b}
.n-style-800de8b811{position:absolute;top:0;left:0;right:0;bottom:0;padding:10px 12px;font-family:monospace;font-size:12.5px;line-height:1.75;white-space:pre-wrap;word-break:break-all;pointer-events:none;overflow:hidden;color:transparent;}
.n-style-13313b1a3a{display:flex;justify-content:space-between;align-items:center}
.n-style-ba5db35e4a{display:none;flex-direction:column;gap:6px}
.n-style-b6754c730c{max-width:680px;width:96vw;max-height:92vh;display:flex;flex-direction:column}
.n-style-9929bff9e1{flex:1;overflow-y:auto;padding:0}
.n-style-fdf20b9a58{padding:12px 16px}
.n-style-76c9d8deb6{flex-shrink:0;justify-content:space-between}
.n-style-6d8a9fe16d{max-width:860px;width:96vw;max-height:94vh;display:flex;flex-direction:column}
.n-style-1ec9c7c2cc{flex:1;overflow:auto;padding:0}
.n-style-d2a0e605bd{max-width:90vw;background:transparent;border:none;box-shadow:none}
.n-style-57816ee94f{text-align:right;margin-bottom:8px}
.n-style-f252a0fa94{max-width:100%;max-height:80vh;border-radius:8px;display:block;margin:0 auto}
.n-style-d2a263560b{max-width:480px}
.n-style-e12feb99b2{display:flex;flex-direction:column;gap:12px}
.n-style-2f984886a9{font-size:28px;color:#38bdf8;display:block;margin-bottom:8px}
.n-style-5bc1edb8d3{height:100%;background:linear-gradient(90deg,#38bdf8,#818cf8);width:0%;transition:width .2s}
.n-style-381ccc6f5b{height:460px;max-height:460px;font-size:11.5px}
.n-style-25b5288699{display:flex;gap:6px;align-items:center}
.n-style-a6dc9220cc{min-height:160px}
.n-style-e70369ad64{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.n-style-9d52b770e3{width:auto;min-width:160px;margin-left:4px;font-size:11px}
.n-style-5b2be1db25{margin-left:auto;display:flex;gap:8px;align-items:center}
.n-style-028cdf1b1d{display:grid;grid-template-columns:1fr 300px;gap:14px;padding:50px 15px 5px;flex:1;overflow:hidden}
.n-style-575f27bacb{display:flex;flex-direction:column;gap:12px;overflow-y:auto}
.n-style-ae8843dede{padding:0 16px}
.n-style-ed8112dcbe{display:flex;justify-content:space-between;font-size:11px;margin-bottom:4px}
.n-style-c6258e70c7{display:flex;justify-content:space-between;font-size:11px;margin-top:10px}
.n-style-a63f005c44{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:11px;border-bottom:1px solid rgba(255,255,255,.04)}
.n-style-14b4b58a73{display:flex;flex-direction:column;gap:6px}
.n-style-cd66ed6c6e{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;padding:3px 9px;border-radius:20px;font-size:10px;font-weight:700}
.n-style-e130f0fe3c{background:rgba(34,197,94,.1);color:#22c55e;border:1px solid rgba(34,197,94,.25);padding:3px 9px;border-radius:20px;font-size:10px;font-weight:700;display:inline-flex;align-items:center;gap:4px}
.n-style-3ccc81fa2f{background:rgba(14,165,233,.1);color:#0ea5e9;border:1px solid rgba(14,165,233,.2);padding:3px 9px;border-radius:20px;font-size:10px;font-weight:700}
.n-style-ff2ab46b1a{margin-left:auto;display:flex;gap:8px}
.n-style-9403f8ae3c{font-size:32px;margin-bottom:12px;display:block;opacity:.4}
.n-style-70179e3067{font-size:12px;margin-top:4px}
.n-style-4f973324dd{font-size:20px;color:#fff}
.n-style-b883072fec{font-size:10px;opacity:.6}
.n-style-8fc6d42c96{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:11px}
.n-style-29ae8f2924{font-size:9px;flex-shrink:0}
.n-style-0a209f6890{padding:2px 4px;font-size:10px}
.n-style-282f1de55b{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}
.n-style-99285f6918{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px 20px;text-align:center}
.n-style-c054bb7a97{display:inline-flex;align-items:center;gap:7px;font-size:12px;text-decoration:none}
.n-style-d2c171b18b{margin-top:10px}
.n-style-e6ec2163ed{max-width:90vw;max-height:90vh;background:transparent;border:none;box-shadow:none}
.n-style-0b54985fd6{max-width:100%;max-height:80vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.8)}
.n-style-849429c094{text-align:center;color:#fff;font-size:12px;margin-top:8px}
.n-style-c0677954e8{max-width:640px;width:100%}
.n-style-8ebc43724d{padding:14px}
.n-style-da12f2858b{margin-bottom:12px}
.n-style-e1afb1e940{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;max-height:380px;overflow-y:auto;padding-right:4px}
.n-style-bdb581f28c{color:#ef4444;font-weight:700}
.n-style-9eaeb557d2{color:#22c55e;font-weight:700}
.n-style-064028e7a7{color:#64748b}
.n-style-64e309605c{color:#f59e0b;font-weight:700}
.n-style-9dd31048e7{flex:1;min-width:80px;overflow:hidden;padding:0 10px;position:relative}
.n-style-b9fc85b1fa{display:flex;align-items:center;gap:6px;white-space:nowrap;animation:tickerScroll 30s linear infinite}
.n-style-ba9cce88d3{display:flex;align-items:center;min-height:30px;flex-shrink:0}
.n-style-75acc0db01{z-index:125000}
.n-style-52143fa7f8{display:flex;align-items:center;gap:5px;flex-shrink:0;margin-left:auto}
.n-style-8f813ee01f{display:flex;align-items:center;gap:4px}
.n-style-0e5fb6a8c7{position:relative;display:flex;align-items:center}
.n-style-3922d32600{min-width:0}
.n-style-5b8e27f459{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;font-size:12px;color:#ef4444;text-decoration:none}
.n-style-37a06f1294{width:15px}
.n-style-9bc0fd7a96{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.55);align-items:flex-start;justify-content:flex-end;padding:60px 16px 0}
.n-style-37df43c0ee{font-weight:700;font-size:15px;flex:1}
.n-style-809967fbeb{overflow-y:auto;flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.n-style-0e57337256{font-size:28px;display:block;margin-bottom:8px;color:#22c55e}
.n-style-406f4206da{background:#0f1117;padding:40px 20px}
.n-style-88088573b9{max-width:600px;width:100%}
.n-style-3cb6465ea2{background:linear-gradient(135deg,#0ea5e9 0%,#6366f1 100%);border-radius:16px 16px 0 0;padding:36px 40px;text-align:center}
.n-style-37cd0af96d{display:inline-flex;align-items:center;gap:10px;margin-bottom:4px}
.n-style-06100cd006{color:#fff;font-size:22px;font-weight:800;letter-spacing:-.5px}
.n-style-d1a4b6fe5d{margin:8px 0 0;color:rgba(255,255,255,.75);font-size:13px;letter-spacing:.04em}
.n-style-af4cd772eb{background:#161b27;padding:32px 40px 0;text-align:center}
.n-style-055c7542f9{display:inline-block;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3);border-radius:99px;padding:8px 22px;margin-bottom:20px}
.n-style-13b9fa3071{color:#22c55e;font-size:13px;font-weight:700;letter-spacing:.04em}
.n-style-3f2d99ce4d{margin:0 0 8px;color:#f1f5f9;font-size:22px;font-weight:700}
.n-style-3447622d35{margin:0;color:#94a3b8;font-size:14px;line-height:1.6}
.n-style-1ce58c9ede{background:#161b27;padding:28px 40px}
.n-style-c9e7691242{border:1px solid #1e293b;border-radius:12px;overflow:hidden}
.n-style-17da648c28{background:#1e293b}
.n-style-44366b6b1b{padding:10px 18px;color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase;border-bottom:1px solid #0f172a}
.n-style-b5fa90341d{border-bottom:1px solid #1e293b}
.n-style-45071ac6b5{padding:13px 18px;color:#64748b;font-size:13px;font-weight:600}
.n-style-539fa9a0bb{margin-right:8px}
.n-style-af816d9847{padding:13px 18px;color:#e2e8f0;font-size:13px;font-family:monospace}
.n-style-fc33d27507{background:#0f1117;border-bottom:1px solid #1e293b}
.n-style-b181ce1356{padding:13px 18px;color:#0ea5e9;font-size:13px;font-weight:700}
.n-style-9f3b62e48d{padding:13px 18px;color:#e2e8f0;font-size:13px;font-weight:700}
.n-style-50b9ca59f1{padding:13px 18px;font-size:13px;font-weight:700}
.n-style-49a0dd9fe7{color:{db_color};background:{db_bg};padding:3px 10px;border-radius:99px;font-size:12px}
.n-style-ba9ad051c1{padding:13px 18px;color:#e2e8f0;font-size:13px}
.n-style-05b6c4041b{background:#161b27;padding:0 40px 28px}
.n-style-b89c97c909{background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.25);border-radius:10px;padding:16px 20px}
.n-style-3837ae68e2{color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.n-style-a10e04863c{color:#c7d2fe;font-size:14px;font-weight:700}
.n-style-a625e8b436{background:#0d1117;border-radius:0 0 16px 16px;padding:24px 40px;text-align:center;border-top:1px solid #1e293b}
.n-style-992a2c96d2{margin:0 0 6px;color:#475569;font-size:12px}
.n-style-9dbebf31c5{margin:0;color:#334155;font-size:11px}
.n-style-cb7d59c4ac{margin:16px 0 0;padding:12px 16px;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;font-size:13px;color:#166534;}
.n-style-48b8876fe6{height:100vh;max-height:100vh;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain}
.n-style-10b73b2622{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(14,165,233,0.12);}
.n-style-ede5d524d5{display:flex;flex-direction:column;line-height:1.2;min-width:0;}
.n-style-f0ba6d39ec{display:none;flex-direction:column;gap:2px;padding:4px 8px 8px;border-bottom:1px solid rgba(255,255,255,0.08);flex:0 0 auto;}
.n-style-7b37a3f316{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:2px 8px 12px;scrollbar-width:thin;overscroll-behavior:contain;}
.n-style-e15c19a143{flex:0 0 auto;font-size:9px;opacity:.85;color:#f59e0b;}
.n-style-5699cf13c7{display:none;align-items:center;gap:2px;flex:0 0 auto;padding-right:4px;}
.n-style-2f518d40dc{flex:0 0 auto;max-height:120px;overflow-y:auto;padding:2px 8px 8px;filter:grayscale(1);}
.n-style-52390d2fc6{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border-radius:8px;background:rgba(14,165,233,.16);color:#38bdf8;}
.n-style-e71ae94b55{font-size:12px;}
.n-style-3ce399d562{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;}
.n-style-178f56954f{width:34px;height:5px;flex:0 0 34px;border-radius:99px;background:rgba(148,163,184,.2);overflow:hidden;}
.n-style-460c645386{display:flex;align-items:center;gap:8px;flex:1;min-width:0;}
.n-style-a07604d334{flex:1;min-width:0;}
.n-style-e75da2b360{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:199;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);transition:opacity .25s;}
.n-style-2b583d7389{margin-bottom:14px}
.n-style-ef9e2fe709{margin-left:6px;font-size:10px}
.n-style-1444c6eaca{font-size:16px}
.n-style-99efeefe76{color:#22c55e;font-size:7px}
.n-style-e3c7e5c6fc{color:#f97316}
.n-style-b627e2b10b{width:36px;height:36px;border-radius:10px;background:rgba(139,92,246,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.n-style-d3f751cf2f{color:#a78bfa;font-size:16px}
.n-style-1b388f6ce6{display:block;font-size:40px;opacity:.2;margin-bottom:12px}
.n-style-1b0f4999d2{margin-top:16px}
.n-style-3086fbb4a8{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:99px;background:rgba(34,197,94,.1);color:#22c55e;border:1px solid rgba(34,197,94,.15);font-size:10px;font-weight:700}
.n-style-512f4544b1{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:99px;background:rgba(245,158,11,.1);color:#f59e0b;border:1px solid rgba(245,158,11,.15);font-size:10px;font-weight:700}
.n-style-18d68cb2d0{background:rgba(34,197,94,.12)}
.n-style-da063902a0{background:rgba(245,158,11,.12)}
.n-style-b2a87d90a2{background:rgba(239,68,68,.12)}
.n-style-13cbc8bc30{margin-left:auto;display:flex;gap:6px;align-items:center}
.n-style-ddaf9ee36a{padding:24px}
.n-style-87c136dfd0{margin-bottom:16px}
.n-style-f4289d0a76{display:none;margin-top:12px}
.n-style-c1130cdc4e{max-width:540px}
.n-style-c81ce4b250{margin-bottom:4px}
.n-style-d57ae4c45f{align-items:center;gap:10px}
.n-style-96ad6099e2{margin-top:4px}
.n-style-4725bb7117{gap:8px;flex-wrap:wrap}
.n-style-7319cde646{cursor:pointer;flex-shrink:0}
.n-style-019607d5d3{display:flex;height:100%}
.n-style-0d56c3ace6{flex:1;position:relative;overflow:hidden}
.n-style-fe01a01c80{position:absolute;inset:0;background:linear-gradient(135deg,#060610 0%,#0a0a22 50%,#060610 100%)}
.n-style-6e4412982c{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:99px;padding:4px 10px;font-size:9px;font-weight:600;display:inline-flex;align-items:center;gap:5px;margin-bottom:12px;width:fit-content;color:#fff}
.n-style-1462904df2{font-size:18px;font-weight:800;line-height:1.35;margin-bottom:8px;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.5)}
.n-style-8663aad453{font-size:11px;opacity:.6;display:flex;align-items:center;gap:6px;color:#fff}
.n-style-6400a4af75{width:5px;height:5px;border-radius:50%;background:#0ea5e9;display:inline-block}
.n-style-7ee70c4ac9{width:240px;flex-shrink:0;background:#090915;padding:22px 18px;display:flex;flex-direction:column;gap:9px;justify-content:center}
.n-style-143e03004a{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.n-style-3f27d63c4b{font-size:12px;font-weight:800;color:#fff}
.n-style-5351e631e8{font-size:8px;color:rgba(255,255,255,.4)}
.n-style-5b0b1bc1b6{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:7px;padding:6px 10px}
.n-style-3453d66ec9{font-size:7px;font-weight:700;color:rgba(255,255,255,.3);text-transform:uppercase;margin-bottom:2px}
.n-style-d87a29471f{font-size:10px;color:rgba(255,255,255,.3)}
.n-style-74daa8224f{text-align:center;font-size:8px;color:rgba(255,255,255,.25)}
.n-style-9631cfedaf{width:260px;background:rgba(9,9,21,.92);padding:26px 22px;border-radius:14px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:9px}
.n-style-54aa447e35{text-align:center;margin-bottom:4px}
.n-style-d0b2c9d587{font-size:14px;font-weight:800;color:#fff}
.n-style-85ca1ef493{font-size:10px;opacity:.5;color:#fff}
.n-style-68bea95c9b{font-size:9px;color:rgba(255,255,255,.3)}
.n-style-57dc9c8bef{position:absolute;inset:0;background:linear-gradient(135deg,#060610 0%,#0a0a22 50%,#060610 100%);display:flex;align-items:center;justify-content:center}
.n-style-a55d7ad72e{margin-top:16px;display:flex;gap:8px}
.n-style-b5c9733a73{display:flex;justify-content:flex-end}
.n-style-5cc285e935{display:flex;gap:2px;background:rgba(255,255,255,.03);border-radius:10px;padding:4px;margin-bottom:20px}
.n-style-8af0ed03a8{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.n-style-1f2d890c51{color:#ea4335}
.n-style-7a6ae9aa63{color:#0078d4}
.n-style-f23661f4d4{color:#7b0099}
.n-style-91245b1faa{max-width:110px}
.n-style-e89da64d3e{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}
.n-style-761d3addb2{margin-bottom:10px}
.n-style-d60dd401ce{flex:2;min-width:140px}
.n-style-da0bc83134{flex:1;min-width:100px}
.n-style-3ec20c4693{display:flex;gap:8px;margin-top:6px;align-items:center}
.n-style-309cf4771c{display:flex;gap:8px;justify-content:flex-end}
.n-style-6076b9357d{padding:5px 14px;border-radius:99px;font-size:11px;font-weight:700;background:rgba(107,114,128,.1);color:#6b7280;border:1px solid rgba(107,114,128,.2)}
.n-style-5fc87395ac{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.n-style-905d8b3da3{margin-bottom:18px}
.n-style-11c554bea6{display:none;padding:8px 12px;border-radius:7px;font-size:12px;margin-bottom:10px}
.n-style-f842f46612{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.n-style-bed48d8f86{width:10px;height:10px;border-radius:50%;background:#6b7280;flex-shrink:0}
.n-style-0466783d98{width:100%}
.n-style-21e8bb66a9{max-width:160px}
.n-style-7a96d9ba83{max-width:140px}
.n-style-b87ca3241d{display:flex;align-items:center;gap:10px}
.n-style-34740412bb{cursor:pointer;margin:0;font-size:13px}
.n-style-2535b76e75{resize:vertical;font-family:monospace;font-size:12px;line-height:1.5}
.n-style-69bf612ae1{border-color:rgba(239,68,68,.3)}
.n-style-49f14f8f83{margin-bottom:20px}
.n-style-c1409d8e98{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.n-style-3f62c7e303{font-weight:700;font-size:15px;margin-bottom:4px;display:flex;align-items:center;gap:8px}
.n-style-01ef7fc99e{display:flex;gap:8px;align-items:center}
.n-style-d359d73161{margin-top:10px;display:flex;align-items:center;gap:12px}
.n-style-1cc91afd9f{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.n-style-08b119479c{font-weight:700;font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.n-style-4ffca2ce34{color:#3ddc84}
.n-style-f2e5d63d20{color:#f0f0f0}
.n-style-ce72b92d19{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:10px}
.n-style-7ecbcd2153{display:flex;flex-direction:column}
.n-style-cc8266b2e3{opacity:.5;font-size:10px}
.n-style-999588db96{display:flex;align-items:center;gap:6px;margin-top:5px}
.n-style-4e330d89c1{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.n-style-16ca9183fa{padding:0;margin-top:16px}
.n-style-1fe4ebd1dd{max-width:760px;max-height:95vh;display:flex;flex-direction:column}
.n-style-04813d6f34{overflow-y:auto;flex:1;padding-bottom:0}
.n-style-b42a361dc7{width:100%;height:100%;object-fit:cover;display:none}
.n-style-6157e89086{display:flex;gap:6px;flex-wrap:wrap}
.n-style-26d7f78b07{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.n-style-52b85aca6a{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.n-style-1806b98178{color:#229ed9}
.n-style-a03c33aa17{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.n-style-fb674b5c80{margin-left:auto;display:flex;gap:5px;flex-wrap:wrap}
.n-style-cf20abf152{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.n-style-0463d5012f{margin-left:auto;display:flex;gap:5px}
.n-style-284e40448d{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;padding:10px 12px}
.n-style-78fb75f57c{display:flex;align-items:center;gap:8px;margin-bottom:4px;background:rgba(14,165,233,.06);border:1px solid rgba(14,165,233,.2);border-radius:8px;padding:9px 14px}
.n-style-5e0faad207{font-size:13px}
.n-style-eb673ec6c1{font-size:13px;font-weight:600}
.n-style-8f600367c6{background:rgba(239,68,68,.1)}
.n-style-c8c787762c{font-size:12.5px;font-weight:600}
.n-style-d86b2da4dd{font-size:12.5px;display:flex;flex-direction:column;gap:5px}
.n-style-090c83ed2e{margin-bottom:16px;display:flex;align-items:center;gap:10px}
.n-style-508ff55ab3{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.n-style-9405df25bc{flex:1;min-width:240px}
.n-style-001ece3793{margin-top:14px;margin-bottom:0}
.n-style-e6e66287bc{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.n-style-621073ed85{border-color:#a855f7;color:#a855f7}
.n-style-db2f629c9d{margin-right:6px}
.n-style-3fc694bdca{margin-right:6px;color:#f59e0b}
.n-style-05e565f08e{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.07);}
.n-style-1d90ccab8d{color:#38bdf8;font-size:22px}
.n-style-464fea4ae7{font-size:34px;opacity:.4}
.n-style-ebd60f9d1f{display:none;flex-direction:column;gap:10px}
.n-style-ad6ed91637{display:flex;align-items:center;gap:8px;padding:8px 10px;background:rgba(129,140,248,.08);border:1px solid rgba(129,140,248,.2);border-radius:6px;font-size:12.5px}
.n-style-2a72108f46{color:#818cf8}
.n-style-56d99338a0{font-size:13px;resize:vertical}
.n-style-cf2ce2869e{display:none!important}
.n-style-7775136fcb{background:#a855f7}
.n-style-d399e1bee7{width:36px;height:36px;border-width:3px}
.n-style-2faa5e340c{min-height:120px}
.n-style-e6cbc705c5{display:none;margin-top:4px}
.n-style-b4992a6d11{max-height:200px}
.n-style-359bbdc6e0{display:inline-flex;align-items:center;gap:7px;padding:8px 20px;border-radius:7px;border:none;background:#22c55e;color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s}
.n-style-6ce1d74643{font-weight:500;word-break:break-all}
.n-style-189fef43e6{display:flex;justify-content:space-between;font-size:12px;margin-bottom:5px}
.n-style-14fe7530e1{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.n-style-a1b26d50e6{font-size:14px;font-weight:700}
.n-style-117d6bf054{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.n-style-00dfa7807a{background:rgba(14,165,233,.04);border-color:rgba(14,165,233,.12);justify-content:center}
.n-style-47cdbce1d7{border:none;background:none;cursor:default}
.n-style-43f054aafb{opacity:.4}
.n-style-8a6a2a9000{width:36px;text-align:center}
.n-style-4a6a2fdfb7{width:60px;text-align:center}
.n-style-009a9a7d89{width:50px;text-align:center}
.n-style-ef1212d9ae{width:80px;text-align:center}
.n-style-99e7a70366{width:120px;text-align:center}
.n-style-22a405ce3b{width:22px;height:22px;font-size:9px}
.n-style-1a52ae844e{color:#2962ff}
.n-style-6bfc0e5154{top:auto;bottom:64px}
.n-style-a1fd692ea1{width:18px;height:18px;font-size:8px;margin-left:auto}
.n-style-b9664083ec{padding:8px 44px 8px 14px}
.n-style-338a3bc266{min-height:300px}
.n-style-1058319547{top:auto;bottom:84px}
.n-style-66beb193e6{height:80px}
.n-style-1971ab3ca4{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.n-style-add402a8ee{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.n-style-c21c70e35c{display:flex;flex-wrap:wrap;gap:8px}
.n-style-d73ad5e4bc{margin-top:16px;display:flex;justify-content:flex-end}
.n-style-277c3be856{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.n-style-8aed95a509{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.n-style-9671975b6c{color:#0077b5}
.n-style-df8e33cda9{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.n-style-81ad96994d{font-size:11.5px;margin-top:7px;display:none}
.n-style-aad554ddd5{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.n-style-ad7c3007e7{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.n-style-8f60a0d8ae{display:flex;flex-wrap:wrap;gap:3px}
.n-style-4fd7cfd859{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;padding-bottom:24px}
.n-style-39b5c2aaa1{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.25);border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:14px;margin-bottom:20px}
.n-style-2b030c9bd1{font-size:26px;color:#22c55e}
.n-style-722247963a{font-weight:700;color:#22c55e;font-size:14px}
.n-style-909175a171{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:14px;margin-bottom:20px}
.n-style-550bd7dacd{font-size:26px;color:#f59e0b}
.n-style-8be6450ea1{font-weight:700;color:#f59e0b;font-size:14px}
.n-style-d2c6d09cd3{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-bottom:20px}
.n-style-e2e5d77e26{display:flex;gap:10px;align-items:flex-start}
.n-style-68aaf04f97{display:none;text-align:center}
.n-style-f304c1def0{background:#fff;border-radius:12px;padding:14px;display:inline-block;margin-bottom:14px}
.n-style-e03bfdc401{display:flex;gap:6px;justify-content:center;margin:10px 0}
.n-style-9714b43b47{display:none;margin-top:8px}
.n-style-355c5b9f1b{width:100%;border-collapse:collapse;font-size:12.5px}
.n-style-30db5fdcea{text-align:left;padding:8px 6px}
.n-style-53122ba8cb{text-align:center;padding:8px 6px}
.n-style-acbdbff5ad{padding:9px 6px;font-weight:600}
.n-style-62fee19841{padding:9px 6px;font-family:monospace;font-size:11px;word-break:break-all}
.n-style-0f9ce70dcf{padding:9px 6px;text-align:center}
.n-style-db12fa5528{color:#6b7280}
.n-style-bae250a2b1{display:flex;align-items:flex-start;gap:12px}
.n-style-0fbabd259d{width:42px;height:42px;border-radius:9px;background:rgba(14,165,233,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.n-style-ae70d4a4c2{font-size:14px;font-weight:700;margin-bottom:2px}
.n-style-80e694b553{font-size:11px;color:#ef4444;margin-top:2px}
.n-style-fe7b4979fe{margin-top:6px}
.n-style-01f7712f43{display:flex;gap:8px;margin-top:14px}
.n-style-95d154a8dd{font-size:11px;flex:1;padding:5px 8px;height:30px}
.n-style-1ca9a2e3f2{font-size:11.5px}
.n-style-4adef8715c{font-size:10.5px}
.n-style-eb66db133f{flex:0 0 80px}
.n-style-78c4f84723{height:38px;padding:4px;width:100%}
.n-style-88e2ff033c{color:#f59e0b;font-size:10px}
.n-style-9513a72dac{color:#a855f7;font-size:10px}
.n-style-f22e0e671f{display:flex;flex-direction:column;gap:20px}
.n-style-ef0b7a1148{margin-bottom:0}
.n-style-7a8e343140{margin-top:6px;padding:7px 10px}
.n-style-a26bda7d11{margin-top:20px}
.n-style-d0ddc0ef42{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.n-style-8a462ecb5f{display:flex;flex-wrap:wrap;gap:5px}
.n-style-a7d4afc92d{display:flex;gap:8px;margin-top:8px}
.n-style-b8cc1bb281{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.n-style-de6f6f34d6{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.25);border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:14px;margin-bottom:24px}
.n-style-f2f530cf4c{font-size:28px;color:#22c55e}
.n-style-4526d7b0b5{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:14px;margin-bottom:24px}
.n-style-d292aed742{font-size:28px;color:#f59e0b}
.n-style-5cac167360{display:flex;gap:12px;align-items:flex-start}
.n-style-829036dc47{width:28px;height:28px;border-radius:50%;background:#22c55e;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;flex-shrink:0}
.n-style-4fc8983520{text-align:center;margin-bottom:20px}
.n-style-4361a2ff73{font-size:32px}
.n-style-e34b8f3830{background:#fff;border-radius:16px;padding:16px;display:inline-block;margin-bottom:16px;box-shadow:0 4px 20px rgba(0,0,0,.2)}
.n-style-5cfa7ce103{display:flex;gap:8px;justify-content:center;margin:12px 0}
.n-style-ea0cc7e3e5{display:none;margin-bottom:12px}
.n-style-9869413909{margin:0;padding:0;background:#0f1117;font-family:Arial,sans-serif}
.n-style-ca80cfd2b9{max-width:480px;width:100%}
.n-style-32c2f49b85{background:linear-gradient(135deg,#0ea5e9,#6366f1);border-radius:12px 12px 0 0;padding:28px 32px;text-align:center}
.n-style-fc6088245b{color:#fff;font-size:20px;font-weight:800}
.n-style-f7aa36bc10{background:#161b27;padding:32px;text-align:center}
.n-style-0a1fad72ba{margin:0 0 16px;color:#94a3b8;font-size:14px}
.n-style-7e3fbe93f0{color:#e2e8f0}
.n-style-59c7bfede3{margin:0 0 24px;color:#94a3b8;font-size:14px}
.n-style-f35aef8b1d{background:#0f1117;border:2px solid #0ea5e9;border-radius:12px;padding:18px 24px;display:inline-block;margin-bottom:20px}
.n-style-5699dcdfba{font-size:36px;font-weight:900;letter-spacing:12px;color:#0ea5e9;font-family:monospace}
.n-style-74dfef6f9c{margin:16px 0 0;color:#64748b;font-size:12px}
.n-style-9e78e06073{background:#0d1117;border-radius:0 0 12px 12px;padding:16px 32px;text-align:center;border-top:1px solid #1e293b}
.n-style-8f1fe353e9{opacity:.6;margin-right:4px}
.n-style-ea2bb281f1{display:flex;text-decoration:none;margin-top:10px}

/* ── Classes centralizadas com parser HTML seguro ──────────────────────── */
.n-style-e7115ec5ed{text-align:left;border:none;cursor:pointer;padding:14px;display:flex;align-items:center;gap:12px}
.n-style-17e5a697b1{height:38px;padding:4px}
.n-style-97445a8d93{flex:1}
.n-style-3b21fc07f0{cursor:pointer;font-size:10px}
.n-style-da23a37f99{width:100%;background:#0d1117;color:#22c55e;font-family:'JetBrains Mono',monospace;font-size:13px;padding:16px;border:none;outline:none;resize:none;min-height:200px;tab-size:2;box-sizing:border-box;line-height:1.6;caret-color:#22c55e}
.n-style-2bb66cd4c9{background:linear-gradient(135deg,rgba(168,85,247,.2),rgba(14,165,233,.2));border:1px solid rgba(168,85,247,.4);color:#a855f7}
.n-style-6cd8a71d07{cursor:pointer;transition:all .2s}
.n-style-96ad6099e2{margin-top:4px}
.n-style-551fd41c74{width:12px;height:12px;border-radius:2px;object-fit:contain}
.n-style-22aa6df7a4{width:100%;max-width:180px;}
.n-style-5d6a0aa893{flex:1 1 auto}
.n-style-3103b923af{min-width:32px;padding:0 9px}
.n-style-e1dc02898f{margin-left:auto;flex-shrink:0}
.n-style-27f709b146{font-family:'JetBrains Mono',monospace;font-weight:800;font-size:15px;margin-left:2px}
.n-style-90bb8eaa22{text-align:left;border:none;cursor:pointer;padding:14px;display:flex;align-items:center;gap:10px}
.n-style-958ab3adda{width:22px;height:22px}
.n-style-38cf9bb946{margin:1px 0}
.n-style-22ab3c55d0{width:100%;background:#0d1117;color:#22c55e;font-family:'JetBrains Mono',monospace;font-size:13px;padding:14px;border:none;outline:none;resize:none;min-height:180px;tab-size:2;box-sizing:border-box;line-height:1.6;caret-color:#22c55e}
.n-style-631f8c08a1{text-align:left;border:none;cursor:pointer;padding:12px;display:flex;align-items:center;gap:10px}
.n-style-6cb285c61d{font-size:12px}
.n-style-f984c5207e{display:inline-flex}
.n-style-59a5a8ddf7{justify-content:flex-start}
.n-style-7936e31167{background:'.$stripeColor.'}
.n-style-d71c0c8474{width:44px;height:44px;border-radius:10px;object-fit:cover}
.n-style-64e309605c{color:#f59e0b;font-weight:700}
.n-style-8b13642d45{pointer-events:none}
.n-style-618aa5981b{width:100%;height:100%;object-fit:cover}
.n-style-12321aa2fa{margin:0;padding:0;background:#0f1117;font-family:'Segoe UI',Arial,sans-serif}
.n-style-b38e86b3e2{display:flex;align-items:center;gap:10px;text-decoration:none;flex:1;min-width:0;overflow:hidden;color:inherit;}
.n-style-b408a6dcfe{width:100%;height:100%;object-fit:contain;border-radius:6px;}
.n-style-79b15353c0{font-size:15px;color:#0ea5e9;}
.n-style-da1095ff43{width:18px;text-align:center;font-size:14px;flex-shrink:0;}
.n-style-1adf1d3c7c{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;}
.n-style-9f59b37047{display:flex;align-items:center;opacity:.55;border-radius:9px;padding:2px 4px;}
.n-style-0c9434a7e5{width:100%;height:100%;object-fit:cover;border-radius:50%;}
.n-style-7b1dd1f4df{flex:1;min-width:200px}
.n-style-bf9c108eae{width:100%;height:100px;object-fit:cover}
.n-style-95150c00ec{height:38px;padding:3px 5px;cursor:pointer}
.n-style-a32cc82a1b{width:28px;height:28px;object-fit:contain;border-radius:7px}
.n-style-7b2949089f{width:40px;height:40px;object-fit:contain;border-radius:9px;display:block;margin:0 auto 6px}
.n-style-ee5a08cab6{font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.5}
.n-style-a828909e66{max-width:200px}
.n-style-9eb2125494{width:44px;height:36px;border:none;border-radius:7px;cursor:pointer;background:none}
.n-style-74ef800dec{max-width:130px}
.n-style-2410f0adf0{width:100%;height:100%;object-fit:cover;border-radius:50%}
.n-style-6ee0661ec0{flex-shrink:0}
.n-style-cccfa4560d{display:inline}
.n-style-2b583d7389{margin-bottom:14px}
.n-style-71f9207d0f{opacity:.5;cursor:not-allowed}
.n-style-7a96d9ba83{max-width:140px}

/* ── Sidebar refinada: estados e composição ─────────────────────────────── */
.sb-brand{display:flex;align-items:center;gap:10px;padding:16px 14px 12px;border-bottom:1px solid var(--BD)}
.sb-logo-icon{color:#fff;font-size:15px}
.sb-logo-text strong,.sb-logo-text span{display:block}
.sb-collapse-btn{color:var(--MT)}
.sb-collapse-btn:hover{color:var(--T)}
.sb-mobile-main-nav{display:none}
.sb-mobile-nav-badge{margin-left:auto;flex:0 0 auto;font-size:10px;font-weight:700;background:rgba(14,165,233,.15);color:var(--A);border-radius:99px;padding:1px 7px}
.sb-section-lbl{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:0 0 auto;padding:10px 12px 7px}
.sb-section-lbl-muted{padding:6px 12px 4px;opacity:.6}
.sb-section-count{font-size:10px;font-weight:800;color:var(--MT);opacity:.75}
.sb-section-body{display:flex;flex-direction:column;gap:2px;padding:0 8px;overflow:visible}
.sb-domain-row.active{background:rgba(14,165,233,.08)}
.sb-domain-row.active .sb-domain-main{background:rgba(14,165,233,.13);color:var(--A)}
.sb-domain-row.active .sb-domain-main>i{color:var(--rc)}
.sb-domain-main-row .sb-domain-main{font-weight:700}
.sb-domain-row:hover .sb-domain-tools,.sb-domain-row:focus-within .sb-domain-tools{display:flex}
.sb-domain-tool-btn-active{color:var(--A)!important;background:rgba(14,165,233,.12)!important}
.sb-domain-row-disabled .sb-domain-main{opacity:.8}
.sb-server-status{color:var(--server-color,var(--A))}
.sb-foot{border-top:1px solid var(--BD);padding:12px 10px;margin-top:auto}
.sb-foot-user{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.sb-foot-info{flex:1;min-width:0}
.sb-foot-name{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--T)}
.sb-foot-role{font-size:10.5px;color:var(--LT);text-transform:capitalize}
.sb-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0;overflow:hidden}
.btn-logout{background:none;border:none;color:var(--LT);cursor:pointer;padding:6px;border-radius:6px;font-size:15px;flex-shrink:0;transition:color .15s}
.btn-logout:hover{color:var(--ER)}
#sidebar{min-height:100dvh;max-height:100dvh;position:sticky;top:0}
#sidebar.collapsed .sb-server-copy,#sidebar.collapsed .sb-server-meter,#sidebar.collapsed .sb-server-footer>.fa-chevron-right{display:none}
#sidebar.collapsed .sb-server-footer{width:38px;margin-inline:auto;padding:5px;justify-content:center}
#sidebar.collapsed .sb-server-icon{margin:0}
#sidebar.collapsed .sb-domain-tools{display:none!important}
#sidebar.collapsed .sb-domain-row{padding-inline:2px}
#sidebar.collapsed .sb-domain-main{padding:8px 2px;flex-direction:column;justify-content:center;gap:3px;text-align:center}
#sidebar.collapsed .sb-domain-main>i{width:auto}
#sidebar.collapsed .sb-domain-label{max-width:50px;font-size:7px;line-height:1.05;text-align:center;color:var(--LT)}
#sidebar.collapsed .sb-domain-main.active .sb-domain-label{color:var(--A)}
@media(max-width:768px){
  #sidebar{position:fixed!important;left:-280px!important;top:0!important;width:min(280px,88vw)!important;height:100dvh!important;max-height:none!important;z-index:1200!important;transition:left .25s ease!important;box-shadow:18px 0 46px rgba(0,0,0,.45)}
  #sidebar.mob-open{left:0!important}
  #sidebar.collapsed{width:min(280px,88vw)!important}
  #sidebar.collapsed .sb-logo-text,#sidebar.collapsed .sb-section-lbl,#sidebar.collapsed .sb-foot-info{display:block}
  #sidebar.collapsed .sb-domain-main{padding:9px 16px;flex-direction:row;justify-content:initial;gap:10px;text-align:left}
  #sidebar.collapsed .sb-domain-label{max-width:none;font-size:13px;line-height:normal;text-align:left;color:var(--T)}
  #sidebar.collapsed .sb-server-footer{width:calc(100% - 16px);margin-inline:8px;padding:5px 12px;justify-content:initial}
  #sidebar.collapsed .sb-server-copy,#sidebar.collapsed .sb-server-meter,#sidebar.collapsed .sb-server-footer>.fa-chevron-right{display:flex}
  #sidebar.collapsed .sb-mobile-main-nav{display:flex}
  .sb-mobile-main-nav{display:flex}
  .sb-domain-tools{display:flex}
  #sb-overlay{display:none;position:fixed;inset:0;z-index:1100;background:rgba(0,0,0,.58);backdrop-filter:blur(2px)}
  #sb-overlay.active{display:block}
}
@media(min-width:769px){#sb-overlay{display:none!important}}
/* ── Correção do carregamento da marca ───────────────────────────────────── */
#sidebar .sb-brand-link{color:var(--T)}
#sidebar .sb-brand-link:hover{text-decoration:none}
#sidebar .sb-brand-link .sb-logo-text span{display:block}
/* ── Compatibilidade com conteúdo legado dentro de #main ───────────────── */
#main{padding-top:var(--TB-H)}
#main>.n-content-full{padding-top:0!important}
#main>#content{padding-top:0!important}
@media(max-width:768px){#main{padding-top:var(--TB-H)}#main>#content{padding-top:0!important}}
/* ── Notificações e modal global ─────────────────────────────────────────── */
#modal-notif .n-notif-panel{margin:0}
.n-modal-bg.open{display:flex}
.modal-bg.open{display:flex}
.n-modal-bg:not(.open),.modal-bg:not(.open){display:none}
/* ── Responsividade dos conteúdos tabulares e cards ──────────────────────── */
@media(max-width:900px){
  .n-grid-2,.n-grid-3,.n-grid-4,.grid.g4,.grid.g3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
  .n-grid-2,.n-grid-3,.n-grid-4,.grid.g4,.grid.g3,.grid.g2{grid-template-columns:1fr}
  .n-page-header{gap:10px;margin-bottom:14px}
  .n-page-actions{display:flex;flex-wrap:wrap;gap:6px}
  .n-page-actions>*{min-width:0}
  .tb-main-nav{display:none!important}
  .mob-menu-btn{display:inline-flex!important}
  .tb-header-actions{gap:4px}
  .tb-user-btn{width:32px;height:32px}
  .tb-user-avatar{width:26px;height:26px}
  .tb-domain-tabs{padding-inline:8px!important}
  .tb-domain-tab{padding-inline:10px!important}
  .n-card{border-radius:10px}
  .n-table th,.n-table td{padding:8px 7px;font-size:11px}
}
@media(max-width:380px){
  .app-shell>.n-content-full{padding-inline:9px}
  #content{padding-inline:9px!important}
  .tb-domain-tab{font-size:10px!important;padding-inline:8px!important}
  .n-btn{padding-inline:10px}
}

/* ── Modal de notificações ────────────────────────────────────────────────── */
.n-notif-panel{background:#04040a;border:1px solid var(--BD);border-radius:14px;width:min(380px,100%);max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.4);overflow:hidden}
.n-notif-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--BD);flex-shrink:0}
.n-notif-icon{color:var(--A)}
.n-notif-title{font-weight:700;color:var(--T);flex:1}
.n-notif-close{background:none;border:none;cursor:pointer;color:var(--MT);font-size:18px;padding:2px 6px;border-radius:6px}
.n-notif-close:hover{background:var(--CARD-H);color:var(--T)}
.n-notif-list{overflow:auto;min-height:0}
.n-notif-empty{text-align:center;color:var(--LT);font-size:13px;padding:24px 0}
.n-notif-empty i{display:block;font-size:20px;margin-bottom:6px}
@media(max-width:600px){.n-notif-panel{max-height:calc(100dvh - var(--TB-H) - 18px);border-radius:12px}.n-notif-head{padding:13px 14px}}

/* ── Autenticação: login e 2FA ────────────────────────────────────────────── */
.auth-page{min-height:100vh;display:flex;font-family:'Outfit',sans-serif;background:#060610;color:#e8e8f4;overflow:hidden}
.auth-page.auth-style-split .lside{flex:1;position:relative;display:block;overflow:hidden}
.auth-page .lside-bg{position:absolute;inset:0;background-image:var(--login-image);background-size:cover;background-position:center;transition:transform 8s ease;transform:scale(1.05)}
.auth-page .lside:hover .lside-bg{transform:scale(1)}
.auth-page .lside-overlay{position:absolute;inset:0;background:var(--login-overlay);display:flex;flex-direction:column;justify-content:flex-end;padding:48px}
.auth-page .lside-badge{display:inline-flex;align-items:center;gap:7px;width:max-content;background:rgba(255,255,255,.08);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:99px;padding:6px 14px;font-size:11.5px;font-weight:600;color:rgba(255,255,255,.9);margin-bottom:20px;letter-spacing:.04em}
.auth-page .lside-badge i{color:var(--A)}
.auth-page .lside-msg{color:#fff;font-size:24px;font-weight:700;line-height:1.4;max-width:400px;margin-bottom:12px;text-shadow:0 2px 20px rgba(0,0,0,.4)}
.auth-page .lside-sub{color:rgba(255,255,255,.55);font-size:13px;display:flex;align-items:center;gap:8px}
.auth-page .lside-dot{width:6px;height:6px;border-radius:50%;background:var(--A);display:inline-block}
.auth-page .lform{width:100%;max-width:430px;display:flex;flex-direction:column;justify-content:center;padding:48px 40px;background:#090915;position:relative;overflow:hidden}
.auth-page .lform::before{content:'';position:absolute;top:-120px;right:-120px;width:300px;height:300px;background:radial-gradient(circle,rgba(14,165,233,.08) 0%,transparent 70%);pointer-events:none}
.auth-page .lform::after{content:'';position:absolute;bottom:-80px;left:-80px;width:220px;height:220px;background:radial-gradient(circle,rgba(var(--P-r,0),var(--P-g,51),var(--P-b,102),.06) 0%,transparent 70%);pointer-events:none}
.auth-page.auth-style-centered{background-image:var(--login-image);background-size:cover;background-position:center;position:relative}
.auth-page.auth-style-centered::before{content:'';position:absolute;inset:0;background:var(--login-overlay);z-index:0}
.auth-page.auth-style-centered .lside,.auth-page.auth-style-minimal .lside{display:none}
.auth-page.auth-style-centered .lform{max-width:420px;margin:auto;padding:44px 40px;background:rgba(9,9,21,.92);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 32px 80px rgba(0,0,0,.8);position:relative;z-index:1;animation:fadeUp .5s ease}
.auth-page.auth-style-minimal{background:linear-gradient(135deg,#060610 0%,#0a0a22 50%,#060610 100%)}
.auth-page.auth-style-minimal .lform{max-width:400px;margin:auto;padding:48px 40px;border-top:3px solid var(--A);animation:fadeUp .4s ease}
.auth-page .l-logo{margin-bottom:32px;animation:fadeUp .5s ease .1s both}
.auth-page .l-logo-icon{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;margin-bottom:14px;box-shadow:0 8px 24px rgba(14,165,233,.3);animation:float 4s ease-in-out infinite}
.auth-page .l-logo-img{width:54px;height:54px;object-fit:contain;margin-bottom:14px;border-radius:10px}
.auth-page .l-logo h1{font-size:24px;font-weight:800;letter-spacing:-.5px;line-height:1;background:linear-gradient(135deg,#fff 30%,rgba(14,165,233,.85));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.auth-page .l-logo p{font-size:12.5px;color:#5a5a7a;margin-top:5px}
.auth-page .fg{margin-bottom:16px;animation:fadeUp .4s ease both}
.auth-page .fg:nth-child(2){animation-delay:.05s}.auth-page .fg:nth-child(3){animation-delay:.1s}
.auth-page .fg label{display:block;font-size:10.5px;font-weight:700;color:#4a4a6a;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.auth-page .fc-login{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:11px 14px;color:#e8e8f4;font-size:14px;font-family:'Outfit',sans-serif;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}
.auth-page .fc-login:focus{border-color:var(--A);background:rgba(14,165,233,.04);box-shadow:0 0 0 3px rgba(14,165,233,.1)}
.auth-page .fc-login::placeholder{color:#3a3a5a}
.auth-page .lerr{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);border-radius:10px;padding:11px 14px;font-size:12.5px;color:#ef4444;margin-bottom:18px;display:flex;align-items:center;gap:9px;animation:fadeUp .3s ease}
.auth-page .lerr i{flex-shrink:0}
.auth-page .lbtn{width:100%;border:none;color:#fff;font-size:14px;font-family:'Outfit',sans-serif;font-weight:700;padding:13px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:6px;background:linear-gradient(135deg,var(--P),color-mix(in srgb,var(--P) 60%,var(--A)));box-shadow:0 4px 20px rgba(0,0,0,.3);transition:transform .15s,box-shadow .15s,opacity .15s;animation:fadeUp .4s ease .15s both;position:relative;overflow:hidden;letter-spacing:.02em}
.auth-page .lbtn::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);background-size:200% auto;animation:shimmer 2.5s linear infinite;opacity:0;transition:opacity .3s}
.auth-page .lbtn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.4)}
.auth-page .lbtn:hover::before{opacity:1}.auth-page .lbtn:active{transform:translateY(0)}
.auth-page .lver{text-align:center;font-size:11px;color:#2a2a3a;margin-top:24px;animation:fadeUp .4s ease .2s both}.auth-page .lver span{color:#3a3a5a}
.auth-page .ldivider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#2a2a4a;font-size:11px}.auth-page .ldivider::before,.auth-page .ldivider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.06)}
@media(max-width:767px){
  .auth-page{overflow:auto;min-height:100dvh;padding:16px}
  .auth-page .lform,.auth-page.auth-style-centered .lform,.auth-page.auth-style-minimal .lform{max-width:440px;width:100%;margin:auto;padding:32px 22px;border-radius:16px}
}
/* ── Verificação 2FA ──────────────────────────────────────────────────────── */
.twofa-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;font-family:'Outfit',sans-serif;background:#060610;color:#e8e8f4;padding:20px;overflow:auto}
.twofa-page .card{width:100%;max-width:420px;background:#090915;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:40px 36px;box-shadow:0 24px 64px rgba(0,0,0,.6);animation:fadeUp .45s ease}
.twofa-page .icon-wrap{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,var(--P),var(--A));display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;margin:0 auto 20px;animation:float 4s ease-in-out infinite;box-shadow:0 8px 24px rgba(14,165,233,.3)}
.twofa-page h1{text-align:center;font-size:22px;font-weight:800;margin-bottom:6px;background:linear-gradient(135deg,#fff 30%,rgba(14,165,233,.85));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.twofa-page .sub{text-align:center;font-size:13px;color:#5a5a7a;margin-bottom:24px}
.twofa-page .mode-badge{display:flex;align-items:center;gap:6px;background:rgba(14,165,233,.1);border:1px solid rgba(14,165,233,.25);border-radius:99px;padding:4px 12px;font-size:11.5px;font-weight:700;color:var(--A);margin:0 auto 24px;width:max-content}
.twofa-page .alert{padding:11px 14px;border-radius:10px;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:9px}
.twofa-page .alert-err{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);color:#ef4444}.twofa-page .alert-info{background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.25);color:#0ea5e9}
.twofa-page .fg{margin-bottom:16px}.twofa-page .fg label{display:block;font-size:10.5px;font-weight:700;color:#4a4a6a;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.twofa-page .code-input{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px 14px;color:#e8e8f4;font-size:28px;font-family:monospace;font-weight:800;letter-spacing:8px;outline:none;transition:border-color .2s,box-shadow .2s;text-align:center}
.twofa-page .code-input:focus{border-color:var(--A);box-shadow:0 0 0 3px rgba(14,165,233,.12)}
.twofa-page .btn{width:100%;border:none;color:#fff;font-size:14px;font-family:'Outfit',sans-serif;font-weight:700;padding:13px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s}
.twofa-page .btn-primary{background:linear-gradient(135deg,var(--P),color-mix(in srgb,var(--P) 60%,var(--A)));box-shadow:0 4px 20px rgba(0,0,0,.3)}
.twofa-page .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.4)}
.twofa-page .btn-sec{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:#8a8aaa;margin-top:10px;font-size:13px;padding:10px}.twofa-page .btn-sec:hover{background:rgba(255,255,255,.09);color:#e8e8f4}
.twofa-page .hint{font-size:11.5px;color:#4a4a6a;text-align:center;margin-top:16px;line-height:1.6}.twofa-page .hint a{color:var(--A);text-decoration:none}.twofa-page .hint a:hover{text-decoration:underline}
@media(max-width:480px){.twofa-page{padding:12px}.twofa-page .card{padding:28px 18px;border-radius:16px}.twofa-page .code-input{font-size:24px;letter-spacing:6px}}

/* ── Estilos mistos: valores dinâmicos expostos por variáveis CSS ───────── */

/* ── Correções de interação e layout após recolher a sidebar ─────────────── */
:root{--SB-CURRENT-W:var(--SB-W,230px)}
#topbar{left:var(--SB-CURRENT-W,var(--SB-W,230px))!important;right:0!important;width:auto!important;overflow:visible!important;isolation:isolate;}
#topbar+.tb-domain-tabs{left:var(--SB-CURRENT-W,var(--SB-W,230px))!important;right:0!important;z-index:199900!important;overflow-x:auto;overflow-y:hidden}
.tb-header-actions{position:relative;z-index:200001!important;overflow:visible!important}
.tb-notes-chips{position:relative;z-index:200002!important;overflow:visible!important}
.tb-note-chip,.tb-note-add-btn{position:relative;z-index:200003}
.tb-user-menu-wrap{position:relative;z-index:200010!important}
#tb-user-dropdown{z-index:2147483000!important;isolation:isolate;visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility .14s;display:block}
#tb-user-dropdown.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0);display:block!important}
#footer-status-bar{left:var(--SB-CURRENT-W,var(--SB-W,230px))!important;right:0!important;width:auto!important;}
body.sidebar-is-collapsed #topbar{left:54px!important}
body.sidebar-is-collapsed #topbar+.tb-domain-tabs{left:54px!important}
body.sidebar-is-collapsed #footer-status-bar{left:54px!important}
body.sidebar-is-collapsed:has(> #main)>#sidebar{width:54px!important;flex:0 0 54px!important}
body.sidebar-is-collapsed:has(> #main)>#main{min-width:0;flex:1 1 auto}
@media(max-width:768px){
  #topbar,#topbar+.tb-domain-tabs,#footer-status-bar{left:0!important;right:0!important;width:100%!important}
  body.sidebar-is-collapsed #topbar,body.sidebar-is-collapsed #topbar+.tb-domain-tabs,body.sidebar-is-collapsed #footer-status-bar{left:0!important}
  #topbar{overflow:visible!important}
  #tb-user-dropdown{position:fixed!important;top:64px!important;right:9px!important;left:auto!important;width:min(245px,calc(100vw - 18px))!important}
}
@media(min-width:769px){
  body:not(.sidebar-is-collapsed):has(> #main)>#sidebar{flex:0 0 var(--SB-W,230px)}
}

/* ── Modal global de notas: regras finais e determinísticas ─────────────── */
#modal-ntas-global.modal-bg {
  display: none;
  position: fixed;
  inset: 0;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(2, 6, 23, .82);
  z-index: 2147482000;
  isolation: isolate;
  pointer-events: none;
}
#modal-ntas-global.modal-bg.open {
  display: flex !important;
  pointer-events: auto;
}
#modal-ntas-global .ntas-modal {
  position: relative;
  z-index: 1;
  width: min(1280px, 96vw);
  height: min(92vh, 900px);
  max-width: 1280px;
  max-height: 92vh;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
#modal-ntas-global .ntas-body {
  min-height: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
#modal-ntas-global .ntas-wysiwyg,
#modal-ntas-global .ntas-pane {
  min-height: 0;
}
@media (max-width: 700px) {
  #modal-ntas-global.modal-bg { padding: 0; }
  #modal-ntas-global .ntas-modal {
    width: 100vw;
    height: 100dvh;
    max-height: none;
    border-radius: 0;
  }
  #modal-ntas-global .ntas-body {
    overflow-y: auto;
  }
}


/* ── Sidebar global fixa: somente a lista de domínios usados rola ───────── */
html:has(#sidebar),body:has(#sidebar){height:100dvh;min-height:100dvh}
body:has(#sidebar){overflow:hidden!important}
#sidebar{
  position:fixed!important;
  inset:0 auto 0 0!important;
  width:var(--SB-CURRENT-W,var(--SB-W,230px))!important;
  height:100dvh!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  flex-shrink:0!important;
  z-index:1200!important;
}
#sidebar.collapsed{width:54px!important}
#sidebar .sb-brand,
#sidebar .sb-mobile-main-nav,
#sidebar .sb-section-lbl,
#sidebar .sb-server-footer,
#sidebar .sb-foot{flex:0 0 auto!important}
#sidebar .sb-section-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding-bottom:8px;
}
#sidebar .sb-section-body::-webkit-scrollbar{width:6px}
#sidebar .sb-section-body::-webkit-scrollbar-track{background:transparent}
#sidebar .sb-section-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28);border-radius:99px}
#sidebar .sb-section-body::-webkit-scrollbar-thumb:hover{background:rgba(14,165,233,.55)}
/* Conteúdo fica ao lado da sidebar fixa e possui a própria rolagem. */
.app-shell{
  height:100dvh!important;
  min-height:0!important;
  margin-left:var(--SB-CURRENT-W,var(--SB-W,230px));
  width:calc(100% - var(--SB-CURRENT-W,var(--SB-W,230px)));
  overflow:hidden!important;
}
.app-shell>.n-content-full{
  box-sizing:border-box;
  height:100dvh!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body.sidebar-is-collapsed .app-shell{margin-left:54px;width:calc(100% - 54px)}
/* Layout legado que usa body > #sidebar + #main. */
body:has(> #main)>#main{
  box-sizing:border-box;
  height:100dvh!important;
  min-height:0!important;
  margin-left:var(--SB-CURRENT-W,var(--SB-W,230px));
  width:calc(100% - var(--SB-CURRENT-W,var(--SB-W,230px)));
  overflow:hidden!important;
}
body.sidebar-is-collapsed:has(> #main)>#main{margin-left:54px;width:calc(100% - 54px)}
body:has(> #main)>#main>#content{
  min-height:0!important;
  height:calc(100dvh - var(--TB-H,56px));
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
@media(max-width:768px){
  #sidebar{width:min(280px,88vw)!important;max-width:88vw!important;left:-280px!important;right:auto!important}
  #sidebar.mob-open{left:0!important}
  .app-shell,
  .app-shell>.n-content-full,
  body:has(> #main)>#main{margin-left:0!important;width:100%!important;height:100dvh!important;min-height:0!important}
  .app-shell>.n-content-full{overflow-y:auto!important}
  body:has(> #main)>#main>#content{height:calc(100dvh - var(--TB-H,56px));overflow-y:auto!important}
  #sidebar .sb-section-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important}
}


/* ── Conteúdo após sidebar fixa: sem sobreposição e sem cortes ───────────── */
body:has(#sidebar) .app-shell,
body>div:has(>#sidebar){
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  height:100dvh!important;
  min-height:0!important;
  margin-left:var(--SB-CURRENT-W,var(--SB-W,230px));
  width:calc(100% - var(--SB-CURRENT-W,var(--SB-W,230px)));
  overflow:hidden!important;
}
body.sidebar-is-collapsed .app-shell,
body.sidebar-is-collapsed>div:has(>#sidebar){
  margin-left:54px;
  width:calc(100% - 54px);
}
body:has(#sidebar) .app-shell>.n-content-full,
body>div:has(>#sidebar)>main.n-content-full,
body>div:has(>#sidebar)>div.n-content-full,
body>div:has(>#sidebar)>.n-style-e70369ad64{
  box-sizing:border-box!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  margin-top:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding-top:calc(var(--TB-H,56px) + 20px)!important;
}
body:has(#sidebar) .app-shell:has(.tb-domain-tabs)>.n-content-full,
body>div:has(>#sidebar):has(~ .tb-domain-tabs)>main.n-content-full,
body>div:has(>#sidebar):has(~ .tb-domain-tabs)>div.n-content-full,
body>div:has(>#sidebar):has(~ .tb-domain-tabs)>.n-style-e70369ad64{
  padding-top:calc(var(--TB-H,56px) + 58px)!important;
}
body:has(#sidebar) .app-shell>.n-content-full>*{min-width:0}
body:has(>div>#sidebar) .sb-avatar img,
body:has(#sidebar) .sb-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
@media(max-width:768px){
  body:has(#sidebar) .app-shell,
  body>div:has(>#sidebar){
    margin-left:0!important;
    width:100%!important;
    height:100dvh!important;
  }
  body:has(#sidebar) .app-shell>.n-content-full,
  body>div:has(>#sidebar)>main.n-content-full,
  body>div:has(>#sidebar)>div.n-content-full,
  body>div:has(>#sidebar)>.n-style-e70369ad64{
    width:100%!important;
    height:100%!important;
    padding-top:calc(var(--TB-H,56px) + 12px)!important;
  }
  body:has(#sidebar) .app-shell:has(.tb-domain-tabs)>.n-content-full,
  body>div:has(>#sidebar):has(~ .tb-domain-tabs)>main.n-content-full,
  body>div:has(>#sidebar):has(~ .tb-domain-tabs)>div.n-content-full,
  body>div:has(>#sidebar):has(~ .tb-domain-tabs)>.n-style-e70369ad64{
    padding-top:calc(var(--TB-H,56px) + 50px)!important;
  }
}

/* ── Menu do usuário: camada e área clicável acima do conteúdo ───────────── */
#topbar .tb-header-actions,
#topbar #tb-user-menu-wrap,
#topbar #tb-user-btn{position:relative;z-index:2147482000!important}
#topbar #tb-user-btn{pointer-events:auto!important;cursor:pointer!important}
#topbar #tb-user-dropdown{display:block!important;z-index:2147483000!important}
#topbar #tb-user-dropdown:not(.is-open){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
#topbar #tb-user-dropdown.is-open{visibility:visible!important;opacity:1!important;pointer-events:auto!important}


/* ── Conteúdo com abas de domínio fixas ─────────────────────────────────── */
body:has(#sidebar):has(.tb-domain-tabs) .app-shell>.n-content-full,
body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>main.n-content-full,
body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>div.n-content-full,
body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>.n-style-e70369ad64{
  padding-top:calc(var(--TB-H,56px) + 58px)!important;
}
@media(max-width:768px){
  body:has(#sidebar):has(.tb-domain-tabs) .app-shell>.n-content-full,
  body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>main.n-content-full,
  body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>div.n-content-full,
  body:has(#sidebar):has(.tb-domain-tabs)>div:has(>#sidebar)>.n-style-e70369ad64{
    padding-top:calc(var(--TB-H,56px) + 50px)!important;
  }
}


/* ── Explorador: shell sem vazio lateral e controles internos organizados ── */
.explorer-shell{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  width:calc(100vw - var(--SB-CURRENT-W,var(--SB-W,230px)))!important;
  height:100dvh!important;
  min-height:0!important;
  margin-left:var(--SB-CURRENT-W,var(--SB-W,230px))!important;
  padding-top:calc(var(--TB-H,56px) + 38px)!important;
  overflow:hidden!important;
  position:relative!important;
}
body.sidebar-is-collapsed .explorer-shell{
  width:calc(100vw - 54px)!important;
  margin-left:54px!important;
}
.explorer-content{
  box-sizing:border-box!important;
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.explorer-content .fm-web-help{flex:0 0 auto!important;max-height:60px;overflow:auto}
.explorer-content .fm-unibar{flex:0 0 auto!important;min-width:0!important}
.explorer-content .fm-wrap{
  flex:1 1 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}
.explorer-content .fm-sidebar{min-height:0!important;overflow:hidden!important}
.explorer-content .fm-sidebar>div:nth-child(2){flex:0 0 auto!important;min-height:0!important}
.explorer-content #fm-list-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important}
.explorer-content #fm-editor-panel{min-height:0!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important}
/* Busca só aparece quando a lupa chama FM.toggleSearch(). */
.explorer-content #fm-search-bar[style*="display: none"]{display:none!important}
.explorer-content #fm-search-bar{flex:0 0 auto;min-width:0}
/* Favoritos em bloco vertical, sem a estrela duplicada de remoção. */
.explorer-content #fm-favs-panel{flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:0!important;max-height:190px;overflow:hidden!important}
.explorer-content #fm-favs-panel .fm-favs-head{width:100%;justify-content:flex-start;padding:9px 10px!important}
.explorer-content #fm-favs-panel .fm-favs-head button{margin-left:auto}
.explorer-content #fm-favs-list{width:100%;min-height:0;max-height:142px;overflow-y:auto!important;padding:6px!important}
.explorer-content .fm-fav-item{min-width:0}
@media(max-width:768px){
  .explorer-shell{width:100%!important;margin-left:0!important;height:100dvh!important;padding-top:calc(var(--TB-H,58px) + 38px)!important}
  body.sidebar-is-collapsed .explorer-shell{width:100%!important;margin-left:0!important}
  .explorer-content .fm-wrap{flex-direction:column!important}
  .explorer-content .fm-sidebar{width:100%!important;max-height:45dvh!important;flex:0 0 45dvh!important}
  .explorer-content #fm-editor-panel{flex:1 1 auto!important;min-height:0!important}
}
