/* ═══════════════════════════════════════════════════════════════════
   ShukWAY · SEO Page Styles · Sprint 11
   Semrush-inspired layout: tabs, scorecards, trend chart, intent, panels
   ═══════════════════════════════════════════════════════════════════ */

/* Tabs */
.seo-tabs{display:flex;gap:16px;border-bottom:1px solid var(--border-strong);padding:0 4px;margin-bottom:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.seo-tabs::-webkit-scrollbar{display:none}
.seo-tab{padding:12px 0;font-size:14px;color:var(--muted);background:transparent;border:none;cursor:pointer;font-family:var(--font);transition:color var(--tx-fast);white-space:nowrap;flex-shrink:0}
.seo-tab-active{border-bottom:2px solid var(--teal);color:var(--teal);font-weight:500}
.seo-tab[disabled]{opacity:0.5;cursor:not-allowed}
.seo-tab:not([disabled]):hover{color:var(--teal)}

/* Scorecards */
.seo-scorecards{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:1rem}
.seo-scorecard{background:var(--paper);border:0.5px solid var(--border-strong);border-radius:8px;padding:12px 14px}
.seo-scorecard-label{font-size:11px;color:var(--ink-soft);margin-bottom:4px}
.seo-scorecard-value{font-size:22px;font-weight:500}
.seo-scorecard-delta-pos{font-size:11px;color:var(--teal);font-weight:500}
.seo-scorecard-delta-neg{font-size:11px;color:var(--danger);font-weight:500}
.seo-scorecard-delta-zero{font-size:11px;color:var(--muted);font-weight:500}

/* Trend chart card */
.seo-trend-card{background:var(--paper);border:0.5px solid var(--border-strong);border-radius:8px;padding:16px;margin-bottom:1rem}
.seo-trend-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.seo-trend-legend{display:flex;gap:16px;font-size:11px;color:var(--ink-soft)}
.seo-trend-legend-item{display:flex;align-items:center;gap:4px}
.seo-trend-legend-dot{width:10px;height:10px;border-radius:2px}
.seo-trend-bars{display:flex;align-items:flex-end;gap:2px;height:120px}
.seo-trend-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;border-radius:2px 2px 0 0;overflow:hidden}
.seo-trend-bar-segment{width:100%;transition:height var(--tx-base)}
.seo-trend-dates{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:4px}

/* "Demo data" badge — marks the trend chart as illustrative, not real history */
.seo-demo-badge{font-size:10px;font-weight:600;color:var(--orange-deep);background:var(--orange-soft);border-radius:var(--r-pill);padding:2px 10px;white-space:nowrap}

/* Period selector within trend card */
.seo-period-selector{display:inline-flex;gap:2px;background:var(--cream-deep);border-radius:6px;padding:2px}
.seo-period-btn{padding:4px 10px;font-size:11px;border:none;background:transparent;border-radius:4px;cursor:pointer;font-family:var(--font);color:var(--muted)}
.seo-period-btn-active{background:var(--teal);color:white}
.seo-period-btn[disabled]{opacity:0.4;cursor:not-allowed}

/* 2-col tables */
.seo-tables-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:1rem}
.seo-table-card{background:var(--paper);border:0.5px solid var(--border-strong);border-radius:8px;padding:16px}
.seo-table-card-title{font-size:14px;font-weight:600;margin-bottom:12px}

/* Intent stacked bar */
.seo-intent-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-bottom:16px}
.seo-intent-row{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12px}
.seo-intent-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.seo-intent-label{flex:1}
.seo-intent-count{font-weight:500}

