/* Component-specific styles only - Tailwind handles utilities */
/* Cleaned: removed unused classes (hero-gradient, cta-gradient, shimmer-badge, fade-in*, deal-card-glow, tab-link, card-glow, ai-content) */
.tool-card{transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(145deg,#fff 0%,#f8fafc 100%)}
.tool-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px -12px rgba(0,0,0,.15)}
.gradient-text{background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.nsfw-badge{background:#dc2626}
.hide-scrollbar::-webkit-scrollbar{display:none}
.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}
::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:#94a3b8}
.mobile-menu-overlay{transition:opacity .3s ease;opacity:1}
.mobile-menu-overlay.hidden{opacity:0;pointer-events:none}
.mobile-menu-panel{transition:transform .3s cubic-bezier(.4,0,.2,1);transform:translateX(0)}
.mobile-menu-panel.hidden{transform:translateX(100%)}
html.menu-open,html.menu-open body{overflow:hidden;position:fixed;width:100%;height:100%}
.utility-bar{background:#0f172a;color:#94a3b8;font-size:12px;transition:all .35s cubic-bezier(.4,0,.2,1)}
.utility-bar a{color:#818cf8;transition:color .2s}
.utility-bar a:hover{color:#c7d2fe}
.utility-bar .stat-icon{transition:transform .2s}
.utility-bar .stat-icon:hover{transform:scale(1.15)}
.site-header{background:#fff;transition:all .35s cubic-bezier(.4,0,.2,1)}
.site-header .hdr-neon{height:2px;background:linear-gradient(90deg,transparent,#22d3ee,transparent);opacity:0;transition:opacity .35s ease}
.site-header.is-sticky{background:rgba(0,0,0,.97);box-shadow:0 4px 30px rgba(0,0,0,.4)}
.site-header.is-sticky .hdr-neon{opacity:.6}
.site-header .hdr-border{border-bottom:1px solid #e5e7eb;transition:border-color .35s}
.site-header.is-sticky .hdr-border{border-bottom-color:rgba(139,92,246,.15)}
.site-header .nav-link{color:#4b5563;transition:color .3s,background .3s}
.site-header .nav-link:hover{color:#6366f1;background:rgba(99,102,241,.06)}
.site-header.is-sticky .nav-link{color:#9ca3af}
.site-header.is-sticky .nav-link:hover{color:#22d3ee;background:rgba(255,255,255,.05)}
.site-header .nav-link.active{color:#6366f1;font-weight:600}
.site-header.is-sticky .nav-link.active{color:#22d3ee}
.site-header .logo-ai{color:#6366f1;transition:color .3s}
.site-header .logo-cloud{color:#111827;transition:color .3s}
.site-header .logo-base{color:#8b5cf6;transition:color .3s}
.site-header.is-sticky .logo-ai{color:#22d3ee}
.site-header.is-sticky .logo-cloud{color:#fff}
.site-header.is-sticky .logo-base{color:#a78bfa}
.site-header .deals-badge{background:linear-gradient(135deg,#f97316,#ef4444);color:#fff;font-size:9px;font-weight:800;padding:1px 6px;border-radius:4px}
.site-header .nav-sep{width:1px;height:24px;background:#e5e7eb;transition:background .3s}
.site-header.is-sticky .nav-sep{background:rgba(255,255,255,.1)}
.mega-menu{opacity:0;visibility:hidden;transform:translateY(8px);transition:all .2s cubic-bezier(.4,0,.2,1)}
.mega-trigger:hover .mega-menu{opacity:1;visibility:visible;transform:translateY(0)}
.site-header .mega-menu{background:#fff;border:1px solid #e5e7eb;box-shadow:0 20px 40px rgba(0,0,0,.08)}
.site-header .mega-menu .mm-title{color:#111827}
.site-header .mega-menu .mm-desc{color:#6b7280}
.site-header .mega-menu .mm-item:hover{background:#f9fafb}
.site-header .mega-menu .mm-icon{background:rgba(99,102,241,.06);border-color:rgba(99,102,241,.12)}
.site-header .mega-menu .mm-divider{border-color:#f3f4f6}
.site-header.is-sticky .mega-menu{background:rgba(0,0,0,.97);border-color:rgba(255,255,255,.1);box-shadow:0 20px 40px rgba(0,0,0,.5)}
.site-header.is-sticky .mega-menu .mm-title{color:#fff}
.site-header.is-sticky .mega-menu .mm-desc{color:#6b7280}
.site-header.is-sticky .mega-menu .mm-item:hover{background:rgba(255,255,255,.05)}
.site-header.is-sticky .mega-menu .mm-icon{background:rgba(99,102,241,.1);border-color:rgba(99,102,241,.2)}
.site-header.is-sticky .mega-menu .mm-divider{border-color:rgba(255,255,255,.05)}
.site-header .hdr-search{background:#f3f4f6;border:1px solid #e5e7eb;color:#111827;transition:all .3s;border-radius:9999px}
.site-header .hdr-search::placeholder{color:#9ca3af}
.site-header .hdr-search:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1);background:#fff}
.site-header .hdr-search-icon{color:#9ca3af;transition:color .3s}
.site-header .hdr-kbd{color:#9ca3af;background:#e5e7eb;border:1px solid #d1d5db;transition:all .3s}
.site-header.is-sticky .hdr-search{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#fff}
.site-header.is-sticky .hdr-search::placeholder{color:#6b7280}
.site-header.is-sticky .hdr-search:focus{border-color:rgba(34,211,238,.5);box-shadow:0 0 15px rgba(6,182,212,.15);background:rgba(255,255,255,.08)}
.site-header.is-sticky .hdr-search-icon{color:#6b7280}
.site-header.is-sticky .hdr-kbd{color:#6b7280;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1)}
.hdr-suggestions{background:#fff;border:1px solid #e5e7eb;box-shadow:0 20px 40px rgba(0,0,0,.08)}
.hdr-suggestions .sug-item{border-color:#f3f4f6}
.hdr-suggestions .sug-item:hover{background:#f9fafb}
.hdr-suggestions .sug-name{color:#111827}
.hdr-suggestions .sug-tag{color:#6b7280}
.hdr-suggestions .sug-price{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}
.hdr-suggestions .sug-all{color:#6366f1;border-color:#f3f4f6}
.hdr-suggestions .sug-all:hover{background:#f9fafb}
.hdr-suggestions .sug-empty{color:#6b7280}
.hdr-suggestions .sug-quiz{color:#6366f1}
.hdr-suggestions .sug-loading{color:#9ca3af}
.hdr-suggestions .sug-loading i{color:#6366f1}
.hdr-suggestions .sug-error{color:#ef4444}
.hdr-suggestions mark{background:rgba(99,102,241,.12);color:#6366f1}
.site-header.is-sticky .hdr-suggestions{background:rgba(0,0,0,.97);border-color:rgba(255,255,255,.1);box-shadow:0 20px 40px rgba(0,0,0,.5)}
.site-header.is-sticky .hdr-suggestions .sug-item{border-color:rgba(255,255,255,.05)}
.site-header.is-sticky .hdr-suggestions .sug-item:hover{background:rgba(255,255,255,.05)}
.site-header.is-sticky .hdr-suggestions .sug-name{color:#fff}
.site-header.is-sticky .hdr-suggestions .sug-tag{color:#6b7280}
.site-header.is-sticky .hdr-suggestions .sug-price{background:rgba(255,255,255,.05);color:#9ca3af;border-color:rgba(255,255,255,.1)}
.site-header.is-sticky .hdr-suggestions .sug-all{color:#22d3ee;border-color:rgba(255,255,255,.1)}
.site-header.is-sticky .hdr-suggestions .sug-all:hover{background:rgba(255,255,255,.05)}
.site-header.is-sticky .hdr-suggestions .sug-empty{color:#6b7280}
.site-header.is-sticky .hdr-suggestions .sug-quiz{color:#22d3ee}
.site-header.is-sticky .hdr-suggestions .sug-loading{color:#6b7280}
.site-header.is-sticky .hdr-suggestions .sug-loading i{color:#22d3ee}
.site-header.is-sticky .hdr-suggestions .sug-error{color:#ef4444}
.site-header.is-sticky .hdr-suggestions mark{background:rgba(34,211,238,.15);color:#22d3ee}
.site-header .mob-btn{color:#6b7280;border:1px solid #e5e7eb;background:#f9fafb;transition:all .3s}
.site-header .mob-btn:hover{color:#111827;background:#f3f4f6}
.site-header.is-sticky .mob-btn{color:#9ca3af;border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.05)}
.site-header.is-sticky .mob-btn:hover{color:#fff}
.site-header .mob-search{color:#6b7280;border:1px solid #e5e7eb;background:#f9fafb;transition:all .3s}
.site-header.is-sticky .mob-search{color:#9ca3af;border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.05)}
/* CWV: content-visibility for below-fold sections */
footer{content-visibility:auto;contain-intrinsic-size:auto 400px}
/* CWV: Reduce CLS from font icon placeholders */
.fas,.fab,.far{font-display:swap}
/* CWV: Optimize paint containment for cards */
.tool-card{contain:layout style paint}
/* Tool page styles */
.tab-btn.active{background-color:rgb(219 234 254);color:rgb(29 78 216)}
.tab-btn:not(.active){color:rgb(107 114 128)}
.tab-btn:not(.active):hover{background-color:rgb(243 244 246)}
.tool-description{font-size:1.0625rem;line-height:1.8}
.tool-description p{margin-bottom:1rem}
.tool-description h2,.tool-description h3,.tool-description h4{font-weight:700;color:#111827;margin-top:1.5rem;margin-bottom:.75rem}
.tool-description h2{font-size:1.5rem}
.tool-description h3{font-size:1.25rem}
.tool-description h4{font-size:1.125rem}
.tool-description ul,.tool-description ol{margin:1rem 0;padding-left:1.5rem}
.tool-description li{margin-bottom:.5rem;position:relative}
.tool-description ul li::before{content:"•";color:#3b82f6;font-weight:bold;position:absolute;left:-1rem}
.tool-description strong,.tool-description b{font-weight:600;color:#1f2937}
.tool-description em,.tool-description i{font-style:italic}
.tool-description a{color:#2563eb;text-decoration:underline;text-decoration-color:#93c5fd;text-underline-offset:2px}
.tool-description a:hover{color:#1d4ed8;text-decoration-color:#2563eb}
.tool-description blockquote{border-left:4px solid #3b82f6;padding:1rem;margin:1rem 0;font-style:italic;color:#4b5563;background:#f3f4f6;border-radius:0 .5rem .5rem 0}
.tool-description code{background:#f3f4f6;padding:.125rem .375rem;border-radius:.25rem;font-size:.875em;font-family:ui-monospace,monospace}
.tool-description pre{background:#1f2937;color:#f3f4f6;padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1rem 0}
.tool-description pre code{background:transparent;padding:0;color:inherit}
@keyframes floatPulse{0%,100%{box-shadow:0 25px 50px -12px rgba(37,99,235,.4)}50%{box-shadow:0 25px 50px -12px rgba(37,99,235,.6)}}
.fixed.bottom-8.right-8 a{animation:floatPulse 2s ease-in-out infinite}
.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0)}
@media(max-width:1023px){#compare-bar.translate-y-0{bottom:72px}}
/* Dark hero subtitle */
.hero-subtitle{color:#fcd34d;font-size:.875rem;margin-top:.25rem}
/* Shared utilities */
.scrollbar-hide::-webkit-scrollbar{display:none}
.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}
.glass{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.line-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
details summary::-webkit-details-marker{display:none}
details[open] summary .fa-chevron-down{transform:rotate(180deg)}
/* Shared keyframes */
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
.shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 2s infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
@keyframes fadeSlideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes shine{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
@keyframes scrollBounce{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:.5}}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
html{scroll-behavior:smooth}
/* Card hover patterns */
.deal-card{transition:transform .2s ease,box-shadow .2s ease}
.deal-card:hover{transform:translateY(-4px)}
.collection-card{transition:all .15s ease}
.collection-card:hover{transform:translateY(-2px)}
.category-card{transition:transform .15s ease,box-shadow .15s ease}
.category-card:hover{transform:translateY(-3px)}
.stats-card{transition:all .2s ease}
.stats-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px -8px rgba(0,0,0,.1)}
.step-slide{animation:fadeSlideUp .4s ease-out}
/* Filter buttons */
.filter-btn.active{background:linear-gradient(135deg,#3b82f6 0%,#6366f1 100%);color:#fff;border-color:transparent;box-shadow:0 2px 8px rgba(59,130,246,.25)}
.filter-pill{transition:all .15s ease}
.filter-pill:hover{transform:scale(1.02)}
.filter-pill.active{background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);color:#fff;box-shadow:0 4px 12px rgba(124,58,237,.3)}
.nav-pill{transition:all .2s}
.nav-pill:hover{background:rgba(139,92,246,.1)}
.nav-pill.active{background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);color:#fff;box-shadow:0 4px 15px rgba(124,58,237,.3)}
/* Sidebar / drawer overlays */
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:40}
.sidebar-overlay.show{display:block}
.mobile-sidebar{position:fixed;top:0;left:0;bottom:0;width:18rem;background:#fff;z-index:50;padding:1.25rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);transform:translateX(-100%);transition:transform .3s ease;overflow-y:auto}
.mobile-sidebar.show{transform:translateX(0)}
.sidebar-scroll::-webkit-scrollbar{width:3px}
.sidebar-scroll::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}
/* Selected state for interactive tools */
.option-btn.selected{border-color:#0ea5e9!important;background:rgba(14,165,233,.2)!important;box-shadow:0 0 0 3px rgba(14,165,233,.15)}
.category-btn.selected{border-color:#3b82f6!important;background:rgba(59,130,246,.1)!important;box-shadow:0 0 0 2px rgba(59,130,246,.2)}
.tool-card.selected{border-color:#3b82f6!important;box-shadow:0 0 0 3px rgba(59,130,246,.2);background:#eff6ff!important}
/* Prose (alternatives page rich content) */
.prose p{margin-bottom:1.25rem}
.prose h2{font-size:1.375rem;font-weight:700;color:#1f2937;margin-top:2rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}
.prose h3{font-size:1.125rem;font-weight:600;color:#374151;margin-top:1.5rem;margin-bottom:.75rem}
.prose ul,.prose ol{margin-bottom:1.25rem;padding-left:1.5rem}
.prose li{margin-bottom:.5rem}
.prose strong{font-weight:600;color:#1f2937}
.prose a{color:#3b82f6;text-decoration:underline}
.prose a:hover{color:#1d4ed8}
