.popular-tools-standard{border-top:1px solid var(--border);width:100%;margin-top:64px;padding-top:48px}.popular-tools-wrapper{width:100%;margin:0 auto}@media (max-width:768px){.popular-tools-standard{margin-top:48px;padding-top:32px}}
.tool-rating-wrapper{align-items:center;display:inline-flex;position:relative}.rating-trigger-icon{width:16px;height:16px;transition:fill .2s}.rating-trigger-count{color:var(--text-secondary);margin-left:.1rem;font-size:.85rem}.tool-rating-popover{z-index:50;background:var(--bg-card,#fff);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-lg,16px);flex-direction:column;align-items:center;gap:1rem;min-width:280px;padding:1.25rem;display:flex;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%);box-shadow:0 20px 40px #0006,0 0 0 1px #ffffff0d}@media (max-width:768px){.tool-rating-popover{width:90%;max-width:360px;padding:1.5rem;position:fixed;top:15%;bottom:auto;left:50%;transform:translate(-50%);box-shadow:0 20px 60px #0009}.tool-rating-textarea{font-size:16px}.tool-rating-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;width:100vw;height:100vh;position:fixed;top:0;left:0}}@media (min-width:769px){.tool-rating-backdrop{display:none}}.tool-rating-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex;position:absolute;top:12px;right:12px}.tool-rating-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tool-rating-close-btn svg{width:18px;height:18px}.tool-rating-stars-wrapper{flex-direction:column;align-items:center;gap:.5rem;display:flex}.tool-rating-stars{gap:.25rem;display:flex}.tool-rating-star{cursor:pointer;background:0 0;border:none;padding:.25rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.tool-rating-star:hover{transform:scale(1.15)}.tool-rating-star svg{width:32px;height:32px;transition:fill .2s,stroke .2s}.tool-rating-star.empty svg{fill:#0000;stroke:var(--text-secondary);opacity:.5}.tool-rating-star.filled svg{fill:gold;stroke:gold;filter:drop-shadow(0 0 6px #ffd7004d)}.tool-rating-text{color:var(--text-secondary);font-size:.9rem;font-weight:500}.tool-rating-form{flex-direction:column;gap:12px;width:100%;margin-top:8px;display:flex;overflow:hidden}.tool-rating-textarea{border:1px solid var(--border);width:100%;min-height:85px;color:var(--text-primary);resize:none;background:#8080800a;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:.95rem;transition:all .2s}.tool-rating-textarea::placeholder{color:var(--text-secondary);opacity:.7}.tool-rating-textarea:focus{border-color:var(--accent);background:0 0;outline:none;box-shadow:0 0 0 3px #3b82f626}.tool-rating-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.tool-rating-cancel-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.tool-rating-cancel-btn svg{width:20px;height:20px}.tool-rating-cancel-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tool-rating-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:8px 20px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}.tool-rating-submit:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f659}.tool-rating-submit:disabled{opacity:.6;cursor:not-allowed}.tool-rating-success{color:var(--success);background:#10b9811a;border:1px solid #10b98133;border-radius:2rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;font-weight:600;display:flex}.tool-rating-success svg{width:20px;height:20px}.popover-enter{animation:.3s cubic-bezier(.16,1,.3,1) forwards popoverSlideDown}.slide-down{animation:.3s cubic-bezier(.16,1,.3,1) forwards slideDown}.fade-in{animation:.3s forwards fadeIn}@keyframes popoverSlideDown{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
