:root{--brand-primary:#1a6bff;--brand-secondary:#0047cc;--brand-accent:#ff5c35;--brand-light:#ebf2ff;--bg-base:#f8f7f4;--text-dark:#111827;--text-mid:#4b5563;--text-muted:#9ca3af;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px}*{-webkit-tap-highlight-color:transparent;box-sizing:border-box}body{background-color:var(--bg-base);color:var(--text-dark);-webkit-font-smoothing:antialiased;overscroll-behavior:none;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.animate-fade-up{animation:.5s forwards fadeUp}.live-dot{animation:1.5s ease-in-out infinite pulse-dot}.card-hover{transition:transform .2s,box-shadow .2s}.card-hover:active{transform:scale(.97)}.category-chip{border-radius:var(--radius-md);cursor:pointer;background:#fff;border:1.5px solid #0000;flex-direction:column;align-items:center;gap:8px;padding:14px 12px;transition:all .18s;display:flex;box-shadow:0 1px 4px #0000000f}.category-chip:active{border-color:var(--brand-primary);transform:scale(.95)}.quote-card{border-radius:var(--radius-md);cursor:pointer;background:#fff;border:1px solid #f0ede8;flex-shrink:0;min-width:200px;max-width:200px;padding:14px;transition:all .18s}.quote-card:active{transform:scale(.97)}.review-card{border-radius:var(--radius-lg);background:#fff;border:1px solid #f0ede8;margin:0 16px 16px;padding:20px}.banner-wrapper{border-radius:var(--radius-xl);position:relative;overflow:hidden}.section-title{color:var(--text-dark);letter-spacing:-.4px;font-size:20px;font-weight:700}.see-all-btn{color:var(--text-muted);font-size:13px;font-weight:500}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:2s ease-in-out infinite float}
