/* ─── RESET ─────────────────────────────────────────────────── */
*{margin:0;padding:0;box-sizing:border-box}
*,*::before,*::after{font-family:'Manrope',sans-serif}

/* ─── DESIGN TOKENS ─────────────────────────────────────────── */
:root{
  /* Core palette */
  --w:#ffffff;
  --off:#f9fafb;
  --off2:#f3f4f6;
  --b:#e5e7eb;
  --b2:#d1d5db;
  --t:#1f2937;
  --t2:#374151;
  --t3:#6b7280;
  --acc:#667eea;
  --acc-bg:#eef0fd;
  --grn:#16a34a;--grn-bg:#d1fae5;--grn-text:#065f46;
  --red:#dc2626;--red-bg:#fee2e2;--red-text:#991b1b;
  --org:#ea580c;--org-bg:#fff7ed;
  --pur:#7c3aed;--pur-bg:#f5f3ff;
  --sans:'Manrope',sans-serif;
  --mono:'Manrope',sans-serif;
  --serif:'Manrope',sans-serif;
  /* Semantic aliases */
  --primary:var(--acc);
  --primary-600:#4f62d8;
  --surface:var(--w);
  --surface2:var(--off);
  --text:var(--t);
  --muted:var(--t3);
  --border:var(--b);
  /* Shadows */
  --sh-sm:0;
  --sh-md:0;
  --sh-lg:0;
  --sh-acc:0;
  --sh-acc-lg:0;
  /* Radii */
  --radius:7px;
  --radius-sm:7px;
  --radius-md:7px;
  --radius-lg:7px;
  /* Spacing */
  --gap-1:6px;
  --gap-2:12px;
  --gap-3:20px;
  /* Transition */
  --tr:.15s cubic-bezier(.4,0,.2,1);
  /* Typography scale — 9 steps */
  --fs-xs:  12px;
  --fs-sm:  12px;
  --fs-cap: 12px;
  --fs-base:12px;
  --fs-md:  14px;
  --fs-lg:  15px;
  --fs-xl:  14px;
  --fs-2xl: 22px;
  --fs-3xl: 26px;
  --fw-regular:500;
  --fw-medium:600;
  --fw-semibold:650;
  --fw-bold:700;
  /* Button sizing — 3 tiers */
  --btn-h-sm:34px;  --btn-px-sm:12px;
  --btn-h:   36px;  --btn-px:   14px;
  --btn-h-lg:36px;  --btn-px-lg:14px;
  --btn-min-w:104px;
  --btn-icon:36px;
  --ui-gap:14px;
  --ui-gap-sm:10px;
  --ui-pad:14px;
  --ui-pad-lg:18px;
  --ui-head-h:48px;
  --ui-source-icon:18px;
  --ui-chip-h:26px;
}
[data-theme="dark"]{
  --w:#1e2028;--off:#252830;--off2:#2d3040;--b:#373b4d;--b2:#464c63;
  --t:#f9fafb;--t2:#d1d5db;--t3:#9ca3af;
  --acc:#818cf8;--acc-bg:#1e2050;--primary:#818cf8;
  --grn:#22c55e;--grn-bg:#052e16;--grn-text:#bbf7d0;
  --red:#f87171;--red-bg:#450a0a;--red-text:#fca5a5;
  --org:#fb923c;--org-bg:#431407;
  --pur:#a78bfa;--pur-bg:#2e1065;
}

/* ─── BASE ──────────────────────────────────────────────────── */
html,body{height:100%;font-family:var(--sans);background:#f0f2f5 !important;background-image:radial-gradient(#c8cdd680 1.2px,transparent 1.2px) !important;background-size:22px 22px !important;color:var(--t);font-size:var(--fs-lg);line-height:1.5}
[data-theme="dark"] body{background:#16171c !important;background-image:radial-gradient(#ffffff0a 1.2px,transparent 1.2px) !important;background-size:22px 22px !important}
b,strong{font-weight:600}
h4{font-size:var(--fs-md);color:var(--t);font-weight:600}
.app{display:flex;height:100vh;overflow:hidden;background:transparent}

/* Focus-visible accessibility ring */
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:3px}
button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--acc);outline-offset:2px}

/* ─── SIDEBAR ───────────────────────────────────────────────── */
.sidebar{
  width:286px;flex-shrink:0;
  background:linear-gradient(180deg,var(--w) 0%,var(--off) 100%);
  border-right:1px solid var(--b);
  box-shadow:none;
  display:flex;flex-direction:column;overflow-y:auto;
  transition:background var(--tr);
}
[data-theme="dark"] .sidebar{
  background:linear-gradient(180deg,#1f2230 0%,#1a1d28 100%);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.04);
}
.sidebar::-webkit-scrollbar{width:3px}
.sidebar::-webkit-scrollbar-thumb{background:var(--b2);border-radius:2px}

/* Logo */
.logo{
  height:64px;min-height:64px;padding:0 16px;
  position:sticky;top:0;z-index:5;
  background:inherit;border-bottom:1px solid var(--b);
  display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;
}
.sidebar-tools{display:flex;align-items:center;justify-content:flex-end;width:100%}
.sidebar-status-pill{
  display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;
  border:1px solid var(--b);border-radius:999px;background:var(--off);color:var(--t2);
  font-size:var(--fs-sm);font-weight:700;
}
.sidebar-status-pill::before{
  content:'';width:7px;height:7px;border-radius:50%;background:var(--grn);box-shadow:0 0 0 3px rgba(22,163,74,.12);
}
.theme-btn{
  width:36px;height:36px;border:1px solid var(--b);border-radius:10px;
  background:var(--off);cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  color:var(--t2);
  transition:background var(--tr),border-color var(--tr),transform var(--tr);
}
.theme-btn:hover{background:var(--off2);border-color:var(--b2);transform:rotate(14deg)}
.theme-btn:active{transform:rotate(14deg) scale(.88)}

/* Sections */
.sec{border-bottom:1px solid var(--b);padding:14px 16px}
.kw-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.kw-section-title{font-size:var(--fs-base);font-weight:700;color:var(--t)}

/* Form fields */
.field{margin-bottom:8px}
.field:last-child{margin-bottom:0}
.field label{display:block;font-size:var(--fs-cap);font-weight:600;color:var(--t2);margin-bottom:4px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],select,textarea{
  appearance:none;-webkit-appearance:none;
  width:100%;background:var(--off);border:1px solid var(--b);
  border-radius:var(--radius-sm);color:var(--t);
  font-family:var(--sans);font-size:var(--fs-base);padding:8px 11px;outline:none;
  transition:border-color var(--tr),box-shadow var(--tr),background var(--tr);
  min-height:38px;
}
textarea{resize:vertical;line-height:1.5}
input::placeholder{color:var(--t3);opacity:.75}
input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--b2)}
input:focus,select:focus,textarea:focus{border-color:var(--acc);background:var(--w)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.hint{font-size:var(--fs-cap);color:var(--t3);margin-top:3px;line-height:1.5}
.hint a{color:var(--acc);text-decoration:none;cursor:pointer}
.hint a:hover{text-decoration:underline}

/* Keyword add */
.kw-add-row{display:flex;gap:6px;margin-bottom:8px}
.kw-add-row input{flex:1}
.kw-add-btn{
  flex-shrink:0;padding:0 var(--btn-px);height:var(--btn-h);min-height:var(--btn-h);
  background:var(--acc);color:#fff;border:none;
  border-radius:var(--radius-sm);font-family:var(--sans);font-size:var(--fs-cap);font-weight:700;
  cursor:pointer;box-shadow:var(--sh-acc);
  transition:background var(--tr),box-shadow var(--tr),transform var(--tr);
  display:inline-flex;align-items:center;gap:4px;
}
.kw-add-btn:hover{background:var(--primary-600);box-shadow:var(--sh-acc-lg)}
.kw-add-btn:active{transform:translateY(1px);box-shadow:var(--sh-sm)}
.kw-add-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* Keyword list */
.kw-list{display:flex;flex-direction:column;gap:3px;flex:1;min-height:0;overflow-y:auto;margin-bottom:4px}
.kw-list::-webkit-scrollbar{width:3px}
.kw-list::-webkit-scrollbar-thumb{background:var(--b2);border-radius:2px}
.kw-empty{font-size:var(--fs-cap);color:var(--t3);text-align:center;padding:16px 0;font-style:italic}
.kw-item{
  background:var(--off);border:1px solid var(--b);border-radius:var(--radius-sm);overflow:hidden;
  transition:border-color var(--tr),background var(--tr),box-shadow var(--tr);
}
.kw-item:hover{background:var(--w);border-color:var(--b2);box-shadow:var(--sh-sm);transform:none}
.kw-item.scanning{border-color:var(--org);background:var(--org-bg)}
.kw-item.pending{border-style:dashed;background:var(--off2)}
.kw-item.inactive{opacity:.45}
.kw-top{
  display:grid;grid-template-columns:7px minmax(0,1fr) 58px var(--btn-icon) var(--btn-icon);
  align-items:center;gap:7px;padding:7px 8px;min-height:50px;
}
.kw-dot{width:7px;height:7px;border-radius:50%;background:var(--grn);flex-shrink:0}
.kw-item.inactive .kw-dot{background:var(--b2)}
.kw-item.scanning .kw-dot{background:var(--org);animation:blink 1s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.kw-text{min-width:0;font-size:var(--fs-cap);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;color:var(--t2);transition:color var(--tr)}
.kw-text:hover{color:var(--acc)}
.kw-state{
  display:inline-flex;align-items:center;justify-content:center;
  padding:2px 7px;border-radius:999px;font-size:10px;font-weight:700;line-height:1;
  border:1px solid transparent;white-space:nowrap;flex-shrink:0;
}
.kw-state.scanning{background:var(--org-bg);color:var(--org);border-color:rgba(234,88,12,.35)}
.kw-state.scheduled{background:var(--acc-bg);color:var(--acc);border-color:rgba(37,99,235,.28)}
.kw-state.pending{background:var(--off2);color:var(--t3);border-color:var(--b)}
.kw-iv{
  height:var(--btn-icon);min-height:var(--btn-icon);width:100%;min-width:0;
  font-size:var(--fs-cap);color:var(--t3);background:var(--off2);
  padding:0 8px;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;
  border:1px solid var(--b);font-weight:600;
  transition:color var(--tr),border-color var(--tr),background var(--tr);
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
}
.kw-iv svg{width:14px;height:14px;flex:0 0 14px}
.kw-iv:hover{color:var(--acc);border-color:var(--acc);background:var(--acc-bg)}
.kw-del{
  width:var(--btn-icon);height:var(--btn-icon);min-width:var(--btn-icon);border:1px solid var(--b);border-radius:var(--radius-sm);
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  background:var(--off2);color:var(--t3);flex-shrink:0;
  transition:background var(--tr),color var(--tr),transform var(--tr);
}
.kw-del:hover{background:var(--red-bg);color:var(--red)}
.kw-del:active{transform:scale(.88)}
.kw-iv-row{display:none;padding:0 10px 9px;gap:6px;align-items:center}
.kw-iv-row.open{display:flex}
.kw-iv-row select{flex:1;padding:5px 8px;font-size:var(--fs-base)}
.kw-iv-save{
  padding:0 var(--btn-px);background:var(--acc);color:#fff;border:none;border-radius:5px;
  font-size:var(--fs-cap);font-weight:600;cursor:pointer;min-height:var(--btn-h);
  display:inline-flex;align-items:center;gap:3px;
  transition:background var(--tr),transform var(--tr);
}
.kw-iv-save:hover{background:var(--primary-600)}
.kw-iv-save:active{transform:translateY(1px)}
.sched-grid{display:flex;flex-direction:column;gap:4px;width:100%}
.sched-label{font-size:var(--fs-xs);color:var(--t3);font-weight:600}
.sched-weekdays{display:flex;flex-wrap:wrap;gap:5px}
.weekday-chip{position:relative;display:inline-flex}
.weekday-chip input{position:absolute;opacity:0;pointer-events:none}
.weekday-chip span{
  display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;
  padding:0 8px;border-radius:7px;border:1px solid var(--b);background:var(--off);color:var(--t3);
  font-size:var(--fs-sm);font-weight:700;cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr),transform var(--tr);
}
.weekday-chip span:hover{border-color:var(--acc);color:var(--acc)}
.weekday-chip input:checked + span{background:var(--acc-bg);border-color:var(--acc);color:var(--acc)}

/* Sidebar footer */
.status-footer{padding:15px 18px;flex:1;display:flex;flex-direction:column;gap:9px}
.pulse-row{display:flex;align-items:center;gap:8px;font-size:var(--fs-base);color:var(--t3)}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--grn);animation:p-grn 2s infinite;flex-shrink:0}
@keyframes p-grn{0%,100%{box-shadow:0 0 0 3px rgba(22,163,74,.15)}50%{box-shadow:0 0 0 6px rgba(22,163,74,.04)}}
.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.stat-box{background:var(--w);border:1px solid var(--b);border-radius:var(--radius-sm);padding:10px 12px;transition:box-shadow var(--tr)}
.stat-box:hover{box-shadow:var(--sh-sm)}
.stat-n{font-size:var(--fs-2xl);font-weight:700;line-height:1;color:var(--acc)}
.stat-l{font-size:var(--fs-cap);color:var(--t3);margin-top:2px}

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

/* ─── TOPBAR: header con saludo + buscador ──────────────────── */
.topbar{
  height:64px;background:var(--w);border-bottom:1px solid var(--b);
  display:flex;align-items:center;padding:0 16px;gap:8px;
  flex-shrink:0;position:sticky;top:0;z-index:12;
}
.topbar-search{
  flex:1;max-width:450px;
  display:flex;align-items:center;gap:8px;
  background:var(--off);border:1px solid var(--b);border-radius:10px;
  padding:0 13px;height:38px;
  transition:border-color var(--tr),box-shadow var(--tr),background var(--tr);
}
.topbar-search:focus-within{border-color:var(--acc);background:var(--w)}
.topbar-search svg{color:var(--t3);flex-shrink:0;transition:color var(--tr)}
.topbar-search:focus-within svg{color:var(--acc)}
.topbar-search input{border:none;background:transparent;outline:none;font-family:var(--sans);font-size:var(--fs-base);color:var(--t);flex:1;min-width:0}
.topbar-search input::placeholder{color:var(--t3);opacity:.75}
@media(max-width:768px){
  .topbar-search input,#kwInput,input[type="text"],input[type="search"]{font-size:16px!important}
}
.topbar-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px;margin-left:auto}

/* ─── SIDEBAR NAV ITEMS ─────────────────────────────────────── */
.nav-section-label{
  font-size:var(--fs-xs);font-weight:700;color:var(--t3);letter-spacing:.08em;
  text-transform:uppercase;padding:14px 18px 5px;user-select:none;
}
.nav-item{
  display:flex;align-items:center;gap:10px;
  padding:0 12px;height:34px;margin:0 8px 2px;
  border-radius:var(--radius-sm);font-size:var(--fs-base);font-weight:500;color:var(--t2);
  cursor:pointer;user-select:none;
  transition:background var(--tr),color var(--tr);
}
.nav-item svg{flex-shrink:0;opacity:.5;transition:opacity var(--tr)}
.nav-item:hover:not(.active){background:var(--off2);color:var(--t)}
.nav-item:hover:not(.active) svg{opacity:.75}
.nav-item:active:not(.active){transform:translateY(1px)}
.nav-item.active{background:var(--acc-bg);color:var(--acc);font-weight:600}
.nav-item.active svg{opacity:1;color:var(--acc)!important;stroke:var(--acc)!important}
.nav-item .tbadge{margin-left:auto}
.nav-sep{height:1px;background:var(--b);margin:8px 16px}

/* tbadge (shared) */
.tbadge{
  font-size:var(--fs-sm);font-weight:700;padding:1px 6px;border-radius:4px;
  background:var(--off2);color:var(--t3);border:1px solid var(--b);
  transition:background var(--tr),color var(--tr);
}
.nav-item.active .tbadge{background:var(--acc-bg);color:var(--acc);border-color:rgba(102,126,234,.25)}

/* Content */
.content{flex:1;overflow-y:auto;padding:20px;background:transparent}
.content::-webkit-scrollbar{width:5px}
.content::-webkit-scrollbar-thumb{background:var(--b2);border-radius:3px}

