:root{--bg:#f6f8fc;--card:#fff;--text:#152238;--muted:#667085;--line:#e5eaf2;--primary:#173b72;--primary2:#244f8f;--danger:#a63b3b;--ok:#1f7a4d;--okbg:#ecf9f1;--warnbg:#fff7e8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}.wrap{max-width:1120px;margin:auto;padding:0 24px}header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:70px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;font-size:22px;color:var(--primary);text-decoration:none}nav{display:flex;gap:18px;align-items:center}nav a,.link-btn{color:var(--text);text-decoration:none;background:none;border:0;font:inherit;cursor:pointer}.nav-user{color:var(--muted);font-size:14px}.inline{display:inline}main{padding-top:38px;padding-bottom:60px}.hero{padding:80px 0 100px;max-width:760px}.hero h1{font-size:52px;line-height:1.05;margin:14px 0}.hero p{font-size:21px;color:var(--muted);line-height:1.55}.badge{display:inline-block;background:#eaf0fa;color:var(--primary);padding:7px 11px;border-radius:999px;font-weight:700;font-size:13px}.btn{display:inline-block;background:var(--primary);color:white;border:0;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:700;cursor:pointer;font:inherit}.btn:hover{background:var(--primary2)}.btn.secondary{background:#fff;color:var(--primary);border:1px solid #cdd7e8}.btn:disabled{opacity:.5;cursor:not-allowed}.actions{display:flex;gap:10px;align-items:center;margin-top:24px;flex-wrap:wrap}.auth-card,.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;max-width:580px;margin:35px auto;box-shadow:0 8px 30px rgba(21,34,56,.05)}label{display:block;margin:18px 0;font-weight:650}input{display:block;width:100%;margin-top:8px;border:1px solid #cfd7e3;border-radius:9px;padding:12px 13px;font:inherit;background:#fff}.alert{background:#fff1f1;border:1px solid #efc5c5;color:var(--danger);padding:11px 13px;border-radius:9px;margin-bottom:16px}.flash-success{background:var(--okbg);border:1px solid #bfe4ce;color:var(--ok);padding:11px 13px;border-radius:9px;margin:0 0 18px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:25px}.page-head h1{font-size:34px;margin:4px 0}.page-head p,.muted{color:var(--muted)}.project-list{display:grid;gap:12px}.project-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px 20px;text-decoration:none;color:var(--text);display:flex;justify-content:space-between;align-items:center}.project-card strong,.project-card small{display:block}.project-card small{color:var(--muted);margin-top:5px}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#99a3b2;margin-right:8px}.ok-dot{background:var(--ok)}.empty,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.panel{margin-bottom:18px}.panel h2{margin-top:0;font-size:18px}.signal{display:inline-block;padding:8px 12px;border-radius:9px;font-weight:800}.signal.no-data{background:#f0f2f5;color:#596273}.ok{color:var(--ok);font-weight:700}.bad{color:var(--danger);font-weight:700}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.kpis div{border:1px solid var(--line);border-radius:11px;padding:16px}.kpis span{display:block;color:var(--muted);font-size:13px}.kpis strong{display:block;font-size:27px;margin-top:7px}.back{color:var(--muted);text-decoration:none}.footer{color:#98a2b3;font-size:13px;padding-bottom:35px}.counter-list{display:grid;gap:10px}.radio-row,.check-row{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 16px;margin:0;cursor:pointer}.radio-row:hover,.check-row:hover{border-color:#b7c7df}.radio-row input,.check-row input{width:auto;margin:3px 0 0;flex:0 0 auto}.radio-row span,.check-row span{display:block}.radio-row strong,.check-row strong,.radio-row small,.check-row small{display:block}.radio-row small,.check-row small{font-weight:400;color:var(--muted);margin-top:4px}.mini-badge{display:inline-block!important;margin-left:8px!important;background:var(--okbg);color:var(--ok);font-size:11px;font-weight:700!important;padding:3px 6px;border-radius:999px}.health-list{display:grid;gap:10px}.health-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:10px 0}.health-list>div:last-child{border-bottom:0}@media(max-width:720px){.wrap{padding:0 16px}.hero{padding-top:45px}.hero h1{font-size:38px}.page-head{display:block}.page-head .btn{margin-top:10px}.grid,.kpis{grid-template-columns:1fr}.nav-user{display:none}}
.auth-help{margin:16px 0 0;color:var(--muted);font-size:14px}.auth-help a{color:var(--primary);text-decoration:none;font-weight:650}.auth-help a:hover{text-decoration:underline}
.inline-block{display:inline-block}.sync-note{color:var(--muted);font-size:13px}.panel-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.panel-title-row h2{margin-bottom:3px}.panel-sub{margin:0}.metric-delta{display:block;color:var(--muted);font-size:12px;margin-top:5px}.engine-grid,.compare-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}.compare-grid{grid-template-columns:repeat(3,1fr)}.engine-grid>div,.compare-grid>div{border:1px solid var(--line);border-radius:11px;padding:16px}.engine-grid span,.compare-grid span{display:block;color:var(--muted);font-size:13px}.engine-grid strong,.compare-grid strong{display:block;font-size:24px;margin-top:6px}.engine-grid small{display:block;color:var(--muted);margin-top:6px}.signal.normal{background:var(--okbg);color:var(--ok)}.signal.warning{background:#fff7e8;color:#966314}.signal.critical{background:#fff1f1;color:var(--danger)}.signal-reasons{margin:14px 0 0;padding-left:20px;color:var(--text)}.signal-reasons li{margin:6px 0}.panel-note{font-size:13px;margin:14px 0 0}.empty.compact{padding:16px;margin-top:10px}.project-card .project-meta{display:flex;gap:10px;align-items:center}@media(max-width:720px){.panel-title-row{display:block}.panel-title-row form{margin-top:12px}.sync-note{display:block;margin-top:8px}.engine-grid,.compare-grid{grid-template-columns:1fr}}

/* SEOAlert dashboard v0.4.1 */
.brand{display:flex;align-items:center;gap:10px}.brand-icon{width:34px;height:34px;border-radius:9px;display:block}.project-page-head{margin-bottom:24px}.project-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.project-title-row h1{font-size:36px;line-height:1.15;margin:10px 0 0}.domain-chip{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid var(--line);background:#fff;border-radius:999px;color:var(--muted);font-size:13px;font-weight:650;margin-top:10px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px;margin-bottom:18px}.eyebrow{font-size:11px;line-height:1.2;letter-spacing:.08em;color:#8a96a8;font-weight:800;margin-bottom:8px}.signal-panel,.integration-panel{min-height:180px}.signal-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.signal-head h2{margin:0}.signal-copy{margin-bottom:0;line-height:1.55}.integration-panel p{margin:10px 0}.dashboard-panel{padding:28px}.dashboard-title{align-items:center}.sync-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.refresh-btn{white-space:nowrap}.sync-note{white-space:nowrap}.dashboard-kpis{margin-top:6px}.kpi-card{min-width:0;position:relative;background:#fbfcfe}.kpi-card .kpi-label{font-weight:650}.kpi-card strong{font-size:34px;letter-spacing:-.02em}.kpi-card small{display:block;color:var(--muted);font-size:12px;margin-top:7px;line-height:1.35}.forecast-card{background:#f7f9fd}.forecast-card .delta-pill{margin-top:9px}.engine-grid{margin-top:18px}.engine-card{padding:18px!important;background:#fff}.engine-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:14px;margin-bottom:2px;border-bottom:1px solid var(--line)}.engine-head>strong{font-size:17px}.engine-current{font-size:27px;font-weight:800;line-height:1}.metric-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid #edf1f6}.metric-row:last-child{border-bottom:0;padding-bottom:0}.metric-row>span:first-child{color:var(--muted);font-size:13px}.metric-row b{font-size:14px}.delta-pill{display:inline-flex!important;width:max-content;align-items:center;justify-content:center;border-radius:999px;padding:5px 8px;font-size:12px!important;font-weight:800;line-height:1.15}.delta-pill.positive,.change-value.positive{color:#18764a}.delta-pill.positive{background:#eaf7f0}.delta-pill.negative,.change-value.negative{color:#a23d3d}.delta-pill.negative{background:#fff0f0}.delta-pill.neutral,.change-value.neutral{color:#667085}.delta-pill.neutral{background:#f1f3f6}.two-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison-panel{min-width:0}.comparison-flow{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr) minmax(118px,.75fr);align-items:stretch;gap:10px;margin-top:16px}.comparison-value,.change-box{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fbfcfe;min-width:0}.comparison-value span,.change-box span{display:block;color:var(--muted);font-size:12px;line-height:1.3}.comparison-value strong{display:block;font-size:27px;margin-top:7px;line-height:1.05}.comparison-value small{display:block;color:var(--muted);font-size:11px;margin-top:7px;line-height:1.35}.change-box{display:flex;flex-direction:column;justify-content:center}.change-box strong{display:block;font-size:23px;margin-top:8px}.flow-arrow{display:flex;align-items:center;justify-content:center;color:#98a2b3;font-size:20px}.panel-note{line-height:1.5}.signal-reasons{line-height:1.5}.signal-reasons li{padding-left:2px}.integration-panel .actions{margin-top:16px}.integration-panel .btn.secondary{padding:10px 13px;font-size:14px}
@media(max-width:900px){.overview-grid,.two-panels{grid-template-columns:1fr}.comparison-flow{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) minmax(115px,.7fr)}}
@media(max-width:720px){.brand-icon{width:30px;height:30px}.project-title-row h1{font-size:30px}.dashboard-panel{padding:22px}.dashboard-title{display:block}.sync-actions{justify-content:flex-start;margin-top:14px}.dashboard-kpis{grid-template-columns:1fr}.comparison-flow{grid-template-columns:1fr 20px 1fr}.change-box{grid-column:1/-1;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.change-box strong{margin-top:0}.engine-head{align-items:center}}
@media(max-width:480px){.comparison-flow{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg);height:18px}.change-box{grid-column:auto}.project-title-row{align-items:flex-start;flex-direction:column;gap:4px}.domain-chip{margin-top:0}.sync-actions{align-items:flex-start;flex-direction:column}.refresh-btn{width:100%}}

/* SEOAlert dashboard v0.5 */
.behavior-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.behavior-card{border:1px solid var(--line);border-radius:13px;background:#fbfcfe;padding:18px;min-width:0}.behavior-card h3{margin:0 0 13px;font-size:16px}.behavior-row{padding:13px 0;border-top:1px solid #e9eef5}.behavior-row:first-of-type{border-top:0;padding-top:0}.behavior-name{font-size:13px;font-weight:800;margin-bottom:9px}.behavior-period{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:7px;font-size:12px}.behavior-period>span{color:var(--muted)}.behavior-period b{font-size:12px;white-space:nowrap}.behavior-period em{font-style:normal;font-weight:800;text-align:right;white-space:nowrap}.behavior-period em.positive{color:#18764a}.behavior-period em.negative{color:#a23d3d}.behavior-period em.neutral{color:#667085}.extras-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.extra-card{border:1px solid var(--line);border-radius:12px;background:#fbfcfe;padding:17px;min-width:0}.extra-card>span:first-child{display:block;color:var(--muted);font-size:12px;font-weight:650;line-height:1.35}.extra-card>strong{display:block;font-size:27px;line-height:1.05;margin:9px 0 7px;letter-spacing:-.02em}.extra-card>small{display:block;color:var(--muted);font-size:11px;line-height:1.4;min-height:31px}.extra-card>.delta-pill{margin-top:10px}.landing-total{text-align:right}.landing-total span{display:block;color:var(--muted);font-size:12px}.landing-total b{display:block;font-size:21px;margin-top:5px}.landing-total b.positive{color:#18764a}.landing-total b.negative{color:#a23d3d}.landing-total b.neutral{color:#667085}.landing-period{display:inline-flex;background:#f3f6fa;border-radius:8px;padding:7px 10px;color:var(--muted);font-size:12px;margin:2px 0 18px}.landing-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.landing-columns>div{min-width:0}.landing-columns h3{font-size:15px;margin:0 0 10px}.landing-row{border:1px solid var(--line);border-radius:11px;padding:13px 14px;margin-bottom:9px;background:#fbfcfe;min-width:0}.landing-url{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#263a5e}.landing-values{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:12px}.landing-values>span{color:var(--muted)}.landing-values>b{font-size:12px;white-space:nowrap}.landing-values>b.positive{color:#18764a}.landing-values>b.negative{color:#a23d3d}.landing-values>b.neutral{color:#667085}.landing-row small{display:block;color:var(--muted);font-size:11px;margin-top:6px;line-height:1.35}
@media(max-width:1000px){.behavior-grid{grid-template-columns:1fr}.extras-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.extras-grid,.landing-columns{grid-template-columns:1fr}.landing-total{text-align:left;margin-top:10px}.behavior-period{grid-template-columns:52px minmax(0,1fr) auto}.behavior-period b{white-space:normal}.landing-url{white-space:normal;overflow:visible;word-break:break-word}.extra-card>small{min-height:0}}

/* SEOAlert dashboard v0.5.1 — cache-safe polish */
.behavior-card{background:#fff}.behavior-row{display:grid;grid-template-columns:minmax(88px,.8fr) minmax(0,1.25fr) minmax(0,1.25fr);gap:12px;align-items:center}.behavior-row:first-of-type{padding-top:4px}.behavior-name{margin:0}.behavior-period{margin:0;grid-template-columns:54px minmax(0,1fr) auto}.extras-grid{margin-top:20px}.extra-card{background:#fff}.landing-row{background:#fff}.landing-url{font-size:13px}.landing-values{font-size:13px}.panel-sub+.extras-grid{margin-top:18px}
@media(max-width:1000px){.behavior-row{grid-template-columns:110px minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:720px){.behavior-row{grid-template-columns:1fr;gap:6px}.behavior-name{margin-bottom:2px}.behavior-period{grid-template-columns:58px minmax(0,1fr) auto}.behavior-card{padding:16px}}

/* v0.5.3 — fix behavior cards: keep each metric stacked inside narrow 3-column cards */
.behavior-row{
  display:block;
  padding:13px 0;
  border-top:1px solid #e9eef5;
}
.behavior-row:first-of-type{
  border-top:0;
  padding-top:0;
}
.behavior-name{
  margin:0 0 9px;
}
.behavior-period{
  display:grid;
  grid-template-columns:56px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  margin-top:7px;
  font-size:12px;
}
@media(max-width:720px){
  .behavior-row{display:block;gap:0}
  .behavior-name{margin-bottom:9px}
  .behavior-period{grid-template-columns:58px minmax(0,1fr) auto}
}

/* SEOAlert dashboard v0.6 — quality, conversion efficiency and anomalies */
.subsection-title{font-size:14px;margin:0 0 10px;color:#34445f}.quality-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.quality-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quality-card{border:1px solid var(--line);border-radius:13px;padding:16px;background:#fff;min-width:0}.quality-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;padding-bottom:12px;border-bottom:1px solid #edf1f6}.quality-card-head h3{font-size:16px;margin:0}.quality-card-head strong{font-size:13px;white-space:nowrap}.quality-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin-top:5px}.quality-stats>div{padding:9px 0;border-bottom:1px solid #edf1f6}.quality-stats>div:last-child{border-bottom:0}.quality-stats span{display:block;color:var(--muted);font-size:11px}.quality-stats b{display:block;font-size:13px;margin-top:4px}.quality-insights{margin-top:16px;padding:12px 14px;border-radius:10px;background:#f5f8fc;border:1px solid #e4eaf3}.quality-insights p{margin:4px 0;font-size:13px;line-height:1.45}.anomaly-panel{position:relative}.anomaly-panel.warning{border-color:#f0d7a4}.anomaly-panel.critical{border-color:#e7b8b8}.anomaly-badge{display:inline-flex;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800;white-space:nowrap}.anomaly-badge.normal{background:var(--okbg);color:var(--ok)}.anomaly-badge.warning{background:#fff7e8;color:#966314}.anomaly-badge.critical{background:#fff1f1;color:var(--danger)}.anomaly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.anomaly-card{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fff;min-width:0}.anomaly-card>span{display:block;color:var(--muted);font-size:12px}.anomaly-card>strong{display:block;font-size:25px;margin:7px 0 4px}.anomaly-card>small{display:block;color:var(--muted);font-size:11px;line-height:1.35}.anomaly-card>b{display:inline-block;margin-top:8px;font-size:12px}.anomaly-card>b.positive{color:#18764a}.anomaly-card>b.negative{color:#a23d3d}.anomaly-card>b.neutral{color:#667085}.anomaly-notes{margin:15px 0 0;padding-left:20px;font-size:13px;line-height:1.5}.landing-efficiency-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;margin-top:18px}.landing-efficiency-layout h3{font-size:15px;margin:0 0 10px}.conversion-table{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.conversion-row{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(74px,.5fr));gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid #edf1f6}.conversion-row:last-child{border-bottom:0}.conversion-url{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#263a5e}.conversion-row>div:not(:first-child){text-align:right}.conversion-row span{display:block;color:var(--muted);font-size:10px}.conversion-row b{display:block;font-size:12px;margin-top:3px}.no-conv-list{display:grid;gap:9px}.no-conv-row{border:1px solid #f0d5d5;background:#fffafa;border-radius:10px;padding:12px}.no-conv-row>div{font-size:12px;font-weight:700;color:#263a5e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.no-conv-row>b{display:block;color:var(--danger);font-size:13px;margin-top:6px}.no-conv-row>span{display:block;color:var(--muted);font-size:11px;margin-top:2px}
@media(max-width:1000px){.quality-columns{grid-template-columns:1fr}.anomaly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-efficiency-layout{grid-template-columns:1fr}.quality-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.quality-grid,.anomaly-grid{grid-template-columns:1fr}.conversion-row{grid-template-columns:minmax(0,1fr) repeat(3,60px);gap:7px;padding:10px}.conversion-row span{font-size:9px}.conversion-row b{font-size:11px}.conversion-url{font-size:11px}.anomaly-badge{margin-top:10px}.no-conv-row>div{white-space:normal;word-break:break-word}}
@media(max-width:480px){.conversion-row{grid-template-columns:1fr 1fr 1fr}.conversion-url{grid-column:1/-1;white-space:normal;word-break:break-word}.conversion-row>div:not(:first-child){text-align:left}}

/* SEOAlert dashboard v0.7 — 5-week trend, comparable conversions, operative landing changes */
.data-quality-warning{margin:14px 0 18px;padding:13px 16px;border:1px solid #efd99f;background:#fff8e8;color:#795315;border-radius:12px;font-size:13px;line-height:1.45}.data-quality-warning strong{font-weight:800}.weekly-series-list{display:grid;gap:18px;margin-top:18px}.weekly-series-row{border:1px solid var(--line);border-radius:13px;background:#fff;padding:16px}.weekly-series-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.weekly-series-head strong{font-size:15px}.weekly-bars{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:end}.week-bar-item{display:grid;grid-template-rows:auto 82px auto;gap:6px;min-width:0;text-align:center}.week-bar-value{font-weight:800;font-size:13px}.week-bar-track{height:82px;border-radius:8px;background:#f0f3f8;display:flex;align-items:flex-end;overflow:hidden}.week-bar-fill{width:100%;min-height:6px;background:#355fa5;border-radius:7px 7px 0 0}.week-bar-item small{font-size:10px;color:var(--muted);line-height:1.25}.month-conv-block{margin-top:16px;padding-top:16px;border-top:1px solid #e9eef5}.month-conv-title{font-size:12px;font-weight:800;color:#52627c;margin-bottom:10px}.month-conv-grid{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) minmax(120px,.8fr);gap:10px;align-items:center}.month-conv-grid>div:not(.flow-arrow):not(.month-conv-change){border:1px solid var(--line);border-radius:10px;padding:11px;background:#fbfcfe}.month-conv-grid span{display:block;color:var(--muted);font-size:10px}.month-conv-grid strong{display:block;font-size:20px;margin:4px 0}.month-conv-grid small{font-size:10px;color:var(--muted)}.month-conv-change{display:grid;grid-template-columns:1fr auto;gap:5px 8px;align-items:center}.month-conv-change span{font-size:10px}.month-conv-change b{font-size:11px;text-align:right}.month-conv-change b.positive{color:#18764a}.month-conv-change b.negative{color:#a23d3d}.month-conv-change b.neutral{color:#667085}.operational-periods{display:grid;gap:18px;margin-top:18px}.operational-period-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.operational-period-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.operational-period-head h3{margin:0;font-size:16px}.operational-period-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.operational-period-card .landing-columns{margin-top:2px}.operational-period-card .landing-columns h4{font-size:13px;margin:0 0 9px;color:#34445f}.operational-period-card .landing-period{margin-bottom:14px}
@media(max-width:900px){.month-conv-grid{grid-template-columns:1fr 20px 1fr}.month-conv-change{grid-column:1/-1;padding-top:8px}.operational-period-head{display:block}.operational-period-head .landing-total{text-align:left;margin-top:8px}}
@media(max-width:720px){.weekly-bars{grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto;padding-bottom:4px}.week-bar-item{grid-template-rows:auto 68px auto}.week-bar-track{height:68px}.month-conv-grid{grid-template-columns:1fr}.month-conv-grid>.flow-arrow{transform:rotate(90deg);height:18px}.month-conv-change{grid-column:auto}.operational-period-card{padding:13px}}

/* SEOAlert dashboard v0.7.1 — density and readability polish */
.wrap{max-width:1200px}
body{font-variant-numeric:tabular-nums}

/* The 5-week block was visually too tall. On desktop, keep all four trends
   visible at once in a compact 2x2 grid. */
.weekly-series-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.weekly-series-row{
  padding:14px 15px 13px;
  border-radius:12px;
  background:#fbfcfe;
}
.weekly-series-head{margin-bottom:10px}
.weekly-series-head strong{font-size:14px}
.weekly-bars{gap:8px}
.week-bar-item{
  grid-template-rows:auto 54px auto;
  gap:5px;
}
.week-bar-track{
  height:54px;
  border-radius:7px;
  background:#edf2f8;
}
.week-bar-fill{
  background:var(--primary2);
  border-radius:6px 6px 0 0;
}
.week-bar-value{font-size:12px}
.week-bar-item small{font-size:10px;line-height:1.2}

/* Month-to-date conversion comparison lives inside a half-width card.
   Keep two periods on one row and move the deltas below instead of squeezing
   four logical columns into a narrow panel. */
.month-conv-block{margin-top:14px;padding-top:14px}
.month-conv-grid{
  grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);
  gap:8px;
}
.month-conv-change{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 10px;
  padding:9px 11px;
  border-radius:9px;
  background:#f6f8fc;
}
.month-conv-change span{font-size:10px;font-weight:650}
.month-conv-change b{font-size:11px;text-align:left;margin-right:6px}

/* More distinct grouping in the operational landing-page report. */
.operational-period-card{
  background:#fbfcfe;
  padding:18px;
}
.operational-period-card .landing-row{background:#fff}
.operational-period-card .empty.compact{
  margin:0;
  min-height:66px;
  display:flex;
  align-items:center;
  color:var(--muted);
  background:#fff;
}
.operational-period-head{padding-bottom:2px}
.operational-period-head h3{font-size:17px}

/* Tighten repeated URL cards slightly so long analytical sections are easier
   to scan without reducing font size. */
.landing-row{padding:11px 13px;margin-bottom:7px}
.landing-values{margin-top:6px}
.no-conv-row{padding:11px}
.conversion-row{padding-top:10px;padding-bottom:10px}

/* Improve hierarchy between major sections without adding visual noise. */
.dashboard-panel>h2,.dashboard-panel .panel-title-row h2{letter-spacing:-.01em}
.panel-sub{line-height:1.45}

@media(max-width:1000px){
  .wrap{max-width:100%}
  .weekly-series-list{grid-template-columns:1fr}
}
@media(max-width:720px){
  .weekly-series-row{padding:13px}
  .weekly-bars{grid-template-columns:repeat(5,minmax(52px,1fr));overflow-x:auto;padding-bottom:4px}
  .week-bar-item{grid-template-rows:auto 50px auto}
  .week-bar-track{height:50px}
  .month-conv-grid{grid-template-columns:1fr}
  .month-conv-grid>.flow-arrow{transform:rotate(90deg);height:18px}
  .month-conv-change{grid-column:auto}
}

/* SEOAlert dashboard v0.7.2 — navigation, compact sections and period tabs */
html{scroll-behavior:smooth}
.wrap{max-width:1240px}
.dashboard-anchor{scroll-margin-top:92px}

.section-nav{
  position:sticky;
  top:10px;
  z-index:30;
  display:flex;
  align-items:center;
  gap:6px;
  width:max-content;
  max-width:100%;
  margin:-8px 0 18px;
  padding:6px;
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.96);
  box-shadow:0 7px 20px rgba(21,34,56,.06);
  scrollbar-width:none;
}
.section-nav::-webkit-scrollbar{display:none}
.section-nav a{
  flex:0 0 auto;
  padding:8px 12px;
  border-radius:8px;
  color:#53627a;
  text-decoration:none;
  font-size:12px;
  font-weight:750;
  transition:background .15s ease,color .15s ease;
}
.section-nav a:hover,.section-nav a.active{background:#eef3fb;color:var(--primary)}

/* Slightly tighter secondary analytical sections. */
.behavior-card{padding:15px}
.behavior-card h3{margin-bottom:10px}
.behavior-row{padding:10px 0;gap:9px}
.behavior-name{font-size:12px}
.behavior-period{gap:6px;font-size:11px}
.behavior-period b{font-size:11px}
.extras-grid{gap:10px}
.extra-card{padding:14px}
.extra-card>strong{font-size:25px}

/* Make the actionable zero-conversion area visually distinct. */
.landing-efficiency-layout{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)}
.landing-efficiency-layout>div:last-child{
  padding:14px;
  border:1px solid #efd2d2;
  border-radius:12px;
  background:#fffafa;
}
.landing-efficiency-layout>div:last-child h3{color:#8f3434}
.landing-efficiency-layout>div:last-child .panel-note{margin-top:-3px}
.no-conv-row{background:#fff;border-color:#efd6d6}

/* One compact landing-change report with three period tabs. */
.landing-movement-panel{min-height:320px}
.movement-title-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.movement-title-row h2{margin:0 0 3px}
.dashboard-tabs{
  display:inline-flex;
  flex-wrap:wrap;
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#f4f7fb;
}
.dashboard-tab{
  min-height:34px;
  padding:7px 11px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#617087;
  font:inherit;
  font-size:11px;
  font-weight:750;
  cursor:pointer;
}
.dashboard-tab:hover{color:var(--primary)}
.dashboard-tab.active{background:#fff;color:var(--primary);box-shadow:0 1px 3px rgba(21,34,56,.09)}
.dashboard-tab:focus-visible{outline:2px solid #86a6d4;outline-offset:2px}
.dashboard-tab-pane[hidden]{display:none!important}
.dashboard-tab-pane{animation:seoalert-tab-in .14s ease-out}
@keyframes seoalert-tab-in{from{opacity:.35}to{opacity:1}}
.movement-pane-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:14px 16px;
  margin-bottom:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fbfcfe;
}
.movement-pane-head h3{margin:0;font-size:16px}
.movement-pane-head p{margin:4px 0 0;color:var(--muted);font-size:11px}
.landing-movement-panel .landing-period{margin-bottom:13px}
.landing-movement-panel .landing-columns h4{font-size:13px;margin:0 0 8px;color:#34445f}
.landing-movement-panel .landing-row{padding:10px 12px;margin-bottom:6px}
.compact-empty{min-height:58px!important;margin:0!important;display:flex;align-items:center}

/* More compact top-level rhythm on wide screens. */
@media(min-width:1001px){
  .panel{margin-bottom:14px}
  .overview-grid,.two-panels{gap:14px;margin-bottom:14px}
  .dashboard-panel{padding:24px}
  .weekly-series-list{margin-top:14px}
}

@media(max-width:1000px){
  .section-nav{top:6px;width:100%}
  .landing-efficiency-layout{grid-template-columns:1fr}
  .movement-title-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:720px){
  .section-nav{margin:0 0 14px;padding:5px}
  .section-nav a{padding:8px 10px}
  .movement-pane-head{display:block;padding:13px}
  .movement-pane-head .landing-total{text-align:left;margin-top:9px}
  .dashboard-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}
  .dashboard-tab{white-space:nowrap}
  .behavior-row{grid-template-columns:1fr}
  .behavior-period{grid-template-columns:54px minmax(0,1fr) auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.dashboard-tab-pane{animation:none}}

/* ===== SEOAlert v0.8 — AI traffic ===== */
.ai-panel{position:relative;overflow:hidden}
.ai-panel:before{content:"";position:absolute;right:-70px;top:-85px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(49,91,163,.10),rgba(49,91,163,0) 70%);pointer-events:none}
.ai-status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;background:#eef2f7;color:#526177}
.ai-status.growth{background:#e9f8ef;color:#18844b}.ai-status.active{background:#e9f2ff;color:#245ca8}.ai-status.warning{background:#fff0ef;color:#b33c34}.ai-status.low{background:#fff7df;color:#8b6a13}
.ai-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.ai-kpi{border:1px solid var(--border,#dce3ed);border-radius:12px;background:#fbfcfe;padding:14px;min-width:0;display:flex;flex-direction:column;gap:5px}
.ai-kpi>span{font-size:12px;color:#68758a}.ai-kpi>strong{font-size:27px;line-height:1.05;color:#142139}.ai-kpi>small{font-size:11px;color:#7d899a;line-height:1.35}.ai-kpi>b{font-size:12px}
.ai-signal-text{margin-top:12px;padding:10px 12px;border-radius:10px;background:#f1f5fa;color:#26364f;font-size:13px;font-weight:650}
.ai-vs-search{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;padding:12px;border-radius:12px;background:#f5f8fc}
.ai-vs-search>div{display:grid;grid-template-columns:auto auto;gap:2px 12px;align-items:center;min-width:0}
.ai-vs-search span{font-size:12px;color:#68758a}.ai-vs-search b{font-size:18px;color:#17243b;text-align:right}.ai-vs-search small{grid-column:1/-1;font-size:11px;color:#7a8799}
.ai-insights{margin-top:10px;padding:10px 12px;border-radius:10px;background:#edf4ff}.ai-insights p{margin:3px 0;font-size:12px;color:#304a6f}
.ai-detail-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:18px;margin-top:18px}.ai-detail-grid h3{margin:0 0 9px;font-size:14px;color:#1b2940}
.ai-source-list,.ai-landing-list{display:grid;gap:7px}
.ai-source-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #e1e7ef;border-radius:10px;background:#fff}.ai-source-row>div{min-width:0;display:flex;flex-direction:column;gap:3px}.ai-source-row>div:last-child{align-items:flex-end;text-align:right}.ai-source-row strong{font-size:12px;color:#1b2940}.ai-source-row small{font-size:10px;color:#7b8798}
.ai-landing-row{display:grid;grid-template-columns:minmax(0,1fr) 66px 66px 62px;gap:8px;align-items:center;padding:9px 10px;border:1px solid #e1e7ef;border-radius:10px;background:#fff}.ai-landing-url{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;color:#24466f}.ai-landing-row>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-end;gap:1px}.ai-landing-row b{font-size:12px;color:#17243b}.ai-landing-row small{font-size:9px;color:#8590a0}
.ai-note{margin-top:14px}
@media(max-width:900px){.ai-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-detail-grid{grid-template-columns:1fr}.ai-vs-search{grid-template-columns:1fr}}
@media(max-width:560px){.ai-kpi-grid{grid-template-columns:1fr 1fr}.ai-kpi>strong{font-size:22px}.ai-landing-row{grid-template-columns:minmax(0,1fr) 58px 58px}.ai-landing-row>div:nth-child(3){display:none}.ai-detail-grid{gap:13px}.ai-source-row{align-items:flex-start}.ai-vs-search>div{grid-template-columns:1fr auto}}
