
/* ── RESET & VARS ─────────────────────────────────────────── */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0D0D0D;--bg1:#111111;--bg2:#161616;--bg3:#1C1C1C;--bg4:#222222;
  --border:#252525;--border2:#303030;
  --text:#ECECEC;--text2:#888;--text3:#4A4A4A;
  --red:#E53E3E;--green:#38A169;--yellow:#D69E2E;
  --coral:#FF3B5C;--cta:#FF1744;
  --font:'Inter',-apple-system,sans-serif;
  --mono:'JetBrains Mono','Courier New',monospace;
  --radius:10px;--fz:13px;
  --grad-color:#3355FF;--grad-speed:14s;--grad-op:.12;
  --sb-w:220px;--tb-h:52px;--rp-w:268px;
}
html,body{height:100%;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fz);overflow:hidden}

/* ── GRADIENT ─────────────────────────────────────────────── */
#grad-orbit{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
@keyframes bordOrb1{0%{top:-5%;left:50%}25%{top:50%;left:102%}50%{top:105%;left:50%}75%{top:50%;left:-2%}100%{top:-5%;left:50%}}
@keyframes bordOrb2{0%{top:105%;left:50%}25%{top:50%;left:-2%}50%{top:-5%;left:50%}75%{top:50%;left:102%}100%{top:105%;left:50%}}

/* ── APP SHELL ────────────────────────────────────────────── */
#app{display:flex;flex-direction:column;height:100vh;position:relative;z-index:1}

/* ── TOPBAR ───────────────────────────────────────────────── */
#topbar{height:var(--tb-h);background:var(--bg1);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 16px;gap:10px;flex-shrink:0;position:relative;z-index:50}
#tb-logo{font-size:12px;font-weight:700;color:var(--text);letter-spacing:.04em;display:flex;align-items:center;gap:7px;flex-shrink:0}
#tb-logo-dot{width:7px;height:7px;border-radius:50%;background:var(--coral)}
#tb-search{flex:1;max-width:320px;margin-left:8px}
#tb-search input{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:7px;color:var(--text);padding:6px 10px 6px 32px;font-size:12px;font-family:var(--font);outline:none}
#tb-search input:focus{border-color:var(--border2)}
#tb-search input::placeholder{color:var(--text3)}
.tb-search-icon{position:relative}
.tb-search-icon::before{content:'⌕';position:absolute;left:-22px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--text3)}
#tb-spacer{flex:1}
#tb-right{display:flex;align-items:center;gap:8px}
#tb-sync-label{font-size:10px;color:var(--text3)}
.tb-icon-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--text2);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s}
.tb-icon-btn:hover{background:var(--bg3);border-color:var(--border2);color:var(--text)}
#tb-sync-btn{font-size:11px;padding:0 12px;height:30px;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--text2);cursor:pointer;font-family:var(--font);transition:all .1s;white-space:nowrap}
#tb-sync-btn:hover{color:var(--text);border-color:var(--border2)}
#tb-sync-btn.syncing{color:var(--yellow);border-color:var(--yellow)}
#tb-add-widget{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:7px;background:var(--coral);border:none;color:#fff;font-size:11px;font-weight:500;cursor:pointer;font-family:var(--font)}
#tb-add-widget:hover{opacity:.9}
#tb-pend-badge{font-size:10px;padding:2px 7px;border-radius:5px;background:var(--yellow)18;color:var(--yellow);border:1px solid var(--yellow)33;cursor:pointer;display:none}
#tb-clock{font-size:11px;color:var(--text3);font-family:var(--mono);letter-spacing:.06em}

/* ── BODY ─────────────────────────────────────────────────── */
#body{display:flex;flex:1;overflow:hidden}