/* ─── UTILITIES ─────────────────────────────────────────────── */
.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;gap:14px;text-align:center;color:var(--t3)}
.empty-ico{width:56px;height:56px;background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);box-shadow:var(--sh-sm)}
.empty-title{font-size:var(--fs-lg);font-weight:700;color:var(--t2)}
.empty-sub{font-size:var(--fs-md);max-width:280px;line-height:1.7}
.loading{display:flex;align-items:center;gap:10px;color:var(--t3);font-size:var(--fs-md);padding:40px 0;justify-content:center}
.spinner{width:18px;height:18px;border:2px solid var(--b);border-top-color:var(--acc);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}
@keyframes spin{to{transform:rotate(360deg)}}
.badge-pos{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:10px;font-size:var(--fs-sm);font-weight:600}
.badge-pos.ok{background:#d1fae5;color:var(--grn-text)}
.badge-pos.bad{background:#fee2e2;color:var(--red-text)}
.badge-pos.neutral{background:var(--off2);color:var(--t3)}
.toast{
  display:flex;gap:9px;background:var(--red-bg);border:1px solid var(--red);
  border-left:3px solid var(--red);border-radius:var(--radius-sm);
  padding:10px 14px;margin-bottom:12px;font-size:var(--fs-base);color:var(--red);
  animation:slideIn .2s;font-weight:500;
}
.toast.ok{background:var(--grn-bg);border-color:var(--grn);border-left-color:var(--grn);color:var(--grn)}
@keyframes slideIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.toast-layer{
  position:fixed;
  top:16px;
  right:16px;
  z-index:2000;
  display:flex;
  flex-direction:column;
  gap:10px;
  width:min(360px,calc(100vw - 24px));
  pointer-events:none;
}
.app-toast{
  margin-bottom:0;
  box-shadow:var(--sh-md);
  background:var(--w);
  border-color:var(--b2);
  color:var(--t);
  pointer-events:auto;
}
.app-toast.ok{
  background:var(--grn-bg);
  border-color:var(--grn);
  border-left-color:var(--grn);
  color:var(--grn);
}
.app-toast.error{
  background:var(--red-bg);
  border-color:rgba(220,38,38,.36);
  border-left-color:var(--red);
  color:var(--red-text);
}
@media (max-width: 720px){
  .toast-layer{
    top:auto;
    right:12px;
    bottom:12px;
    left:12px;
    width:auto;
  }
}

/* ─── CARD ──────────────────────────────────────────────────── */
.card{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);
  margin-bottom:18px;overflow:hidden;
  box-shadow:var(--sh-sm);transition:box-shadow var(--tr);
}
.card:hover{box-shadow:var(--sh-md)}
.card-updating{opacity:.6;pointer-events:none}
.card-head{
  display:flex;align-items:center;gap:10px;padding:14px 18px;
  border-bottom:1px solid var(--b);flex-wrap:wrap;background:var(--w);
}
.card-title{font-size:var(--fs-md);font-weight:var(--fw-bold);line-height:1.25;color:var(--t);flex:1;min-width:80px;display:flex;align-items:center;gap:8px}
.card-title-kw-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--acc);background:var(--acc-bg);padding:2px 8px;border-radius:var(--radius-sm);flex-shrink:0}
.card-meta{font-size:var(--fs-cap);font-weight:var(--fw-regular);line-height:1.35;color:var(--t3);display:flex;align-items:center;gap:6px}
.pill{min-height:var(--ui-chip-h);font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:0 8px;border-radius:var(--radius-sm);white-space:nowrap;display:inline-flex;align-items:center;gap:4px;border:1px solid transparent}
.pill-up{background:var(--grn-bg);color:var(--grn);border:1px solid rgba(22,163,74,.22)}
.pill-dn{background:var(--red-bg);color:var(--red-text);border:1px solid rgba(220,38,38,.22)}
.pill-new{background:var(--acc-bg);color:var(--acc)}
.pill-same{background:var(--off);color:var(--t3);border:1px solid var(--b)}
.pill-scan{background:var(--org-bg);color:var(--org);border:1px solid rgba(234,88,12,.22)}

/* Sub-tabs */
.stabs{display:flex;gap:4px;padding:10px 14px;border-bottom:1px solid var(--b);overflow-x:auto}
.stab{
  padding:0 var(--btn-px);font-size:var(--fs-cap);font-weight:600;color:var(--t3);cursor:pointer;
  border:1px solid var(--b);border-radius:var(--radius-sm);white-space:nowrap;
  background:var(--off2);min-height:var(--btn-h);display:inline-flex;align-items:center;
  transition:all var(--tr);
}
.stab.active{color:#fff;background:var(--t);border-color:transparent;box-shadow:var(--sh-sm)}
.stab:hover:not(.active){background:var(--off);color:var(--t2);border-color:var(--b2)}
.stab:active:not(.active){transform:translateY(1px)}

/* Snap nav */
.snap-nav{display:flex;align-items:center;gap:4px}
.nav-btn{
  width:30px;height:30px;background:var(--off);border:1px solid var(--b);
  border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--t2);
  transition:background var(--tr),border-color var(--tr),transform var(--tr);
}
.nav-btn:hover:not(:disabled){background:var(--off2);border-color:var(--b2)}
.nav-btn:active:not(:disabled){transform:scale(.9)}
.nav-btn:disabled{opacity:.3;cursor:not-allowed}
.nav-cnt{font-size:var(--fs-sm);color:var(--t3);min-width:38px;text-align:center}

/* ─── TABLES ────────────────────────────────────────────────── */
.tbl-wrap{overflow-x:auto;border-radius:var(--radius-sm)}
table{width:100%;border-collapse:collapse;font-size:var(--fs-md)}
thead th{
  padding:10px 11px;font-size:var(--fs-sm);font-weight:700;
  text-transform:uppercase;letter-spacing:.03em;color:var(--t3);
  background:var(--off);border-bottom:2px solid var(--b);
  text-align:left;white-space:nowrap;cursor:pointer;user-select:none;
  position:sticky;top:0;z-index:10;transition:color var(--tr),background var(--tr);
}
thead th:hover{color:var(--t2);background:var(--off2)}
thead th.sa::after{content:' ▲';font-size:9px;opacity:.7}
thead th.sd::after{content:' ▼';font-size:9px;opacity:.7}
tbody td{padding:10px 11px;border-bottom:1px solid var(--b);font-size:var(--fs-base);vertical-align:middle}
tbody tr:last-child td{border-bottom:none}
tbody tr:nth-child(even) td{background:rgba(0,0,0,.018)}
[data-theme="dark"] tbody tr:nth-child(even) td{background:rgba(255,255,255,.018)}
tbody tr:hover td{background:var(--off)!important;transition:background .1s}
.pos{font-size:var(--fs-base);font-weight:700;color:var(--t2);width:36px;text-align:center}
.pos.p1{color:#f59e0b}
.pos.p3{color:var(--grn)}
.dom{font-weight:600}
.dom a{color:var(--t);text-decoration:none;cursor:pointer;transition:color var(--tr)}
.dom a:hover{color:var(--acc);text-decoration:underline}
.ttl{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-base);color:var(--t2)}
.url-cell{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.url-cell a{color:var(--t3);font-size:var(--fs-cap);text-decoration:none;cursor:pointer;transition:color var(--tr)}
.url-cell a:hover{color:var(--acc);text-decoration:underline}
.du{color:var(--grn-text);font-weight:700;font-size:var(--fs-base)}
.dd{color:var(--red-text);font-weight:700;font-size:var(--fs-base)}
.deq{color:var(--t3);font-size:var(--fs-base)}
.dnw{color:var(--acc);font-size:var(--fs-cap);font-weight:600;display:inline-flex;align-items:center;gap:4px;vertical-align:middle;white-space:nowrap}

/* Compact table */
.compact-table{width:100%;border-collapse:collapse}
.compact-table th{
  text-align:left;padding:10px 11px;font-size:var(--fs-sm);font-weight:700;
  text-transform:uppercase;letter-spacing:.03em;color:var(--t3);
  border-bottom:2px solid var(--b);background:var(--off);
  position:sticky;top:0;z-index:10;white-space:nowrap;
}
.compact-table td{padding:10px 11px;border-bottom:1px solid var(--b);font-size:var(--fs-base);vertical-align:middle}
.compact-table tbody tr:nth-child(even) td{background:rgba(0,0,0,.018)}
.compact-table tr:hover td{background:var(--off)!important;cursor:pointer;transition:background .1s}
.ct-kw{font-weight:700;font-size:var(--fs-base);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-pos{font-size:var(--fs-md);font-weight:700;text-align:center}
.ct-pos.p1{color:#f59e0b}.ct-pos.p3{color:var(--grn)}.ct-pos.p10{color:var(--t2)}.ct-pos.pout{color:var(--t3);font-size:var(--fs-cap)}
.ct-delta{font-size:var(--fs-cap);font-weight:700;text-align:center}
.ct-delta.up{color:var(--grn-text)}.ct-delta.dn{color:var(--red-text)}.ct-delta.eq{color:var(--t3)}
.ct-url{font-size:var(--fs-sm);color:var(--t3);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-ann{font-size:var(--fs-xs);padding:1px 6px;border-radius:4px;font-weight:700;margin-left:4px}
.ct-ann.url-change{background:var(--org-bg);color:var(--org);border:1px solid var(--org)}
.ct-ann.directo{background:var(--red-bg);color:var(--red);border:1px solid var(--red)}

/* ─── FILTERS ───────────────────────────────────────────────── */
.fbar{display:flex;align-items:center;gap:7px;padding:10px 14px;background:var(--off);border-bottom:1px solid var(--b);flex-wrap:wrap}
.fbar input,.fbar select{
  background:var(--w);border:1px solid var(--b);border-radius:7px;
  padding:6px 10px;font-size:var(--fs-base);font-family:var(--sans);color:var(--t);
  outline:none;-webkit-appearance:none;
  transition:border-color var(--tr),box-shadow var(--tr);
}
.fbar input:focus,.fbar select:focus{border-color:var(--acc)}
.fchip{
  display:inline-flex;align-items:center;gap:4px;
  background:var(--acc-bg);border:1px solid var(--acc);color:var(--acc);
  font-size:var(--fs-sm);font-weight:700;padding:3px 9px;border-radius:4px;cursor:pointer;
  min-height:28px;transition:opacity var(--tr),transform var(--tr);
}
.fchip:hover{opacity:.8}
.fchip:active{transform:scale(.95)}
.fchip.clr{background:var(--off2);border-color:var(--b2);color:var(--t3)}
.fbar-cnt{font-size:var(--fs-cap);color:var(--t3);margin-left:auto;white-space:nowrap}

/* ─── CHART ─────────────────────────────────────────────────── */
.chart-wrap{padding:14px 18px}
.chart-c{position:relative;height:220px}
.chart-c.tall{height:260px}

/* ─── VIEW TOGGLE ───────────────────────────────────────────── */
.view-toggle{display:flex;gap:4px;margin-left:auto}
.vtbtn{
  padding:0 var(--btn-px);border:1px solid var(--b);border-radius:6px;
  background:var(--off);font-size:var(--fs-cap);font-weight:600;cursor:pointer;color:var(--t3);
  min-height:var(--btn-h);display:inline-flex;align-items:center;
  transition:all var(--tr);
}
.vtbtn:hover{background:var(--off2);border-color:var(--b2);color:var(--t2)}
.vtbtn.active{background:var(--acc);color:#fff;border-color:var(--acc);box-shadow:var(--sh-acc)}

/* ─── NOTIFICATIONS ─────────────────────────────────────────── */
.notif-badge{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:340px}
.notif-item{
  background:var(--w);border:1px solid var(--b);border-radius:12px;
  padding:13px 16px;box-shadow:var(--sh-lg);
  font-size:var(--fs-base);animation:slideInR .3s;pointer-events:all;cursor:pointer;
  display:flex;gap:10px;align-items:flex-start;
  transition:transform var(--tr),box-shadow var(--tr);
}
.notif-item:hover{transform:translateY(-2px);box-shadow:var(--sh-lg)}
.notif-item.lv-up{border-left:4px solid var(--grn)}
.notif-item.lv-dn{border-left:4px solid var(--red)}
.notif-item.lv-t3{border-left:4px solid var(--acc)}
.notif-item.lv-t10{border-left:4px solid var(--org)}
.notif-ico{font-size:var(--fs-xl);flex-shrink:0;line-height:1.2}
.notif-body{flex:1}
.notif-title{font-weight:700;color:var(--t);line-height:1.3}
.notif-sub{font-size:var(--fs-sm);color:var(--t3);margin-top:2px}
.notif-close{font-size:var(--fs-lg);color:var(--t3);cursor:pointer;flex-shrink:0;line-height:1;transition:color var(--tr)}
.notif-close:hover{color:var(--t)}
@keyframes slideInR{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}

/* ─── FRANJA HORARIA ────────────────────────────────────────── */
.fh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:4px;padding:15px 18px}
.fh-cell{padding:6px 4px;border-radius:6px;text-align:center;font-size:var(--fs-cap)}
.fh-hour{font-size:var(--fs-sm);color:var(--t3);margin-bottom:2px}
.fh-val{font-weight:700}

/* ─── SUMMARY ───────────────────────────────────────────────── */
.sum-hero{
  background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
  border-radius:var(--radius-lg);padding:22px 26px;margin-bottom:20px;
  color:#fff;display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  box-shadow:var(--sh-acc-lg);
}
.sum-hero-title{font-size:var(--fs-2xl);font-weight:300;font-style:italic;flex:1}
.sum-hero-title b{font-style:normal;font-weight:700}
.sum-hero-stats{display:flex;gap:16px;flex-wrap:wrap}
.sum-hstat{text-align:center}
.sum-hstat-n{font-size:var(--fs-3xl);font-weight:700;line-height:1}
.sum-hstat-l{font-size:var(--fs-sm);opacity:.8;margin-top:1px}
.sum-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-bottom:20px}
.sum-kw-card{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);
  overflow:hidden;box-shadow:var(--sh-sm);cursor:pointer;
  transition:transform var(--tr),box-shadow var(--tr);
}
.sum-kw-card:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.sum-kw-card.lv-present{border-left:3px solid var(--acc)}
.sum-kw-card.lv-top3{border-left:3px solid var(--grn)}
.sum-kw-card.lv-absent{border-left:3px solid var(--b2);opacity:.75}
.skw-head{padding:12px 14px;border-bottom:1px solid var(--b);display:flex;align-items:center;gap:8px}
.skw-kw{font-weight:700;font-size:var(--fs-md);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.skw-pos{font-size:var(--fs-2xl);font-weight:700;line-height:1;color:var(--acc)}
.skw-pos.top1{color:#f59e0b}.skw-pos.top3{color:var(--grn)}.skw-pos.absent{font-size:var(--fs-md);color:var(--t3)}
.skw-delta{font-size:var(--fs-cap);font-weight:700}
.skw-delta.up{color:var(--grn-text)}.skw-delta.dn{color:var(--red-text)}.skw-delta.eq{color:var(--t3)}
.skw-body{padding:10px 15px;display:flex;flex-direction:column;gap:7px}
.skw-title{font-size:var(--fs-base);color:var(--t2);line-height:1.5}
.skw-title a{color:inherit;text-decoration:none}
.skw-title a:hover{color:var(--acc);text-decoration:underline}
.skw-meta{display:flex;gap:8px;flex-wrap:wrap}
.skw-pill{font-size:var(--fs-sm);font-weight:600;padding:2px 8px;border-radius:4px}
.skw-pill.month{background:var(--off2);color:var(--t2)}.skw-pill.streak{background:var(--grn-bg);color:var(--grn)}.skw-pill.volt{background:var(--org-bg);color:var(--org)}
.skw-rivals{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}
.skw-rival{font-size:var(--fs-sm);color:var(--t3);background:var(--off);border:1px solid var(--b);padding:1px 6px;border-radius:4px}
.skw-rival.threat{border-color:var(--red);color:var(--red);background:var(--red-bg)}
.sum-section{background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);margin-bottom:16px;overflow:hidden;box-shadow:var(--sh-sm)}
.sum-sec-head{padding:13px 18px;border-bottom:1px solid var(--b);font-weight:700;font-size:var(--fs-md);display:flex;align-items:center;gap:8px;color:var(--t)}
.sum-sec-head span{font-size:var(--fs-xl)}
.event-item{
  display:flex;align-items:center;gap:10px;padding:9px 18px;
  border-bottom:1px solid var(--b);font-size:var(--fs-base);
  transition:background var(--tr);cursor:pointer;
}
.event-item:last-child{border-bottom:none}
.event-item:hover{background:var(--off)}
.event-ico{font-size:var(--fs-lg);flex-shrink:0}
.event-kw{font-weight:600;color:var(--t);flex:1}
.event-delta{font-weight:700}
.event-delta.up{color:var(--grn-text)}.event-delta.dn{color:var(--red-text)}
.event-time{font-size:var(--fs-sm);color:var(--t3);white-space:nowrap}
.comp-row{
  display:flex;align-items:center;gap:10px;padding:9px 18px;
  border-bottom:1px solid var(--b);transition:background var(--tr);cursor:pointer;
}
.comp-row:last-child{border-bottom:none}
.comp-row:hover{background:var(--off)}
.comp-name{font-weight:600;font-size:var(--fs-base);min-width:140px}
.comp-bar-track{flex:1;height:5px;background:var(--off2);border-radius:4px;overflow:hidden}
.comp-bar-fill{height:100%;border-radius:4px;background:var(--acc)}
.comp-meta{font-size:var(--fs-cap);color:var(--t3);white-space:nowrap;min-width:100px;text-align:right}
.trends-mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:14px 18px}
.trends-mini-card{background:var(--off);border:1px solid var(--b);border-radius:9px;padding:12px 14px;transition:box-shadow var(--tr)}
.trends-mini-card:hover{box-shadow:var(--sh-md)}
.trends-mini-kw{font-size:var(--fs-base);font-weight:700;color:var(--t);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.trends-mini-val{font-size:var(--fs-2xl);font-weight:700;color:var(--acc);line-height:1}
.trends-mini-ref{font-size:var(--fs-sm);color:var(--t3);margin-top:1px}
.trends-mini-chart{height:50px;margin-top:8px}

/* LV Hero */
.lv-hero{background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);padding:20px 22px;margin-bottom:16px;box-shadow:var(--sh-sm)}
.lv-hero-title{
  font-size:var(--fs-sm);font-weight:700;color:var(--t3);margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
  text-transform:uppercase;letter-spacing:.07em;
}
.lv-hero-title svg{flex-shrink:0}
.lv-hero-title::after{content:'';flex:1;height:1px;background:var(--b)}
.lv-kw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.lv-kw-box{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);
  padding:13px 15px;cursor:pointer;box-shadow:var(--sh-sm);
  transition:border-color var(--tr),box-shadow var(--tr),transform var(--tr);
}
.lv-kw-box:hover{border-color:var(--b2);box-shadow:var(--sh-md);transform:none}
.lv-kw-box.s1{background:var(--acc-bg)!important;border:1px solid var(--acc)!important;border-left:3px solid var(--acc)!important}
.lv-kw-box.s3{background:var(--grn-bg)!important;border:1px solid var(--grn)!important;border-left:3px solid var(--grn)!important}
.lv-kw-box.s10{border-left:3px solid var(--org)}
.lv-kw-box.sout{opacity:.5}
.lv-kw-name{font-size:var(--fs-base);font-weight:700;color:var(--t);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-kw-pos{font-size:var(--fs-3xl);font-weight:700;line-height:1}
.lv-kw-pos.c1{color:var(--acc)}.lv-kw-pos.c3{color:var(--grn)}.lv-kw-pos.c10{color:var(--org)}.lv-kw-pos.cout{color:var(--t3);font-size:var(--fs-xl)}
.lv-kw-sub{display:flex;align-items:center;gap:6px;margin-top:5px;flex-wrap:wrap}
.lv-delta-up{color:var(--grn);font-weight:700;font-size:var(--fs-base)}
.lv-delta-dn{color:var(--red);font-weight:700;font-size:var(--fs-base)}
.lv-streak{font-size:var(--fs-sm);font-weight:700;padding:2px 7px;border-radius:4px;background:var(--org-bg);color:var(--org)}
.sum-block{
  margin-bottom:16px;background:var(--w);border:1px solid var(--b);
  border-radius:var(--radius-md);padding:16px;box-shadow:var(--sh-sm);
}
.sum-block-title{font-size:var(--fs-base);font-weight:700;color:var(--t);padding:0 0 11px;display:flex;align-items:center;gap:8px}
.sum-block-title svg{color:#ffffff;stroke:#ffffff;flex-shrink:0}
.sum-block-title::after{content:'';flex:1;height:1px;background:var(--b)}
.yest-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--b);font-size:var(--fs-base)}
.yest-row:last-child{border-bottom:none}
.yest-kw{font-weight:600;flex:1;min-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yest-pos{font-size:var(--fs-base);color:var(--t2);min-width:28px;text-align:right}

/* RSS Google */
.rss-page{padding:0 12px 18px;box-sizing:border-box;max-width:100%;overflow:hidden}
.rss-card{overflow:hidden;margin-bottom:16px}
.rss-main-head{justify-content:space-between;align-items:flex-start}
.rss-main-title{flex:1;min-width:240px}
.rss-main-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-left:auto}
.rss-help-btn{width:24px;height:24px;border-radius:50%;border:1px solid var(--b);background:var(--off);color:var(--t2);font-size:13px;font-weight:var(--fw-bold);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.rss-help-btn:hover{background:var(--off2);color:var(--acc);border-color:var(--b2)}
.rss-help-panel{display:none;margin:0 16px 0;padding:12px 14px;border:1px solid var(--b);border-radius:7px;background:var(--off);font-size:12px;color:var(--t2);line-height:1.55}
.rss-help-panel.open{display:block}
.rss-help-panel strong{color:var(--t)}
.rss-section-body{padding:16px;box-sizing:border-box;max-width:100%;overflow:hidden}
.rss-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:0 0 14px;max-width:100%;box-sizing:border-box}
.rss-cron-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-bottom:12px}
.rss-metric{background:var(--off);border:1px solid var(--b);border-radius:7px;padding:14px 16px;min-width:0;box-sizing:border-box;overflow:hidden}
.rss-section-body>.sum-block:last-child{margin-bottom:0}
.rss-section-body table{min-width:0}
.rss-global-settings{background:var(--w);border:1px solid var(--b);border-radius:7px;padding:14px;box-sizing:border-box;max-width:100%;overflow:hidden;margin-bottom:12px}
.rss-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:12px;max-width:100%;box-sizing:border-box}
.rss-source-panel{background:var(--w);border:1px solid var(--b);border-radius:7px;padding:14px;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}
.rss-source-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}
.rss-subtitle{font-size:13px;font-weight:var(--fw-bold);color:var(--t);padding:0 0 8px;display:flex;align-items:center;gap:8px}
.rss-subtitle::after{content:'';flex:1;height:1px;background:var(--b)}
.rss-collapse{border:0;margin:0 0 12px;padding:0}
.rss-collapse>summary{list-style:none;cursor:pointer}
.rss-collapse>summary::-webkit-details-marker{display:none}
.rss-collapse>summary .rss-subtitle::before{content:'+';width:18px;height:18px;border:1px solid var(--b);border-radius:5px;background:var(--off);color:var(--t2);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:var(--fw-bold)}
.rss-collapse[open]>summary .rss-subtitle::before{content:'-'}
.rss-collapse-body{padding-top:2px}
.explainer-clamp-2{
  display:-webkit-box!important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden!important;
  text-overflow:ellipsis;
}
.explainer-minute-table{overflow-x:hidden;overflow-y:visible}
@media(max-width:760px){.rss-source-grid{grid-template-columns:1fr}.rss-filter-row{grid-template-columns:1fr!important}.explainer-grid{grid-template-columns:1fr!important}}
@media(max-width:760px){
  .explainer-clamp-2{
    display:block!important;
    -webkit-line-clamp:unset;
    overflow:visible!important;
  }
  .explainer-minute-table{overflow-x:auto}
}
.yest-arr{font-size:var(--fs-base);font-weight:700;min-width:16px;text-align:center}
.event-row{
  display:flex;align-items:center;gap:10px;padding:9px 11px;
  border-radius:var(--radius-sm);background:var(--off);border:1px solid var(--b);
  margin-bottom:5px;font-size:var(--fs-base);cursor:pointer;
  transition:box-shadow var(--tr),transform var(--tr);
}
.event-row:hover{box-shadow:var(--sh-sm);transform:none}
.event-row.ev-lv-good{background:var(--grn-bg);border-color:var(--grn)}
.event-row.ev-lv-bad{background:var(--red-bg);border-color:var(--red)}
.event-row.ev-lv-neutral{background:var(--acc-bg);border-color:var(--acc)}
.comp-item{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid var(--b);font-size:var(--fs-base)}
.comp-item:last-child{border-bottom:none}
.comp-bar-track{flex:1;height:4px;background:var(--off2);border-radius:4px;overflow:hidden}
.comp-bar-fill{height:100%;background:var(--red);border-radius:4px}
.month-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.month-tile{background:var(--off);border:1px solid var(--b);border-radius:9px;padding:12px 14px;transition:box-shadow var(--tr)}
.month-tile:hover{box-shadow:var(--sh-md)}
.month-val{font-size:var(--fs-2xl);font-weight:700;line-height:1;color:var(--t)}
.month-lbl{font-size:var(--fs-cap);color:var(--t3);margin-top:3px}
.trends-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.trends-tile{background:var(--off);border:1px solid var(--b);border-radius:9px;overflow:hidden;transition:box-shadow var(--tr)}
.trends-tile:hover{box-shadow:var(--sh-md)}
.trends-tile-head{display:flex;align-items:center;gap:8px;padding:10px 13px;border-bottom:1px solid var(--b)}
.trends-tile-kw{font-size:var(--fs-base);font-weight:700;flex:1}
.trends-tile-val{font-size:var(--fs-xl);font-weight:700;color:var(--acc)}
.trends-tile-ref{font-size:var(--fs-sm);color:var(--t3)}
.two-col{columns:2;column-gap:16px}
.two-col>.sum-block{break-inside:avoid;display:block}
@media(max-width:800px){.two-col{columns:1}}

