/* v3.1.1 Visual QA hotfix — duplicate shell, contrast, spacing and firm-card polish */
.ffiq-app{color:#f4f7fb}
.ffiq-app :where(h1,h2,h3,h4,h5,h6){color:#f4f7fb!important;text-shadow:none!important}
.ffiq-app :where(p,li,td,th,label,small,span){text-rendering:optimizeLegibility}
.ffiq-app .ffiq-section-head h2,
.ffiq-app .ffiq-pc-hero h1,
.ffiq-app .ffiq-firm-name h3,
.ffiq-app .ffiq-pc-brand h3,
.ffiq-app .ffiq-review-title h1{color:#f6f8fc!important}
.ffiq-app .ffiq-pc-hero h1>span{color:var(--ffiq-gold)!important}
.ffiq-app .ffiq-section-head>p,
.ffiq-app .ffiq-pc-hero p{color:#b9c6d5!important}

/* One clean header context bar on generated comparison pages. */
.ffiq-context-note{display:flex;align-items:center;gap:10px;margin-top:18px;padding:11px 14px;border:1px solid rgba(244,200,111,.18);border-radius:13px;background:rgba(244,200,111,.055);color:#bac6d4;font-size:12px;line-height:1.55}
.ffiq-context-note strong{flex:0 0 auto;color:#ffd98b}

/* More compact, readable section rhythm. */
.ffiq-section{padding-block:clamp(42px,5vw,64px)}
.ffiq-section-head{align-items:center;margin-bottom:22px}
.ffiq-section-head h2{max-width:720px;font-size:clamp(30px,3.35vw,44px);line-height:1.12}
.ffiq-section-head>p{max-width:590px;font-size:14px;line-height:1.7}
.ffiq-verification-scope{margin-bottom:16px}
.ffiq-filters{margin-bottom:10px}

/* Comparison page: remove oversized dark hero and wasted space. */
.ffiq-plan-comparison{min-height:0}
.ffiq-pc-hero{padding:44px 0 22px}
.ffiq-pc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:32px;align-items:start}
.ffiq-pc-hero h1{max-width:800px;margin:14px 0 16px;font-size:clamp(40px,5.2vw,64px);line-height:1.03;letter-spacing:-.038em}
.ffiq-pc-hero-panel{padding:22px}
.ffiq-pc-trust{margin-top:18px}
.ffiq-pc-trust span{padding:9px 12px}
.ffiq-pc-workspace-section{padding-top:18px}
.ffiq-pc-card,.ffiq-pc-workspace,.ffiq-pc-controls{background:linear-gradient(180deg,rgba(17,30,48,.82),rgba(6,14,24,.92))}
.ffiq-pc-brand small{color:#aebdce!important}
.ffiq-pc-brand h3{font-size:15px}
.ffiq-pc-key-grid b,.ffiq-pc-status span,.ffiq-pc-table td{color:#e4eaf2}
.ffiq-pc-table tbody td:first-child{color:#eef3f8}
.ffiq-pc-table td.is-unknown{color:#f1c56d}

/* Firm directory cards: readable names, dependable icons and balanced actions. */
.ffiq-firm-card{padding:20px;border-color:rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(15,29,48,.88),rgba(5,13,23,.95))}
.ffiq-firm-name{min-width:0}
.ffiq-firm-name>span:last-child{min-width:0}
.ffiq-firm-name h3{font-size:18px;overflow-wrap:anywhere}
.ffiq-firm-name small{color:#aebdce!important;line-height:1.45}
.ffiq-firm-logo{width:46px;height:46px;padding:6px;overflow:hidden;background:#f7f9fc!important;border-color:rgba(255,255,255,.24)!important;box-shadow:0 7px 20px rgba(0,0,0,.24)}
.ffiq-firm-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:7px}
.ffiq-score{font-size:23px;line-height:1.18}
.ffiq-score small{margin-top:3px;color:#9eacbc!important}
.ffiq-tags{gap:7px;margin:14px 0}
.ffiq-tags span{padding:5px 9px;font-size:11px;line-height:1.35}
.ffiq-stat-grid{gap:9px}
.ffiq-stat-grid>div{padding:12px;background:rgba(255,255,255,.035)}
.ffiq-stat-grid span{color:#96a7ba!important;font-size:11px}
.ffiq-stat-grid b{display:block;margin-top:4px;color:#eef3f8;font-size:12px;line-height:1.5}
.ffiq-best-for{min-height:0!important;color:#acbbca!important;line-height:1.58}
.ffiq-best-for strong{color:#dce5ee}
.ffiq-last-checked{color:#8fa2b7!important}
.ffiq-firm-actions.ffiq-three-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ffiq-firm-actions .ffiq-btn{min-height:46px;padding:9px 8px;font-size:11px;line-height:1.25}
.ffiq-rank-badge,.ffiq-verified-badge{font-size:10px;line-height:1.25}
.ffiq-verified-badge{max-width:195px}

/* Header remains compact after adding Reviews. */
.ffiq-nav{gap:16px}
.ffiq-desktop-nav{gap:1px}
.ffiq-nav-trigger{padding:10px 9px;font-size:12px}
.ffiq-nav-actions{gap:9px}
.ffiq-nav-actions>.ffiq-btn{padding-inline:15px}

/* Rule matrix and dense tables. */
.ffiq-table-wrap,.ffiq-dynamic-table-wrap{background:rgba(5,13,23,.82)}
.ffiq-table-wrap th,.ffiq-dynamic-table-wrap th{color:#b3c1d1!important;background:#0b1728}
.ffiq-table-wrap td,.ffiq-dynamic-table-wrap td{color:#e0e7ef}
.ffiq-table-wrap td:first-child,.ffiq-dynamic-table-wrap td:first-child{color:#f2f5f8!important}
.ffiq-app .ffiq-unverified{color:#f0bd5f!important}

@media(max-width:1100px){
  .ffiq-pc-hero-grid{grid-template-columns:1fr}
  .ffiq-pc-hero-panel{max-width:640px}
  .ffiq-firm-actions.ffiq-three-actions{grid-template-columns:1fr 1fr}
  .ffiq-firm-actions.ffiq-three-actions .ffiq-btn-primary{grid-column:1/-1}
}
@media(max-width:680px){
  .ffiq-context-note{align-items:flex-start;flex-direction:column}
  .ffiq-section{padding-block:42px}
  .ffiq-section-head{display:block}
  .ffiq-section-head>p{margin-top:14px}
  .ffiq-pc-hero{padding-top:34px}
  .ffiq-pc-hero h1{font-size:clamp(36px,11vw,48px)}
  .ffiq-firm-card{padding:17px}
  .ffiq-firm-actions.ffiq-three-actions{grid-template-columns:1fr}
  .ffiq-firm-actions.ffiq-three-actions .ffiq-btn-primary{grid-column:auto}
}