/* ── SIDEBAR ──────────────────────────────────────────────── */
#sidebar{width:var(--sb-w);background:var(--bg1);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s;overflow:hidden}
#sidebar.collapsed{width:52px}
#sidebar.collapsed .sb-label,.sidebar.collapsed .sb-sec-label{display:none}
#sidebar.collapsed .sb-item{justify-content:center;padding:8px}
#sb-top{padding:14px 14px 8px;flex-shrink:0}
#sb-brand{display:flex;align-items:center;gap:8px;padding:4px 0 12px;border-bottom:1px solid var(--border);margin-bottom:8px}
#sb-brand-name{font-size:12px;font-weight:700;color:var(--text);white-space:nowrap}
#sb-brand-sub{font-size:9px;color:var(--text3);margin-top:1px}
.sb-coral-dot{width:6px;height:6px;border-radius:50%;background:var(--coral);flex-shrink:0}
#sb-nav{flex:1;overflow-y:auto;padding:6px 10px}
.sb-sec-label{font-size:9px;color:var(--text3);letter-spacing:.1em;text-transform:uppercase;padding:10px 6px 4px;font-weight:500}
.sb-item{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:7px;color:var(--text2);font-size:12px;cursor:pointer;transition:all .12s;user-select:none;white-space:nowrap;position:relative}
.sb-item:hover{color:var(--text);background:var(--bg3)}
.sb-item.active{color:var(--text);background:var(--bg3)}
.sb-item.active::before{content:'';position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:3px;height:16px;border-radius:0 2px 2px 0;background:var(--coral)}
.sb-ic{width:16px;text-align:center;font-size:14px;flex-shrink:0}
.sb-label{flex:1;overflow:hidden;text-overflow:ellipsis}
.sb-badge{margin-left:auto;font-size:9px;padding:1px 5px;border-radius:99px;background:var(--red)22;color:var(--red);flex-shrink:0;display:none}
#sb-bottom{padding:10px 10px 14px;border-top:1px solid var(--border);flex-shrink:0}
#sb-collapse-btn{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;color:var(--text3);font-size:11px;cursor:pointer;transition:all .12s;border:none;background:none;font-family:var(--font);width:100%}
#sb-collapse-btn:hover{color:var(--text2);background:var(--bg3)}

/* ── MAIN CONTENT ─────────────────────────────────────────── */
#main{flex:1;overflow-y:auto;background:var(--bg);min-width:0}
.page{display:none;padding:20px 20px 20px}.page.active{display:block}

/* ── RIGHT PANEL ──────────────────────────────────────────── */
#right-panel{width:var(--rp-w);background:var(--bg1);border-left:1px solid var(--border);flex-shrink:0;overflow-y:auto;display:none}
#right-panel.visible{display:flex;flex-direction:column}
.rp-sec{padding:14px 14px 0;border-bottom:1px solid var(--border);padding-bottom:14px}
.rp-title{font-size:11px;font-weight:500;color:var(--text2);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}
.rp-title-actions{display:flex;gap:4px}

/* ── CARDS ────────────────────────────────────────────────── */
.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}
.card:hover{border-color:var(--border2)}
.card-hdr{display:flex;align-items:center;gap:8px;padding:13px 14px;border-bottom:1px solid var(--border)}
.card-title{font-size:11px;font-weight:500;color:var(--text2);flex:1;letter-spacing:.02em}
.card-ic{font-size:13px;flex-shrink:0}
.card-act{background:none;border:none;color:var(--text3);font-size:11px;cursor:pointer;padding:2px 5px;border-radius:4px;font-family:var(--font)}
.card-act:hover{color:var(--text2);background:var(--bg3)}
.card-body{padding:14px}
.card-body.np{padding:0}
.card-body.sm-pad{padding:10px 14px}

/* ── KPI ROW ──────────────────────────────────────────────── */
.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.kpi-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;position:relative;overflow:hidden;transition:border-color .15s}
.kpi-card:hover{border-color:var(--border2)}
.kpi-label{font-size:10px;color:var(--text3);letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}
.kpi-val{font-size:26px;font-weight:700;color:var(--text);line-height:1;letter-spacing:-.5px}
.kpi-val.big{font-size:32px}
.kpi-sub{font-size:10px;color:var(--text3);margin-top:6px;display:flex;align-items:center;gap:4px}
.kpi-sub .up{color:var(--green)}.kpi-sub .dn{color:var(--red)}.kpi-sub .wr{color:var(--yellow)}
.kpi-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:transparent;border-radius:var(--radius) var(--radius) 0 0;transition:.15s}
.kpi-card.coral::after{background:var(--coral)}
.kpi-card.green::after{background:var(--green)}
.kpi-card.yellow::after{background:var(--yellow)}