/* ─── LV HIGHLIGHT ──────────────────────────────────────────── */
.lv-row{background:linear-gradient(90deg,rgba(102,126,234,.07) 0%,transparent 100%)!important}
.lv-row td:first-child::before{content:'★ ';color:var(--acc);font-size:var(--fs-xs)}
.lv-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);font-weight:700;padding:2px 8px;border-radius:4px;background:var(--acc-bg);color:var(--acc);white-space:nowrap}

/* ─── OVERVIEW KW CARD ──────────────────────────────────────── */
.ov-kw-card{background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);margin-bottom:22px;overflow:hidden;box-shadow:var(--sh-sm)}
.ov-kw-head{display:flex;align-items:center;gap:10px;padding:15px 18px;border-bottom:1px solid var(--b);flex-wrap:wrap}
.ov-kw-title{font-style:italic;font-size:var(--fs-xl);font-weight:300;flex:1}
.ov-body{display:grid;grid-template-columns:1fr 1fr;gap:0}
@media(max-width:900px){.ov-body{grid-template-columns:1fr}}
.ov-chart-col{padding:15px 18px;border-right:1px solid var(--b)}
.ov-table-col{overflow:hidden}
.ov-top10{width:100%;border-collapse:collapse;font-size:var(--fs-base)}
.ov-top10 tbody tr{border-bottom:1px solid var(--b);cursor:default;transition:background .1s}
.ov-top10 tbody tr:last-child{border-bottom:none}
.ov-top10 tbody tr:hover{background:var(--off)}
.ov-top10 tbody tr.hovered-dom{background:var(--acc-bg)!important}
.ov-top10 td{padding:9px 12px;vertical-align:middle}
.ov-img{width:38px;height:28px;object-fit:cover;border-radius:4px;background:var(--off2);flex-shrink:0;display:block}
.ov-img-ph{width:38px;height:28px;border-radius:4px;background:var(--off2);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);color:var(--t3);flex-shrink:0}
.ov-ttl{font-size:var(--fs-base);color:var(--t);line-height:1.4;max-width:200px}
.ov-ttl a{color:inherit;text-decoration:none}
.ov-ttl a:hover{color:var(--acc);text-decoration:underline}
.ov-dom-cell{font-weight:700;font-size:var(--fs-base);white-space:nowrap}
.lv-pos{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:5px;font-size:var(--fs-base);font-weight:700;background:var(--acc-bg);color:var(--acc)}
.lv-pos.top3{background:var(--grn-bg);color:var(--grn)}
.lv-pos.absent{background:var(--off2);color:var(--t3)}
.skeleton{background:linear-gradient(90deg,var(--off) 25%,var(--off2) 50%,var(--off) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:4px}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ─── COMPARE ───────────────────────────────────────────────── */
.cmp-toolbar{display:flex;align-items:center;gap:10px;padding:12px 18px;background:var(--off);border-bottom:1px solid var(--b);flex-wrap:wrap}
.cmp-toolbar select,.cmp-toolbar input[type=date]{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-sm);
  padding:7px 10px;font-size:var(--fs-base);font-family:var(--sans);color:var(--t);
  outline:none;-webkit-appearance:none;
  transition:border-color var(--tr),box-shadow var(--tr);
}
.cmp-toolbar select:focus,.cmp-toolbar input[type=date]:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(102,126,234,.1)}
.cmp-sep{font-size:var(--fs-cap);color:var(--t3);font-weight:600;padding:0 2px}
.cmp-run{
  padding:0 var(--btn-px-lg);background:var(--t);color:#fff;border:none;
  border-radius:var(--radius-sm);font-family:var(--sans);font-size:var(--fs-base);font-weight:700;cursor:pointer;
  min-height:var(--btn-h-lg);display:inline-flex;align-items:center;gap:6px;
  box-shadow:var(--sh-sm);
  transition:background var(--tr),box-shadow var(--tr),transform var(--tr);
}
.cmp-run:hover{background:var(--t2);box-shadow:var(--sh-md)}
.cmp-run:active{transform:translateY(1px);box-shadow:var(--sh-sm)}
.cmp-tabs{display:flex;gap:4px;padding:14px 18px 0;flex-wrap:wrap}
.cmp-tab{
  padding:0 var(--btn-px);border-radius:var(--radius-sm);font-size:var(--fs-cap);font-weight:600;
  cursor:pointer;background:var(--off2);border:1px solid var(--b);color:var(--t3);
  min-height:var(--btn-h);display:inline-flex;align-items:center;gap:5px;
  transition:all var(--tr);
}
.cmp-tab.active{background:var(--t);border-color:transparent;color:#fff;font-weight:700;box-shadow:var(--sh-sm)}
.cmp-tab:hover:not(.active){background:var(--off);color:var(--t2);border-color:var(--b2)}
.cmp-tab:active:not(.active){transform:translateY(1px)}

/* ─── OVERVIEW BOXES ────────────────────────────────────────── */
.ov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px;margin-bottom:20px}
.ov-box{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);
  padding:13px 15px;cursor:default;box-shadow:var(--sh-sm);
  transition:box-shadow var(--tr),border-color var(--tr),transform var(--tr);
}
.ov-box:hover{box-shadow:var(--sh-md);border-color:var(--b2);transform:none}
.ov-lbl{font-size:var(--fs-cap);font-weight:600;color:var(--t3);margin-bottom:4px;display:flex;align-items:center;gap:4px}
.ov-val{font-size:var(--fs-2xl);font-weight:700;line-height:1.2;color:var(--t)}
.ov-sub{font-size:var(--fs-cap);color:var(--t3);margin-top:3px}

/* Home system */
.theme-btn,.topbar-search,.kw-del,.kw-iv-save,.kw-mini-btn,.kw-add-btn,.save-btn,.cmp-run,.sum-block,.lv-hero,.cfg-section,.ov-box,.ov-kw-card,.stat-box,.apikey-row{border-radius:7px}
.kw-mini-btn,.home-btn{
  height:var(--btn-h);min-height:var(--btn-h);min-width:var(--btn-min-w);padding:0 var(--btn-px);border:1px solid transparent;border-radius:7px;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  background:var(--acc);color:#fff;font-size:var(--fs-cap);font-weight:700;cursor:pointer;
  transition:background var(--tr),border-color var(--tr),transform var(--tr),color var(--tr);
}
.kw-mini-btn:hover,.home-btn:hover{background:var(--primary-600)}
.kw-mini-btn:active,.home-btn:active{transform:translateY(1px)}
.home-btn.secondary{background:var(--off);border-color:var(--b);color:var(--t2)}
.home-btn.secondary:hover{background:var(--off2);border-color:var(--b2)}
.home-btn.small{height:var(--btn-h);min-height:var(--btn-h);padding:0 var(--btn-px);font-size:var(--fs-sm)}
.home-btn.state{
  cursor:default;background:var(--acc-bg);border-color:rgba(37,99,235,.22);color:var(--acc);
}
.home-btn.state:hover{background:var(--acc-bg);border-color:rgba(37,99,235,.22);color:var(--acc)}
.kw-iv.active{background:var(--acc-bg);color:var(--acc);border-color:var(--acc)}
.kw-iv.is-burst{background:var(--org-bg);color:var(--org);border-color:rgba(234,88,12,.35)}
.toast-copy{flex:1;min-width:0}
.toast-action{
  border:1px solid currentColor;background:transparent;color:inherit;border-radius:7px;
  min-height:var(--btn-h-sm);padding:0 var(--btn-px-sm);font-size:var(--fs-sm);font-weight:700;cursor:pointer;
}
.toast-action:disabled{opacity:.55;cursor:default}
.overview-home{display:flex;flex-direction:column;gap:14px}
.home-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.overview-home .card{margin-bottom:0}
.overview-card{min-width:0}
.overview-card-wide .card-head{align-items:flex-start}
.overview-card-body{padding:14px;display:flex;flex-direction:column;gap:12px}
.home-card{
  background:var(--w);border:1px solid var(--b);border-radius:7px;padding:14px;
  box-shadow:var(--sh-sm);display:flex;flex-direction:column;gap:12px;min-width:0;
}
.home-card-wide{padding:14px}
.home-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.home-card-head h3{font-size:var(--fs-xl);line-height:1.2;color:var(--t);margin:0}
.home-card-head p{font-size:var(--fs-cap);color:var(--t3);margin-top:4px}
.home-card-kicker{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--t3);margin-bottom:4px}
.home-pill-row{display:flex;gap:8px;flex-wrap:wrap}
.home-pill{
  display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:7px;
  font-size:var(--fs-sm);font-weight:700;border:1px solid var(--b);background:var(--off);color:var(--t2);
}
.home-pill.blue{background:var(--acc-bg);border-color:rgba(37,99,235,.22);color:var(--acc)}
.home-pill.green{background:var(--grn-bg);border-color:rgba(22,163,74,.22);color:var(--grn)}
.home-pill.orange{background:var(--org-bg);border-color:rgba(234,88,12,.22);color:var(--org)}
.home-pill.neutral{background:var(--off);border-color:var(--b);color:var(--t3)}
.home-select{min-width:180px;max-width:260px}
.ov-lv-list{display:flex;flex-direction:column;gap:10px}
.ov-lv-row{
  display:grid;grid-template-columns:minmax(220px,1.25fr) 120px minmax(200px,.95fr) minmax(280px,1.35fr);
  gap:12px;align-items:center;padding:12px;border:1px solid var(--b);border-radius:7px;background:var(--off);cursor:pointer;
}
.ov-lv-row.top1{border-color:rgba(37,99,235,.28);background:linear-gradient(180deg,var(--acc-bg),var(--w))}
.ov-lv-row.top3{border-color:rgba(22,163,74,.24)}
.ov-lv-row.top10{border-color:rgba(234,88,12,.24)}
.ov-lv-main{min-width:0}
.ov-lv-keyword{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--t);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ov-lv-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:var(--fs-sm);color:var(--t3)}
.ov-lv-rank{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.ov-rank-badge{
  display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border-radius:7px;
  font-size:var(--fs-xl);font-weight:var(--fw-bold);background:var(--off2);color:var(--t3)
}
.ov-rank-badge.top1{background:var(--acc-bg);color:var(--acc)}
.ov-rank-badge.top3{background:var(--grn-bg);color:var(--grn)}
.ov-rank-badge.top10{background:var(--org-bg);color:var(--org)}
.ov-rank-badge.out{background:var(--off2);color:var(--t3);font-size:var(--fs-base)}
.ov-delta{font-size:var(--fs-cap);font-weight:700}
.ov-delta.up{color:var(--grn)}
.ov-delta.down{color:var(--red)}
.ov-delta.flat{color:var(--t3)}
.ov-lv-spark{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--b);border-radius:7px;background:var(--w)}
.ov-spark-label{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--t2)}
.ov-spark-canvas{height:60px}
.ov-spark-meta{display:flex;gap:6px;flex-wrap:wrap}
.ov-spark-stat{
  display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;
  font-size:var(--fs-xs);font-weight:var(--fw-bold);background:var(--off2);color:var(--t3)
}
.ov-spark-stat.good{background:var(--grn-bg);color:var(--grn)}
.ov-spark-stat.current{background:var(--acc-bg);color:var(--acc)}
.ov-spark-stat.neutral{background:var(--off2);color:var(--t2)}
.ov-spark-empty{font-size:var(--fs-sm);color:var(--t3)}
.ov-neighbor-col{display:flex;flex-direction:column;gap:6px;min-width:0}
.ov-neighbor-col-wide{min-width:0}
.ov-neighbor-title{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--t3)}
.ov-neighbor-stack{display:flex;flex-direction:column;gap:6px}
.ov-serp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ov-serp-chip{
  display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--b);border-radius:7px;background:var(--w);min-width:0;
}
.ov-serp-chip.is-lv{border-color:rgba(37,99,235,.24);background:var(--acc-bg)}
.ov-serp-pos{
  width:32px;height:24px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;
  font-size:var(--fs-sm);font-weight:var(--fw-bold);background:var(--off2);color:var(--t2);flex-shrink:0
}
.ov-neighbor-chip{
  display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--b);border-radius:7px;background:var(--w);min-width:0;
}
.ov-neighbor-chip.ahead{border-color:rgba(220,38,38,.2)}
.ov-neighbor-chip.behind{border-color:rgba(37,99,235,.18)}
.ov-neighbor-logo,.ov-share-logo{width:18px;height:18px;flex-shrink:0}
.ov-neighbor-name,.ov-share-domain{font-size:var(--fs-base);font-weight:700;color:var(--t);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ov-neighbor-pos{margin-left:auto;font-size:var(--fs-cap);font-weight:var(--fw-bold);color:var(--t3)}
.ov-neighbor-empty,.ov-empty-mini{font-size:var(--fs-cap);color:var(--t3)}
.ov-share-list,.ov-trending-list{display:flex;flex-direction:column;gap:8px}
.ov-share-row,.ov-trend-row,.ov-op-row{
  display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--b);border-radius:7px;background:var(--off);
}
.ov-share-row.is-lv{border-color:rgba(37,99,235,.22);background:var(--acc-bg)}
.ov-share-main,.ov-trend-main{display:flex;align-items:center;gap:10px;min-width:0}
.ov-share-rank{
  width:26px;height:26px;border-radius:7px;background:var(--off2);color:var(--t3);
  display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-bold);flex-shrink:0;
}
.ov-share-meta,.ov-op-meta{font-size:var(--fs-sm);color:var(--t3);margin-top:2px}
.ov-share-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--fs-sm);color:var(--t3);white-space:nowrap}
.ov-share-side strong{font-size:var(--fs-lg);color:var(--t);line-height:1}
.ov-split-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ov-sublist{display:flex;flex-direction:column;gap:8px}
.ov-subtitle{font-size:var(--fs-cap);font-weight:var(--fw-bold);color:var(--t2)}
.ov-op-keyword{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--t)}
.ov-move-pill{
  min-width:42px;height:28px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;
  font-size:var(--fs-cap);font-weight:var(--fw-bold);background:var(--off2);color:var(--t3)
}
.ov-move-pill.up{background:var(--grn-bg);color:var(--grn)}
.ov-move-pill.down{background:var(--red-bg);color:var(--red)}
.ov-bump-wrap{height:290px}
.ov-hourly-wrap,.ov-marfeel-wrap{overflow:auto}
.ov-hourly-table,.ov-marfeel-table{border-collapse:separate;border-spacing:4px;width:100%}
.ov-hourly-table th,.ov-marfeel-table th{font-size:var(--fs-xs);color:var(--t3);font-weight:700;text-align:center;white-space:nowrap}
.ov-hourly-table th:first-child,.ov-marfeel-table th:first-child{text-align:left}
.ov-hourly-table td,.ov-marfeel-table td{
  min-width:52px;padding:10px 6px;border-radius:7px;text-align:center;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:#fff
}
.ov-hourly-table td:first-child,.ov-marfeel-table td:first-child{background:transparent!important;padding:0 8px 0 0;min-width:160px;text-align:left}
.ov-hour-domain{display:flex;align-items:center;gap:8px;font-size:var(--fs-cap);font-weight:700;color:var(--t)}
.ov-hour-domain img{width:16px;height:16px}
.ov-hourly-table tr.is-lv td:first-child span{color:var(--acc)}
.ov-marfeel-name{font-size:var(--fs-cap);font-weight:var(--fw-bold);color:var(--t)}
.ov-marfeel-goal{font-size:var(--fs-xs);color:var(--t3);margin-top:3px}
@media(max-width:1200px){
  .ov-lv-row{grid-template-columns:1fr 110px minmax(160px,.9fr);align-items:flex-start}
  .ov-neighbor-col{grid-column:1 / -1}
  .ov-serp-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .home-grid-2,.ov-split-list{grid-template-columns:1fr}
  .ov-serp-grid{grid-template-columns:1fr}
}

