:root{
  --bg:#f6f7f9; --panel:#fff; --ink:#1b1f24; --muted:#5f6b7a; --line:#e3e6eb; --accent:#2f5bea; --accent-ink:#fff;
  --ok:#1a7f4b; --ok-bg:#e7f6ee; --warn:#9a6200; --warn-bg:#fff4dc; --bad:#b42318; --bad-bg:#fdecea; --info-bg:#eaf0ff;
  --side:#11161d; --side-ink:#c9d1db; --radius:10px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; font-size:15px; color:var(--ink);
}
@media (prefers-color-scheme: dark){:root{
  --bg:#0f1318; --panel:#171c23; --ink:#e7ebf0; --muted:#97a3b3; --line:#2a313b; --accent:#6d8dff; --accent-ink:#0b0f14;
  --ok:#52c98b; --ok-bg:#12291d; --warn:#f0b54a; --warn-bg:#2c2312; --bad:#ff7b6e; --bad-bg:#331816; --info-bg:#18223d; --side:#0a0d11;
}}
*{box-sizing:border-box} body{margin:0;background:var(--bg);display:flex;min-height:100vh}
a{color:var(--accent);text-decoration:none} a:hover{text-decoration:underline}
.sidebar{align-self:flex-start;width:236px;flex:0 0 236px;background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
.brand{display:flex;gap:10px;align-items:center;padding:18px 16px;border-bottom:1px solid #ffffff14}
.brand .logo{font-size:24px;color:#8aa4ff} .brand strong{display:block;color:#fff;font-size:14px} .brand small{color:#8a96a6;font-size:12px;word-break:break-all}
.sidebar nav{padding:8px;display:flex;flex-direction:column;gap:1px;flex:1}
.sidebar nav a{color:var(--side-ink);padding:6px 10px;border-radius:7px;font-size:13.5px}
.sidebar nav a:hover{background:#ffffff10;text-decoration:none} .sidebar nav a.active{background:#2f5bea;color:#fff}
.conn{padding:12px 16px;border-top:1px solid #ffffff14;font-size:13px;display:grid;gap:4px} .conn small{color:#6f7b8b;margin-top:6px}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px} .dot.on{background:#3ecf8e} .dot.off{background:#56606d}
main{flex:1;min-width:0} .content{padding:20px 28px 60px;max-width:1240px}
.topbar{display:flex;gap:12px;align-items:center;padding:12px 28px;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0;z-index:5}
.cmd{display:flex;flex:1;gap:8px} .cmd input{flex:1}
.menubtn,.navtoggle{display:none}
h1{font-size:24px;margin:8px 0 4px} h2{font-size:18px;margin:28px 0 10px} h3{font-size:15px;margin:0 0 8px}
.lead{color:var(--muted);margin:0 0 18px;max-width:780px;line-height:1.5}
.muted{color:var(--muted)} .small{font-size:13px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px}
.grid{display:grid;gap:16px} .g2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))} .g4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}
.stat .v{font-size:26px;font-weight:650;margin-top:2px} .stat .k{color:var(--muted);font-size:13px}
.delta{font-size:13px;margin-left:6px} .delta.up{color:var(--ok)} .delta.down{color:var(--bad)}
table{width:100%;border-collapse:collapse;font-size:14px} th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--muted);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tablewrap{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}
.tablewrap table td:first-child,.tablewrap table th:first-child{padding-left:16px}
.url{word-break:break-all;font-size:13px}
input,select,textarea{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 10px;width:100%}
textarea{min-height:90px} input[type=checkbox]{width:auto} input[type=file]{padding:6px}
label{display:block;font-weight:600;font-size:13.5px;margin:12px 0 5px} label small{font-weight:400;color:var(--muted)}
.row{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
button,.btn{display:inline-block;font:inherit;font-weight:600;background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;padding:8px 14px;cursor:pointer;white-space:nowrap}
.btn:hover,button:hover{filter:brightness(1.07);text-decoration:none}
.btn.secondary,button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.danger,button.danger{background:var(--bad);color:#fff} .btn.go,button.go{background:var(--ok);color:#fff}
.btn.small,button.small{padding:4px 9px;font-size:13px}
form.inline{display:inline}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}
.flash{margin:12px 28px 0;padding:10px 14px;border-radius:8px;background:var(--ok-bg);color:var(--ok);border:1px solid transparent}
.flash.error{background:var(--bad-bg);color:var(--bad)} .flash.info{background:var(--info-bg);color:var(--ink)}
.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600;background:var(--line);color:var(--ink);white-space:nowrap;text-transform:capitalize}
.s-high,.s-failed,.s-lost,.s-rejected,.s-stale,.s-needs_attention{background:var(--bad-bg);color:var(--bad)}
.s-medium,.s-proposed,.s-submitted,.s-ready_for_review,.s-researching,.s-publishing{background:var(--warn-bg);color:var(--warn)}
.s-published,.s-ok,.s-done,.s-approved,.s-low,.s-undone{background:var(--ok-bg);color:var(--ok)}
.s-low{background:var(--line);color:var(--muted)}
.help{margin:-6px 0 16px;font-size:14px;max-width:820px} .help summary{cursor:pointer;color:var(--accent);font-weight:600}
.help div{margin-top:8px;padding:12px 14px;background:var(--info-bg);border-radius:8px;line-height:1.55}
.empty{text-align:center;padding:36px 20px;background:var(--panel);border:1px dashed var(--line);border-radius:var(--radius)}
.empty p{color:var(--muted);max-width:520px;margin:6px auto 14px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:6px} .steps li{display:flex;gap:10px;align-items:center}
.steps .tick{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;border:2px solid var(--line);color:var(--muted)}
.steps .done .tick{background:var(--ok);border-color:var(--ok);color:#fff} .steps .done a{color:var(--muted);text-decoration:line-through}
.chart{width:100%;height:auto;display:block} .chart .axis{stroke:var(--line)} .chart .tick{fill:var(--muted);font-size:11px}
pre.diff{white-space:pre-wrap;word-break:break-word;background:#0d1117;color:#c9d1d9;padding:14px;border-radius:8px;overflow:auto;font-size:12.5px;line-height:1.45;max-height:520px}
pre.diff .add{color:#7ee787;background:#12261a;display:block} pre.diff .del{color:#ffa198;background:#2d1517;display:block} pre.diff .hunk{color:#79c0ff;display:block}
.finding{padding:8px 0;border-bottom:1px solid var(--line)} .finding:last-child{border:0}
.kv{display:grid;grid-template-columns:160px 1fr;gap:6px 14px;font-size:14px} .kv dt{color:var(--muted)} .kv dd{margin:0;word-break:break-word}
.est{font-size:12.5px;color:var(--muted);font-style:italic}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px} .tabs a{padding:5px 12px;border:1px solid var(--line);border-radius:99px;font-size:13px;color:var(--ink);background:var(--panel)}
.tabs a.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.counter{font-size:12px;color:var(--muted);float:right;font-weight:400}
.warnbox{background:var(--warn-bg);color:var(--warn);padding:10px 14px;border-radius:8px;margin:10px 0}
.okbox{background:var(--ok-bg);color:var(--ok);padding:10px 14px;border-radius:8px;margin:10px 0}
code{background:var(--line);padding:1px 5px;border-radius:4px;font-size:13px}
pre.code{background:var(--line);padding:12px;border-radius:8px;overflow:auto;font-size:13px}
ol.guide li{margin-bottom:8px;line-height:1.5}
@media (max-width:860px){
  body{display:block} .sidebar{position:fixed;left:-260px;z-index:20;transition:left .2s;height:100vh}
  .navtoggle:checked ~ .sidebar{left:0} .menubtn{display:inline-block;cursor:pointer;font-weight:600}
  .content{padding:16px} .topbar{padding:10px 16px} .flash{margin:10px 16px 0} .kv{grid-template-columns:1fr}
}

.who{margin-top:8px;color:#c9d1db;font-size:12.5px;line-height:1.5}
.linkbtn{background:none;border:0;color:#8aa4ff;padding:0;font-weight:600;font-size:12.5px;cursor:pointer}
body.authpage{display:grid;place-items:center;min-height:100vh;padding:16px}
.authbox{width:100%;max-width:400px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px}
.brand-auth{display:flex;gap:10px;align-items:center;margin-bottom:10px;font-size:15px}.brand-auth .logo{color:var(--accent);font-size:22px}

.serp-wrap{display:flex;flex-direction:column;gap:6px}
.serp-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.serp-label.before{color:var(--muted)} .serp-label.after{color:var(--ok)}
.serp{background:#fff;color:#202124;border:1px solid #dadce0;border-radius:10px;padding:16px 18px;font-family:Arial,Helvetica,sans-serif;height:100%}
.serp.changed{border:2px solid #1a7f4b;box-shadow:0 0 0 4px #1a7f4b1a}
.serp-site{display:flex;gap:10px;align-items:center;margin-bottom:6px}
.serp-fav{width:26px;height:26px;border-radius:50%;background:#f1f3f4;display:grid;place-items:center;color:#0A1B2C;font-size:14px}
.serp-name{font-size:14px;color:#202124}.serp-url{font-size:12px;color:#4d5156}
.serp-title{font-size:20px;line-height:1.3;color:#1a0dab;margin:2px 0 4px}
.serp-desc{font-size:14px;line-height:1.58;color:#4d5156}.serp-desc b{color:#202124}
.pagehead{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:22px;font-weight:700}
.pagehead.changed{border:2px solid var(--ok)}
.was{color:var(--bad);font-weight:600}.now{color:var(--ok);font-weight:600}
ul.why{margin:0 0 10px;padding-left:20px;line-height:1.55;font-size:14px} ul.why li{margin-bottom:6px}

.pagepreview{width:100%;height:720px;border:1px solid var(--line);border-radius:10px;background:#fff}

.headingrow{display:flex;gap:8px;align-items:center;margin:6px 0}
.headingrow input[name=new_text]{flex:1;margin:0}
label.check{display:flex;gap:8px;align-items:center;font-weight:400;margin-top:12px}
label.check input{width:auto;margin:0}
.extras td{vertical-align:top}
.slug{display:flex;align-items:center;gap:4px}.slug input{flex:1;margin:0}
details.secbox{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:8px 0}
details.secbox summary{cursor:pointer;font-weight:600;font-size:14px}
.daypick{display:inline-flex;gap:4px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:99px;padding:3px}
.daypick a{padding:4px 12px;border-radius:99px;font-size:13px;color:var(--ink);text-decoration:none}
.daypick a.on{background:var(--accent);color:var(--accent-ink)}
.daypick .muted{padding:0 4px 0 8px}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px}
.chg{font-size:11.5px;margin-left:6px;font-weight:600;white-space:nowrap}
.chg.up{color:var(--ok,#15803d)} .chg.down{color:var(--bad,#b91c1c)} .chg.new{color:var(--accent)}
th.sortable{cursor:pointer;user-select:none} th.sortable:hover{color:var(--ink)}
th.sortable::after{content:" ↕";opacity:.35;font-size:11px} th.sort-asc::after{content:" ↑";opacity:1} th.sort-desc::after{content:" ↓";opacity:1}
.tablefilter{display:flex;gap:10px;align-items:center;margin:4px 0 8px}
.tablefilter input{max-width:320px;margin:0}
.tablefilter .count{color:var(--muted);font-size:12.5px}
svg.spark{color:var(--accent);vertical-align:middle}

.navgroup{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:10px 10px 2px;opacity:.8}
.logo.pulse{display:inline-flex;align-items:center;justify-content:center}
.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
@media (max-width:900px){.board{grid-template-columns:1fr}}
.board .col{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:12px}
.board .col h3{margin:0 0 10px}
.taskcard{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px}
.taskcard.prio-high{border-left-color:var(--bad)} .taskcard.prio-low{opacity:.85}
.taskcard .ttitle{font-weight:600} .taskcard .tdesc{margin:4px 0;white-space:pre-line}
.taskcard .tmeta{margin:6px 0} .tactions{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.note{border-top:1px solid var(--line);padding:6px 0}
td span.bad{color:var(--bad);font-weight:600} td span.ok{color:var(--ok);font-weight:600}
.outreach .ohead{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.outreach .osubject{font-weight:600;margin:8px 0 4px}
.outreach pre.obody{white-space:pre-wrap;font:14px/1.5 inherit;font-family:inherit;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px;max-height:260px;overflow:auto}
.outreach.draft{border-left:4px solid var(--warn)} .outreach.replied{border-left:4px solid var(--ok)}
.orow{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.orow input{max-width:300px;margin:0}
@media print{.sidebar,.topbar,.noprint,.flash,.tablefilter{display:none!important} main{margin:0!important} .card{break-inside:avoid}}
button[disabled],button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}
.tablewrap + details{margin-top:12px}

.publishbox fieldset{border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:0 0 12px;background:var(--panel)}
.publishbox legend{font-weight:600;padding:0 6px}
.publishbox label.check{align-items:flex-start;margin-top:6px} .publishbox label.check input{margin-top:3px}
.trialbox{border-left:4px solid var(--accent)} .trialbox.better{border-left-color:var(--ok)} .trialbox.worse{border-left-color:var(--bad)}
.trialbox .verdict{font-size:17px;margin:4px 0 8px}
.actions .publishbox{flex:1 1 100%}

/* link that is loading a page from the website */
a.busy{opacity:.75;pointer-events:none;cursor:progress}
body.loading{cursor:progress}
body.loading::before{content:"";position:fixed;top:0;left:0;height:3px;width:100%;z-index:9999;
  background:linear-gradient(90deg,transparent,var(--accent,#1f6feb),transparent);background-size:40% 100%;
  animation:mzload 1.1s linear infinite}
@keyframes mzload{from{background-position:-40% 0}to{background-position:140% 0}}

/* --- Claude jobs, review panel (simple change page), language switch --- */
.navbadge{display:inline-block;margin-left:6px;background:var(--accent);color:var(--accent-ink);border-radius:10px;padding:0 7px;font-size:11px;font-weight:700}
.langswitch{padding:8px 16px;font-size:13px;color:var(--muted)} .langswitch a{color:var(--muted)} .langswitch a.on{color:#fff;font-weight:700;text-decoration:underline}
.claudebox{border:2px solid var(--accent);background:var(--info-bg)}
form.jobform{display:inline}
.jobstats{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.jobstat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 18px;min-width:120px}
.jobstat b{display:block;font-size:28px} .jobstat span{color:var(--muted);font-size:13px} .jobstat.ready b{color:var(--ok)}
.jobcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:18px}
.jobcard{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px} .jobcard.ready{border:2px solid var(--ok)}
.jobkind{font-weight:700} .jobwhat{margin:6px 0 8px;font-size:15px}
.scorechip{display:inline-block;border-radius:8px;padding:3px 10px;font-weight:700;font-size:13px}
.scorechip.good{background:var(--ok-bg);color:var(--ok)} .scorechip.low{background:var(--bad-bg);color:var(--bad)}
.s-waiting{background:var(--info-bg);color:var(--ink)} .s-working{background:var(--warn-bg);color:var(--warn)} .s-ready{background:var(--ok-bg);color:var(--ok)}
.reviewpanel{font-size:16px}
.reviewpanel h2{margin:10px 0 4px;font-size:18px}
.rv-kind{font-weight:700;color:var(--muted);font-size:14px}
.rv-summary{font-size:18px;line-height:1.5;margin:4px 0} .rv-summary-hi{color:var(--muted);margin:2px 0 8px}
.rv-row{display:flex;gap:16px;flex-wrap:wrap;align-items:stretch;margin-top:12px}
.scorebox{border-radius:12px;padding:12px 18px;min-width:190px;border:2px solid var(--line)}
.scorebox.good{border-color:var(--ok);background:var(--ok-bg)} .scorebox.low{border-color:var(--bad);background:var(--bad-bg)}
.scorebox .sb-label{font-weight:700} .scorebox .sb-num{font-size:40px;font-weight:800;line-height:1.1} .scorebox .sb-num small{font-size:18px;font-weight:600}
.scorebox.good .sb-num{color:var(--ok)} .scorebox.low .sb-num{color:var(--bad)}
.previewbox{flex:1;min-width:240px}
.btn.bigbtn,button.bigbtn{font-size:19px;padding:14px 26px;border-radius:12px}
.bigtabs a{font-size:16px;padding:10px 18px}
.decide{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;margin:20px 0}
.decide form{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px;flex:1;min-width:280px}
.decide .decide-yes{border:2px solid var(--ok)} .decide .decide-no{border:2px solid var(--bad)}
.decide textarea{width:100%}
.moredetails summary{cursor:pointer}

/* 29 Oct 2026: jobs tab, rank badges, last 24 hours, indexing */
.jobdone{opacity:.85;cursor:default;background:#e8f7ee!important;color:#166534!important;border-color:#9ad3ae!important}
.jobtoast{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:6px;font-size:12px;vertical-align:middle}
.jobtoast.ok{background:#e8f7ee;color:#166534}.jobtoast.err{background:#fde8e8;color:#991b1b}
.presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin:8px 0 18px}
.preset{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--panel);color:var(--ink);display:flex;flex-direction:column;gap:8px}
.preset:hover{border-color:var(--accent)}
.preset strong{font-size:14.5px;color:var(--ink)}
.preset p{margin:0;font-size:13px;line-height:1.4;color:var(--muted)}
.preset input,.preset textarea{width:100%;margin:0} .preset textarea{min-height:58px}
.preset button{align-self:flex-start;margin-top:auto}
.presethead{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.jobcard.ask{border-color:#f59e0b}.jobstat.ask b{color:#b45309}.claudeq{background:#fff7e6;border-radius:8px;padding:8px;margin:6px 0}
.pill.s-review,.pill.s-question{background:#fff3cd;color:#8a5a00}.pill.s-declined{background:#eee;color:#555}
.rankbadge{display:inline-block;font-size:11px;padding:1px 6px;border-radius:9px;margin-left:4px;font-weight:600;vertical-align:middle}
.rankbadge.top{background:#dcfce7;color:#166534}.rankbadge.good{background:#e0f2fe;color:#075985}
.rankbadge.mid{background:#fef9c3;color:#854d0e}.rankbadge.low{background:#fee2e2;color:#991b1b}
.rankbadge.none{background:#f1f5f9;color:#64748b;font-weight:500}
.last24{display:flex;gap:14px;flex-wrap:wrap;align-items:baseline}.last24 b{font-size:28px}
.fresh{font-size:11px;color:#8a5a00;background:#fff3cd;border-radius:6px;padding:1px 5px}
.chart .val{font-size:10px;fill:currentColor;opacity:.75}.chart .grid{stroke:currentColor;opacity:.08}
.filterbar{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.filterbar a{padding:3px 9px;border:1px solid var(--line,#ddd);border-radius:14px;font-size:13px;text-decoration:none}
.filterbar a.on{background:var(--accent,#2563eb);color:#fff;border-color:transparent}
.idx-ok{color:#166534}.idx-no{color:#991b1b}

th.hastip::after{content:" ?";font-size:10px;opacity:.55;font-weight:600}
/* several websites (1.3) */
.siteswitch{margin:10px 12px 4px;border:1px solid #ffffff22;border-radius:10px;background:#ffffff0a}
.siteswitch summary{list-style:none;cursor:pointer;padding:8px 10px;display:flex;flex-direction:column;gap:1px;color:#fff}
.siteswitch summary::-webkit-details-marker{display:none}
.siteswitch summary b{font-size:14px} .siteswitch summary b::after{content:" ▾";color:#8a96a6;font-weight:400}
.siteswitch summary .muted{color:#8a96a6}
.sitelist{display:flex;flex-direction:column;padding:0 6px 8px}
.sitelist a{color:var(--side-ink);text-decoration:none;padding:6px 8px;border-radius:7px;font-size:13px}
.sitelist a:hover{background:#ffffff14} .sitelist a.on{color:#fff;font-weight:600} .sitelist a.all{color:#8aa4ff;border-top:1px solid #ffffff14;margin-top:4px;border-radius:0}
.sitechip{display:inline-block;margin-right:10px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap;background:var(--panel)}
.sitecards{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.sitecard.current{border-color:var(--accent)}
.sitehead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}
.sitename{font-size:17px} .sitestats{gap:10px;margin-bottom:8px} .sitestats .stat .v{font-size:20px}
@media (max-width:600px){.sitecards{grid-template-columns:1fr}}
/* number cards with trend (1.3) */
.phead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.phead .lead{margin-bottom:10px}
.kpis{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin:6px 0 16px}
.kpi{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px 0;text-decoration:none;color:var(--ink);overflow:hidden;transition:box-shadow .15s,border-color .15s}
.kpi:hover{border-color:currentColor;box-shadow:0 4px 14px #0000000f}
.kpi .k{font-size:13px;color:var(--muted);font-weight:600}
.kpi .v{font-size:30px;font-weight:700;letter-spacing:-.5px;color:var(--ink);margin-top:2px}
.kpi .d{font-size:12.5px;min-height:18px} .kpi .d .muted{font-weight:400}
.kpi .kspark{display:block;width:calc(100% + 32px);margin:8px -16px 0;height:46px}
.k-clicks{color:#7c4dff} .k-impr{color:#12a150} .k-ctr{color:#e8770e} .k-pos{color:#1e88e5}
.kpi .k,.kpi .v,.kpi .d{color:inherit} .kpi .k{color:var(--muted)} .kpi .v{color:var(--ink)}
.whatchanged ul{list-style:none;margin:6px 0 4px;padding:0;display:grid;gap:6px}
.whatchanged li{display:flex;gap:9px;align-items:baseline;font-size:14.5px}
.whatchanged li a{color:var(--ink);text-decoration:none} .whatchanged li a:hover{text-decoration:underline}
.whatchanged .dot{font-size:11px;width:14px;flex:0 0 14px;text-align:center}
.tone-good .dot{color:#12a150} .tone-bad .dot{color:#d93025} .tone-todo .dot{color:#e8770e} .tone-info .dot{color:var(--muted)}
@media (max-width:900px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.kpi .v{font-size:24px}}
/* tracker look (1.3) */
.kdchip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.kd-easy{background:#e3f6e9;color:#12783a} .kd-med{background:#fff4d6;color:#8a5a00} .kd-hard{background:#ffe6d5;color:#b4450b} .kd-vhard{background:#fde2e1;color:#b3261e}
.pospill{display:inline-block;min-width:38px;text-align:center;padding:3px 8px;border-radius:8px;background:var(--bg);border:1px solid var(--line);font-weight:700}
.pospill.top3{background:#e3f6e9;border-color:#bfe8cc;color:#12783a} .pospill.top10{background:#e8f0fe;border-color:#c8d9fb;color:#1a56c9}
.chgchip{display:inline-block;padding:2px 7px;border-radius:7px;font-size:12.5px;font-weight:700}
.chgchip.up{background:#e3f6e9;color:#12783a} .chgchip.down{background:#fde2e1;color:#b3261e}
.kwsub{font-size:12px;color:var(--muted);margin-top:2px}
.srctag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:1px 6px;border-radius:5px;background:var(--bg);border:1px solid var(--line);color:var(--muted)}
.addbox summary{cursor:pointer;font-weight:600;color:var(--accent);list-style:none} .addbox summary::-webkit-details-marker{display:none}
@media (prefers-color-scheme:dark){
  .kd-easy,.chgchip.up,.pospill.top3{background:#12301d;color:#7ddc9c;border-color:#1e4a2c} .kd-med{background:#3a2e0c;color:#f3c75b}
  .kd-hard{background:#3d2312;color:#f6a26b} .kd-vhard,.chgchip.down{background:#3d1715;color:#f28b82} .pospill.top10{background:#16274a;color:#8ab4f8;border-color:#23396a}
}
table.tracker td.url{min-width:190px;max-width:260px;word-break:normal;overflow-wrap:anywhere}
table.tracker td{vertical-align:middle}
.navsec>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.navsec>summary::-webkit-details-marker{display:none}
.navsec>summary::after{content:"›";font-size:15px;transition:transform .15s;margin-right:4px}
.navsec[open]>summary::after{transform:rotate(90deg)}
.navsec{display:flex;flex-direction:column} .navsec>a{display:block}
.guardbox{border-radius:10px;padding:10px 14px;margin:10px 0;border:1px solid var(--line);font-size:14px}
.guardbox ul{margin:6px 0 0;padding-left:18px} .guardbox li{margin:3px 0}
.guardbox.g-green{background:#e9f7ee;border-color:#bfe8cc} .guardbox.g-amber{background:#fff6dd;border-color:#f3d98b} .guardbox.g-red{background:#fdeceb;border-color:#f3b5b0}
@media (prefers-color-scheme:dark){.guardbox.g-green{background:#12301d;border-color:#1e4a2c}.guardbox.g-amber{background:#3a2e0c;border-color:#5a4714}.guardbox.g-red{background:#3d1715;border-color:#5e2420}}
.vpill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700}
.v-consolidate{background:#fde2e1;color:#b3261e} .v-improve{background:#ffe6d5;color:#b4450b} .v-investigate{background:#fff4d6;color:#8a5a00}
.v-monitor{background:#e8f0fe;color:#1a56c9} .v-keep{background:#e3f6e9;color:#12783a}
table.quality td.url{min-width:240px;max-width:340px;word-break:normal;overflow-wrap:anywhere}
table.quality details ul{margin:4px 0 6px;padding-left:16px}
@media (prefers-color-scheme:dark){.v-consolidate{background:#3d1715;color:#f28b82}.v-improve{background:#3d2312;color:#f6a26b}.v-investigate{background:#3a2e0c;color:#f3c75b}.v-monitor{background:#16274a;color:#8ab4f8}.v-keep{background:#12301d;color:#7ddc9c}}
form.preset.jobform{display:flex}
table.tracker th,table.tracker td{padding:9px 8px}
table.tracker th{white-space:normal}
table.tracker td.url{min-width:150px;max-width:210px;font-size:12.5px}
table.tracker .spark{width:80px}
table.tracker .rowacts{margin-top:6px;display:flex;gap:6px;align-items:center;white-space:nowrap}
@media (prefers-color-scheme:dark){.rankbadge.none{background:#232a33;color:#97a3b3}.rankbadge.top{background:#12301d;color:#7ddc9c}.rankbadge.good{background:#16274a;color:#8ab4f8}.rankbadge.mid{background:#3a2e0c;color:#f3c75b}.rankbadge.low{background:#3d1715;color:#f28b82}}
/* 1.4.3 Run-the-robot-now bar */
.robotbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.robotbar form.inline{margin:0}
.robotbar button[disabled]{opacity:.5;cursor:not-allowed}