/* ── GRIDS ────────────────────────────────────────────────── */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:10px}
.grid-6040{display:grid;grid-template-columns:3fr 2fr;gap:10px;margin-bottom:10px}
.grid-4060{display:grid;grid-template-columns:2fr 3fr;gap:10px;margin-bottom:10px}

/* ── TASK LIST ────────────────────────────────────────────── */
.task-item{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--border);font-size:11px;transition:.1s}
.task-item:last-child{border:none}
.task-item:hover{opacity:.85}
.task-cb{width:14px;height:14px;border-radius:4px;border:1px solid var(--border2);background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:8px;transition:all .1s}
.task-cb.done{background:var(--green);border-color:var(--green);color:#fff}
.task-text{flex:1;color:var(--text)}
.task-item.is-done .task-text{color:var(--text3);text-decoration:line-through}
.task-tag{font-size:8px;padding:2px 6px;border-radius:4px;font-weight:500;flex-shrink:0}
.tag-semana{background:var(--red)15;color:var(--red)}
.tag-mes{background:var(--yellow)15;color:var(--yellow)}
.tag-futuro{background:var(--text3)15;color:var(--text3)}
.tag-done{background:var(--green)15;color:var(--green)}

/* ── STATUS LIST ──────────────────────────────────────────── */
.st-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border);font-size:11px}
.st-row:last-child{border:none}
.st-label{color:var(--text2)}
.badge{font-size:9px;padding:2px 7px;border-radius:5px;font-weight:500}
.badge.g{background:var(--green)15;color:var(--green)}
.badge.r{background:var(--red)15;color:var(--red)}
.badge.y{background:var(--yellow)15;color:var(--yellow)}

/* ── LOG ──────────────────────────────────────────────────── */
.log-item{display:flex;align-items:flex-start;gap:8px;padding:7px 0;border-bottom:1px solid var(--border);font-size:10px}
.log-item:last-child{border:none}
.log-time{color:var(--text3);font-family:var(--mono);font-size:9px;flex-shrink:0;padding-top:1px;min-width:42px}
.log-type{font-size:8px;padding:2px 5px;border-radius:4px;flex-shrink:0;font-weight:500}
.log-type.bot{background:#6366f118;color:#6366f1}
.log-type.sync{background:var(--green)15;color:var(--green)}
.log-type.system{background:var(--text3)15;color:var(--text3)}
.log-type.notion{background:var(--text2)15;color:var(--text2)}
.log-type.error{background:var(--red)15;color:var(--red)}
.log-msg{color:var(--text2);line-height:1.4;flex:1;word-break:break-word}

/* ── TABLES ───────────────────────────────────────────────── */
.tbl{width:100%;border-collapse:collapse;font-size:11px}
.tbl th{font-size:9px;color:var(--text3);font-weight:500;padding:0 12px 8px;text-align:left;letter-spacing:.05em;border-bottom:1px solid var(--border);text-transform:uppercase}
.tbl td{padding:9px 12px;border-bottom:1px solid var(--border);color:var(--text2)}
.tbl tr:last-child td{border:none}
.tbl tr:hover td{background:var(--bg3);color:var(--text)}

/* ── PROJ ROWS ────────────────────────────────────────────── */
.proj-row{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:.1s}
.proj-row:hover{background:var(--bg3)}
.proj-ic{font-size:13px;flex-shrink:0}
.proj-name{flex:1;font-size:12px;font-weight:500}
.b-ativo{background:var(--green)15;color:var(--green);font-size:9px;padding:2px 7px;border-radius:5px}
.b-revisao{background:var(--yellow)15;color:var(--yellow);font-size:9px;padding:2px 7px;border-radius:5px}
.b-pendente{background:var(--red)15;color:var(--red);font-size:9px;padding:2px 7px;border-radius:5px}
.b-concluido{background:var(--text3)15;color:var(--text3);font-size:9px;padding:2px 7px;border-radius:5px}

/* ── PENDING ──────────────────────────────────────────────── */
.pend-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;background:var(--bg3);margin-bottom:5px;font-size:11px}
.pend-desc{flex:1;color:var(--text)}
.btn-sm{font-size:10px;padding:3px 8px;border-radius:5px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text3);font-family:var(--font);transition:.1s}
.btn-sm.g{border-color:var(--green)44;color:var(--green);background:var(--green)08}
.btn-sm.r{border-color:var(--red)44;color:var(--red);background:var(--red)08}

