/* ═══════════════════════════════════════════════════════════════
   KobirajSuite Intel DB — BeenVerified Light Theme
═══════════════════════════════════════════════════════════════ */
:root {
  --bg:         #f4f6f9;
  --surface:    #ffffff;
  --s2:         #f0f4f8;
  --s3:         #e8edf3;
  --border:     #dde3eb;
  --border2:    #c8d3de;
  --accent:     #16a34a;
  --accent2:    #15803d;
  --accent-dim: rgba(22,163,74,.09);
  --accent-lt:  rgba(22,163,74,.06);
  --purple:     #4338ca;
  --purple-dim: rgba(67,56,202,.08);
  --info:       #2563eb;
  --info-dim:   rgba(37,99,235,.08);
  --warn:       #d97706;
  --warn-dim:   rgba(217,119,6,.1);
  --danger:     #dc2626;
  --danger-dim: rgba(220,38,38,.08);
  --live:       #16a34a;
  --live-dim:   rgba(22,163,74,.09);
  --text:       #0f172a;
  --text2:      #334155;
  --muted:      #64748b;
  --muted2:     #94a3b8;
  --shadow:     0 1px 4px rgba(15,23,42,.08), 0 4px 16px rgba(15,23,42,.04);
  --shadow-sm:  0 1px 3px rgba(15,23,42,.06);
  --mono:       'Courier New', Consolas, monospace;
}
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0 }
html { scroll-behavior:smooth }
body { background:var(--bg); color:var(--text); font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif; font-size:14px; min-height:100vh; line-height:1.55 }

