:root{--bg-color: #0f172a;--text-primary: #f8fafc;--text-secondary: #94a3b8;--card-bg: rgba(30, 41, 59, .7);--card-border: rgba(255, 255, 255, .1);--accent: #38bdf8;--accent-hover: #7dd3fc;--star-filled: #fbbf24;--star-empty: #334155}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);background-image:radial-gradient(at 0% 0%,rgba(56,189,248,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(139,92,246,.15) 0px,transparent 50%);background-attachment:fixed;color:var(--text-primary);font-family:Inter,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif}.glass{background:var(--card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:16px}.layout-container{max-width:1600px;margin:0 auto;padding:3rem 1.5rem}.title{font-size:3rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,#38bdf8,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-align:center}.subtitle{font-size:1.125rem;color:var(--text-secondary);text-align:center;margin-bottom:4rem}.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.review-card{padding:2rem;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:1.5rem}.review-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -10px #0006,0 0 20px #38bdf81a}.review-header{display:flex;align-items:center;gap:1rem}.avatar-wrapper{width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid var(--accent)}.avatar{width:100%;height:100%;object-fit:cover}.reviewer-info h3{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin-bottom:.15rem}.review-date{font-size:.875rem;color:var(--text-secondary)}.stars{display:flex;gap:.25rem}.star{color:var(--star-empty);font-size:1.25rem}.star.filled{color:var(--star-filled)}.review-comment{font-size:1rem;line-height:1.6;color:var(--text-primary);font-style:italic;flex-grow:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.line-clamp-5{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