/* ── FAT / SEL ────────────────────────────────────────────── */
.sel{background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:5px 8px;font-size:11px;font-family:var(--font);outline:none}
.sel:focus{border-color:var(--border2)}

/* ── AUTO ─────────────────────────────────────────────────── */
.auto-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border)}
.auto-toggle{position:relative;width:28px;height:16px;cursor:pointer;flex-shrink:0}
.auto-toggle input{opacity:0;width:0;height:0;position:absolute}
.auto-slider{position:absolute;inset:0;border-radius:99px;background:var(--border2);transition:.15s}
.auto-toggle input:checked+.auto-slider{background:var(--green)}
.auto-slider:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.15s}
.auto-toggle input:checked+.auto-slider:before{transform:translateX(12px)}

/* ── MEM ──────────────────────────────────────────────────── */
#mem-flow{overflow-x:auto;padding:14px}
.mem-node{flex-shrink:0;background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:10px 14px;cursor:pointer;transition:.12s;text-align:center}
.mem-node:hover{border-color:var(--border2);background:var(--bg4)}
.mem-node.root{border-color:var(--border2);background:var(--bg4)}
.mem-node-icon{font-size:16px;margin-bottom:4px}
.mem-node-name{font-size:11px;font-weight:500}
.mem-node-desc{font-size:9px;color:var(--text3);margin-top:2px}

/* ── BRAIN ────────────────────────────────────────────────── */
#brain-body{width:100%;height:380px;position:relative;background:var(--bg)}

/* ── CONV ─────────────────────────────────────────────────── */
.conv-session{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border);cursor:pointer;font-size:11px;transition:.1s}
.conv-session:hover{background:var(--bg3)}

/* ── CHAT BOT ─────────────────────────────────────────────── */
#chat-fab{position:fixed;bottom:18px;right:18px;width:38px;height:38px;border-radius:50%;background:var(--bg3);border:1px solid var(--border2);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:900;font-size:15px;transition:.15s}
#chat-fab:hover{border-color:var(--text3)}
#chat-panel{position:fixed;bottom:64px;right:18px;width:300px;height:400px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);display:none;flex-direction:column;z-index:901;overflow:hidden}
#chat-panel.open{display:flex}
#chat-phdr{padding:10px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-shrink:0;background:var(--bg1)}
#chat-pname{font-size:12px;font-weight:500;flex:1}
#chat-psub{font-size:9px;color:var(--green)}
.ch-close{background:none;border:none;color:var(--text3);font-size:14px;cursor:pointer}
#chat-msgs{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:5px}
.cmsg{max-width:85%;padding:7px 9px;border-radius:8px;font-size:11px;line-height:1.5;word-break:break-word}
.cmsg.user{background:var(--bg4);align-self:flex-end}
.cmsg.bot{background:var(--bg3);align-self:flex-start}
.chat-wave{display:flex;align-items:center;gap:3px;padding:8px 10px}
.chat-wave span{width:5px;height:5px;border-radius:50%;background:var(--text3);display:inline-block;animation:wv 1.2s ease-in-out infinite}
.chat-wave span:nth-child(2){animation-delay:.15s}.chat-wave span:nth-child(3){animation-delay:.3s}
@keyframes wv{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}
#chat-inp-wrap{padding:7px 9px;border-top:1px solid var(--border);display:flex;gap:5px;flex-shrink:0;background:var(--bg1)}
#chat-inp{flex:1;background:var(--bg3);border:1px solid var(--border);border-radius:5px;color:var(--text);padding:6px 8px;font-size:11px;outline:none;font-family:var(--font);resize:none;max-height:60px}
#chat-inp:focus{border-color:var(--border2)}
#chat-send{background:var(--coral);border:none;border-radius:5px;color:#fff;padding:6px 10px;font-size:11px;cursor:pointer}

