/* SERP Links Pro — light theme. Flat colours only: no gradients, glow or neon. */
:root{
  --harbor:#0B3A6E; --harbor-dark:#082a50; --link:#0E8FA0; --accent:#12B5C9;
  --bg:#F4F7FA; --surface:#FFFFFF; --line:#DCE3EA; --line-strong:#C5D0DB;
  --ink:#16273A; --muted:#5B6B7B; --dim:#8C9AA8;
  --ok:#1E7F4F; --ok-bg:#E8F5EE; --warn:#9A6212; --warn-bg:#FDF4E3;
  --bad:#B3402F; --bad-bg:#FBECE9; --info-bg:#E8F3F7; --navy-bg:#EDF2F8;
  --radius:8px; --radius-sm:5px;
  --shadow:0 1px 2px rgba(16,39,58,.06);
  --font:"Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;
  --mono:Consolas,"SFMono-Regular",Menlo,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.45}
a{color:var(--link);text-decoration:none} a:hover{text-decoration:underline}
h1{font-size:1.35rem;color:var(--harbor);font-weight:700}
h2{font-size:1.05rem;color:var(--harbor);font-weight:650}
h3{font-size:.95rem;color:var(--harbor);font-weight:650}
code,.mono{font-family:var(--mono);font-size:.86em}
.muted{color:var(--muted)} .dim{color:var(--dim)} .small{font-size:.85em}
.right{text-align:right} .center{text-align:center} .nowrap{white-space:nowrap}
.hidden{display:none!important}