/* ─── TRENDS ────────────────────────────────────────────────── */
.tr-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:15px 18px 0}
.tr-stat{background:var(--off);border:1px solid var(--b);border-radius:var(--radius-md);padding:11px 13px;text-align:center}
.tr-val{font-size:var(--fs-2xl);font-weight:700;line-height:1}
.tr-lbl{font-size:var(--fs-cap);color:var(--t3);margin-top:2px}
.tr-iframe{border:1px solid var(--b);border-radius:var(--radius-md);overflow:hidden;margin:12px 18px;height:327px;position:relative}
.tr-iframe iframe{width:100%;height:600px;border:none;display:block;position:absolute;top:-48px;left:0}

/* ─── HEATMAP ───────────────────────────────────────────────── */
.heatmap-wrap{overflow-x:auto;padding:15px 18px}
.heatmap table{border-collapse:separate;border-spacing:2px;font-size:var(--fs-base)}
.heatmap thead th{padding:5px 10px;font-size:var(--fs-sm);font-weight:600;text-transform:uppercase;letter-spacing:0;color:var(--t3);text-align:center;background:transparent;border:none;cursor:default}
.heatmap thead th:first-child{text-align:left}
.heatmap tbody td{padding:6px 10px;border-radius:5px;text-align:center;font-size:var(--fs-cap);font-weight:600;min-width:52px;cursor:default}
.heatmap tbody td:first-child{text-align:left;font-family:var(--sans);font-weight:600;font-size:var(--fs-base);color:var(--t);background:transparent!important;min-width:140px}

/* ─── CONFIG ────────────────────────────────────────────────── */
.cfg-section{background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);padding:20px;margin-bottom:16px;box-shadow:var(--sh-sm)}
.cfg-title{
  font-size:var(--fs-md);font-weight:700;color:var(--t);margin-bottom:16px;
  display:flex;align-items:center;gap:8px;
  padding-bottom:12px;border-bottom:1px solid var(--b);
}
.save-btn{
  padding:0 var(--btn-px-lg);background:var(--acc);color:#fff;border:none;
  border-radius:var(--radius-sm);font-family:var(--sans);font-size:var(--fs-base);font-weight:700;
  cursor:pointer;margin-top:14px;min-height:var(--btn-h-lg);
  display:inline-flex;align-items:center;gap:6px;
  box-shadow:var(--sh-acc);
  transition:background var(--tr),box-shadow var(--tr),transform var(--tr);
}
.save-btn:hover{background:var(--primary-600);box-shadow:var(--sh-acc-lg)}
.save-btn:active{transform:translateY(1px);box-shadow:var(--sh-sm)}
.apikey-row{display:flex;align-items:center;gap:8px;padding:8px 11px;background:var(--off);border:1px solid var(--b);border-radius:7px;font-size:var(--fs-base);margin-bottom:10px}
.ak-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.ak-dot.set{background:var(--grn)}
.ak-dot.unset{background:var(--red)}

/* ─── INFO TOOLTIP ──────────────────────────────────────────── */
.info-btn{
  background:rgba(0,0,0,.06);color:var(--t2);border:none;border-radius:50%;
  width:18px;height:18px;font-size:var(--fs-sm);font-weight:700;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;flex-shrink:0;
  transition:background var(--tr);
}
.info-btn:hover{background:rgba(0,0,0,.13)}
.info-tip{display:none;position:absolute;z-index:100;background:var(--t);color:var(--off);font-size:var(--fs-cap);line-height:1.5;padding:8px 11px;border-radius:var(--radius-sm);max-width:220px;box-shadow:var(--sh-md);pointer-events:none}
.info-wrap{position:relative;display:inline-flex;align-items:center;gap:4px}
.info-wrap:hover .info-tip{display:block;top:100%;left:50%;transform:translateX(-50%);margin-top:5px}

/* ─── GLOBAL CURSORS & LINKS ────────────────────────────────── */
a,button,
.kw-item,.kw-text,.tab,.stab,.cmp-tab,.nav-btn,.fchip,.pill,
.kw-iv,.kw-del,.kw-add-btn,.cmp-run,.save-btn,.vtbtn,.info-btn,
.lv-kw-box,.dom a,.url-cell a,.sum-kw-card,.event-row,.event-item,.comp-row{
  cursor:pointer;
}
a{text-decoration:none;color:inherit}
a:hover{color:var(--acc)}

/* ─── RESPONSIVE ────────────────────────────────────────────── */
@media(max-width:980px){
  .sidebar{width:248px}
  .topbar{height:50px;padding:0 10px}
  .tab{padding:0 11px;font-size:var(--fs-cap)}
  .card-head{padding:12px 14px}
  .content{padding:14px}
  .cfg-section{padding:16px}
}
@media(max-width:700px){
  .sidebar{width:220px}
  .sec{padding:12px}
  .two-col{columns:1}
  .lv-kw-grid{grid-template-columns:1fr 1fr}
  thead th,tbody td{padding:8px 8px}
}

/* ─── TOPBAR NAV TABS ───────────────────────────────────────── */
.topbar-nav{
  flex:1;display:flex;align-items:center;gap:3px;overflow:visible;min-width:0;
}
.topbar-nav::-webkit-scrollbar{display:none}
.tnav-item{
  padding:5px 8px;font-size:var(--fs-cap);font-weight:var(--fw-regular);color:var(--t3);
  cursor:pointer;border-radius:7px;white-space:nowrap;
  display:flex;align-items:center;gap:4px;
  transition:background var(--tr),color var(--tr),transform var(--tr);user-select:none;min-height:32px;flex-shrink:0;
}
.tnav-item:hover:not(.active){background:var(--off2);color:var(--t2)}
.tnav-item:active:not(.active){transform:translateY(1px)}
.tnav-item.active{background:var(--acc-bg);color:var(--acc);font-weight:var(--fw-medium)}
.tnav-item .tbadge{min-height:0;padding:0 5px;line-height:16px;font-size:11px}
.tnav-item.active .tbadge{background:rgba(102,126,234,.18);color:var(--acc);border-color:rgba(102,126,234,.25)}
.tnav-sep{
  width:1px;height:18px;flex:0 0 1px;background:var(--b);margin:0 4px;
}
.topbar-nav-full{gap:14px}
.tnav-block{
  position:relative;flex:0 0 auto;
  display:flex;align-items:center;gap:3px;
  padding:4px 7px;border:1px solid var(--acc-bg);border-radius:10px;
}
.tnav-block::before{
  content:attr(data-label);
  position:absolute;top:-7px;left:50%;transform:translateX(-50%);z-index:1;
  padding:0 7px;background:var(--w);
  font-size:9px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;
  color:var(--acc);line-height:1;pointer-events:none;white-space:nowrap;
}
.topbar-nav-compact{
  display:none;
}
.tnav-group{
  position:relative;flex:0 0 auto;
}
.tnav-group>summary{
  list-style:none;
}
.tnav-group>summary::-webkit-details-marker{display:none}
.tnav-group.active>summary,
.tnav-group[open]>summary{
  background:var(--acc-bg);color:var(--acc);font-weight:var(--fw-medium);
}
.tnav-menu{
  position:absolute;top:calc(100% + 8px);left:0;z-index:50;width:190px;
  display:grid;gap:4px;padding:8px;border:1px solid var(--b);border-radius:var(--radius-md);
  background:var(--w);box-shadow:0 14px 32px rgba(15,23,42,.16);
}
.tnav-menu-item{
  width:100%;min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--t2);
  font-family:var(--sans);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-align:left;cursor:pointer;
}
.tnav-menu-item:hover{
  background:var(--off);
}
.tnav-menu-item.active{
  background:var(--acc-bg);color:var(--acc);
}

/* Topbar user area */
.topbar-user{display:flex;align-items:center;gap:6px;flex-shrink:0}
.topbar-tenant{
  height:34px;max-width:190px;display:flex;align-items:center;gap:7px;padding:0 10px;
  border:1px solid var(--b);border-radius:9px;background:var(--w);color:var(--t2);
  font-size:var(--fs-sm);font-weight:700;min-width:0;
}
.topbar-tenant-dot{
  width:7px;height:7px;border-radius:50%;background:var(--grn);box-shadow:0 0 0 3px rgba(22,163,74,.12);flex:0 0 auto;
}
.topbar-tenant strong{
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;
}
.topbar-tenant em{
  font-style:normal;color:var(--t3);font-size:10px;font-weight:700;text-transform:uppercase;flex:0 0 auto;
}
.theme-btn-inline svg{pointer-events:none}
.gear-btn{
  width:34px;height:34px;border:1px solid var(--b);border-radius:9px;
  background:var(--off);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:var(--t3);flex-shrink:0;
  transition:background var(--tr),border-color var(--tr),color var(--tr),transform var(--tr);
}
.gear-btn:hover{background:var(--off2);border-color:var(--b2);color:var(--acc)}
.gear-btn:active{transform:scale(.88)}
.gear-btn.active{background:var(--acc-bg);border-color:var(--acc);color:var(--acc)}

/* Autocomplete wrapper */
.ac-wrap{position:relative;flex:0 0 auto;width:220px}
.ac-wrap .topbar-search{flex:none;width:100%}
.ac-drop{
  position:absolute;top:calc(100% + 4px);left:0;right:0;
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-sm);
  box-shadow:var(--sh-md);z-index:300;overflow:hidden;
  max-height:290px;overflow-y:auto;display:none;
}
.ac-drop.open{display:block}
.ac-drop::-webkit-scrollbar{width:3px}
.ac-drop::-webkit-scrollbar-thumb{background:var(--b2);border-radius:2px}
.ac-item{
  padding:8px 13px;font-size:var(--fs-base);cursor:pointer;
  display:flex;align-items:center;gap:8px;color:var(--t2);
  transition:background var(--tr);border-bottom:1px solid var(--b);
}
.ac-item:last-child{border-bottom:none}
.ac-item:hover,.ac-item.sel{background:var(--acc-bg);color:var(--acc)}
.ac-tag{
  font-size:9px;font-weight:700;padding:2px 6px;border-radius:3px;
  text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;
}
.ac-tag-kw{background:var(--acc-bg);color:var(--acc);border:1px solid rgba(102,126,234,.25)}
.ac-tag-dom{background:var(--off2);color:var(--t3);border:1px solid var(--b)}

@media(max-width:1100px){.tnav-item{padding:6px 9px;font-size:var(--fs-cap)}}
@media(max-width:1680px){
  .topbar-nav-full{display:none}
  .topbar-nav-compact{display:flex;flex:1;gap:6px}
}
@media(min-width:1681px){
  .topbar-nav-full{display:flex}
  .topbar-nav-compact{display:none}
}
@media(max-width:960px){.ac-wrap{width:160px}}
@media(max-width:800px){
  .tnav-item{padding:5px 7px;font-size:var(--fs-sm)}
  .topbar-tenant{display:none}
}

/* ─── MOBILE HAMBURGER ──────────────────────────────────── */
.mob-hamburger{
  display:none;width:36px;height:36px;
  border:1px solid var(--b);border-radius:9px;
  background:var(--off);cursor:pointer;
  align-items:center;justify-content:center;
  color:var(--t2);flex-shrink:0;
  transition:background var(--tr),border-color var(--tr);
}
.mob-hamburger:hover{background:var(--off2);border-color:var(--b2)}
.mob-overlay{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.45);z-index:199;
  -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
}

/* ─── MOBILE ≤ 768px ────────────────────────────────────── */
@media(max-width:768px){

  /* Show hamburger */
  .mob-hamburger{display:flex}
  #bell-btn{display:none!important}
  .kw-ch-title-wrap{flex:0 0 100%!important}

  /* Sidebar → slide-in overlay */
  .sidebar{
    position:fixed;left:0;top:0;bottom:0;z-index:200;
    width:286px!important;
    transform:translateX(-100%);
    transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;
    box-shadow:none;
  }
  #appRoot.mob-open .sidebar{
    transform:translateX(0);
    box-shadow:var(--sh-lg);
  }
  #appRoot.mob-open .mob-overlay{display:block}

  /* Main → full width */
  .main{width:100%;min-width:0}

  /* Topbar */
  .topbar{padding:0 8px;gap:6px;height:54px}
  .ac-wrap{width:120px!important;flex:0 0 auto;position:relative;transition:flex .2s,width .2s}
  .ac-wrap:focus-within{flex:1!important;width:auto!important;z-index:50}
  .ac-wrap:focus-within~.topbar-nav{display:none}
  .ac-wrap .topbar-search{width:100%}
  .ac-drop{min-width:260px}
  .topbar-nav{gap:1px}
  .tnav-item{padding:4px 7px;font-size:var(--fs-sm);min-height:30px}
  .topbar-user{gap:3px}
  .gear-btn{width:30px;height:30px;border-radius:7px}
  .topbar-actions{gap:4px}

  /* Content area */
  .content{padding:10px}

  /* Cards */
  .card-head{padding:10px 12px;gap:6px}
  .card-title{font-size:var(--fs-base)}
  .card{margin-bottom:12px}

  /* Grids → single column */
  .home-grid-2{grid-template-columns:1fr!important}
  .ov-split-list{grid-template-columns:1fr!important}
  .ov-grid{grid-template-columns:repeat(2,1fr)}
  .stat-row{grid-template-columns:1fr 1fr;gap:5px}
  .sum-grid{grid-template-columns:1fr}
  .lv-kw-grid{grid-template-columns:1fr 1fr}
  .two-col{columns:1!important}
  .month-grid{grid-template-columns:repeat(2,1fr)}
  .trends-mini-grid{grid-template-columns:1fr}
  .trends-grid{grid-template-columns:1fr}
  .ov-serp-grid{grid-template-columns:1fr}
  .tr-grid{grid-template-columns:1fr 1fr;padding:10px 10px 0}

  /* Overview lv-row → compact */
  .ov-lv-row{grid-template-columns:1fr auto!important;gap:8px}
  .ov-lv-spark,.ov-neighbor-col{display:none}

  /* Filter bars */
  .fbar{padding:8px 10px;gap:5px}
  .fbar input,.fbar select{font-size:var(--fs-sm);padding:5px 8px;min-height:34px}
  .cmp-toolbar{padding:8px 10px;gap:5px;flex-wrap:wrap}
  .fbar-cnt{margin-left:0}

  /* Tables */
  .tbl-wrap,.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
  thead th,tbody td{padding:7px 8px;font-size:var(--fs-sm)}
  .ttl{max-width:120px}
  .ct-url{max-width:100px}
  .url-cell{max-width:120px}
  .compact-table th,.compact-table td{padding:7px 8px}

  /* Charts */
  .chart-wrap{padding:10px 12px}
  .chart-c{height:180px}
  .chart-c.tall{height:200px}

  /* Summary hero */
  .sum-hero{padding:14px 16px;gap:10px}
  .sum-hero-title{font-size:var(--fs-xl)}
  .sum-hstat-n{font-size:var(--fs-2xl)}

  /* Overview boxes */
  .ov-box{padding:10px 12px}
  .ov-val{font-size:var(--fs-xl)}

  /* KW items */
  .kw-add-row{gap:5px}
  .kw-top{padding:7px 8px;min-height:50px}
  .kw-text{font-size:var(--fs-sm)}

  /* Config */
  .cfg-section{padding:14px}
  .row2{grid-template-columns:1fr}
  .save-btn{width:100%;justify-content:center}

  /* Overview card body */
  .overview-card-body{padding:10px;gap:8px}
  .home-card{padding:12px}

  /* Stabs */
  .stabs{padding:8px 10px;gap:3px}
  .stab{padding:0 9px;font-size:var(--fs-sm)}

  /* Notifications */
  .notif-badge{bottom:12px;right:12px;left:12px;max-width:none}

  /* Trends iframe */
  .tr-iframe{margin:8px 10px;height:280px}

  /* Home pills */
  .home-pill{height:24px;padding:0 8px;font-size:var(--fs-xs)}
  .home-pill-row{gap:4px}

  /* Heatmap */
  .heatmap-wrap{padding:10px}
  .ov-hourly-wrap,.ov-marfeel-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* Compare */
  .cmp-tabs{padding:10px 10px 0;gap:3px}
  .cmp-tab{padding:0 9px;font-size:var(--fs-sm)}

  /* Autocomplete drop */
  .ac-drop{max-height:240px}

  /* Home select */
  .home-select{min-width:140px;max-width:100%}
}