/* ── SETTINGS PANEL ───────────────────────────────────────── */
#settings-panel{position:fixed;top:0;right:-420px;width:400px;height:100vh;background:var(--bg1);border-left:1px solid var(--border);z-index:1000;transition:right .25s;display:flex;flex-direction:column;overflow:hidden}
#settings-panel.open{right:0}
#settings-hdr{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#settings-hdr h2{font-size:13px;font-weight:500}
.close-btn{background:none;border:none;color:var(--text3);font-size:16px;cursor:pointer}
#settings-body{flex:1;overflow-y:auto;padding:16px}
.settings-sec{font-size:9px;color:var(--text3);letter-spacing:.1em;text-transform:uppercase;margin:16px 0 8px;padding-bottom:4px;border-bottom:1px solid var(--border)}
.settings-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}
.settings-lbl{font-size:12px;color:var(--text2);flex:1}
.settings-val{font-size:12px;color:var(--text);background:var(--bg3);border:1px solid var(--border);border-radius:5px;padding:5px 8px;font-family:var(--font);outline:none;width:160px}
.settings-val:focus{border-color:var(--border2)}
input[type=range].settings-val{padding:0;height:4px;width:160px;accent-color:var(--text2)}
input[type=color].settings-val{padding:2px;width:48px;height:28px;cursor:pointer}
.apply-btn{width:100%;padding:8px;border-radius:7px;background:var(--bg3);border:1px solid var(--border2);color:var(--text);font-family:var(--font);font-size:12px;cursor:pointer;margin-top:8px}
.apply-btn:hover{background:var(--bg4)}

/* ── MODAL ────────────────────────────────────────────────── */
#modal-overlay{position:fixed;inset:0;background:#00000099;z-index:2000;display:none;align-items:center;justify-content:center}
#modal-overlay.open{display:flex}
#modal-box{background:var(--bg2);border:1px solid var(--border);border-radius:12px;width:560px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}
#modal-hdr{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#modal-hdr h3{font-size:13px;font-weight:500}
#modal-body{flex:1;overflow-y:auto;padding:14px}

/* ── WIDGET RESIZE ────────────────────────────────────────── */
.widget-resize{position:absolute;bottom:0;right:0;width:14px;height:14px;cursor:se-resize;z-index:10;opacity:0;transition:.15s}
.widget-resize::after{content:'';position:absolute;bottom:3px;right:3px;width:6px;height:6px;border-right:1.5px solid var(--border2);border-bottom:1.5px solid var(--border2)}
.card:hover .widget-resize{opacity:1}

/* ── SCROLLBAR ────────────────────────────────────────────── */
::-webkit-scrollbar{width:3px;height:3px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}

/* ── LOADING ──────────────────────────────────────────────── */
.loading{padding:16px;text-align:center;color:var(--text3);font-size:11px}

/* ── QUICK ACTIONS (RIGHT PANEL) ─────────────────────────── */
.quick-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:4px}
.qa-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 4px;border-radius:7px;cursor:pointer;transition:.1s;border:none;background:transparent;font-family:var(--font);color:var(--text3);font-size:9px}
.qa-btn:hover{background:var(--bg3);color:var(--text2)}
.qa-ic{width:32px;height:32px;border-radius:8px;background:var(--bg3);display:flex;align-items:center;justify-content:center;font-size:14px;border:1px solid var(--border)}
.dc-tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;font-size:9px;font-weight:500}
.dc-tag.coral{background:var(--coral)18;color:var(--coral)}
.dc-tag.green{background:var(--green)18;color:var(--green)}
.dc-tag.yellow{background:var(--yellow)18;color:var(--yellow)}