/* Top bar */
.topbar{background:#fff;color:var(--ink);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.topbar-inner{max-width:1500px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:0 20px;height:58px}
.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;flex-shrink:0}
.brand:hover{text-decoration:none}
.brand-logo{display:block;height:26px;width:auto}
.brand-badge{display:inline-flex;align-items:center;border:1px solid var(--harbor);color:var(--harbor);border-radius:999px;padding:1px 7px;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.4}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nav{display:flex;gap:2px;flex:1;overflow-x:auto}
.nav a{color:var(--muted);padding:7px 11px;border-radius:6px;white-space:nowrap;font-weight:500}
.nav a:hover{background:var(--navy-bg);text-decoration:none;color:var(--harbor)}
.nav a.active{background:var(--navy-bg);color:var(--harbor);font-weight:650;box-shadow:inset 0 -2px 0 var(--accent)}
.top-tools{display:flex;align-items:center;gap:8px}
.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);border-radius:20px;padding:3px 10px;font-size:.8rem;color:var(--harbor);background:#fff;cursor:pointer;white-space:nowrap}
.pill:hover{background:var(--navy-bg)}
.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--ok)}
.pill.muted-on{border-color:#E7A698;color:var(--bad)}

/* Layout */
.container{max-width:1500px;margin:0 auto;padding:20px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.page-head p{color:var(--muted);margin-top:3px}
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-side{grid-template-columns:380px minmax(0,1fr)}
@media(max-width:1100px){.g2,.g3,.g-side{grid-template-columns:1fr}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}
.card-b{padding:16px}
.card-b.tight{padding:0}
.stack>*+*{margin-top:12px}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.row.between{justify-content:space-between}
.spacer{flex:1}

/* Stage cards */
.stages{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}
@media(max-width:1000px){.stages{grid-template-columns:repeat(3,1fr)}}
.stage-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;cursor:pointer;text-align:left;font:inherit;color:inherit}
.stage-card:hover{border-color:var(--line-strong)}
.stage-card.active{border-color:var(--harbor);box-shadow:inset 0 0 0 1px var(--harbor)}
.stage-card .n{font-size:1.55rem;font-weight:700;color:var(--harbor)}
.stage-card .l{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}
.stage-card.s-available .n{color:var(--ok)}
.stage-card.s-premium .n{color:var(--warn)}
.stage-card.s-taken .n{color:var(--dim)}

/* Forms */
label{display:block;font-weight:600;font-size:.82rem;color:var(--muted);margin-bottom:4px}
.field{margin-bottom:12px}
.field .hint{font-size:.78rem;color:var(--dim);margin-top:3px}
input[type=text],input[type=number],input[type=password],input[type=url],input[type=search],select,textarea{
  width:100%;padding:7px 9px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit}
textarea{font-family:var(--mono);font-size:.85rem;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}
.check{display:flex;align-items:center;gap:7px;font-weight:500;color:var(--ink);font-size:.9rem;margin:6px 0;cursor:pointer}
.check input{width:15px;height:15px;accent-color:var(--harbor)}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.fgrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px 4px;margin-bottom:12px}
legend{padding:0 6px;font-weight:650;color:var(--harbor);font-size:.85rem}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 13px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:#fff;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}
.btn:hover{background:#F2F5F8;text-decoration:none}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.primary{background:var(--harbor);border-color:var(--harbor);color:#fff}
.btn.primary:hover{background:var(--harbor-dark)}
.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}
.btn.danger{background:#fff;border-color:#E2B1A8;color:var(--bad)}
.btn.danger:hover{background:var(--bad-bg)}
.btn.sm{padding:3px 8px;font-size:.8rem}
.btn.link{border:none;background:none;color:var(--link);padding:0}

/* Tables */
.table-wrap{overflow:auto;max-height:640px}
table{width:100%;border-collapse:collapse}
th,td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
th{background:#F7F9FB;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.03em;position:sticky;top:0;z-index:1;font-weight:650}
tbody tr:hover{background:#FAFBFC}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
tr.flash{animation:flash 2.5s ease-out}
@keyframes flash{0%{background:#D6F0E2}100%{background:transparent}}
.empty{padding:28px;text-align:center;color:var(--dim)}

/* Badges & journey */
.badge{display:inline-block;padding:1px 8px;border-radius:20px;font-size:.75rem;font-weight:650;border:1px solid var(--line);background:var(--navy-bg);color:var(--harbor);white-space:nowrap}
.badge.ok{background:var(--ok-bg);border-color:#BFE3CF;color:var(--ok)}
.badge.warn{background:var(--warn-bg);border-color:#F0D9A8;color:var(--warn)}
.badge.bad{background:var(--bad-bg);border-color:#EDC3BA;color:var(--bad)}
.badge.dim{background:#F1F3F5;color:var(--muted)}
.journey{display:flex;align-items:center;gap:3px}
.step{width:22px;height:6px;border-radius:3px;background:#E3E8EE}
.step.done{background:var(--harbor)}
.step.avail{background:var(--ok)}
.step.bad{background:#D9A39A}
.step.skip{background:#E3C27A}
.journey-label{font-size:.78rem;color:var(--muted);margin-left:6px;white-space:nowrap}

/* Progress */
.progress{height:10px;background:#E6ECF1;border-radius:6px;overflow:hidden}
.progress>div{height:100%;background:var(--harbor);width:0;transition:width .4s}
.kv{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.kv div{background:#F7F9FB;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px}
.kv b{display:block;font-size:1.2rem;color:var(--harbor)}
.kv span{font-size:.76rem;color:var(--muted);text-transform:uppercase}

/* Alerts */
.alert{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--info-bg);font-size:.9rem}
.alert.warn{background:var(--warn-bg);border-color:#F0D9A8;color:#6E4609}
.alert.bad{background:var(--bad-bg);border-color:#EDC3BA;color:#7E2B1F}
.alert.ok{background:var(--ok-bg);border-color:#BFE3CF;color:#155C39}
.find-banner{position:fixed;top:62px;right:20px;z-index:80;display:flex;flex-direction:column;gap:8px;max-width:380px}
.find-toast{background:#fff;border:2px solid var(--ok);border-radius:var(--radius);padding:10px 14px;box-shadow:0 4px 14px rgba(16,39,58,.12);animation:pop .25s ease-out}
.find-toast b{color:var(--ok);font-size:1.05rem}
@keyframes pop{from{transform:translateY(-6px);opacity:0}to{transform:none;opacity:1}}
#toasts{position:fixed;bottom:18px;right:18px;z-index:90;display:flex;flex-direction:column;gap:8px;max-width:420px}
.toast{background:var(--ink);color:#fff;padding:10px 14px;border-radius:var(--radius-sm);font-size:.9rem;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.toast.error{background:var(--bad)} .toast.success{background:var(--ok)}
.sound-hint{background:var(--warn-bg);border-bottom:1px solid #F0D9A8;color:#6E4609;text-align:center;padding:6px;font-size:.85rem;cursor:pointer}

/* Tabs */
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;flex-wrap:wrap}
.tab{padding:8px 14px;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;background:none;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;margin-bottom:-1px}
.tab.active{background:#fff;border-color:var(--line);color:var(--harbor)}
.tab-panel{display:none} .tab-panel.active{display:block}

/* Modal */
.modal-bg{position:fixed;inset:0;background:rgba(16,39,58,.45);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}
.modal{background:#fff;border-radius:var(--radius);max-width:560px;width:100%;max-height:90vh;overflow:auto;border:1px solid var(--line)}
.modal .card-b{padding:18px}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:#FAFBFC}
dl.details{display:grid;grid-template-columns:150px 1fr;gap:6px 12px;font-size:.9rem}
dl.details dt{color:var(--muted)}
.checklist li{list-style:none;padding:5px 0;display:flex;gap:8px;align-items:center}
.footer{color:var(--dim);font-size:.8rem;text-align:center;padding:24px}
.log-INFO{color:var(--ink)} .log-WARNING{color:var(--warn)} .log-ERROR{color:var(--bad);font-weight:600}

/* ---- auth / admin (v3) ---- */
.user-menu{display:flex;align-items:center;gap:6px}
.user-menu a.pill{color:var(--harbor);max-width:170px;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:1.5}
.inline-form{display:inline;margin:0}
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}
.auth-card{width:100%;max-width:420px}
.auth-brand{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:4px}
.auth-brand .brand-logo{height:34px}
.auth-sub{margin-bottom:14px}
.auth-card input[type=email],.auth-card input[type=password],.auth-card input[type=text]{width:100%}
.alert.error{background:var(--bad-bg,#FDECEC);border-color:#F1C0C0;color:#8A1F1F}
.alert.warn{background:var(--warn-bg);border-color:#F0D9A8;color:#6E4609}
.ip-hero{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ip-hero .ip-big{font-size:1.9rem;font-weight:800;letter-spacing:.02em;color:var(--harbor);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.ip-steps{margin:8px 0 0 18px;padding:0}
.ip-steps li{margin:3px 0}
.secret-box{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.1rem;padding:10px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:#FAFBFC;user-select:all;text-align:center}
.adm-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:900px){.adm-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---- Ahrefs DR (v3.1) ---- */
.dr-val{display:inline-block;min-width:30px;text-align:center;padding:1px 6px;border-radius:5px;font-weight:700;font-size:.82rem;background:var(--info-bg);color:var(--harbor);border:1px solid #C9E2EA}
.dr-val.stale{background:#F1F3F5;color:var(--muted);border-color:var(--line)}
.dr-val.none{background:transparent;border-color:transparent;color:var(--dim);font-weight:500}
.dr-attr{padding:6px 12px;border-top:1px solid var(--line);background:#FAFBFC}
.dr-tools{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.dr-tools .check{margin:0}
.dr-strip{margin-bottom:14px;padding:10px 14px;border-left:3px solid var(--accent)}
.dr-strip-in{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dr-strip .progress>div{background:var(--accent)}
.dr-err{color:var(--bad)}
/* Auto Hunt */
.hunt-list { display: flex; flex-direction: column; }
.hunt-item { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--line); cursor: pointer; background: #fff; text-align: left; border-left: 3px solid transparent; width: 100%; font: inherit; }
.hunt-item:hover { background: #f6f9fc; }
.hunt-item.active { border-left-color: var(--harbor); background: var(--navy-bg); }
.hunt-item .hi-name { font-weight: 600; }
.hunt-fs { border: 1px solid var(--line); border-radius: 8px; padding: 10px 12px; display: flex; flex-direction: column; gap: 6px; }
.hunt-fs legend, .hunt-fs summary { font-weight: 600; font-size: 13px; padding: 0 4px; cursor: default; }
details.hunt-fs summary { cursor: pointer; }
.tld-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 2px 8px; }
.tld-grid .check { font-size: 13px; }
.thr-row { display: grid; grid-template-columns: 92px 1fr 90px; gap: 8px; align-items: center; }
.thr-row label { font-weight: 600; font-size: 13px; }
.hunt-preview { background: #f7f9fb; border: 1px solid var(--line); border-radius: 8px; padding: 10px 12px; word-break: break-all; }
.hunt-preview:empty { display: none; }
.hunt-stage { font-size: 13px; padding: 8px 12px; border-radius: 8px; background: var(--info-bg); border: 1px solid var(--line); }
.hunt-kv { grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); }
.hunt-log { max-height: 220px; overflow: auto; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; background: #fbfcfd; border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; }
.hunt-log div { padding: 1px 0; white-space: pre-wrap; }
.hunt-log .lv-warning { color: var(--warn); }
.hunt-log .lv-error { color: var(--bad); }
.filter-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.filter-cols ul { margin: 4px 0 0 18px; padding: 0; }
@media (max-width: 760px) { .filter-cols { grid-template-columns: 1fr; } }

/* masked multi-line secret (cookies): hidden like a password field */
textarea.secret-text { -webkit-text-security: disc; font-family: var(--mono, monospace); }

th[data-sort]{cursor:pointer;user-select:none;white-space:nowrap}
th[data-sort]:hover{color:var(--text)}
th.sorted{color:var(--text)}
.sort-ind{font-size:10px;color:var(--brand,#2563eb)}

.lists-line{margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg,#f8fafc);font-size:13px}
.lists-line .muted{font-size:12px}

/* nav fits on laptop widths (Help added in v3.3.4) */
@media (max-width:1560px){.nav a{padding:7px 8px;font-size:.9rem}.topbar-inner{gap:12px}}
@media (max-width:1380px){.nav a{padding:6px 6px;font-size:.85rem}.user-pill{max-width:170px;overflow:hidden;text-overflow:ellipsis;display:inline-block}}
/* Help / usage guide */
.guide{max-width:920px;line-height:1.6}
.guide ol,.guide ul{padding-left:1.6em;margin:.4em 0 .8em}
.guide li{margin:.15em 0}
.guide h1{font-size:1.7rem;margin:.2em 0 .4em}
.guide h2{font-size:1.3rem;margin:1.6em 0 .5em;padding-top:.6em;border-top:1px solid var(--line)}
.guide h3{font-size:1.06rem;margin:1.2em 0 .4em}
.guide p,.guide li{color:var(--text,#1f2937)}
.guide table{width:100%;border-collapse:collapse;margin:.6em 0 1em;font-size:.92rem}
.guide th,.guide td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
.guide th{background:var(--navy-bg)}
.guide img{max-width:100%;border:1px solid var(--line);border-radius:8px;margin:.5em 0 1em;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.guide code{background:var(--navy-bg);padding:1px 5px;border-radius:4px;font-size:.88em}
.guide blockquote{margin:.8em 0;padding:.6em 1em;border-left:4px solid var(--accent);background:#f6fbf8;border-radius:0 6px 6px 0}
.guide-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:start}
.guide-toc{position:sticky;top:76px;max-height:calc(100vh - 100px);overflow:auto;font-size:.88rem}
.guide-toc ul{list-style:none;padding-left:0;margin:0}.guide-toc ul ul{padding-left:12px}
.guide-toc a{display:block;padding:3px 0;color:var(--muted)}
@media (max-width:980px){.guide-layout{grid-template-columns:1fr}.guide-toc{position:static;max-height:none}}
@media print{.topbar,.footer,.guide-toc{display:none}.guide-layout{display:block}}

/* Wayback column (v3.3.5) */
.wb-cell{display:inline-flex;align-items:center;gap:6px}
.wb-val{font-variant-numeric:tabular-nums;font-size:.86rem;white-space:nowrap}
.wb-val.none{color:var(--muted)}
.wb-link{padding:1px 6px;line-height:1.4;text-decoration:none}
.wb-link:hover{text-decoration:none}
.btn.xs{padding:1px 7px;font-size:.75rem;line-height:1.4}

/* domain names never break at their hyphens */
table td > b:first-child { white-space: nowrap; }
/* Moz Spam Score column (v3.3.8): Moz bands 1-30 low, 31-60 medium, 61-100 high */
.spam-val{white-space:nowrap;font-weight:600;padding:1px 6px;border-radius:4px;border:1px solid transparent}
.spam-val.b-low{background:var(--ok-bg);border-color:#BFE3CF;color:var(--ok)}
.spam-val.b-medium{background:var(--warn-bg);border-color:#F0D9A8;color:var(--warn)}
.spam-val.b-high{background:var(--bad-bg);border-color:#EDC3BA;color:var(--bad)}
.spam-val.none{font-weight:400;color:var(--muted);background:none}
.toast.warn{background:var(--warn)}