/* ─── VERY SMALL ≤ 420px ────────────────────────────────── */
@media(max-width:420px){
  .topbar{padding:0 6px;gap:4px}
  .ac-wrap{width:80px!important}
  .tnav-item{padding:3px 5px;font-size:12px}
  .content{padding:8px}
  .ov-grid{grid-template-columns:1fr 1fr}
  .card-head{padding:8px 10px}
  .card-title{font-size:var(--fs-lg)}
  .home-card{padding:10px}
  .fbar{padding:6px 8px}
  .stab{padding:0 7px;font-size:10px}
}

/* Platform polish */
:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.topbar{backdrop-filter:saturate(1.2) blur(8px)}
.kw-item,.home-card,.sum-kw-card,.event-row,.event-item,.comp-row{
  transition:background var(--tr),border-color var(--tr),box-shadow var(--tr);
}
.kw-item:hover,.sum-kw-card:hover,.event-row:hover,.event-item:hover,.comp-row:hover{
  box-shadow:0 1px 0 rgba(15,23,42,.04);
}
tbody tr:hover td{background:var(--off)}
input,select,textarea,button{scroll-margin:80px}
.content{scroll-behavior:smooth}
.loading{min-height:56px}
.spinner{width:18px;height:18px;border-width:2px}
.chart-c canvas{max-width:100%}

/* Product-grade UI system layer */
.ui-view-root{
  display:flex;flex-direction:column;gap:var(--ui-gap);min-width:0;
}
body[data-view] .ui-view-root{
  width:100%;
}
.ui-view-root>.card,
.ui-view-root>.cfg-section,
.ui-view-root>.sum-block,
.ui-view-root>.home-card,
.ui-view-root>.overview-home,
.ui-view-root>.ov-kw-card{
  margin-bottom:0!important;
}
.overview-home,
.home-grid-2,
.ov-grid{
  gap:var(--ui-gap)!important;
}
.ui-surface{
  background:var(--w)!important;border:1px solid var(--b)!important;border-radius:var(--radius-md)!important;
  box-shadow:var(--sh-sm)!important;
}
.ui-surface:hover{
  border-color:var(--b2)!important;box-shadow:var(--sh-md)!important;
}
.ui-surface-head{
  min-height:var(--ui-head-h);display:flex!important;align-items:center!important;gap:10px!important;
}
.card-head.ui-surface-head{
  padding:0 var(--ui-pad-lg)!important;background:var(--w)!important;border-bottom:1px solid var(--b)!important;
}
.sum-block-title.ui-surface-head{
  padding:0 0 10px!important;margin-bottom:10px!important;border-bottom:1px solid var(--b)!important;
}
.sum-block-title.ui-surface-head::after{display:none!important}
.cfg-title.ui-surface-head{
  min-height:34px!important;padding-bottom:8px!important;border-bottom:1px solid var(--b)!important;margin-bottom:2px!important;
}
.home-card-head.ui-surface-head{
  min-height:42px!important;
}
.overview-card-body,
.home-card,
.sum-block,
.cfg-section{
  padding:var(--ui-pad)!important;
}
.card>.fbar,
.card>.ui-filterbar,
.ui-filterbar{
  min-height:50px;padding:8px var(--ui-pad-lg)!important;background:var(--off)!important;
  border-bottom:1px solid var(--b)!important;gap:8px!important;
}
.ui-filterbar input,.ui-filterbar select,.ui-filterbar textarea,
.ui-field input,.ui-field select,.ui-field textarea{
  min-height:var(--btn-h)!important;
}
.row2{
  gap:var(--ui-gap-sm)!important;
}
.ui-field label{
  min-height:16px;display:flex;align-items:center;
}
.ui-tabs-row{
  min-height:50px;padding:8px var(--ui-pad-lg)!important;gap:6px!important;
  background:var(--w)!important;border-bottom:1px solid var(--b)!important;
}
.ui-tabs-row .cmp-tab,.ui-tabs-row .stab{
  min-height:var(--btn-h)!important;padding:0 var(--btn-px)!important;
}
.ui-actions{
  margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;
}
.ui-btn{
  height:var(--btn-h)!important;min-height:var(--btn-h)!important;padding:0 var(--btn-px)!important;border-radius:7px!important;
  min-width:var(--btn-min-w)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  font-size:var(--fs-sm)!important;font-weight:var(--fw-semibold)!important;line-height:1!important;white-space:nowrap!important;
  border:1px solid var(--b)!important;background:var(--off)!important;color:var(--t2)!important;
  text-decoration:none!important;vertical-align:middle!important;
  transition:background var(--tr),border-color var(--tr),color var(--tr),transform var(--tr),box-shadow var(--tr);
}
.ui-btn:hover{background:var(--off2)!important;border-color:var(--b2)!important;color:var(--t)!important}
.ui-btn:active{transform:translateY(1px)}
.ui-btn-primary,.kw-add-btn.ui-btn,.save-btn.ui-btn-primary,.cmp-run.ui-btn-primary{
  border-color:var(--primary)!important;background:var(--primary)!important;color:#fff!important;
}
.ui-btn-primary:hover,.kw-add-btn.ui-btn:hover,.save-btn.ui-btn-primary:hover,.cmp-run.ui-btn-primary:hover{
  background:var(--primary-600)!important;border-color:var(--primary-600)!important;color:#fff!important;
}
.ui-btn-secondary{background:var(--off)!important;border-color:var(--b)!important;color:var(--t2)!important}
.ui-btn-danger{
  border-color:rgba(220,38,38,.28)!important;background:var(--red-bg)!important;color:var(--red-text)!important;
}
.ui-btn-danger:hover{border-color:var(--red)!important;background:var(--red)!important;color:#fff!important}
.ui-btn-icon{
  width:var(--btn-icon)!important;min-width:var(--btn-icon)!important;max-width:var(--btn-icon)!important;padding:0!important;border-radius:9px!important;
}
.mob-hamburger.ui-btn{
  display:none!important;
}
@media(max-width:768px){
  .mob-hamburger.ui-btn{display:inline-flex!important}
}
.kw-del.ui-btn,.gear-btn.ui-btn,.kw-iv-save.ui-btn-icon{
  height:var(--btn-icon)!important;
}
.card-head{align-items:center}
.card-head .card-title+*{margin-left:auto}
.card-head .ui-actions .ui-btn{min-height:var(--btn-h)!important}
.fbar{
  gap:8px;position:relative;
}
.fbar input,.fbar select{
  min-width:150px;
}
.fbar .ui-btn-primary:first-of-type,.fbar .cmp-run:first-of-type{
  margin-left:auto;
}
.fbar-cnt{
  min-height:var(--ui-chip-h);display:inline-flex;align-items:center;padding:0 8px;
  border:1px solid var(--b);border-radius:var(--radius-sm);background:var(--w);
  font-size:var(--fs-sm)!important;font-weight:var(--fw-semibold)!important;color:var(--t3);
}
.ui-favicon,
.ui-source-icon{
  width:var(--ui-source-icon)!important;height:var(--ui-source-icon)!important;min-width:var(--ui-source-icon)!important;
  border-radius:50%!important;object-fit:cover!important;border:1px solid var(--b)!important;background:var(--off2)!important;
  flex:0 0 var(--ui-source-icon)!important;
}
.ui-thumb{
  object-fit:cover;
}
.pill,.tbadge,.ac-tag,.home-pill,.live-type-badge,.validation-chip,.validation-status,
.sitemap-quality,.trending-source-pill,.platform-tag,.perf-gfk-pill,.perf-rank-badge,.live-time-badge{
  min-height:var(--ui-chip-h);border-radius:var(--radius-sm);
  font-size:var(--fs-sm);font-weight:var(--fw-semibold);
}
.cmp-tabs,.stabs{
  align-items:center;
}
.cmp-tab,.stab,.tnav-item{
  min-width:max-content;
}
.ui-table-scroll{
  width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.ui-table-scroll::-webkit-scrollbar{height:5px}
.ui-table-scroll::-webkit-scrollbar-thumb{background:var(--b2);border-radius:999px}
.ui-table{
  min-width:720px;border-collapse:separate!important;border-spacing:0!important;
}
.ui-table thead th{
  position:sticky;top:0;z-index:1;background:var(--w);
}
.ui-table td,.ui-table th{
  vertical-align:middle;padding-top:10px!important;padding-bottom:10px!important;
}
.ui-table th{
  height:38px!important;font-weight:var(--fw-semibold)!important;color:var(--t3)!important;
}
.ui-table td{
  height:42px;
}
.ui-table-dense td,.ui-table-dense th{
  padding-left:12px!important;padding-right:12px!important;
}
.ui-table-operational th:first-child,
.ui-table-operational td:first-child{
  min-width:150px;
}
.ui-table tbody tr{
  transition:background var(--tr);
}
.ui-table a{
  color:var(--acc);font-weight:700;
}
.ui-table td:nth-child(n+2),.ui-table th:nth-child(n+2){
  font-variant-numeric:tabular-nums;
}
.cfg-section{
  display:flex;flex-direction:column;gap:10px;
}
.cfg-section .field{margin-bottom:0}
.cfg-section>.ui-btn:last-child,.cfg-section>.save-btn:last-child{
  align-self:flex-end;margin-top:2px;
}
.cfg-title{
  display:flex;align-items:center;gap:8px;min-height:26px;
}
.apikey-row{
  min-height:36px;display:flex;align-items:center;gap:9px;
}
.cfg-role-panel{
  display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:var(--ui-gap);
}
.cfg-role-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.cfg-role-head strong{
  display:block;font-size:var(--fs-lg);font-weight:700;color:var(--t);line-height:1.2;
}
.cfg-role-head span{
  display:block;margin-top:3px;font-size:var(--fs-sm);color:var(--t3);
}
.cfg-role-head em{
  height:26px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;
  background:var(--acc-bg);border:1px solid rgba(37,99,235,.22);color:var(--acc);
  font-size:var(--fs-sm);font-style:normal;font-weight:700;
}
.cfg-role-nav{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
}
.cfg-role-nav a,
.cfg-role-nav button{
  min-height:30px;padding:0 10px;border:1px solid var(--b);border-radius:7px;background:var(--off);
  color:var(--t2);font-size:var(--fs-sm);font-weight:700;text-decoration:none;cursor:pointer;
}
.cfg-role-nav button{
  background:var(--acc-bg);border-color:rgba(37,99,235,.22);color:var(--acc);
}
.system-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.system-metric-card{
  min-height:110px;display:flex;flex-direction:column;justify-content:space-between;
}
.system-dot{
  width:9px;height:9px;border-radius:999px;display:inline-block;margin-right:8px;vertical-align:middle;background:var(--b2);
}
.system-dot.ok{background:var(--grn)}
.system-dot.bad{background:var(--red)}
body[data-view="config"] #contentInner{max-width:none}
body[data-view="system"] .card{border-color:var(--b)}
body[data-view="marfeel"] .card,
body[data-view="history"] .card,
body[data-view="compare"] .card,
body[data-view="discover"] .card,
body[data-view="explainers"] .card,
body[data-view="rss_google"] .card{
  border-color:var(--b);
}
body[data-view="discover"] .sum-block-title{
  min-height:46px;justify-content:flex-start;gap:10px;flex-wrap:wrap;
}
.discover-title-actions{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
}
.discover-title-actions .home-btn{
  margin-left:0!important;
}
.discover-related-head{
  display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:10px;margin-bottom:8px;
}
.discover-related-head strong{
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-base);font-weight:700;color:var(--t);
}
.discover-related-count{
  color:var(--t3);font-size:var(--fs-sm);white-space:nowrap;
}
.discover-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:232px;
}
.discover-action-cell{
  width:124px;text-align:right!important;
}
.discover-action-btn{
  width:112px!important;min-width:112px!important;max-width:112px!important;
}
.discover-trends-btn{
  width:104px!important;min-width:104px!important;max-width:104px!important;
}
.discover-active-btn{
  background:var(--acc-bg)!important;border-color:rgba(37,99,235,.22)!important;color:var(--acc)!important;
}
.discover-related-row-actions{
  display:flex;justify-content:flex-end;gap:6px;min-width:222px;
}
.event-row,.event-item,.comp-row,.sum-kw-card,.kw-item{
  border-radius:7px;
}
.pill,.tbadge,.ac-tag{
  min-height:var(--ui-chip-h);display:inline-flex;align-items:center;
}
.ui-state{
  border-radius:7px;
}
.ui-empty-state{
  min-height:220px;padding:28px!important;background:var(--w);border:1px dashed var(--b);border-radius:7px;
}
.ui-empty-state .empty-title{
  font-size:var(--fs-md);font-weight:700;color:var(--t);
}
.ui-empty-state .empty-sub{
  max-width:440px;font-size:var(--fs-base);line-height:1.6;color:var(--t3);
}
.ui-empty-inline{
  min-height:38px;display:flex;align-items:center;padding:9px 12px;border:1px dashed var(--b);
  border-radius:7px;background:var(--off);color:var(--t3);font-size:var(--fs-sm);
}
.loading.ui-state{
  background:linear-gradient(90deg,transparent,var(--off),transparent);
}
.ui-skeleton-lines{
  display:grid;gap:5px;width:160px;max-width:40vw;
}
.ui-skeleton-lines i{
  display:block;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--off2),var(--b),var(--off2));
  background-size:200% 100%;animation:shimmer 1.2s linear infinite;
}
.ui-skeleton-lines i:nth-child(2){width:78%}
.ui-skeleton-lines i:nth-child(3){width:52%}
.ui-disabled,
button:disabled,
input:disabled,
select:disabled,
textarea:disabled{
  opacity:.58!important;cursor:not-allowed!important;filter:saturate(.75);
}
.ui-busy{
  position:relative;color:transparent!important;pointer-events:none;
}
.ui-busy::after{
  content:"";width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;
  color:#fff;position:absolute;left:50%;top:50%;margin:-7px 0 0 -7px;animation:spin .7s linear infinite;
}
.ui-btn-secondary.ui-busy::after,
.ui-btn-danger.ui-busy::after{color:var(--t3)}
.platform-screen{display:flex;flex-direction:column;gap:var(--ui-gap);width:100%}
.platform-hero{margin-bottom:0!important}
.platform-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ui-gap)}
.platform-metric{min-height:96px;display:flex;flex-direction:column;justify-content:space-between}
.platform-metric-label{font-size:var(--fs-cap);font-weight:700;color:var(--t3)}
.platform-metric-value{font-size:24px;font-weight:var(--fw-bold);color:var(--t);line-height:1.1}
.platform-metric-note{font-size:var(--fs-sm);color:var(--t3)}
.platform-metric-note.good{color:var(--grn-text)}
.platform-metric-note.warn{color:var(--org)}
.platform-metric-note.bad{color:var(--red-text)}
.platform-grid{display:grid;gap:var(--ui-gap)}
.platform-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.platform-table{width:100%;font-size:var(--fs-base)}
.platform-table td:first-child,.platform-table th:first-child{text-align:left}
.platform-bar{height:7px;min-width:90px;border-radius:999px;background:var(--off2);overflow:hidden}
.platform-bar span{display:block;height:100%;border-radius:999px;background:var(--acc)}
.platform-bar span.good{background:var(--grn)}
.platform-bar span.warn{background:var(--org)}
.platform-bar span.bad{background:var(--red)}
.platform-tag{
  min-height:24px;display:inline-flex;align-items:center;justify-content:center;
  padding:0 8px;border-radius:7px;border:1px solid var(--b);
  background:var(--off);color:var(--t2);font-size:var(--fs-sm);font-weight:700;
}
.platform-action{
  color:var(--t2);line-height:1.45;max-width:360px;
}
.users-invite-card{
  display:flex;flex-direction:column;gap:0;
}
.users-form{
  display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(150px,.7fr) auto;
  gap:8px;padding:var(--ui-pad-lg);border-top:1px solid var(--b);
}
.users-form input,
.users-form select,
.users-role-select{
  width:100%;
}
.users-person{
  display:flex;align-items:center;gap:10px;min-width:220px;
}
.users-person strong{
  font-weight:700;color:var(--t);
}
.users-avatar{
  width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;background:var(--acc-bg);border:1px solid rgba(37,99,235,.18);
  color:var(--acc);font-size:var(--fs-sm);font-weight:700;
}
.users-table-card .ui-table td:nth-child(3){
  min-width:150px;
}
.decision-list{
  display:grid;grid-template-columns:1fr;gap:10px;padding:var(--ui-pad);
}
.decision-card{
  min-height:72px;display:flex;align-items:center;gap:12px;
  border:1px solid var(--b);border-radius:var(--radius-sm);background:var(--off);
  padding:12px;
}
.decision-count{
  width:44px;height:44px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:18px;font-weight:var(--fw-bold);border:1px solid var(--b);background:var(--w);color:var(--t);
}
.decision-count.good{background:var(--grn-bg);border-color:var(--grn);color:var(--grn-text)}
.decision-count.warn{background:var(--org-bg);border-color:rgba(234,88,12,.35);color:var(--org)}
.decision-count.bad{background:var(--red-bg);border-color:var(--red);color:var(--red-text)}
.next-action{
  min-height:154px;display:flex;flex-direction:column;justify-content:center;gap:8px;
  padding:var(--ui-pad);background:var(--off);
}
.next-action-title{
  font-size:18px;font-weight:var(--fw-bold);color:var(--t);line-height:1.3;
}
.perf-summary-strip{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-gap);
}
.perf-summary-strip>div{
  min-height:72px;padding:12px 14px;border:1px solid var(--b);border-radius:var(--radius-sm);
  background:var(--w);display:flex;flex-direction:column;justify-content:center;gap:4px;
}
.perf-summary-strip span{
  font-size:var(--fs-cap);font-weight:700;color:var(--t3);
}
.perf-summary-strip strong{
  font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--t);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.perf-domain-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-gap);
}
.perf-domain-card{
  background:var(--w);border:1px solid var(--b);border-radius:var(--radius-md);
  padding:var(--ui-pad);display:flex;flex-direction:column;gap:12px;min-width:0;
}
.perf-domain-head{
  min-height:42px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
}
.perf-domain-name{
  font-size:16px;font-weight:var(--fw-bold);color:var(--t);line-height:1.25;
}
.perf-score-row{
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px;
  padding:8px 0;border-top:1px solid var(--b);border-bottom:1px solid var(--b);
}
.perf-score{
  font-size:30px;font-weight:var(--fw-bold);color:var(--t);line-height:1;
}
.perf-mini-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
.perf-mini{
  border:1px solid var(--b);border-radius:var(--radius-sm);background:var(--off);padding:9px;min-width:0;
}
.perf-mini-head{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;
  font-size:var(--fs-cap);font-weight:var(--fw-bold);color:var(--t2);
}
.perf-mini-value{
  font-size:17px;font-weight:var(--fw-bold);color:var(--t);margin-bottom:3px;font-variant-numeric:tabular-nums;
}
.perf-action{
  min-height:48px;padding:10px 12px;border-radius:var(--radius-sm);
  background:var(--acc-bg);color:var(--t2);font-size:var(--fs-sm);line-height:1.45;
}
.perf-filterbar{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.perf-filterbar select{
  flex:0 0 170px;min-width:150px;
}
.perf-filterbar input{
  flex:1 1 320px;min-width:260px;
}
.perf-metric-cell{
  display:grid;grid-template-columns:1fr;gap:5px;min-width:118px;
}
.perf-metric-cell strong{
  font-variant-numeric:tabular-nums;font-size:var(--fs-base);
}
.perf-dist{
  height:8px;width:100%;display:flex;overflow:hidden;border-radius:999px;background:var(--off2);
}
.perf-dist span{display:block;height:100%}
.perf-dist .good{background:var(--grn)}
.perf-dist .warn{background:var(--org)}
.perf-dist .bad{background:var(--red)}
.perf-spark{
  width:92px;height:32px;display:flex;align-items:flex-end;gap:2px;margin-top:6px;
}
.perf-spark span{
  flex:1;min-width:3px;border-radius:3px 3px 0 0;background:var(--acc);opacity:.72;
}
.perf-spark.empty{
  background:var(--off2);border-radius:6px;
}
.perf-chart-wrap{
  height:320px;padding:16px 18px;
}
.perf-chart-wrap canvas{
  width:100%!important;height:100%!important;
}
.perf-legend{
  display:grid;grid-template-columns:1fr;gap:12px;padding:var(--ui-pad);color:var(--t2);
}
.perf-legend>div{
  display:flex;align-items:center;gap:8px;min-height:28px;
}
.perf-evo-cell{
  display:flex;flex-direction:column;gap:4px;min-width:96px;
}
.perf-evo-cell strong{
  font-variant-numeric:tabular-nums;
}
.perf-command-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ui-gap);
}
.perf-command-card{
  min-height:92px;border:1px solid var(--b);border-radius:var(--radius-md);background:var(--w);
  padding:13px 14px;display:flex;flex-direction:column;justify-content:space-between;gap:6px;
}
.perf-command-card span{
  font-size:var(--fs-cap);font-weight:var(--fw-bold);color:var(--t3);
}
.perf-command-card strong{
  font-size:20px;font-weight:var(--fw-bold);color:var(--t);line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.perf-command-card small{
  font-size:var(--fs-sm);font-weight:600;color:var(--t3);line-height:1.3;
}
.perf-command-card.good{border-color:rgba(22,163,74,.35);background:linear-gradient(180deg,var(--w),var(--grn-bg))}
.perf-command-card.bad{border-color:rgba(220,38,38,.28);background:linear-gradient(180deg,var(--w),var(--red-bg))}
.perf-leader-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:var(--ui-pad);
}
.perf-leader-card{
  border:1px solid var(--b);border-radius:var(--radius-sm);background:var(--off);padding:10px;min-width:0;
}
.perf-leader-title{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;
  font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--t);
}
.perf-leader-title span{
  font-size:10px;font-weight:700;color:var(--t3);white-space:nowrap;
}
.perf-leader-row{
  display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:6px;
  min-height:28px;font-size:var(--fs-sm);border-top:1px solid var(--b);
}
.perf-leader-row span{font-weight:var(--fw-bold);color:var(--t3)}
.perf-leader-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--t2)}
.perf-leader-row em{font-style:normal;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;color:var(--t)}
.perf-leader-row.good span{color:var(--grn-text)}
.perf-leader-row.bad span{color:var(--red-text)}
.perf-issue-list{
  display:grid;grid-template-columns:1fr;gap:8px;padding:var(--ui-pad);
}
.perf-issue-row{
  min-height:58px;display:grid;grid-template-columns:110px minmax(180px,1fr) minmax(240px,1.2fr);
  align-items:center;gap:12px;border:1px solid var(--b);border-radius:var(--radius-sm);background:var(--off);padding:10px 12px;
}
.perf-issue-row strong{display:block;color:var(--t);font-weight:var(--fw-bold)}
.perf-issue-row span{display:block;color:var(--t3);font-size:var(--fs-sm);margin-top:2px}
.perf-block{width:100%;padding:0!important;margin-bottom:0!important;border-radius:7px!important;overflow:hidden}
.perf-block>.card-head{min-height:var(--ui-head-h);padding:0 var(--ui-pad-lg);border-bottom:1px solid var(--b);border-radius:7px 7px 0 0}
.perf-block .sum-block-title{margin:0!important}
.perf-help{
  width:16px;height:16px;border:1px solid var(--b2);border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;margin-left:6px;
  color:var(--t3);font-size:10px;font-weight:var(--fw-bold);vertical-align:middle;
}
.perf-cwv-section{display:grid;gap:10px}
.perf-section-title{font-size:var(--fs-md);font-weight:700;color:var(--t);padding:0 2px}
.perf-cwv-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0!important;padding:0!important}
.perf-ov-box{margin:0!important;min-height:222px;border-radius:7px!important;background:var(--w)!important;padding:16px 18px!important}
.perf-ov-box:hover{transform:none!important}
.perf-cwv-card{
  display:flex;flex-direction:column;gap:12px;border-top:0!important;
}
.perf-card-top{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:34px;
}
.perf-card-top .pill{
  margin-left:auto;height:28px;min-height:28px;padding:0 10px;border-radius:7px;
  font-size:var(--fs-sm);font-weight:var(--fw-semibold);
}
.perf-card-metric{color:var(--t2);font-size:var(--fs-base);font-weight:var(--fw-semibold);line-height:1.2}
.perf-card-note{margin-top:2px;color:var(--t3);font-size:10px;font-weight:var(--fw-medium);line-height:1.2}
.perf-card-value-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.perf-ov-box .ov-val{font-size:30px;font-weight:var(--fw-semibold);line-height:1;color:var(--t)}
.perf-ov-box .ov-val span{font-size:var(--fs-sm);font-weight:var(--fw-regular);color:var(--t3);margin-left:4px}
.perf-card-goal{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:76px;color:var(--t3);font-size:10px;font-weight:var(--fw-medium)}
.perf-card-goal strong{color:var(--t2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap}
.perf-ov-box .ov-sub{font-weight:var(--fw-regular)}
.perf-ov-box .perf-delta{display:inline;font-size:var(--fs-cap);font-weight:var(--fw-medium);margin-left:4px}
.perf-ov-box .platform-bar{margin:9px 0 8px}
.perf-range{margin:18px 0 8px}
.perf-range-track{
  position:relative;height:12px;border-radius:999px;
  background:linear-gradient(90deg,var(--grn) 0 calc(var(--good) - 1px),var(--w) calc(var(--good) - 1px) calc(var(--good) + 1px),var(--org) calc(var(--good) + 1px) calc(var(--warn) - 1px),var(--w) calc(var(--warn) - 1px) calc(var(--warn) + 1px),var(--red) calc(var(--warn) + 1px) 100%);
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.06);
}
.perf-range-track::after{
  content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);pointer-events:none;
}
.perf-range-cut{
  position:absolute;top:-4px;width:2px;height:20px;background:var(--w);box-shadow:0 0 0 1px rgba(15,23,42,.12);transform:translateX(-1px);
}
.perf-range-mark{
  position:absolute;top:-6px;width:2px;height:24px;border-radius:999px;background:var(--t);
  transform:translateX(-1px);box-shadow:0 0 0 2px var(--w);z-index:3;
}
.perf-range-mark em{
  position:absolute;top:-20px;left:50%;transform:translateX(-50%);
  min-width:22px;height:17px;padding:0 5px;border-radius:5px;background:var(--t);color:#fff;
  font-style:normal;font-size:9px;font-weight:var(--fw-bold);line-height:17px;text-align:center;box-shadow:0 1px 2px rgba(15,23,42,.14);
}
.perf-range-mark.market{background:var(--t3)}
.perf-range-mark.market em{background:var(--t3)}
.perf-range-mark.combo{background:var(--acc)}
.perf-range-mark.combo em{background:var(--acc);min-width:34px}
.perf-range-labels{
  display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:8px;color:var(--t3);font-size:10px;font-weight:700;
}
.perf-range-labels span:nth-child(2){text-align:center}
.perf-range-labels span:last-child{text-align:right}
.perf-card-compare{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid var(--b)}
.perf-card-compare-cell{min-width:0;display:grid;grid-template-columns:1fr;gap:3px;padding:9px 10px;border:1px solid var(--b);border-radius:7px;background:var(--off)}
.perf-card-compare-cell span{color:var(--t3);font-size:10px;font-weight:var(--fw-medium);line-height:1}
.perf-card-compare-cell strong{color:var(--t);font-size:var(--fs-base);font-weight:var(--fw-semibold);line-height:1.15;white-space:nowrap}
.perf-card-compare-cell .perf-delta{font-size:var(--fs-sm);line-height:1.1;margin-left:0}
.perf-chart-toolbar{
  min-height:50px;padding:10px 14px;display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--b);background:var(--off);
}
.perf-toolbar-selects{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;flex:0 1 590px;
}
.perf-toolbar-selects select{
  flex:0 0 160px;width:auto;border:1px solid var(--b);border-radius:6px;background:var(--w);color:var(--t);
  font-size:var(--fs-base);font-weight:600;padding:0 10px;min-height:var(--btn-h);outline:none;
}
.perf-toolbar-selects select:focus{
  border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-bg);
}
.perf-multiselect{
  position:relative;display:flex;flex-direction:column;gap:5px;flex:0 1 420px;max-width:520px;
  color:var(--t3);font-size:var(--fs-sm);font-weight:600;
}
.perf-multiselect-btn{
  width:100%;height:var(--btn-h);display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
  background:var(--w)!important;border:1px solid var(--b)!important;border-radius:6px!important;color:var(--t)!important;
  box-shadow:none!important;padding:0 10px!important;
}
.perf-multiselect-btn strong{
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-base);font-weight:500;
}
.perf-multiselect-btn em{
  font-style:normal;color:var(--t3);font-size:10px;font-weight:700;line-height:1;
}
.perf-multiselect.open .perf-multiselect-btn{
  border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-bg);
}
.perf-multiselect-menu{
  display:none;position:absolute;z-index:50;top:calc(100% + 6px);left:0;right:0;max-height:250px;overflow:auto;
  border:1px solid var(--b);border-radius:7px;background:var(--w);box-shadow:var(--sh-lg);padding:6px;
}
.perf-multiselect.open .perf-multiselect-menu{
  display:grid;gap:2px;
}
.perf-check-option{
  min-height:32px;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;
  padding:0 8px;border-radius:5px;color:var(--t2)!important;font-size:var(--fs-base)!important;font-weight:700!important;cursor:pointer;
}
.perf-check-option:hover{
  background:var(--off);
}
.perf-check-option input{
  width:14px!important;min-width:14px!important;max-width:14px!important;height:14px!important;min-height:0!important;flex:0 0 14px!important;padding:0!important;margin:0!important;accent-color:var(--acc);
  appearance:auto!important;-webkit-appearance:auto!important;
}
.perf-chart-flags{
  margin-left:auto;display:flex;align-items:center;gap:18px;flex-wrap:wrap;
}
.perf-chart-flags label{
  display:inline-flex;align-items:center;gap:7px;color:var(--t2);font-size:var(--fs-sm);font-weight:600;white-space:nowrap;
}
.perf-chart-flags input[type="checkbox"]{
  width:14px!important;min-width:14px!important;max-width:14px!important;height:14px!important;min-height:0!important;flex:0 0 14px!important;padding:0!important;margin:0!important;
  appearance:auto!important;-webkit-appearance:auto!important;accent-color:var(--acc);
}
.perf-main-chart{
  height:390px;padding:16px var(--ui-pad-lg) 20px;
}
.perf-main-chart canvas{
  width:100%!important;height:100%!important;
}
.perf-cwv-legend{
  display:flex;align-items:center;gap:8px;padding:10px var(--ui-pad-lg) 0;color:var(--t3);font-size:var(--fs-sm);font-weight:700;
}
.perf-cwv-legend span{
  display:inline-flex;align-items:center;gap:5px;
}
.perf-cwv-legend span::before{
  content:'';width:9px;height:9px;border-radius:50%;display:inline-block;
}
.perf-cwv-legend .good::before{background:var(--grn)}
.perf-cwv-legend .warn::before{background:var(--org)}
.perf-cwv-legend .bad::before{background:var(--red)}
.perf-market-chart{
  height:380px;padding:16px var(--ui-pad-lg) 20px;
}
.perf-market-chart canvas{
  width:100%!important;height:100%!important;
}