.cmd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;padding:14px}
.cmd-card{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:12px 12px 12px 12px;position:relative;transition:.12s}
.cmd-card:hover{border-color:var(--border2)}
.cmd-tag{font-size:8px;padding:2px 6px;border-radius:4px;font-weight:500;margin-bottom:8px;display:inline-block}
.cmd-tag.dev{background:#6366f118;color:#6366f1}.cmd-tag.notion{background:var(--text2)15;color:var(--text2)}
.cmd-tag.site{background:var(--coral)15;color:var(--coral)}.cmd-tag.dados{background:var(--green)15;color:var(--green)}
.cmd-tag.bot{background:var(--yellow)15;color:var(--yellow)}
.cmd-code{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text);margin-bottom:6px;word-break:break-all}
.cmd-desc{font-size:10px;color:var(--text3);line-height:1.5}
.cmd-copy{position:absolute;top:10px;right:10px;background:var(--bg4);border:1px solid var(--border);border-radius:5px;color:var(--text3);font-size:9px;padding:3px 7px;cursor:pointer;font-family:var(--font);transition:.1s;opacity:0}
.cmd-card:hover .cmd-copy{opacity:1}.cmd-copy:hover{background:var(--bg3);color:var(--text);border-color:var(--border2)}
.cmd-copy.copied{color:var(--green);border-color:var(--green)}
.cmd-search{width:100%;background:var(--bg3);border:1px solid var(--border);border-radius:7px;color:var(--text);padding:8px 12px;font-size:12px;font-family:var(--font);outline:none;margin-bottom:14px}
.cmd-search:focus{border-color:var(--border2)}
.cmd-section-title{font-size:9px;color:var(--text3);letter-spacing:.1em;text-transform:uppercase;padding:4px 14px 8px;margin-top:4px}

/* ── COMANDOS PAGE ───────────────────────────────────────── */
#page-comandos .card-body{padding:0}
.cmd-sec-hdr{padding:7px 14px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);font-weight:600;background:var(--bg1);border-bottom:1px solid var(--border)}
.cmd-row{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);transition:background .1s}
.cmd-row:hover{background:var(--bg3)}
.cmd-name{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--text);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cmd-cat{font-size:9px;padding:2px 7px;border-radius:4px;font-weight:600;flex-shrink:0;white-space:nowrap;letter-spacing:.04em}
.cmd-cat.deploy{background:var(--yellow)20;color:var(--yellow)}
.cmd-cat.notion{background:var(--text2)20;color:var(--text2)}
.cmd-cat.site{background:var(--coral)20;color:var(--coral)}
.cmd-cat.memoria{background:var(--green)20;color:var(--green)}
.cmd-cat.bot{background:#6366f120;color:#6366f1}
.cmd-info-wrap{position:relative;flex-shrink:0}
.cmd-info-btn{width:18px;height:18px;border-radius:50%;border:1px solid var(--border2);background:var(--bg4);color:var(--text3);font-size:10px;display:flex;align-items:center;justify-content:center;cursor:help;font-weight:700;font-style:italic;user-select:none}
.cmd-tip{display:none;position:absolute;bottom:calc(100% + 8px);right:0;width:270px;background:var(--bg1);border:1px solid var(--border2);border-radius:10px;padding:14px;font-size:11px;color:var(--text2);line-height:1.6;z-index:9999;box-shadow:0 12px 40px rgba(0,0,0,.8);text-align:left;pointer-events:none}
.cmd-info-wrap:hover .cmd-tip{display:block}
.cmd-tip strong{display:block;color:var(--text);font-size:12px;margin-bottom:8px;font-family:var(--mono);padding-bottom:6px;border-bottom:1px solid var(--border)}
.cmd-copy-btn{font-size:10px;padding:3px 9px;border-radius:5px;border:1px solid var(--border);background:transparent;color:var(--text3);cursor:pointer;font-family:var(--font);flex-shrink:0;transition:all .1s}
.cmd-copy-btn:hover{color:var(--text);border-color:var(--border2);background:var(--bg4)}
