/* BuzzSEO light theme — Ahrefs/Semrush-inspired. Same class & var names as before. */
:root{
  --bg:#f6f8fc; --bg2:#ffffff; --panel:#ffffff; --panel2:#eef2f9; --border:#e4e9f2;
  --text:#0e1a2b; --muted:#44546a; --dim:#8494ab;
  --accent:#1f6bff; --accent2:#7c5cff; --orange:#ff6b2c; --navy:#0b1e3d;
  --green:#0e9f6e; --red:#e02424; --yellow:#c27803; --cyan:#0694a2;
  --radius:14px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--text);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif}
a{color:var(--accent);text-decoration:none}
.app{display:flex;min-height:100vh}

/* ===== Sidebar (navy) ===== */
.sidebar{width:242px;background:var(--navy);position:fixed;top:0;bottom:0;overflow-y:auto;padding:16px 12px;z-index:10}
.logo{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;font-size:17px;font-weight:800;color:#fff}
.logo .mark{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--orange),#ffb02c);display:flex;align-items:center;justify-content:center;font-size:16px}
.logo small{display:block;font-size:9.5px;font-weight:600;color:#7d90b5;letter-spacing:1px}
.navgroup{margin:14px 0 4px;padding:0 10px;font-size:10px;font-weight:800;letter-spacing:1.2px;color:#5d7099;text-transform:uppercase}
.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;color:#a9bad9;font-size:13.5px;cursor:pointer;margin-bottom:1px}
.nav a .ic{width:18px;text-align:center;font-size:14px}
.nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.nav a.active{background:rgba(31,107,255,.28);color:#fff;font-weight:700;box-shadow:inset 3px 0 0 var(--orange)}
.nav a .pill{margin-left:auto;font-size:9.5px;font-weight:800;padding:2px 7px;border-radius:20px;background:rgba(255,255,255,.12);color:#c4d2ec}
.nav a .pill.new{background:var(--green);color:#fff}

/* ===== Main ===== */
.main{flex:1;margin-left:242px;display:flex;flex-direction:column}
.topbar{height:60px;display:flex;align-items:center;gap:14px;padding:0 24px;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:9}
.topbar .spacer{flex:1}
.credits{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:7px 13px;font-size:12.5px;color:var(--muted);font-weight:600}
.credits b{color:var(--green)}
.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#6ea0ff);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.btn{display:inline-flex;align-items:center;gap:6px;background:var(--orange);color:#fff;border:none;border-radius:10px;padding:9px 18px;font-size:13.5px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(255,107,44,.28)}
.btn:hover{filter:brightness(1.05)}
.btn.blue{background:var(--accent);box-shadow:0 4px 14px rgba(31,107,255,.25)}
.btn.ghost{background:#fff;border:1.5px solid var(--border);color:var(--muted);box-shadow:none;font-weight:600}
.btn.sm{padding:6px 13px;font-size:12.5px}
.btn.green{background:var(--green);box-shadow:0 4px 14px rgba(14,159,110,.25)}

.content{padding:26px;max-width:1280px;display:block}
.pagehead{margin-bottom:20px}
.pagehead h1{font-size:22px;font-weight:800;letter-spacing:-.3px}
.pagehead p{color:var(--muted);font-size:13.5px;margin-top:3px}

/* Forms */
.querybar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.querybar input,.querybar select,.querybar textarea{background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:10px 14px;color:var(--text);font-size:13.5px;outline:none;font-family:inherit}
.querybar input:focus,.querybar textarea:focus,.querybar select:focus{border-color:var(--accent)}
.querybar input,.querybar textarea{flex:1;min-width:220px}
.querybar input::placeholder,.querybar textarea::placeholder{color:var(--dim)}

/* Tabs */
.tabs{display:flex;gap:6px;margin-bottom:20px;overflow-x:auto;border-bottom:none}
.tabs span{padding:8px 16px;font-size:13px;color:var(--muted);white-space:nowrap;border:1.5px solid var(--border);border-radius:100px;background:#fff;font-weight:600}
.tabs span.on{background:var(--text);border-color:var(--text);color:#fff}

/* Cards & grids */
.grid{display:grid;gap:14px;margin-bottom:14px}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)} .g5{grid-template-columns:repeat(5,1fr)} .g6{grid-template-columns:repeat(6,1fr)}
.g23{grid-template-columns:2fr 1fr} .g32{grid-template-columns:1fr 2fr}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:0 1px 3px rgba(14,26,43,.04)}
.card h3{font-size:13px;font-weight:700;color:var(--muted);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.card h3 .more{margin-left:auto;color:var(--dim);font-size:11px;font-weight:500}
.kpi .label{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.6px;font-weight:700}
.kpi .val{font-size:25px;font-weight:800;margin:6px 0 2px;color:var(--text)}
.kpi .delta{font-size:12px;font-weight:700}
.up{color:var(--green)} .down{color:var(--red)} .flat{color:var(--dim)}
.kpi .sub{font-size:11.5px;color:var(--dim)}

/* Tables */
table{width:100%;border-collapse:collapse;font-size:13px}
th{font-size:10.5px;text-transform:uppercase;letter-spacing:.7px;color:var(--dim);font-weight:800;text-align:left;padding:8px 10px;border-bottom:1.5px solid var(--border)}
td{padding:9px 10px;border-bottom:1px solid #eef2f8;color:var(--text);vertical-align:middle}
tr:last-child td{border-bottom:none}
tr:hover td{background:#f7faff}
td .sub{display:block;font-size:11px;color:var(--dim)}
.num{text-align:right;font-variant-numeric:tabular-nums}
th.num{text-align:right}

/* Badges */
.badge{display:inline-block;font-size:10.5px;font-weight:800;padding:3px 9px;border-radius:20px}
.b-green{background:#e5f7f0;color:#0a7f56}
.b-red{background:#fde8e8;color:#c81e1e}
.b-yellow{background:#fdf3e2;color:#9a6700}
.b-blue{background:#e8efff;color:#0f4fd6}
.b-purple{background:#f1ecff;color:#6d4aff}
.b-cyan{background:#e0f5f7;color:#047481}
.b-gray{background:#eef2f8;color:#5c6b84}
.chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;background:#f2f5fb;border:1px solid var(--border);border-radius:20px;padding:4px 11px;color:var(--muted);margin:0 6px 6px 0}

/* Progress / misc widgets */
.prog{height:6px;background:#e9eef7;border-radius:4px;overflow:hidden;min-width:60px;display:inline-block}
.prog i{display:block;height:100%;border-radius:4px;background:var(--accent)}
.prog.green i{background:var(--green)} .prog.red i{background:var(--red)} .prog.yellow i{background:var(--yellow)}
.pos{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:24px;border-radius:7px;background:#eef2f8;font-weight:800;font-size:12.5px}
.bars{display:flex;align-items:flex-end;gap:4px;height:70px}
.bars i{flex:1;background:linear-gradient(180deg,var(--accent),rgba(31,107,255,.35));border-radius:3px 3px 0 0;min-width:6px}
.bars.green i{background:linear-gradient(180deg,var(--green),rgba(14,159,110,.3))}
.bars.purple i{background:linear-gradient(180deg,var(--accent2),rgba(124,92,255,.3))}
.donut{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}
.donut::after{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}
.donut b{position:relative;z-index:1;font-size:22px}

/* SERP result items */
.serpitem{padding:13px 15px;border:1px solid var(--border);border-radius:12px;margin-bottom:10px;background:#fff}
.serpitem .url{font-size:11.5px;color:#0a7f56;word-break:break-all}
.serpitem .title{font-size:15px;color:var(--accent);font-weight:600;margin:2px 0}
.serpitem .desc{font-size:12.5px;color:var(--muted)}
.serpitem .meta{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}

/* Flash */
.flash{padding:12px 16px;border-radius:12px;margin-bottom:16px;font-size:13.5px;font-weight:500}
.flash.error{background:#fde8e8;border:1px solid #f5c2c2;color:#9b1c1c}
.flash.ok{background:#e5f7f0;border:1px solid #b7e4d0;color:#046c4e}

.note{font-size:11.5px;color:var(--dim);margin-top:10px}
textarea{font-family:inherit}

/* Auth */
.authwrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#eef4ff,#f9fbff 60%)}
.authcard{width:388px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:34px;box-shadow:0 24px 60px rgba(14,26,43,.10)}
.authcard h1{font-size:21px;margin-bottom:4px;font-weight:800}
.authcard p{color:var(--muted);font-size:13.5px;margin-bottom:20px}
.authcard label{display:block;font-size:11.5px;font-weight:700;color:var(--muted);margin:14px 0 6px;text-transform:uppercase;letter-spacing:.5px}
.authcard input{width:100%;background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:11px 13px;color:var(--text);font-size:14px;outline:none}
.authcard input:focus{border-color:var(--accent)}
.authcard .btn{width:100%;justify-content:center;margin-top:20px}
.authcard .err{color:var(--red);font-size:12px;margin-top:6px}

.stub{max-width:520px;margin:60px auto;text-align:center;color:var(--muted)}
.stub .big{font-size:44px;margin-bottom:14px}

/* Pricing pack cards (partials/packs) */
.plan{position:relative;text-align:center}
.plan .price{font-size:34px;font-weight:900;margin:8px 0 2px;color:var(--text)}
.plan .price small{font-size:14px;color:var(--dim);font-weight:600}
.plan ul{list-style:none;margin:14px 0;text-align:left}
.plan li{padding:7px 0;border-bottom:1px dashed var(--border);font-size:13px;color:var(--muted)}
.plan li b{color:var(--text)}
.plan li:last-child{border-bottom:none}
.plan .badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%)}

@media (max-width:1100px){.g4,.g5,.g6{grid-template-columns:repeat(2,1fr)}.g3,.g2,.g23,.g32{grid-template-columns:1fr}}
@media (max-width:760px){.sidebar{display:none}.main{margin-left:0}}