.perf-url-tools{
  display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:start;padding:var(--ui-pad);border-top:1px solid var(--b);
}
.perf-url-tools textarea{
  width:100%;resize:vertical;min-height:74px;border:1px solid var(--b);border-radius:7px;background:var(--w);color:var(--t);
  padding:10px 12px;font-family:var(--sans);font-size:var(--fs-base);outline:none;
}
.perf-url-tools textarea:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-bg)}
.perf-url-grid{
  display:grid;grid-template-columns:1fr;gap:var(--ui-gap);padding:0 var(--ui-pad) var(--ui-pad);
}
.perf-url-chart{
  height:390px;border:1px solid var(--b);border-radius:7px;background:var(--w);padding:12px;
}
.perf-url-chart canvas{width:100%!important;height:100%!important}
.perf-url-empty{margin:0 var(--ui-pad) var(--ui-pad)}
.perf-saved-urls{padding:0 var(--ui-pad) var(--ui-pad)}
.perf-url-select-cell{
  width:42px;text-align:center!important;
}
.perf-url-row-check{
  width:14px!important;min-width:14px!important;max-width:14px!important;height:14px!important;min-height:0!important;
  padding:0!important;margin:0!important;accent-color:var(--acc);appearance:auto!important;-webkit-appearance:auto!important;
}
.perf-ranking-card .ui-table{
  min-width:980px;
  font-size:var(--fs-sm);
}
.perf-ranking-card .ui-table th{
  vertical-align:middle;
}
.perf-ranking-card .ui-table th.perf-th-num{
  text-align:right;
}
.perf-ranking-card tbody tr.owned td{
  background:var(--acc-bg)!important;
}
.perf-pos{
  width:64px;text-align:right!important;color:var(--t3);font-weight:var(--fw-bold);
}
.perf-domain-link{
  color:#155dfc;font-weight:var(--fw-bold);
}
.perf-domain-cell{
  display:flex;align-items:center;gap:8px;min-width:0;
}
.perf-domain-cell img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;flex:0 0 var(--ui-source-icon);object-fit:cover;border:1px solid var(--b);background:var(--off2);
}
.perf-domain-main{
  display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap;
}
.perf-gfk-pill{
  height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border-radius:7px;
  background:var(--off);border:1px solid var(--b);color:var(--t3);font-size:var(--fs-sm);font-weight:700;
}
.perf-rank-cell{
  text-align:right!important;font-variant-numeric:tabular-nums;min-width:118px;
}
.perf-rank-top{
  display:flex;align-items:center;justify-content:flex-end;
}
.perf-rank-badge{
  min-width:34px;height:24px;padding:0 9px;border-radius:7px;display:inline-flex!important;align-items:center;justify-content:center;
  color:var(--t3);background:var(--off2);border:1px solid transparent;font-size:var(--fs-sm)!important;font-weight:var(--fw-bold);line-height:1!important;
}
.perf-rank-badge.gold{background:var(--acc-bg);color:var(--acc)}
.perf-rank-badge.silver{background:var(--grn-bg);color:var(--grn)}
.perf-rank-badge.bronze{background:var(--org-bg);color:var(--org)}
.perf-rank-badge.muted{color:var(--t3)}
.perf-rank-cell small{
  color:var(--t3);font-size:10px;font-weight:700;line-height:1.1;
}
.perf-rank-cell strong{
  display:block;color:var(--t);font-size:var(--fs-base);font-weight:700;line-height:1.2;
}
.perf-rank-sub{
  margin-top:4px;display:flex;align-items:center;justify-content:flex-end;gap:5px;
}
.perf-rank-cell strong.good{color:var(--grn)}
.perf-rank-cell strong.bad{color:var(--org)}
.perf-delta{
  display:block;font-size:var(--fs-sm);font-weight:var(--fw-bold);line-height:1.2;
}
.perf-delta.good{color:var(--grn)}
.perf-delta.bad{color:var(--red)}
.perf-delta.same{color:var(--t3)}
.perf-trendbar{
  width:86px;height:5px;margin:6px 0 0 auto;border-radius:999px;background:var(--off2);overflow:hidden;
}
.perf-trendbar span{
  display:block;height:100%;border-radius:999px;
}
.perf-trendbar .good{background:var(--grn)}
.perf-trendbar .warn{background:var(--org)}
.perf-trendbar .bad{background:var(--red)}
.perf-trendbar .same{background:var(--b2)}
.editorial-filterbar{
  gap:8px;padding:12px var(--ui-pad);border-bottom:0;align-items:center;
}
.editorial-filterbar input,
.editorial-filterbar select{
  min-height:38px;border-radius:7px;
}
.headline-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.headline-page{
  display:grid;gap:var(--ui-gap);
}
.headline-top-grid{
  align-items:stretch;
}
.headline-source-block,
.headline-trends-block,
.headline-proposal-block,
.headline-history-block{
  margin:0;overflow:hidden;
}
.headline-mini-table{
  padding:0;
}
.headline-mini-table table{
  width:100%;border-collapse:collapse;
}
.headline-mini-table td{
  padding:10px 12px;border-bottom:1px solid var(--b);vertical-align:middle;
}
.headline-mini-table tr:last-child td{
  border-bottom:0;
}
.headline-minute-row{
  display:flex;align-items:center;gap:8px;min-width:0;
}
.headline-minute-row img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;flex:0 0 var(--ui-source-icon);object-fit:cover;border:1px solid var(--b);background:var(--off2);
}
.headline-minute-row a,
.headline-trend-link{
  min-width:0;color:var(--t);font-size:var(--fs-sm);font-weight:650;line-height:1.3;text-decoration:none;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.headline-trend-link{
  padding:0;border:0;background:transparent;text-align:left;cursor:pointer;
}
.headline-minute-row a:hover,
.headline-trend-link:hover{
  color:var(--acc);
}
.headline-mini-table .ranknum{
  width:28px;height:28px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--off);color:var(--t3);font-size:var(--fs-sm);font-weight:700;flex:0 0 auto;
}
.headline-grid{
  display:grid;grid-template-columns:1fr;gap:var(--ui-gap);
}
.headline-proposal-block .headline-grid{
  padding:var(--ui-gap);
}
.headline-card{
  padding:0;overflow:hidden;
}
.headline-source{
  min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px var(--ui-pad);
  border-bottom:1px solid var(--b);background:var(--w);
}
.headline-potential{
  display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;
}
.headline-potential span{
  color:var(--t3);font-size:var(--fs-sm);font-weight:600;
}
.headline-potential strong{
  min-width:38px;height:30px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--acc-bg);color:var(--acc);font-size:var(--fs-base);font-weight:700;
}
.headline-source span,
.sitemap-source,
.sitemap-table-source{
  display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--t2);font-size:var(--fs-sm);font-weight:600;
}
.headline-source img,
.sitemap-source img,
.sitemap-table-source img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;flex:0 0 var(--ui-source-icon);object-fit:cover;border:1px solid var(--b);background:var(--off2);
}
.headline-original{
  padding:14px var(--ui-pad) 6px;color:var(--t);font-size:var(--fs-md);font-weight:650;line-height:1.35;
}
.headline-url{
  display:block;padding:0 var(--ui-pad) 10px;color:var(--t3);font-size:var(--fs-sm);line-height:1.35;text-decoration:none;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.headline-url:hover{color:var(--acc)}
.headline-url-inline{
  color:var(--acc);font-size:var(--fs-sm);font-weight:650;text-decoration:none;
}
.headline-url-inline:hover{text-decoration:underline}
.headline-tags{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0 var(--ui-pad) 12px;
}
.headline-proposals{
  display:grid;gap:8px;padding:12px var(--ui-pad);border-top:1px solid var(--b);background:var(--off);
}
.headline-proposal{
  display:grid;grid-template-columns:minmax(0,1fr) 46px auto;align-items:center;gap:10px;padding:10px 10px;
  border:1px solid var(--b);border-radius:7px;background:var(--w);
}
.headline-proposal.approved{
  border-color:rgba(37,99,235,.22);background:var(--w);
}
.headline-proposal.rejected{
  opacity:.72;
}
.headline-proposal-title{
  color:var(--t);font-size:var(--fs-base);font-weight:650;line-height:1.35;
}
.headline-proposal-meta{
  margin-top:3px;color:var(--t3);font-size:var(--fs-sm);line-height:1.35;
}
.headline-proposal-score{
  width:38px;height:30px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--acc-bg);color:var(--acc);font-size:var(--fs-sm);font-weight:700;
}
.headline-proposal .ui-actions{
  display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:nowrap;
}
.headline-proposal .home-btn.small,
.headline-approved-state{
  height:34px!important;min-height:34px!important;width:104px;justify-content:center;box-sizing:border-box;
}
.headline-request-btn{
  width:112px!important;min-width:112px!important;max-width:112px!important;
}
.headline-approved-state{
  border-color:rgba(37,99,235,.22)!important;background:var(--acc-bg)!important;color:var(--acc)!important;
  cursor:default;pointer-events:none;
}
.sitemap-toolbar,
.sitemap-live-panel{
  min-height:58px;display:flex;align-items:center;padding:10px var(--ui-pad);
}
.sitemap-live-panel{
  display:block;padding:0;overflow:hidden;
}
.sitemap-toolbar .ui-actions{
  width:100%;justify-content:flex-end;gap:8px;
}
.sitemap-live-head{
  min-height:58px;align-items:center;
}
.sitemap-live-head .ui-actions{
  margin-left:auto;justify-content:flex-end;gap:8px;flex-wrap:wrap;
}
.sitemap-source-row{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px var(--ui-pad);border-top:1px solid var(--b);
}
.sitemap-source-chip{
  min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--b);
  border-radius:7px;background:var(--w);color:var(--t2);font-size:var(--fs-sm);font-weight:600;cursor:pointer;
}
.sitemap-source-chip:hover{
  border-color:rgba(37,99,235,.28);background:var(--acc-bg);color:var(--acc);
}
.sitemap-source-chip.active{
  border-color:rgba(37,99,235,.35);background:var(--acc-bg);color:var(--acc);
}
.sitemap-source-chip img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;object-fit:cover;border:1px solid var(--b);background:var(--off2);
}
.sitemap-source-chip b{
  color:var(--t3);font-weight:650;
}
.sitemap-grid{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--ui-gap);
}
.sitemap-page{
  display:grid;gap:var(--ui-gap);
}
.sitemap-head{
  margin-bottom:0;
}
.sitemap-filterbar{
  min-height:58px;padding:10px 12px!important;border-bottom:1px solid var(--b);
  align-items:center;box-shadow:none;
}
.sitemap-filterbar .live-account-primary{
  gap:12px;
}
.sitemap-news-card{
  min-width:0;border:1px solid var(--b);border-radius:7px;background:var(--w);overflow:hidden;box-shadow:var(--shadow-sm);
}
.sitemap-news-card.owned{
  border-color:rgba(37,99,235,.42);box-shadow:0 0 0 1px rgba(37,99,235,.18);
}
.sitemap-media{
  position:relative;aspect-ratio:16/9;background:var(--off2);overflow:hidden;
}
.sitemap-media img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.sitemap-media span{
  position:absolute;left:9px;top:9px;min-width:24px;height:24px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.08);color:var(--t2);font-size:var(--fs-sm);font-weight:700;
}
.sitemap-body{
  display:flex;flex-direction:column;gap:8px;padding:12px;
}
.sitemap-title{
  min-height:58px;color:var(--t);font-size:var(--fs-sm);font-weight:650;line-height:1.38;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.sitemap-tags,
.sitemap-quality-row{
  display:flex;align-items:center;gap:5px;flex-wrap:wrap;
}
.sitemap-tags button{
  min-height:24px;border:1px solid var(--b);border-radius:7px;background:var(--off);color:var(--t2);
  padding:0 8px;font-size:var(--fs-sm);font-weight:600;cursor:pointer;
}
.sitemap-quality{
  min-height:23px;display:inline-flex;align-items:center;padding:0 7px;border-radius:7px;font-size:var(--fs-cap);font-weight:650;border:1px solid var(--b);
}
.sitemap-quality.good{background:var(--grn-bg);border-color:rgba(22,163,74,.22);color:var(--grn)}
.sitemap-quality.bad{background:var(--red-bg);border-color:rgba(220,38,38,.22);color:var(--red)}
.sitemap-quality.live{background:var(--acc-bg);border-color:rgba(37,99,235,.22);color:var(--acc)}
.sitemap-foot{
  display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px;
}
.sitemap-foot span{
  min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:7px;background:var(--acc-bg);color:var(--acc);
  font-size:var(--fs-sm);font-weight:650;
}
.sitemap-foot strong{
  color:var(--t2);font-size:var(--fs-sm);font-weight:650;
}
body[data-view="sitemaps"] .card:hover,
body[data-view="sitemap"] .card:hover{
  transform:none;
}
.social-panel-head{
  min-height:0;
  padding:14px 18px;
}
.card-title-wrap{
  flex:1;min-width:160px;display:flex;flex-direction:column;gap:2px;
}
.social-head-actions{
  margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;
}
.period-range-controls{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.period-range-controls span:first-child{
  color:var(--t2);font-size:12px;font-weight:700;
}
.period-range-controls input[type=date]{
  width:142px!important;height:36px;min-height:36px;border-radius:7px;background:var(--w);
  border:1px solid var(--b);color:var(--t2);font-size:12px;font-weight:700;padding:0 10px;
}
.period-range-controls input[type=date]:focus{
  border-color:var(--acc);
}
.stabs{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.stab{
  min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;
  border:1px solid var(--b);border-radius:7px;background:var(--off);color:var(--t2);
  font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;
}
.stab.active{
  background:var(--t);border-color:var(--t);color:#fff;
}
.fbar-cnt{
  padding:0 10px;min-height:28px;display:inline-flex;align-items:center;border:1px solid var(--b);
  border-radius:7px;background:var(--w);font-size:12px!important;font-weight:700;color:var(--t3);white-space:nowrap;
}
.live-account-filter{
  padding:10px 14px;display:flex;gap:8px;background:var(--w);border-bottom:1px solid var(--b);
  min-width:0;overflow:visible;
}
.live-account-primary{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0;
}
.live-source-group{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;
}
.live-account-chip{
  min-height:32px;display:inline-flex;align-items:center;gap:6px;max-width:175px;padding:4px 9px;
  border:1px solid var(--b);border-radius:8px;background:var(--off);color:var(--t2);
  font-size:var(--fs-sm)!important;font-weight:var(--fw-semibold)!important;cursor:pointer;flex:0 1 auto;
}
.live-account-chip span{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.live-all-chip{
  flex:0 0 auto;
}
.live-more-menu{
  position:relative;flex:0 0 auto;
}
.live-more-menu>summary{
  list-style:none;
}
.live-more-menu>summary::-webkit-details-marker{display:none}
.live-more-panel{
  position:absolute;right:0;top:42px;z-index:30;width:260px;max-height:320px;overflow:auto;
  padding:8px;border:1px solid var(--b);border-radius:8px;background:var(--w);box-shadow:0 14px 32px rgba(15,23,42,.16);
  display:flex;flex-direction:column;gap:7px;
}
.live-more-panel .live-account-chip{
  width:100%;max-width:none;justify-content:flex-start;
}
.live-content-filters{
  min-height:54px;padding:10px 14px;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;
  background:var(--off);border-bottom:1px solid var(--b);
}
.live-inline-filters{
  margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0;
}
.live-inline-filters select{
  width:168px!important;min-width:0;height:32px;min-height:32px;border:1px solid var(--b);
  border-radius:7px;background:var(--w);color:var(--t2);padding:0 26px 0 9px;font-size:11px;font-weight:700;
}
.sitemap-clear-btn{
  height:32px!important;min-height:32px!important;white-space:nowrap;
}
.live-content-filters select{
  width:auto!important;flex:0 0 190px;max-width:230px;min-height:34px;min-width:0;border:1px solid var(--b);border-radius:7px;background:var(--w);color:var(--t2);
  padding:0 28px 0 10px;font-size:12px;font-weight:700;
}
.live-content-filters .ui-btn{
  flex:0 0 auto;width:auto!important;
}
.live-account-chip b{
  font-size:var(--fs-sm);color:var(--t3);font-weight:var(--fw-semibold);
}
.live-account-chip.active{
  background:var(--acc-bg);border-color:var(--acc);color:var(--acc);
}
.live-account-chip.active b{color:var(--acc)}
.live-type-badge{
  min-height:var(--ui-chip-h);display:inline-flex;align-items:center;padding:0 8px;border-radius:7px;
  background:var(--off);border:1px solid var(--b);color:var(--t2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);
}
.live-type-badge.directo{background:var(--acc-bg);border-color:rgba(37,99,235,.24);color:var(--acc)}
.live-type-badge.opinion{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}
.live-type-badge.reportaje{background:var(--grn-bg);border-color:rgba(22,163,74,.24);color:var(--grn)}
.live-type-badge.entrevista{background:#ecfeff;border-color:#a5f3fc;color:#0e7490}
.live-type-badge.cronica{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}
.live-type-badge.guia{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}
.live-type-badge.lista{background:#fff7ed;border-color:#fed7aa;color:#c2410c}
.live-type-badge.analisis{background:var(--org-bg);border-color:rgba(234,88,12,.24);color:var(--org)}
.live-type-badge.video,.live-type-badge.galeria{background:var(--red-bg);border-color:rgba(220,38,38,.20);color:var(--red)}
.social-avatar{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;object-fit:cover;border:1px solid var(--b);background:var(--off2);margin-right:2px;flex:0 0 var(--ui-source-icon);
}
.social-card-list{
  padding:14px 18px 18px;background:var(--w);display:flex;flex-direction:column;gap:8px;
}
.live-card-list{display:block;min-height:0}
.sum-grid{
  display:grid;gap:12px;
}
.ov-preview-compact{
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:0;margin-bottom:0;
}
.live-card-grid{
  margin:0;padding:0;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px;align-items:start;
}
.validation-page{
  display:grid;gap:var(--ui-gap);
}
.validation-head{
  margin-bottom:0;
}
.validation-toolbar{
  min-height:58px;padding:10px 12px;display:grid;grid-template-columns:minmax(260px,1fr) 170px 190px 190px auto;align-items:center;gap:8px;
}
.validation-toolbar input,
.validation-toolbar select{
  width:100%!important;min-height:36px;height:36px;border-radius:7px;font-size:12px;font-weight:700;background:var(--w);
}
.validation-clear-btn{
  height:36px!important;min-height:36px!important;white-space:nowrap;
}
.validation-table-card{
  overflow:hidden;
}
.validation-table-card .ui-table{
  min-width:980px;
}
.validation-table-card .ui-table th:nth-child(2),
.validation-table-card .ui-table td:nth-child(2){
  width:132px;text-align:left;
}
.validation-table-card .ui-table th:nth-child(3),
.validation-table-card .ui-table td:nth-child(3){
  width:170px;text-align:left;
}
.validation-table-card .ui-table th:nth-child(4),
.validation-table-card .ui-table td:nth-child(4){
  width:430px;text-align:left;
}
.validation-table-card .ui-table td{
  height:54px;
}
.validation-table-card .live-type-badge{
  min-width:82px;height:24px;min-height:24px;justify-content:center;font-size:10px;
}
.validation-title-cell{
  display:flex;align-items:flex-start;gap:8px;min-width:0;
}
.validation-title-cell img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;border:1px solid var(--b);margin-top:1px;flex:0 0 var(--ui-source-icon);object-fit:cover;background:var(--off2);
}
.validation-title-cell a{
  color:var(--t);font-size:var(--fs-base);font-weight:var(--fw-bold);line-height:1.28;text-decoration:none;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.validation-chip-row{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0;
}
.validation-chip{
  width:112px;min-height:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;border-radius:7px;
  border:1px solid var(--b);background:var(--off);color:var(--t2);font-size:11px;font-weight:var(--fw-semibold);
  font-family:inherit;line-height:1;white-space:nowrap;
}
button.validation-chip{appearance:none;cursor:default}
.validation-chip.good{
  background:var(--grn-bg);border-color:rgba(22,163,74,.24);color:var(--grn);
}
.validation-chip.bad{
  background:var(--red-bg);border-color:rgba(220,38,38,.24);color:var(--red);
}
.validation-chip.is-clickable{cursor:pointer}
.validation-chip.is-clickable:hover{box-shadow:inset 0 0 0 1px currentColor;background:#fff1f2}
.validation-status{
  min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:7px;
  border:1px solid var(--b);font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;
}
.validation-status.ok{background:var(--grn-bg);border-color:rgba(22,163,74,.24);color:var(--grn)}
.validation-status.warn{background:var(--org-bg);border-color:rgba(234,88,12,.24);color:var(--org)}
.validation-status.error{background:var(--red-bg);border-color:rgba(220,38,38,.24);color:var(--red)}
.validation-score{
  width:142px;display:grid;gap:7px;
}
.validation-score-top{
  display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--t2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:1;
}
.validation-score-top b{
  color:var(--t3);font-size:11px;font-weight:var(--fw-semibold);
}
.validation-score-bar{
  height:8px;border-radius:999px;background:var(--off2);border:1px solid var(--b);overflow:hidden;
}
.validation-score-bar i{
  display:block;height:100%;border-radius:999px;background:var(--grn);
}
.validation-score.warn .validation-score-top span{color:var(--org)}
.validation-score.warn .validation-score-bar i{background:var(--org)}
.validation-score.error .validation-score-top span{color:var(--red)}
.validation-score.error .validation-score-bar i{background:var(--red)}
.validation-detail{
  border:1px solid var(--b);border-radius:7px;background:var(--w);padding:12px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.validation-detail-label{
  display:inline-flex;align-items:center;min-height:23px;padding:0 7px;border-radius:7px;
  background:var(--red-bg);border:1px solid rgba(220,38,38,.24);color:var(--red);
  font-size:10px;font-weight:var(--fw-semibold);margin-bottom:7px;
}
.validation-detail-title{
  color:var(--t);font-size:13px;font-weight:var(--fw-bold);line-height:1.28;margin-bottom:3px;
}
.validation-config-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-bottom:10px;
}
.validation-check-setting{
  min-height:34px;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--b);
  border-radius:7px;background:var(--off);font-size:12px;font-weight:700;color:var(--t2);
}
.validation-check-setting input{width:auto;min-height:0}
.validation-number-row{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;
}
.gsc-page{
  display:grid;gap:var(--ui-gap);
}
.gsc-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-gap);
}
.gsc-card{
  overflow:hidden;
}
.gsc-wide-card{
  min-height:280px;
}
.gsc-day-list{
  padding:12px;display:grid;gap:8px;
}
.gsc-day-row{
  display:grid;grid-template-columns:52px minmax(0,1fr) 88px 70px;align-items:center;gap:10px;
  min-height:30px;color:var(--t2);font-size:12px;font-weight:650;
}
.gsc-day-row b{
  color:var(--t);font-weight:var(--fw-semibold);text-align:right;
}
.gsc-day-row em{
  color:var(--t3);font-style:normal;text-align:right;
}
.gsc-day-bar,
.gsc-dist-bar{
  height:8px;border-radius:999px;background:var(--off2);overflow:hidden;
}
.gsc-day-bar i,
.gsc-dist-bar i{
  display:block;height:100%;border-radius:999px;background:var(--acc);
}
.gsc-dist-list{
  padding:12px;display:grid;gap:11px;
}
.gsc-dist-row{
  display:grid;grid-template-columns:130px minmax(0,1fr) 44px;align-items:center;gap:10px;
  color:var(--t2);font-size:12px;font-weight:650;
}
.gsc-dist-row b{
  color:var(--t);font-weight:var(--fw-semibold);text-align:right;
}
.gsc-dist-bar .good{background:var(--grn)}
.gsc-dist-bar .warn{background:var(--org)}
.gsc-dist-bar .bad{background:var(--red)}
.gsc-dist-bar .same{background:#94a3b8}
.gsc-note{
  padding:12px;color:var(--t2);font-size:12px;line-height:1.55;
}
@media(max-width:1100px){
  .gsc-grid{grid-template-columns:1fr}
  .gsc-day-row{grid-template-columns:48px minmax(0,1fr) 74px}
  .gsc-day-row em{display:none}
}
.social-post-card,
.ov-preview-card{
  border:1px solid var(--b);border-radius:7px;background:var(--w);overflow:hidden;cursor:pointer;transition:.16s ease;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.social-post-card:hover,
.ov-preview-card:hover{
  transform:none!important;box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.ov-preview-card,
.live-news-card{
  display:flex;flex-direction:column;height:248px;position:relative;overflow:hidden;
}
.ov-preview-card.is-lv-post{
  border-color:#2563eb;box-shadow:0 0 0 1px rgba(37,99,235,.28),0 12px 28px rgba(37,99,235,.10);
}
.ov-preview-card.is-lv-post .ov-preview-rank{background:#2563eb}
.social-media,
.ov-preview-media{
  position:relative;flex:0 0 112px;height:112px;min-height:112px;margin:0;border:0;border-radius:0;background:var(--off2);overflow:hidden;
}
.social-media img,
.ov-preview-media img{
  width:100%;height:112px;min-height:112px;object-fit:cover;display:block;position:relative;z-index:1;
}
.ov-preview-rank{
  position:absolute;left:8px;top:8px;width:28px;height:28px;display:grid;place-items:center;
  border-radius:7px;background:rgba(15,23,42,.88);color:#fff;font-size:12px;font-weight:var(--fw-bold);z-index:2;
}
.ov-preview-body{
  display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:10px 12px;
}
.ov-post-ranked-media{
  display:flex;align-items:center;gap:5px;color:var(--t3);font-size:12px!important;font-weight:700!important;margin-bottom:3px;
}
.ov-post-ranked-media img{
  width:var(--ui-source-icon);height:var(--ui-source-icon);border-radius:50%;object-fit:cover;border:1px solid var(--b);background:var(--off2);flex:0 0 var(--ui-source-icon);
}
.ov-preview-title{
  color:var(--t);font-size:12px!important;font-weight:700!important;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.ov-preview-foot{
  margin-top:auto!important;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;
  font-size:12px!important;font-weight:400!important;color:var(--t3);
}
.ov-preview-foot strong{
  color:var(--t);font-size:12px;font-weight:600;
}
.ov-content-type-text{
  color:var(--t3)!important;font-size:11px!important;font-weight:700!important;line-height:1;
}
.live-time-badge{
  min-height:24px;display:inline-flex;align-items:center;padding:0 8px;border:1px solid rgba(102,126,234,.25);
  border-radius:7px;background:var(--acc-bg);color:var(--acc)!important;font-size:12px;font-weight:600!important;
}
.ov-neighbor-empty{
  padding:18px;color:var(--t3);font-size:13px;
}
body[data-view="sitemaps"] .sitemap-live-view{
  margin:0;
}
body[data-view="sitemaps"] .sitemap-live-view>.card-head{
  border-bottom:1px solid var(--b);
}
.trending-page{
  display:grid;
  gap:var(--ui-gap);
}
.trending-source-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:10px;
}
.trending-source-card{
  min-width:0;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--w);
  padding:12px;
}
.trending-source-head{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  margin-bottom:9px;
}
.trending-source-head strong{
  min-width:0;
  color:var(--t);
  font-size:12px;
  font-weight:var(--fw-bold);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.trending-source-count{
  color:var(--t);
  font-size:22px;
  font-weight:var(--fw-bold);
  line-height:1;
}
.trending-source-note{
  min-height:34px;
  color:var(--t3);
  font-size:11px;
  line-height:1.45;
  margin-top:6px;
}
.trending-source-best{
  margin-top:9px;
  padding-top:9px;
  border-top:1px solid var(--b);
  display:grid;
  gap:2px;
}
.trending-source-best span{
  color:var(--t3);
  font-size:10px;
  font-weight:var(--fw-bold);
}
.trending-source-best b{
  color:var(--t2);
  font-size:11px;
  font-weight:var(--fw-bold);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.trending-source-pill,
.trending-status,
.trending-score,
.trending-growth{
  min-height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:7px;
  font-size:11px;
  font-weight:var(--fw-bold);
  line-height:1;
  white-space:nowrap;
}
.trending-source-pill{
  padding:0 8px;
  border:1px solid var(--b);
  background:var(--off);
  color:var(--t2);
}
.trending-source-pill.google{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}
.trending-source-pill.tiktok{background:#fdf2f8;border-color:#fbcfe8;color:#be185d}
.trending-source-pill.instagram{background:#fff7ed;border-color:#fed7aa;color:#c2410c}
.trending-source-pill.x{background:#ecfeff;border-color:#a5f3fc;color:#0e7490}
.trending-source-pill.facebook{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.trending-source-pill.news{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}
.trending-source-pill.serp{background:var(--acc-bg);border-color:rgba(102,126,234,.32);color:var(--acc)}
.trending-source-pill.marfeel{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}
.trending-status{
  margin-left:auto;
  padding:0 7px;
  border:1px solid var(--b);
  background:var(--off2);
  color:var(--t3);
  font-size:10px;
}
.trending-status.connected{background:var(--grn-bg);border-color:rgba(22,163,74,.24);color:var(--grn)}
.trending-status.pending{background:var(--off2);border-color:var(--b);color:var(--t3)}
.trending-status.error{background:var(--red-bg);border-color:rgba(220,38,38,.24);color:var(--red)}
.trending-toolbar{
  min-height:58px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.trending-toolbar input{
  flex:1 1 320px;
}
.trending-toolbar select{
  width:auto!important;
  flex:0 0 210px;
}
.trending-main-cell{
  display:grid;
  grid-template-columns:28px 34px minmax(0,1fr);
  align-items:center;
  gap:9px;
  min-width:260px;
}
.trending-main-cell strong{
  color:var(--t);
  font-size:13px;
  font-weight:var(--fw-bold);
  line-height:1.25;
}
.trending-rank{
  color:var(--t3);
  font-size:12px;
  font-weight:var(--fw-bold);
  text-align:right;
}
.trending-score{
  width:34px;
  color:var(--t2);
  background:var(--off2);
  border:1px solid var(--b);
}
.trending-score.hot{background:var(--red-bg);border-color:rgba(220,38,38,.24);color:var(--red)}
.trending-score.warm{background:var(--org-bg);border-color:rgba(234,88,12,.24);color:var(--org)}
.trending-score.ok{background:var(--acc-bg);border-color:rgba(102,126,234,.25);color:var(--acc)}
.trending-score.soft{background:var(--off2);border-color:var(--b);color:var(--t3)}
.trending-pill-row,
.trending-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.trending-growth{
  padding:0 8px;
  border:1px solid var(--b);
  background:var(--off);
  color:var(--t3);
}
.trending-growth.up{background:var(--grn-bg);border-color:rgba(22,163,74,.24);color:var(--grn)}
.trending-growth.hot{background:var(--red-bg);border-color:rgba(220,38,38,.24);color:var(--red)}
.trending-table td{
  vertical-align:middle;
}
.trending-empty{
  min-height:220px;
}
.cfg-subpanel{
  margin:10px 0;
  padding:12px;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--off);
}
.trending-config-checks{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:8px;
  margin:8px 0 10px;
}
.trending-config-checks label{
  min-height:34px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--w);
  color:var(--t2);
  font-size:12px;
  font-weight:var(--fw-semibold);
}
.trending-config-checks input{
  width:auto;
  min-height:0;
}
.trending-endpoint-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.social-trend-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--ui-gap);
}
.social-trend-section{
  min-width:0;
  overflow:hidden;
}
.social-trend-section-head{
  min-height:58px;
}
.social-trend-head-right{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.social-trend-list,
.twitter-topic-list{
  padding:10px;
  display:grid;
  gap:8px;
}
.social-video-grid{
  padding:10px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.social-native-card{
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--w);
  overflow:hidden;
  padding:10px;
}
a.social-native-card,
a.social-trend-card,
a.twitter-topic-row,
a.social-facebook-card{
  color:inherit;
  text-decoration:none;
}
a.social-native-card,
a.social-trend-card,
a.twitter-topic-row,
a.social-facebook-card{
  cursor:pointer;
}
.social-native-top{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  align-items:center;
  gap:9px;
  margin-bottom:10px;
}
.social-native-top strong{
  color:var(--t);
  font-size:13px;
  font-weight:var(--fw-bold);
  line-height:1.25;
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.social-native-top span{
  color:var(--t3);
  font-size:11px;
  font-weight:700;
}
.social-native-embed{
  width:100%;
  aspect-ratio:9/16;
  min-height:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--off);
}
.social-native-embed iframe{
  width:100%;
  height:100%;
  min-height:0;
  border:0;
  display:block;
}
.social-native-embed blockquote{
  margin:0!important;
  max-width:100%!important;
}
.social-native-preview{
  position:relative;
  aspect-ratio:9/16;
  min-height:0;
  border:1px solid var(--b);
  border-radius:7px;
  background:linear-gradient(160deg,#111827,#374151);
  overflow:hidden;
  display:grid;
  place-items:center;
}
.social-native-preview.instagram{
  background:linear-gradient(160deg,#7c2d12,#be185d 45%,#4f46e5);
}
.social-native-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.social-native-play{
  position:absolute;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.92);
  color:#111827;
  font-size:20px;
  font-weight:var(--fw-bold);
  padding-left:3px;
}
.social-native-brand{
  position:absolute;
  left:10px;
  bottom:10px;
  min-height:26px;
  display:inline-flex;
  align-items:center;
  padding:0 9px;
  border-radius:7px;
  background:rgba(15,23,42,.78);
  color:#fff;
  font-size:11px;
  font-weight:var(--fw-bold);
}
.social-trend-stats.native{
  padding-top:10px;
}
.social-facebook-grid{
  padding:10px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--ui-gap);
}
.social-facebook-card{
  color:inherit;
  text-decoration:none;
}
.social-trend-card{
  display:grid;
  grid-template-columns:30px 78px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:88px;
  padding:8px;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--w);
}
.social-trend-rank,
.twitter-topic-rank{
  color:var(--t3);
  font-size:12px;
  font-weight:var(--fw-bold);
  text-align:center;
}
.social-trend-thumb{
  width:78px;
  aspect-ratio:16/10;
  border-radius:7px;
  overflow:hidden;
  background:var(--off2);
  border:1px solid var(--b);
  display:grid;
  place-items:center;
}
.social-trend-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.social-trend-thumb span{
  color:var(--t3);
  font-size:12px;
  font-weight:var(--fw-bold);
}
.social-trend-body{
  min-width:0;
}
.social-trend-title{
  color:var(--t);
  font-size:13px;
  font-weight:var(--fw-bold);
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.social-trend-meta{
  margin-top:2px;
  color:var(--t3);
  font-size:11px;
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.social-trend-stats,
.twitter-topic-stats{
  margin-top:7px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:var(--t3);
  font-size:11px;
  font-weight:700;
  line-height:1.35;
}
.social-trend-stats span,
.twitter-topic-stats span{
  min-height:auto;
  display:inline;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--t3);
  font-size:11px;
  font-weight:700;
}
.social-trend-stats b,
.twitter-topic-stats b{
  color:var(--t2);
  font-size:11px;
  font-weight:var(--fw-bold);
}
.social-trend-stats .trending-growth,
.twitter-topic-stats .trending-growth{
  min-height:auto;
  display:inline;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--grn);
}
.social-trend-stats .trending-growth.hot,
.twitter-topic-stats .trending-growth.hot{
  background:transparent;
  border-color:transparent;
  color:var(--red);
}
.social-trend-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.twitter-topic-row{
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:9px 10px;
  border:1px solid var(--b);
  border-radius:7px;
  background:var(--w);
}
.twitter-topic-main{
  min-width:0;
  display:grid;
  gap:2px;
}
.twitter-topic-main strong{
  color:var(--t);
  font-size:13px;
  font-weight:var(--fw-bold);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.twitter-topic-main span{
  color:var(--t3);
  font-size:11px;
  font-weight:700;
}
.social-trend-empty{
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:24px;
  color:var(--t3);
  text-align:center;
}
.social-trend-empty strong{
  color:var(--t2);
  font-size:14px;
}
.social-trend-empty span{
  max-width:320px;
  font-size:12px;
  line-height:1.5;
}
@media(max-width:1500px){
  .trending-source-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1100px){
  .trending-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trending-endpoint-grid{grid-template-columns:1fr}
  .social-trend-grid{grid-template-columns:1fr}
  .social-video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .social-facebook-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .social-trend-card{grid-template-columns:28px 68px minmax(0,1fr)}
  .twitter-topic-row{grid-template-columns:28px minmax(0,1fr)}
  .twitter-topic-stats{grid-column:2;justify-content:flex-start;margin-top:0}
}
@media(max-width:720px){
  .trending-source-grid{grid-template-columns:1fr}
  .social-video-grid,
  .social-facebook-grid{grid-template-columns:1fr}
  .trending-toolbar input,
  .trending-toolbar select{flex:1 1 100%;min-width:0}
}
@media(max-width:1500px){
  .live-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:1100px){
  .live-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .social-head-actions{width:100%;justify-content:flex-start;margin-left:0}
  .live-account-filter{padding-left:10px;padding-right:10px}
  .live-source-group{width:100%}
  .live-inline-filters{width:100%;margin-left:0;flex-wrap:wrap}
  .live-inline-filters select{flex:1 1 160px;width:auto!important}
  .sitemap-clear-btn{flex:1 1 160px}
  .period-range-controls{width:100%}
  .period-range-controls input[type=date]{flex:1 1 138px;width:auto!important}
  .live-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:1500px){
  .sitemap-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1100px){
  .platform-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-grid.two{grid-template-columns:1fr}
  .users-form{grid-template-columns:1fr}
  .perf-domain-grid{grid-template-columns:1fr}
  .perf-summary-strip{grid-template-columns:1fr}
  .perf-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .perf-leader-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .perf-issue-row{grid-template-columns:1fr}
  .perf-cwv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sitemap-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
  .platform-metrics{grid-template-columns:1fr}
  .perf-mini-grid{grid-template-columns:1fr}
  .perf-filterbar input,.perf-filterbar select{flex:1 1 100%;min-width:0}
  .perf-chart-wrap{height:260px;padding:12px}
  .perf-command-grid,.perf-leader-grid{grid-template-columns:1fr}
  .perf-cwv-grid{grid-template-columns:1fr}
  .perf-main-chart{height:340px;padding:6px 10px 14px}
  .perf-market-chart{height:330px;padding:6px 10px 14px}
  .perf-url-tools{grid-template-columns:1fr}
  .perf-url-grid{grid-template-columns:1fr}
  .headline-grid{grid-template-columns:1fr}
  .sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .validation-toolbar{grid-template-columns:1fr}
  .ui-actions{width:100%;justify-content:flex-start;margin-left:0}
  .fbar .ui-btn-primary:first-of-type,.fbar .cmp-run:first-of-type{margin-left:0}
  .fbar input,.fbar select{min-width:0;flex:1 1 150px}
  .ui-table{min-width:620px}
  .cfg-section>.ui-btn:last-child,.cfg-section>.save-btn:last-child{align-self:stretch}
  .sitemap-grid{grid-template-columns:1fr}
  .headline-proposal{grid-template-columns:1fr}
  .headline-proposal .ui-actions{justify-content:flex-start}
  .sitemap-toolbar .ui-actions{justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}

/* Final guard: desktop must never show the mobile menu button. */
.topbar>#mobHamburger,
.topbar>#mobHamburger.ui-btn,
.topbar>#mobHamburger.ui-btn-icon{
  display:none!important;width:36px!important;min-width:36px!important;max-width:36px!important;padding:0!important;
}
@media(max-width:768px){
  .topbar>#mobHamburger,
  .topbar>#mobHamburger.ui-btn,
  .topbar>#mobHamburger.ui-btn-icon{
    display:inline-flex!important;
  }
}
</style>
