/* ============================================
   DM CRM — Stylesheet
   ============================================ */

:root {
  --bg:      #080f1a;
  --bg2:     #0c1623;
  --sidebar: #0a1220;
  --panel:   #0f1c2e;
  --panel2:  #162438;
  --panel3:  #1c2d44;
  --border:  rgba(255,255,255,0.07);
  --border2: rgba(255,255,255,0.13);
  --text:    #e2eeff;
  --text2:   #7a9bbf;
  --text3:   #3d5a78;
  --accent:  #2d7dd2;
  --accent2: #1a5fa8;
  --ag:      rgba(45,125,210,0.15);
  --green:   #10b981;
  --gg:      rgba(16,185,129,0.15);
  --cyan:    #06b6d4;
  --cg:      rgba(6,182,212,0.12);
  --yellow:  #f59e0b;
  --yg:      rgba(245,158,11,0.12);
  --red:     #ef4444;
  --rg:      rgba(239,68,68,0.12);
  --purple:  #8b5cf6;
  --pg:      rgba(139,92,246,0.12);
  --shadow:  0 8px 32px rgba(0,0,0,0.5);
  --shadow2: 0 2px 8px rgba(0,0,0,0.3);
  --r:       10px;
  --r2:      6px;
}

[data-theme="light"] {
  --bg:      #f0f4f9;
  --bg2:     #e8eef6;
  --sidebar: #1a2d45;
  --panel:   #ffffff;
  --panel2:  #f5f8fc;
  --panel3:  #edf2f8;
  --border:  rgba(0,0,0,0.07);
  --border2: rgba(0,0,0,0.13);
  --text:    #1a2d45;
  --text2:   #4a6580;
  --text3:   #8ba3c4;
  --ag:      rgba(45,125,210,0.1);
  --gg:      rgba(16,185,129,0.1);
  --cg:      rgba(6,182,212,0.1);
  --yg:      rgba(245,158,11,0.1);
  --rg:      rgba(239,68,68,0.1);
  --pg:      rgba(139,92,246,0.1);
  --shadow:  0 8px 32px rgba(0,0,0,0.12);
  --shadow2: 0 2px 8px rgba(0,0,0,0.08);
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Sora',sans-serif; background:var(--bg); color:var(--text); display:flex; height:100vh; overflow:hidden; transition:background .3s,color .3s; }
input,select,textarea,button { font-family:'Sora',sans-serif; }
::-webkit-scrollbar { width:4px; height:4px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:var(--border2); border-radius:2px; }

/* ── UTILS ── */
.hidden { display:none !important; }
.flex { display:flex; }
.gap8 { gap:8px; }
.muted { color:var(--text3); font-size:11px; }

/* ══════════════════════════════
   AUTH
══════════════════════════════ */
#auth-screen { width:100%; display:flex; align-items:center; justify-content:center; background:var(--bg); }
.auth-wrap { width:360px; display:flex; flex-direction:column; align-items:center; gap:28px; }
.auth-logo { display:flex; align-items:center; gap:14px; }
.auth-logo img { width:52px; height:52px; border-radius:12px; object-fit:cover; }
.auth-brand { display:block; font-size:22px; font-weight:700; color:#fff; letter-spacing:1px; }
.auth-tag { display:block; font-size:11px; color:var(--accent); font-family:'JetBrains Mono',monospace; letter-spacing:2px; }
.auth-card { width:100%; background:var(--panel); border:1px solid var(--border2); border-radius:var(--r); padding:28px; }
.auth-form { display:none; flex-direction:column; gap:16px; }
.auth-form.active { display:flex; }
.auth-form h2 { font-size:16px; font-weight:700; color:var(--text); }
.auth-msg { padding:10px 14px; border-radius:var(--r2); font-size:12px; font-weight:500; }
.auth-msg.error { background:var(--rg); color:var(--red); border:1px solid var(--red); }
.auth-msg.success { background:var(--gg); color:var(--green); border:1px solid var(--green); }
.auth-link { font-size:12px; color:var(--accent); cursor:pointer; text-align:center; }
.auth-link:hover { text-decoration:underline; }
.btn-auth { background:var(--accent); border:none; color:#fff; padding:12px; border-radius:var(--r2); font-size:13px; font-weight:600; cursor:pointer; transition:background .15s; }
.btn-auth:hover { background:var(--accent2); }

/* ── FIELD ── */
.field { display:flex; flex-direction:column; gap:5px; }
.field label { font-size:9px; font-weight:700; letter-spacing:1.2px; color:var(--text3); text-transform:uppercase; }
.field input, .field select, .field textarea {
  background:var(--panel2); border:1px solid var(--border2); border-radius:var(--r2);
  padding:9px 11px; font-size:12.5px; color:var(--text); outline:none; transition:border-color .15s;
}
.field input:focus, .field select:focus, .field textarea:focus { border-color:var(--accent); }
.field input::placeholder, .field textarea::placeholder { color:var(--text3); }
.field textarea { resize:vertical; min-height:80px; }

/* ══════════════════════════════
   LAYOUT APP
══════════════════════════════ */
#app { display:flex; width:100%; height:100vh; overflow:hidden; }

/* ── SIDEBAR ── */
.sidebar { width:220px; background:var(--sidebar); display:flex; flex-direction:column; border-right:1px solid var(--border); flex-shrink:0; }
.sidebar-logo { padding:14px 16px; border-bottom:1px solid var(--border); display:flex; align-items:center; gap:10px; }
.sidebar-logo img { width:32px; height:32px; border-radius:7px; object-fit:cover; }
.logo-name { font-size:13px; font-weight:700; color:#fff; }
.logo-tag { font-size:9px; color:var(--accent); font-family:'JetBrains Mono',monospace; letter-spacing:1.5px; }
.sidebar-nav { flex:1; padding:8px 0; overflow-y:auto; }
.nav-group { margin-bottom:4px; }
.nav-group-label { font-size:9px; font-weight:700; letter-spacing:1.5px; color:var(--text3); padding:10px 16px 3px; text-transform:uppercase; }
.nav-item { display:flex; align-items:center; gap:9px; padding:8px 16px; cursor:pointer; color:var(--text2); font-size:12.5px; font-weight:500; border-left:2px solid transparent; transition:all .15s; user-select:none; }
.nav-item:hover { color:var(--text); background:rgba(255,255,255,0.03); }
.nav-item.active { color:#fff; background:var(--ag); border-left-color:var(--accent); }
.nav-item svg { width:14px; height:14px; flex-shrink:0; opacity:.7; }
.nav-item.active svg { opacity:1; }
.nav-badge { margin-left:auto; font-size:9px; font-weight:700; padding:1px 6px; border-radius:8px; font-family:'JetBrains Mono',monospace; }
.nb-blue { background:var(--ag); color:var(--accent); }
.nb-green { background:var(--gg); color:var(--green); }
.nb-red { background:var(--rg); color:var(--red); }
.sidebar-bottom { padding:10px; border-top:1px solid var(--border); display:flex; flex-direction:column; gap:8px; }
.user-card { display:flex; align-items:center; gap:8px; padding:8px; border-radius:var(--r); background:rgba(255,255,255,0.04); }
.user-av { width:28px; height:28px; border-radius:50%; background:linear-gradient(135deg,var(--accent),var(--purple)); display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; color:#fff; flex-shrink:0; }
.user-name { font-size:11.5px; font-weight:600; color:var(--text); }
.user-role { font-size:9px; color:var(--text3); }
.sidebar-actions { display:flex; align-items:center; justify-content:space-between; }
.theme-toggle { display:flex; gap:2px; background:rgba(255,255,255,0.04); padding:3px; border-radius:20px; }
.theme-opt { padding:3px 9px; border-radius:16px; font-size:11px; cursor:pointer; color:var(--text3); transition:all .15s; }
.theme-opt.active { background:var(--accent); color:#fff; }
.btn-logout { background:none; border:1px solid var(--border2); color:var(--text3); padding:5px 10px; border-radius:var(--r2); font-size:11px; cursor:pointer; transition:all .15s; }
.btn-logout:hover { border-color:var(--red); color:var(--red); }

/* ── MAIN ── */
.main { flex:1; display:flex; flex-direction:column; overflow:hidden; }

/* ── TOPBAR ── */
.topbar { height:52px; background:var(--bg2); border-bottom:1px solid var(--border); display:flex; align-items:center; padding:0 18px; gap:8px; flex-shrink:0; }
.topbar-info { flex:1; }
.topbar-title { font-size:14px; font-weight:700; color:var(--text); }
.topbar-sub { font-size:10px; color:var(--text3); }

/* ── BTNS ── */
.btn { background:var(--panel); border:1px solid var(--border); color:var(--text2); padding:6px 12px; border-radius:var(--r2); cursor:pointer; font-size:11.5px; font-weight:500; display:inline-flex; align-items:center; gap:5px; transition:all .15s; white-space:nowrap; }
.btn:hover { border-color:var(--accent); color:var(--text); }
.btn.primary { background:var(--accent); border-color:var(--accent); color:#fff; }
.btn.primary:hover { background:var(--accent2); }
.btn.danger { background:var(--rg); border-color:var(--red); color:var(--red); }
.btn.danger:hover { background:var(--red); color:#fff; }
.btn.success { background:var(--gg); border-color:var(--green); color:var(--green); }
.btn svg { width:12px; height:12px; }

/* ── VIEW TABS ── */
.view-tabs { height:40px; display:flex; align-items:center; padding:0 18px; gap:2px; border-bottom:1px solid var(--border); background:var(--bg2); flex-shrink:0; }
.vtab { height:40px; padding:0 14px; display:flex; align-items:center; gap:6px; font-size:12px; font-weight:600; color:var(--text3); cursor:pointer; border-bottom:2px solid transparent; transition:all .15s; }
.vtab:hover { color:var(--text2); }
.vtab.active { color:var(--accent); border-bottom-color:var(--accent); }
.vtab svg { width:12px; height:12px; }
.tab-count { background:var(--panel2); color:var(--text3); font-size:10px; padding:1px 6px; border-radius:8px; font-family:'JetBrains Mono',monospace; }
.vtab.active .tab-count { background:var(--ag); color:var(--accent); }
.tab-spacer { flex:1; }

/* ── ACTIONS BAR ── */
.actions-bar { padding:9px 18px; display:flex; align-items:center; gap:8px; background:var(--bg2); border-bottom:1px solid var(--border); flex-shrink:0; flex-wrap:wrap; }
.search-bar { display:flex; align-items:center; gap:7px; background:var(--panel); border:1px solid var(--border); border-radius:var(--r2); padding:7px 11px; min-width:240px; transition:border-color .15s; }
.search-bar:focus-within { border-color:var(--accent); }
.search-bar input { background:none; border:none; outline:none; font-size:12px; color:var(--text); width:100%; }
.search-bar input::placeholder { color:var(--text3); }
.search-bar svg { width:13px; height:13px; color:var(--text3); flex-shrink:0; }

/* ── FILTER DROPDOWN ── */
.filter-panel { background:var(--panel); border-bottom:1px solid var(--border2); padding:12px 18px; display:none; gap:20px; flex-wrap:wrap; z-index:50; flex-shrink:0; }
.filter-panel.open { display:flex; }
.filter-group { display:flex; flex-direction:column; gap:6px; }
.filter-group-label { font-size:9px; font-weight:700; letter-spacing:1.2px; color:var(--text3); text-transform:uppercase; }
.filter-chips { display:flex; gap:5px; flex-wrap:wrap; }
.fchip { padding:4px 10px; background:var(--panel2); border:1px solid var(--border); border-radius:20px; font-size:11px; font-weight:500; color:var(--text2); cursor:pointer; transition:all .15s; user-select:none; }
.fchip:hover { border-color:var(--accent); }
.fchip.on { background:var(--ag); border-color:var(--accent); color:var(--accent); }

/* ── BULK ACTIONS BAR ── */
.bulk-bar { padding:8px 18px; background:var(--ag); border-bottom:1px solid var(--accent); display:none; align-items:center; gap:10px; flex-shrink:0; }
.bulk-bar.visible { display:flex; }
.bulk-count { font-size:12px; font-weight:600; color:var(--accent); font-family:'JetBrains Mono',monospace; }

/* ── KANBAN ── */
.kanban-wrap { flex:1; display:flex; flex-direction:column; overflow:hidden; }
.kanban-board { flex:1; display:flex; gap:12px; padding:14px 18px; overflow-x:auto; overflow-y:hidden; }
.k-col { flex-shrink:0; width:236px; display:flex; flex-direction:column; gap:8px; }
.col-head { display:flex; align-items:center; gap:7px; padding:8px 11px; background:var(--panel); border-radius:var(--r); border:1px solid var(--border); }
.col-dot { width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.col-title { font-size:12px; font-weight:700; color:var(--text); flex:1; }
.col-count { font-size:10px; font-family:'JetBrains Mono',monospace; color:var(--text3); background:var(--panel2); padding:1px 6px; border-radius:8px; }
.col-body { flex:1; display:flex; flex-direction:column; gap:7px; overflow-y:auto; padding-bottom:4px; min-height:50px; border-radius:var(--r2); transition:background .15s; }
.col-body.drag-over { background:var(--ag); }
.col-empty { text-align:center; padding:20px 12px; color:var(--text3); font-size:11px; border:1.5px dashed var(--border); border-radius:var(--r); }

.k-card { background:var(--panel); border:1px solid var(--border); border-radius:var(--r); padding:11px; cursor:grab; transition:all .15s; }
.k-card:hover { background:var(--panel2); border-color:rgba(45,125,210,0.3); transform:translateY(-1px); box-shadow:var(--shadow2); }
.k-card.dragging { opacity:.5; }
.k-card-name { font-size:11.5px; font-weight:600; color:var(--text); margin-bottom:6px; line-height:1.35; }
.k-card-row { display:flex; align-items:center; gap:5px; font-size:10.5px; color:var(--text2); margin-bottom:2px; }
.k-card-row svg { width:10px; height:10px; opacity:.6; flex-shrink:0; }
.k-tag { display:inline-block; padding:2px 7px; border-radius:4px; font-size:10px; font-weight:600; font-family:'JetBrains Mono',monospace; margin-top:7px; }
.k-footer { display:flex; align-items:center; justify-content:space-between; margin-top:8px; padding-top:8px; border-top:1px solid var(--border); }
.k-group { font-size:9.5px; font-family:'JetBrains Mono',monospace; color:var(--text3); background:var(--panel2); padding:2px 6px; border-radius:4px; }
.k-btns { display:flex; gap:4px; }
.k-btn { width:22px; height:22px; border-radius:5px; border:1px solid var(--border); background:var(--panel2); color:var(--text3); display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:10px; transition:all .15s; }
.k-btn:hover { border-color:var(--accent); color:var(--accent); }

/* DROP ZONES */
.drop-zone-bar { padding:0 18px 14px; display:flex; gap:8px; flex-shrink:0; }
.dz { flex:1; padding:9px 14px; border-radius:var(--r); border:1.5px dashed; display:flex; align-items:center; justify-content:center; gap:7px; font-size:11.5px; font-weight:600; opacity:.55; cursor:pointer; transition:all .2s; }
.dz:hover, .dz.drag-over { opacity:1; }
.dz.yellow { border-color:var(--yellow); color:var(--yellow); }
.dz.gray { border-color:var(--text3); color:var(--text3); }
.dz.red { border-color:var(--red); color:var(--red); }
.dz.green { border-color:var(--green); color:var(--green); }

/* ── LIST VIEW ── */
.list-wrap { flex:1; overflow-y:auto; padding:14px 18px; }
.list-table { width:100%; border-collapse:separate; border-spacing:0; }
.list-table th { font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--text3); padding:9px 12px; text-align:left; background:var(--panel); border-bottom:1px solid var(--border2); position:sticky; top:0; z-index:10; white-space:nowrap; }
.list-table th:first-child { border-radius:var(--r) 0 0 0; }
.list-table th:last-child { border-radius:0 var(--r) 0 0; }
.list-table td { padding:9px 12px; font-size:12px; color:var(--text2); border-bottom:1px solid var(--border); background:var(--panel); transition:background .1s; vertical-align:middle; }
.list-table tr:hover td { background:var(--panel2); }
.list-table tr.selected td { background:var(--ag); }
.list-table td.td-name { color:var(--text); font-weight:600; }

.stage-sel { background:var(--panel2); border:1px solid var(--border); border-radius:var(--r2); padding:4px 8px; font-size:11px; font-weight:600; color:var(--text); cursor:pointer; outline:none; transition:border-color .15s; }
.stage-sel:focus { border-color:var(--accent); }

.spill { display:inline-flex; align-items:center; padding:3px 8px; border-radius:20px; font-size:10px; font-weight:700; font-family:'JetBrains Mono',monospace; }
.sp-lead     { background:var(--ag); color:var(--accent); }
.sp-enviado  { background:var(--cg); color:var(--cyan); }
.sp-follow   { background:var(--yg); color:var(--yellow); }
.sp-reuniao  { background:var(--pg); color:var(--purple); }
.sp-fechado  { background:var(--gg); color:var(--green); }
.sp-perda    { background:var(--rg); color:var(--red); }
.sp-semint   { background:var(--yg); color:var(--yellow); }
.sp-semwpp   { background:rgba(100,100,100,0.15); color:var(--text3); }

/* ── DASHBOARD ── */
.dash-wrap { flex:1; overflow-y:auto; padding:14px 18px; }
.kpi-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:10px; margin-bottom:14px; }
.kpi { background:var(--panel); border:1px solid var(--border); border-radius:var(--r); padding:14px; }
.kpi-label { font-size:9px; font-weight:700; letter-spacing:1.2px; color:var(--text3); text-transform:uppercase; margin-bottom:7px; }
.kpi-val { font-size:26px; font-weight:700; font-family:'JetBrains Mono',monospace; line-height:1; margin-bottom:3px; }
.kpi-sub { font-size:10px; color:var(--text3); }
.kpi-bar { margin-top:8px; height:3px; background:var(--panel2); border-radius:2px; overflow:hidden; }
.kpi-fill { height:100%; border-radius:2px; transition:width .8s ease; }
.charts-grid { display:grid; grid-template-columns:2fr 1fr; gap:12px; }
.chart-box { background:var(--panel); border:1px solid var(--border); border-radius:var(--r); padding:14px; }
.chart-title { font-size:10px; font-weight:700; letter-spacing:1px; color:var(--text3); text-transform:uppercase; margin-bottom:14px; }
.funnel { display:flex; flex-direction:column; gap:9px; }
.f-row { display:flex; align-items:center; gap:10px; }
.f-lbl { font-size:11px; color:var(--text2); width:90px; flex-shrink:0; }
.f-track { flex:1; height:20px; background:var(--panel2); border-radius:4px; overflow:hidden; }
.f-fill { height:100%; border-radius:4px; display:flex; align-items:center; padding-left:8px; font-size:10px; font-family:'JetBrains Mono',monospace; font-weight:600; color:rgba(255,255,255,0.9); transition:width .8s ease; }
.f-pct { font-size:10px; font-family:'JetBrains Mono',monospace; color:var(--text3); width:36px; text-align:right; }
.nicho-list { display:flex; flex-direction:column; gap:7px; }
.nicho-row { display:flex; align-items:center; justify-content:space-between; padding:8px 10px; background:var(--panel2); border-radius:var(--r2); }
.nicho-name { font-size:12px; font-weight:500; color:var(--text); }
.nicho-num { font-size:11px; font-family:'JetBrains Mono',monospace; color:var(--text3); }

/* ── MARKETING ── */
.t-tag { padding:2px 8px; border-radius:4px; font-size:10px; font-weight:600; font-family:'JetBrains Mono',monospace; }
.t-reel       { background:var(--pg); color:var(--purple); }
.t-card       { background:var(--cg); color:var(--cyan); }
.t-carrossel  { background:var(--yg); color:var(--yellow); }
.t-deadline   { background:var(--rg); color:var(--red); font-family:'JetBrains Mono',monospace; font-size:10px; padding:2px 8px; border-radius:4px; }
.t-deadline.ok { background:var(--gg); color:var(--green); }

/* ── CALENDAR ── */
.cal-wrap { flex:1; overflow-y:auto; padding:14px 18px; }
.cal-header { display:flex; align-items:center; gap:12px; margin-bottom:14px; flex-wrap:wrap; }
.cal-nav { background:var(--panel); border:1px solid var(--border); border-radius:var(--r2); padding:6px 12px; color:var(--text2); cursor:pointer; font-size:14px; transition:all .15s; }
.cal-nav:hover { border-color:var(--accent); color:var(--accent); }
.cal-month-label { font-size:15px; font-weight:700; color:var(--text); min-width:140px; }
.cal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:1px; background:var(--border); border-radius:var(--r); overflow:hidden; }
.cal-day-head { background:var(--panel); padding:8px; text-align:center; font-size:10px; font-weight:700; letter-spacing:1px; color:var(--text3); text-transform:uppercase; }
.cal-day { background:var(--panel); min-height:90px; padding:8px; transition:background .1s; }
.cal-day.other { background:var(--bg2); }
.cal-day.today { background:var(--ag); }
.cal-date { font-size:11px; font-weight:700; color:var(--text3); margin-bottom:5px; }
.cal-day.today .cal-date { color:var(--accent); }
.cal-event { padding:2px 6px; border-radius:3px; font-size:10px; font-weight:500; margin-bottom:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; }
.ce-post   { background:var(--gg); color:var(--green); }
.ce-design { background:var(--pg); color:var(--purple); }
.ce-plan   { background:var(--cg); color:var(--cyan); }

/* ── PERF CARDS ── */
.perf-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; margin-bottom:14px; }
.perf-card { background:var(--panel); border:1px solid var(--border); border-radius:var(--r); padding:14px; }
.perf-head { display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.perf-av { width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; color:#fff; flex-shrink:0; }
.perf-name { font-size:12px; font-weight:600; color:var(--text); }
.perf-role { font-size:10px; color:var(--text3); }
.perf-stat { display:flex; justify-content:space-between; align-items:center; padding:6px 0; border-bottom:1px solid var(--border); font-size:11px; }
.perf-stat:last-child { border-bottom:none; }
.ps-label { color:var(--text2); }
.ps-val { font-family:'JetBrains Mono',monospace; font-weight:600; }

/* ── MODAL ── */
.modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.7); display:flex; align-items:center; justify-content:center; z-index:1000; backdrop-filter:blur(4px); }
.modal-box { background:var(--panel); border:1px solid var(--border2); border-radius:var(--r); width:90%; max-width:520px; max-height:85vh; display:flex; flex-direction:column; box-shadow:var(--shadow); }
.modal-head { display:flex; align-items:center; justify-content:space-between; padding:16px 20px; border-bottom:1px solid var(--border); }
.modal-title { font-size:14px; font-weight:700; color:var(--text); }
.modal-close { background:none; border:none; color:var(--text3); font-size:16px; cursor:pointer; transition:color .15s; padding:2px 6px; }
.modal-close:hover { color:var(--red); }
.modal-body { flex:1; overflow-y:auto; padding:20px; display:flex; flex-direction:column; gap:14px; }
.modal-footer { padding:14px 20px; border-top:1px solid var(--border); display:flex; gap:8px; justify-content:flex-end; }

/* ── TOAST ── */
#toast-container { position:fixed; bottom:20px; right:20px; display:flex; flex-direction:column; gap:8px; z-index:2000; }
.toast { padding:12px 16px; border-radius:var(--r); font-size:12px; font-weight:500; box-shadow:var(--shadow); animation:slideIn .2s ease; display:flex; align-items:center; gap:8px; min-width:240px; }
.toast.success { background:var(--gg); color:var(--green); border:1px solid var(--green); }
.toast.error { background:var(--rg); color:var(--red); border:1px solid var(--red); }
.toast.info { background:var(--ag); color:var(--accent); border:1px solid var(--accent); }
@keyframes slideIn { from { transform:translateX(100%); opacity:0; } to { transform:translateX(0); opacity:1; } }

/* ── PANEL ── */
.panel { background:var(--panel); border:1px solid var(--border); border-radius:var(--r); padding:16px; }
.panel-title { font-size:11px; font-weight:700; letter-spacing:.5px; color:var(--text2); text-transform:uppercase; margin-bottom:12px; }

/* ── FORM GRID ── */
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.form-grid .field.full { grid-column:1/-1; }