/* ── TOPNAV ── */
.topnav {
  position:sticky; top:0; z-index:200;
  background:#ffffff; border-bottom:1px solid var(--border);
  box-shadow:var(--shadow-sm);
  height:58px; display:flex; align-items:center; padding:0 28px; gap:18px;
}
.tn-logo { display:flex; align-items:center; gap:9px; cursor:pointer; text-decoration:none }
.tn-icon { width:34px; height:34px; background:var(--accent); border-radius:8px; display:flex; align-items:center; justify-content:center; flex-shrink:0; box-shadow:0 2px 8px rgba(22,163,74,.3) }
.tn-icon i { font-size:16px; color:#fff }
.tn-name { font-size:16px; font-weight:800; color:var(--text) }
.tn-name span { color:var(--accent) }
.tn-badge { font-size:9px; font-weight:700; background:var(--accent-dim); color:var(--accent); border:1px solid rgba(22,163,74,.25); padding:2px 7px; border-radius:20px }
.tn-sep { height:22px; width:1px; background:var(--border) }
.tn-links { display:flex; gap:2px }
.tn-link { padding:6px 12px; border-radius:6px; font-size:13px; font-weight:600; color:var(--muted); cursor:pointer; transition:all .14s; text-decoration:none; display:inline-flex; align-items:center; gap:5px }
.tn-link:hover { color:var(--text); background:var(--s2) }
.tn-link.active { color:var(--accent); background:var(--accent-dim) }
.tn-gap { flex:1 }
.tn-status { display:flex; align-items:center; gap:5px; font-size:11.5px; color:var(--muted); background:var(--s2); border:1px solid var(--border); padding:4px 10px; border-radius:20px }
.sdot { width:7px; height:7px; border-radius:50%; background:#22c55e; flex-shrink:0 }
.sdot.dead { background:var(--danger) }
.tn-plan { font-size:10px; font-weight:800; background:var(--accent); color:#fff; padding:3px 9px; border-radius:20px; letter-spacing:.3px }

/* ── HERO ── */
.hero {
  background:linear-gradient(135deg,#ffffff 0%,#f0f9f4 50%,#ffffff 100%);
  border-bottom:1px solid var(--border);
  padding:56px 28px 48px; text-align:center; position:relative; overflow:hidden;
  transition:padding .3s;
}
.hero::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 60% 40%, rgba(22,163,74,.06) 0%, transparent 60%);
  pointer-events:none;
}
.hero-eyebrow { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--accent); margin-bottom:14px; display:flex; align-items:center; justify-content:center; gap:7px }
.hero-title { font-size:clamp(28px,4.5vw,44px); font-weight:900; line-height:1.1; margin-bottom:10px; color:var(--text) }
.hero-title span { color:var(--purple) }
.hero-sub { font-size:15px; color:var(--muted); max-width:560px; margin:0 auto 30px; line-height:1.6 }

/* ── SEARCH BOX ── */
.search-box-wrap { max-width:640px; margin:0 auto 14px }
.search-type-tabs { display:flex; background:#fff; border:1px solid var(--border); border-radius:10px 10px 0 0; padding:5px; gap:3px; box-shadow:var(--shadow-sm) }
.st-tab { flex:1; padding:8px 4px; text-align:center; cursor:pointer; border-radius:6px; font-size:12.5px; font-weight:600; color:var(--muted); transition:all .14s; display:flex; align-items:center; justify-content:center; gap:5px }
.st-tab:hover { color:var(--text2); background:var(--s2) }
.st-tab.active { background:var(--accent); color:#fff; box-shadow:0 2px 8px rgba(22,163,74,.3) }
.search-row {
  display:flex; background:#fff; border:1px solid var(--border2); border-top:none;
  border-radius:0 0 10px 10px; overflow:hidden; box-shadow:var(--shadow);
}
.search-input {
  flex:1; background:none; border:none; outline:none; padding:14px 18px;
  font-size:16px; color:var(--text); font-family:inherit;
}
.search-input::placeholder { color:var(--muted2); font-size:15px }
.search-btn {
  background:var(--accent); border:none; color:#fff; padding:0 28px;
  font-size:15px; font-weight:700; cursor:pointer; display:flex; align-items:center; gap:8px;
  transition:background .14s; white-space:nowrap; font-family:inherit;
}
.search-btn:hover { background:var(--accent2) }
.search-hints { display:flex; gap:6px; justify-content:center; flex-wrap:wrap; margin-top:0 }
.s-hint { font-size:11px; color:var(--muted); background:#fff; border:1px solid var(--border); padding:4px 10px; border-radius:20px; cursor:pointer; transition:all .14s }
.s-hint:hover { color:var(--accent); border-color:var(--accent) }

/* ── TRUST BAR ── */
.trust-bar { display:flex; align-items:center; justify-content:center; gap:20px; padding:10px 0 0; flex-wrap:wrap }
.trust-item { display:flex; align-items:center; gap:5px; font-size:11.5px; color:var(--muted); font-weight:500 }
.trust-item i { color:var(--accent); font-size:12px }

/* ── STATS BAR ── */
.statsbar { background:#fff; border-bottom:1px solid var(--border); padding:14px 28px; box-shadow:var(--shadow-sm) }
.statsbar-inner { max-width:1100px; margin:0 auto; display:flex; align-items:center; flex-wrap:wrap }
.sb-item { display:flex; align-items:center; gap:9px; padding:5px 22px; border-right:1px solid var(--border) }
.sb-item:first-child { padding-left:0 }
.sb-item:last-child { border-right:none }
.sb-ico { width:30px; height:30px; border-radius:7px; display:flex; align-items:center; justify-content:center; font-size:13px; flex-shrink:0 }
.sb-n { font-size:16px; font-weight:800; color:var(--text); font-family:var(--mono) }
.sb-l { font-size:10px; color:var(--muted); font-weight:600; text-transform:uppercase; letter-spacing:.7px }

/* ── PAGE INNER ── */
.page-inner { max-width:1100px; margin:0 auto; padding:28px }

/* ── BUTTONS ── */
.btn {
  display:inline-flex; align-items:center; gap:6px; padding:8px 16px;
  border-radius:7px; font-size:13px; font-weight:600; cursor:pointer;
  border:1px solid var(--border); background:#fff; color:var(--text2);
  transition:all .14s; font-family:inherit; white-space:nowrap; box-shadow:var(--shadow-sm);
}
.btn:hover { border-color:var(--accent); color:var(--accent); background:var(--accent-lt) }
.btn.primary { background:var(--accent); color:#fff; border-color:var(--accent); box-shadow:0 2px 8px rgba(22,163,74,.25) }
.btn.primary:hover { background:var(--accent2) }
.btn.sm { padding:5px 11px; font-size:12px; box-shadow:none }
.btn.xs { padding:3px 8px; font-size:11px; box-shadow:none }

/* ── TAGS ── */
.tag { display:inline-flex; align-items:center; gap:3px; font-size:10px; font-weight:700; padding:2px 7px; border-radius:4px; letter-spacing:.2px; text-transform:uppercase; white-space:nowrap }
.tag.green  { background:var(--live-dim);    color:var(--accent)  }
.tag.blue   { background:var(--info-dim);    color:var(--info)    }
.tag.red    { background:var(--danger-dim);  color:var(--danger)  }
.tag.yellow { background:var(--warn-dim);    color:var(--warn)    }
.tag.purple { background:var(--purple-dim);  color:var(--purple)  }
.tag.gray   { background:var(--s3);          color:var(--muted)   }
.tag.orange { background:rgba(234,88,12,.08);color:#ea580c        }

/* ── CARD ── */
.card { background:#fff; border:1px solid var(--border); border-radius:10px; margin-bottom:14px; overflow:hidden; box-shadow:var(--shadow-sm) }
.card-head { display:flex; align-items:center; gap:8px; padding:11px 16px; border-bottom:1px solid var(--border); background:var(--s2); font-size:12px; font-weight:700; color:var(--text) }
.card-head i { color:var(--accent); font-size:13px }
.card-body { padding:16px }

/* ── RESULT CARD ── */
.result-card { background:#fff; border:1px solid var(--border); border-radius:10px; margin-bottom:12px; overflow:hidden; box-shadow:var(--shadow-sm); transition:box-shadow .14s,border-color .14s }
.result-card:hover { border-color:var(--accent); box-shadow:0 4px 20px rgba(22,163,74,.1) }
.rc-head { display:flex; align-items:center; gap:13px; padding:14px 18px; border-bottom:1px solid var(--border); background:var(--s2) }
.rc-avatar { width:40px; height:40px; border-radius:10px; background:var(--accent-dim); border:1px solid rgba(22,163,74,.2); display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; font-weight:800; color:var(--accent) }
.rc-name { font-size:14px; font-weight:700; color:var(--text) }
.rc-email { font-size:12px; color:var(--muted); margin-top:1px; font-family:var(--mono) }
.rc-tags { display:flex; gap:5px; margin-left:auto; flex-wrap:wrap; justify-content:flex-end }
.rc-body { padding:14px 18px }
.rc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px }
.rc-field { display:flex; flex-direction:column; gap:3px }
.rc-fl { font-size:9.5px; text-transform:uppercase; letter-spacing:.9px; font-weight:700; color:var(--muted2) }
.rc-fv { font-size:12.5px; color:var(--text2); font-family:var(--mono); word-break:break-all }
.rc-fv.blur { filter:blur(5px); pointer-events:none; user-select:none; transition:filter .2s }
.rc-footer { display:flex; align-items:center; padding:9px 18px; border-top:1px solid var(--border); gap:6px; background:var(--s2) }
.rc-source { font-size:10px; color:var(--muted); display:flex; align-items:center; gap:4px }

/* ── PROFILE CARD ── */
.profile-card { background:#fff; border:1px solid var(--border); border-radius:10px; margin-bottom:12px; overflow:hidden; box-shadow:var(--shadow-sm); transition:box-shadow .14s,border-color .14s }
.profile-card:hover { border-color:var(--accent); box-shadow:0 4px 20px rgba(22,163,74,.1) }
.pc-head { display:flex; align-items:center; gap:13px; padding:14px 18px; border-bottom:1px solid var(--border); background:var(--s2) }
.pc-avatar { width:40px; height:40px; border-radius:10px; background:var(--accent-dim); border:1px solid rgba(22,163,74,.2); display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; font-weight:800; color:var(--accent) }
.pc-email { font-size:14px; font-weight:700; color:var(--text) }
.pc-user  { font-size:12px; color:var(--muted); margin-top:1px; font-family:var(--mono) }
.pc-score { margin-left:auto; display:flex; align-items:center; gap:5px; flex-shrink:0 }
.pc-score-badge { font-size:15px; font-weight:900; font-family:var(--mono); padding:4px 10px; border-radius:20px; min-width:46px; text-align:center }
.pc-score-badge.hi  { background:#dcfce7; color:#16a34a }
.pc-score-badge.mid { background:#fef3c7; color:#d97706 }
.pc-score-badge.lo  { background:var(--s3); color:var(--muted) }
.pc-meta { display:flex; gap:16px; flex-wrap:wrap; padding:8px 18px; background:var(--accent-lt); border-bottom:1px solid var(--border); font-size:11.5px; color:var(--text2) }
.pc-meta-item { display:flex; align-items:center; gap:5px }
.pc-meta-item i { color:var(--muted); font-size:10px }
.pc-counts { display:flex; gap:7px; flex-wrap:wrap; padding:10px 18px 12px; border-bottom:1px solid var(--border) }
.pc-cnt { display:flex; align-items:center; gap:4px; background:var(--s2); border:1px solid var(--border); border-radius:20px; padding:3px 9px; font-size:11px; font-weight:700; color:var(--text2); cursor:pointer; transition:all .12s }
.pc-cnt:hover { border-color:var(--accent); color:var(--accent) }
.pc-cnt.active { background:var(--accent-dim); border-color:rgba(22,163,74,.3); color:var(--accent) }
.pc-cnt span { font-family:var(--mono); margin-left:2px }
.pc-section { border-top:1px solid var(--border) }
.pc-sh { display:flex; align-items:center; gap:8px; padding:9px 18px; cursor:pointer; font-size:12px; font-weight:700; color:var(--text2); user-select:none; transition:background .12s }
.pc-sh:hover { background:var(--s2) }
.pc-sh i.pc-arr { margin-left:auto; color:var(--muted2); transition:transform .2s; font-size:10px }
.pc-sh.open i.pc-arr { transform:rotate(180deg) }
.pc-content { display:none; overflow-x:auto }
.pc-content.open { display:block }
.pc-tbl { width:100%; border-collapse:collapse; font-size:12px; min-width:400px }
.pc-tbl th { padding:7px 14px; text-align:left; font-size:9.5px; text-transform:uppercase; letter-spacing:.8px; font-weight:700; color:var(--muted); border-bottom:1px solid var(--border); background:var(--s2); white-space:nowrap }
.pc-tbl td { padding:7px 14px; border-bottom:1px solid var(--border); color:var(--text2); vertical-align:middle; font-family:var(--mono); font-size:11.5px; word-break:break-all; max-width:220px; overflow:hidden; text-overflow:ellipsis }
.pc-tbl tr:last-child td { border-bottom:none }
.pc-tbl tr:hover td { background:var(--accent-lt) }
.pc-pwd { filter:blur(5px); cursor:pointer; transition:filter .18s }
.pc-pwd.revealed { filter:none }
.pc-footer { display:flex; align-items:center; padding:9px 18px; border-top:1px solid var(--border); gap:6px; background:var(--s2) }

/* ── RESULTS LAYOUT ── */
.results-layout { display:grid; grid-template-columns:250px 1fr; gap:18px }
@media(max-width:800px){ .results-layout { grid-template-columns:1fr } }

/* ── FILTERS SIDEBAR ── */
.filters { background:#fff; border:1px solid var(--border); border-radius:10px; overflow:hidden; align-self:start; position:sticky; top:74px; box-shadow:var(--shadow-sm) }
.filt-head { padding:12px 16px; border-bottom:1px solid var(--border); font-size:12px; font-weight:700; color:var(--text); background:var(--s2); display:flex; align-items:center; gap:7px }
.filt-section { padding:12px 16px; border-bottom:1px solid var(--border) }
.filt-section:last-child { border-bottom:none }
.filt-lbl { font-size:10px; text-transform:uppercase; letter-spacing:.9px; font-weight:700; color:var(--muted); margin-bottom:8px; display:block }
.filt-opt { display:flex; align-items:center; gap:8px; padding:4px 0; cursor:pointer; font-size:13px; color:var(--text2) }
.filt-opt:hover { color:var(--text) }
.filt-opt input[type=checkbox] { accent-color:var(--accent); cursor:pointer; width:14px; height:14px }
.filt-cnt { margin-left:auto; font-size:11px; color:var(--muted2); font-family:var(--mono) }
.filt-input { background:var(--s2); border:1px solid var(--border); border-radius:6px; padding:6px 10px; color:var(--text); font-size:12.5px; font-family:var(--mono); outline:none; width:100%; transition:border .14s }
.filt-input:focus { border-color:var(--accent) }
.filt-input::placeholder { color:var(--muted2) }

/* ── MINI CARD ── */
.mini-card { background:#fff; border:1px solid var(--border); border-radius:9px; padding:14px; cursor:pointer; transition:all .15s; box-shadow:var(--shadow-sm) }
.mini-card:hover { border-color:var(--accent); box-shadow:0 4px 16px rgba(22,163,74,.12); transform:translateY(-1px) }
.mc-icon { font-size:24px; margin-bottom:7px }
.mc-title { font-size:13px; font-weight:700; color:var(--text); margin-bottom:2px }
.mc-sub { font-size:11px; color:var(--muted) }
.card-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:10px }

/* ── BROWSE CARD ── */
.browse-card { background:#fff; border:1px solid var(--border); border-radius:10px; padding:20px 16px; cursor:pointer; transition:all .15s; text-align:center; box-shadow:var(--shadow-sm) }
.browse-card:hover { border-color:var(--accent); transform:translateY(-3px); box-shadow:0 8px 24px rgba(22,163,74,.14) }
.bc-icon { font-size:30px; margin-bottom:11px }
.bc-title { font-size:13.5px; font-weight:700; color:var(--text); margin-bottom:4px }
.bc-count { font-size:12px; color:var(--muted) }
.bc-tags { display:flex; gap:4px; justify-content:center; flex-wrap:wrap; margin-top:10px }
.browse-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px }

/* ── TABS ── */
.tabs { display:flex; gap:0; border-bottom:2px solid var(--border); margin-bottom:18px; flex-wrap:wrap }
.tab-btn { padding:9px 16px; cursor:pointer; font-size:13px; font-weight:600; color:var(--muted); border:none; border-bottom:2px solid transparent; background:none; font-family:inherit; margin-bottom:-2px; transition:all .14s; white-space:nowrap }
.tab-btn:hover { color:var(--text2) }
.tab-btn.active { color:var(--accent); border-bottom-color:var(--accent) }
.tab-panel { display:none }
.tab-panel.active { display:block }

/* ── LOADING / EMPTY ── */
.loading { display:flex; align-items:center; justify-content:center; gap:10px; padding:50px; color:var(--muted) }
.spin { width:26px; height:26px; border:3px solid var(--border); border-top-color:var(--accent); border-radius:50%; animation:spin .8s linear infinite; flex-shrink:0 }
@keyframes spin { to { transform:rotate(360deg) } }
.empty { text-align:center; padding:60px 20px }
.empty-icon { font-size:42px; opacity:.15; margin-bottom:14px; color:var(--accent) }
.empty-title { font-size:15px; font-weight:700; color:var(--text2); margin-bottom:7px }
.empty-sub { font-size:13px; color:var(--muted) }

/* ── EXPORT ── */
.export-item { background:#fff; border:1px solid var(--border); border-radius:9px; padding:14px 18px; display:flex; align-items:center; gap:14px; margin-bottom:9px; cursor:pointer; transition:all .14s; box-shadow:var(--shadow-sm) }
.export-item:hover { border-color:var(--accent); box-shadow:0 4px 14px rgba(22,163,74,.1) }
.ex-icon { width:38px; height:38px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0 }
.ex-title { font-size:13.5px; font-weight:700; color:var(--text) }
.ex-sub { font-size:12px; color:var(--muted) }

/* ── FORM ── */
.fg { display:flex; flex-direction:column; gap:5px; margin-bottom:14px }
.flbl { font-size:10.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.7px; font-weight:700 }
.finput { background:#fff; border:1px solid var(--border); border-radius:6px; padding:9px 12px; color:var(--text); font-size:13.5px; font-family:inherit; outline:none; width:100%; transition:border .14s; box-shadow:var(--shadow-sm) }
.finput:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(22,163,74,.12) }
.finput::placeholder { color:var(--muted2) }

/* ── GRID ── */
.g2 { display:grid; grid-template-columns:1fr 1fr; gap:18px }

/* ── BAR CHART ── */
.bar-row { margin-bottom:12px }
.bar-meta { display:flex; justify-content:space-between; font-size:12px; margin-bottom:4px }
.bar-meta-l { color:var(--text2); font-weight:500 }
.bar-meta-r { font-family:var(--mono); color:var(--text); font-weight:700 }
.bar-track { height:6px; background:var(--s3); border-radius:3px; overflow:hidden }
.bar-fill { height:100%; border-radius:3px; transition:width .7s }

/* ── DIVIDER ── */
.sec-div { display:flex; align-items:center; gap:12px; margin:0 0 18px }
.sec-div-line { flex:1; height:1px; background:var(--border) }
.sec-div-txt { font-size:11px; color:var(--muted); font-weight:700; letter-spacing:1px; text-transform:uppercase }

/* ── LOGIN MODAL ── */
#login-modal { display:none; position:fixed; inset:0; background:rgba(15,23,42,.55); z-index:1000; align-items:center; justify-content:center }
#login-modal.open { display:flex }
.login-box { background:#fff; border:1px solid var(--border); border-radius:12px; width:400px; overflow:hidden; box-shadow:0 20px 60px rgba(15,23,42,.18) }
.login-head { padding:24px 24px 18px; text-align:center; border-bottom:1px solid var(--border); background:var(--s2) }
.login-logo { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:12px }
.login-head h2 { font-size:17px; font-weight:800; color:var(--text) }
.login-head p { font-size:12.5px; color:var(--muted); margin-top:5px }
.login-body { padding:22px }

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

/* ═══════════════════════ ADMIN / PANEL CSS ═══════════════════════ */
.page-wrap { max-width:1100px; margin:0 auto; padding:28px }
.ph { margin-bottom:24px }
.ph h2 { font-size:20px; font-weight:800; color:var(--text); margin-bottom:4px }
.ph p  { font-size:13px; color:var(--muted) }
.ph .ph-ico { color:var(--accent) }

/* stat grid */
.adm-stats { display:grid; grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); gap:11px; margin-bottom:20px }
.adm-s { background:#fff; border:1px solid var(--border); border-radius:10px; padding:18px 14px; text-align:center; box-shadow:var(--shadow-sm) }
.adm-s-val { font-size:26px; font-weight:900; font-family:var(--mono); color:var(--accent) }
.adm-s-lbl { font-size:10px; color:var(--muted); text-transform:uppercase; letter-spacing:.7px; font-weight:700; margin-top:5px }

/* sections */
.adm-sec { background:#fff; border:1px solid var(--border); border-radius:10px; margin-bottom:18px; overflow:hidden; box-shadow:var(--shadow-sm) }
.adm-sh { padding:13px 18px; border-bottom:1px solid var(--border); display:flex; align-items:center; gap:10px; background:var(--s2) }
.adm-sh-t { font-size:13px; font-weight:800; color:var(--text); flex:1 }
.adm-sb { padding:0 }

/* admin table */
.adm-tbl { width:100%; border-collapse:collapse; font-size:12.5px }
.adm-tbl th { padding:9px 14px; text-align:left; font-size:10px; text-transform:uppercase; letter-spacing:.7px; font-weight:700; color:var(--muted); border-bottom:1px solid var(--border); background:var(--s2); white-space:nowrap }
.adm-tbl td { padding:9px 14px; border-bottom:1px solid var(--border); color:var(--text2); vertical-align:middle }
.adm-tbl tr:last-child td { border-bottom:none }
.adm-tbl tbody tr:hover td { background:var(--accent-lt) }
.mn { font-family:var(--mono); font-size:11.5px }

/* form inline */
.form-row { display:flex; gap:8px; align-items:center; flex-wrap:wrap; padding:14px 18px; border-bottom:1px solid var(--border) }
.form-row input[type=text],.form-row input[type=password] { flex:1; min-width:140px; background:var(--s2); border:1px solid var(--border); border-radius:6px; padding:7px 10px; font-size:13px; color:var(--text); font-family:inherit; outline:none; transition:border .14s }
.form-row input:focus { border-color:var(--accent) }
.form-row label { display:flex; align-items:center; gap:5px; font-size:13px; color:var(--text2); cursor:pointer; white-space:nowrap }
.form-row input[type=checkbox] { accent-color:var(--accent); cursor:pointer; width:15px; height:15px }

/* key display box */
.key-box { background:var(--accent-dim); border:1px solid rgba(22,163,74,.25); border-radius:8px; padding:12px 16px; display:flex; align-items:center; gap:10px; margin:12px 18px; flex-wrap:wrap }
.key-box code { flex:1; font-family:var(--mono); font-size:13px; color:var(--accent); word-break:break-all }

/* panel user card */
.user-card { background:linear-gradient(135deg,var(--accent) 0%,var(--accent2) 100%); border-radius:10px; padding:22px 24px; color:#fff; margin-bottom:20px; display:flex; align-items:center; gap:18px }
.uc-avatar { width:54px; height:54px; border-radius:14px; background:rgba(255,255,255,.2); display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0 }
.uc-name { font-size:17px; font-weight:800 }
.uc-role { font-size:12px; opacity:.8; margin-top:2px }

/* quick push */
.qtextarea { width:100%; background:var(--s2); border:1px solid var(--border); border-radius:7px; padding:10px 12px; font-size:12.5px; font-family:var(--mono); color:var(--text); outline:none; resize:vertical; transition:border .14s; min-height:100px }
.qtextarea:focus { border-color:var(--accent) }

/* ═══════════════════════ PARSER CSS ═══════════════════════ */
.upload-zone { border:2px dashed var(--border2); border-radius:12px; background:var(--s2); text-align:center; padding:52px 24px; cursor:pointer; transition:all .2s; margin-bottom:20px }
.upload-zone:hover,.upload-zone.drag { border-color:var(--accent); background:var(--accent-lt) }
.uz-ico { font-size:42px; color:var(--accent); margin-bottom:14px; opacity:.7 }
.uz-title { font-size:15px; font-weight:800; color:var(--text); margin-bottom:6px }
.uz-sub { font-size:12.5px; color:var(--muted); margin-bottom:16px }

.parse-prog { background:#fff; border:1px solid var(--border); border-radius:10px; padding:20px; margin-bottom:18px; box-shadow:var(--shadow-sm) }
.pp-stage { font-size:13.5px; font-weight:700; color:var(--text); margin-bottom:12px }
.pp-bar-wrap { height:8px; background:var(--s3); border-radius:4px; overflow:hidden; margin-bottom:10px }
.pp-bar { height:100%; background:linear-gradient(90deg,var(--accent),#22c55e); border-radius:4px; width:0%; transition:width .4s; animation:indeterminate 1.4s ease-in-out infinite }
@keyframes indeterminate { 0%{background-position:-200% 0} 100%{background-position:200% 0} }
.pp-bar.indeterminate { background:linear-gradient(90deg,var(--accent) 30%,#22c55e 50%,var(--accent) 70%); background-size:200% 100%; width:100% }
.pp-counts { display:flex; gap:18px; flex-wrap:wrap; font-size:12px; color:var(--muted) }
.pp-c { display:flex; align-items:center; gap:5px }
.pp-c strong { color:var(--text); font-family:var(--mono) }

.parse-results { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; margin-bottom:22px }
.pr-card { background:#fff; border:1px solid var(--border); border-radius:10px; padding:20px 14px; text-align:center; box-shadow:var(--shadow-sm) }
.pr-val { font-size:28px; font-weight:900; font-family:var(--mono) }
.pr-lbl { font-size:10.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.7px; font-weight:700; margin-top:5px }

.parse-hist-row { display:flex; align-items:center; gap:14px; padding:11px 16px; border-bottom:1px solid var(--border) }
.parse-hist-row:last-child { border-bottom:none }
.ph-ico2 { width:34px; height:34px; border-radius:8px; background:var(--accent-dim); color:var(--accent); display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0 }
.ph-fname { font-size:13px; font-weight:700; color:var(--text) }
.ph-meta { font-size:11px; color:var(--muted); margin-top:2px }

/* panel login */
.panel-login { max-width:440px; margin:60px auto; background:#fff; border:1px solid var(--border); border-radius:12px; overflow:hidden; box-shadow:var(--shadow) }
.pl-head { padding:28px; text-align:center; background:var(--s2); border-bottom:1px solid var(--border) }
.pl-head h3 { font-size:17px; font-weight:800; margin-bottom:5px }
.pl-head p { font-size:12.5px; color:var(--muted) }
.pl-body { padding:22px }
.pl-body .finput { margin-bottom:12px }

/* ── TABLE SCROLL WRAPPER ── */
.tbl-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; border-radius:8px; border:1px solid var(--border) }

/* ════════════════════════════════════════════════════
   MOBILE RESPONSIVE  (≤ 860px)
════════════════════════════════════════════════════ */
@media(max-width:860px){
  /* Page padding */
  .page-inner, .page-wrap { padding:16px 12px }

  /* 2-col grid → single col */
  .g2 { grid-template-columns:1fr }

  /* Topnav: hide non-essential items to prevent overflow */
  .topnav { padding:0 10px; gap:6px }
  .tn-badge { display:none }
  .tn-sep  { display:none }
  .tn-gap  { display:none }
  .tn-status { display:none }
  #user-email { display:none }

  /* Card padding */
  .card-head { padding:10px 14px; font-size:13px }

  /* Stats bar: wrap items */
  .statsbar { padding:10px 12px }
  .statsbar-inner { gap:8px }
  .stat-item { min-width:90px }
}

/* ════════════════════════════════════════════════════
   NARROW MOBILE (≤ 480px)
════════════════════════════════════════════════════ */
@media(max-width:480px){
  .page-inner, .page-wrap { padding:12px 8px }

  /* Filters sidebar always collapses */
  .results-layout { grid-template-columns:1fr }
  .filters { position:static }

  /* Browse/card grids */
  .card-grid, .browse-grid { grid-template-columns:repeat(auto-fill,minmax(140px,1fr)) }

  /* Login box */
  .panel-login { margin:20px auto }
}