/* Footer panels */
.seo-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:1.5rem}
.seo-panel{background:var(--paper);border:0.5px solid var(--border-strong);border-radius:8px;padding:16px;max-height:400px;display:flex;flex-direction:column}
.seo-panel-title{font-size:14px;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.seo-panel-body{flex:1;overflow-y:auto}
.seo-panel-recommendations{background:linear-gradient(135deg,#EFF8F7 0%,#FFFFFF 100%);border:0.5px solid var(--teal)}

/* Recommendation cards */
.seo-rec{padding:10px;background:rgba(255,255,255,0.7);border-radius:6px;margin-bottom:8px}
.seo-rec-high{border-right:3px solid var(--danger)}
.seo-rec-medium{border-right:3px solid var(--orange)}
.seo-rec-low{border-right:3px solid var(--teal)}
.seo-rec-title{font-size:13px;font-weight:500;margin-bottom:4px}
.seo-rec-desc{font-size:11px;color:var(--muted);margin-bottom:6px}
.seo-rec-btn{font-size:11px;padding:3px 10px;border:1px solid var(--border-strong);border-radius:4px;background:transparent;cursor:pointer;font-family:var(--font);color:var(--teal)}
.seo-rec-btn:hover{background:var(--teal-soft)}

/* Ideas / Notes shared */
.seo-item{padding:8px 10px;background:var(--cream);border-radius:6px;margin-bottom:6px;position:relative}
.seo-item-completed{opacity:0.55}
.seo-item-completed .seo-item-text{text-decoration:line-through}
.seo-item-text{font-size:12px;line-height:1.5}
.seo-item-meta{font-size:10px;color:var(--muted);margin-top:2px}
.seo-item-actions{position:absolute;top:6px;left:6px;display:none;gap:4px}
.seo-item:hover .seo-item-actions{display:flex}
.seo-item-action-btn{background:none;border:none;cursor:pointer;font-size:12px;padding:2px;opacity:0.6}
.seo-item-action-btn:hover{opacity:1}

/* Tag pills */
.seo-tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:500;cursor:pointer}
.seo-tag-content{background:var(--orange-soft);color:var(--orange-deep)}
.seo-tag-technical{background:var(--teal-soft);color:var(--teal)}
.seo-tag-links{background:var(--teal-soft);color:var(--teal)}
.seo-tag-general{background:var(--cream-deep);color:var(--muted)}
.seo-tag-active{outline:2px solid currentColor;outline-offset:1px}
.seo-tags-row{display:flex;gap:6px;margin-bottom:10px}

/* Add form */
.seo-add-form{display:flex;gap:6px;margin-top:10px}
.seo-add-form input{flex:1;padding:6px 10px;font-size:12px;border:0.5px solid var(--border-strong);border-radius:6px;font-family:var(--font)}
.seo-add-form button{background:var(--teal);color:white;border:none;font-size:14px;padding:0 12px;border-radius:6px;cursor:pointer}
.seo-add-form button:hover{background:var(--teal-deep)}

/* Checkbox */
.seo-checkbox{width:16px;height:16px;accent-color:var(--teal);cursor:pointer;flex-shrink:0}

/* Numeric column title cell — right-aligned to match the .num data cells, but
   without the LTR direction of .num (which shifted the Hebrew title text). */
.seo-th-num{text-align:right;white-space:nowrap}

/* ─── SEO table alignment (scoped to .seo-table-card) ─── */
.seo-table-card .biz-table{table-layout:auto;width:100%}
.seo-table-card .biz-table th,
.seo-table-card .biz-table td{text-align:right;padding:var(--sp-2) var(--sp-3)}
/* The global .num sets display:inline-block, which pulls a <td> out of the
   table column model and misaligns numbers from their header. Force real
   table cells inside SEO tables, right-aligned to match the .seo-th-num title. */
.seo-table-card .biz-table td.num{display:table-cell;text-align:right;white-space:nowrap}
.seo-table-card .biz-table th.seo-th-num{text-align:right;white-space:nowrap}
.seo-table-card{overflow-x:auto}

/* Responsive — tablet (769px–1100px) */
@media(min-width:769px) and (max-width:1100px){
  .seo-scorecards{grid-template-columns:repeat(5,1fr);gap:6px}
  .seo-scorecard{padding:8px 10px}
  .seo-scorecard-label{font-size:10px}
  .seo-scorecard-value{font-size:17px}
  .seo-tables-grid{grid-template-columns:1fr}
  .seo-footer{grid-template-columns:1fr 1fr}
  .seo-trend-header{flex-wrap:wrap;gap:8px}
  .seo-trend-bars{height:90px}
  .seo-trend-card{padding:12px}
  .seo-table-card{padding:12px}
  .seo-table-card .biz-table{font-size:11px}
  .seo-table-card .biz-table th{font-size:10px;padding:var(--sp-1) var(--sp-2)}
  .seo-table-card .biz-table td{padding:var(--sp-1) var(--sp-2)}
}

/* Business-views header search width (overridable on mobile) */
.bv-search-input{width:140px}

/* Responsive — mobile (≤768px) */
@media(max-width:768px){
  .seo-scorecards{grid-template-columns:repeat(2,1fr)}
  .seo-tables-grid{grid-template-columns:1fr}
  .seo-footer{grid-template-columns:1fr}
  .seo-tabs{gap:12px;overflow-x:auto}
  .seo-table-card .biz-table{font-size:11px}
  .seo-table-card .biz-table th{font-size:10px;padding:var(--sp-1) var(--sp-2)}
  .seo-table-card .biz-table td{padding:var(--sp-1) var(--sp-2)}
  /* #10: un-cram the BV header — title on its own row, search full-width,
     period selector + total share the next row without squashing. */
  .bv-header{flex-direction:column;align-items:stretch;gap:10px}
  .bv-controls{width:100%;justify-content:space-between;gap:6px}
  .bv-search-input{flex:1 1 100%;width:auto;min-width:0}
}
