.qf-card{display:flex;align-items:center;justify-content:space-between;gap:22px;width:100%;padding:16px 18px;border:1px solid rgba(128,146,196,.22);border-radius:16px;background:rgba(10,16,32,.72);box-shadow:0 12px 34px rgba(0,0,0,.14);backdrop-filter:blur(10px)}
.qf-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.qf-copy>strong{font-size:15px;line-height:1.25;color:#f5f7ff}.qf-copy>small{font-size:12px;color:#8f9bbb}.qf-copy>small b{color:#dfe5ff}.qf-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;letter-spacing:.09em;color:#9d8cff}.qf-eyebrow svg{width:13px;height:13px}
.qf-rating-controls,.qf-vote-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.qf-stars{display:flex;align-items:center;gap:2px}.qf-stars button{appearance:none;border:0;background:transparent;padding:3px;line-height:1;font-size:25px;color:#4c5774;cursor:pointer;transition:transform .14s ease,color .14s ease,text-shadow .14s ease}.qf-stars button:hover,.qf-stars button.preview,.qf-stars button.active{color:#f5b942;text-shadow:0 0 16px rgba(245,185,66,.28)}.qf-stars button:hover{transform:translateY(-1px) scale(1.05)}.qf-stars button:focus-visible,.qf-vote-controls button:focus-visible{outline:2px solid #8e7cff;outline-offset:2px}.qf-stars.is-busy button,.qf-vote-controls.is-busy button{pointer-events:none;opacity:.65}
.qf-status{flex-basis:100%;text-align:right;font-size:11px;color:#7f8aa8}.qf-status.is-success{color:#62d9a7}.qf-status.is-error{color:#ff8b9a}
.qf-vote-controls button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid rgba(128,146,196,.24);border-radius:10px;background:rgba(16,24,45,.75);color:#cbd3e9;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.qf-vote-controls button svg{width:15px;height:15px}.qf-vote-controls button:hover{transform:translateY(-1px);border-color:rgba(144,124,255,.55)}.qf-vote-controls button.active{border-color:rgba(113,94,255,.7);background:rgba(101,80,244,.17);color:#f2efff}
.tool-detail-hero .qf-card{margin:14px 0 4px}.model-detail-hero .qf-card{margin:14px 0 2px}.comparison-detail-hero .qf-card{margin:15px 0 18px}.article-body>.qf-card{margin:26px 0}.pi-detail-body>.qf-card{margin:22px 0}
.qf-toast{position:fixed;right:22px;bottom:24px;z-index:9999;max-width:min(360px,calc(100vw - 32px));padding:11px 14px;border:1px solid rgba(126,108,255,.35);border-radius:11px;background:#11182a;color:#f4f6ff;font-size:12px;font-weight:700;box-shadow:0 16px 44px rgba(0,0,0,.35);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s ease}.qf-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:760px){.qf-card{align-items:flex-start;flex-direction:column;gap:12px;padding:14px}.qf-rating-controls,.qf-vote-controls{width:100%;justify-content:flex-start}.qf-status{text-align:left}.qf-stars button{font-size:30px;padding:3px 5px}.qf-vote-controls button{flex:1 1 calc(50% - 6px);min-width:130px}.tool-detail-hero .qf-card,.model-detail-hero .qf-card,.comparison-detail-hero .qf-card{margin-top:12px}.qf-toast{right:16px;bottom:18px}}

/* Quick rating replaces the old dedicated Write Review hero CTA. Keep the
   full review routes/backend available, but do not crowd detail-page actions. */
.model-detail-actions a[href*="review"],
.model-detail-actions .write-review-btn,
.model-detail-actions .review-action-btn,
.tool-hero-actions a[href*="review"],
.tool-hero-actions .write-review-btn,
.tool-hero-actions .review-action-btn {
    display: none !important;
}


/* 2026-08-29 — Tool hero final mobile action flow.
   saved.js injects Follow immediately after Save; Blade provides Compare, Pricing, Visit. */
.tool-hero-actions .tool-pricing-action{scroll-margin-top:140px}
@media(max-width:720px){
    .tool-hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px!important}
    .tool-hero-actions>*{width:100%;min-width:0}
    .tool-hero-actions .detail-primary-btn{grid-column:1/-1!important}
}
