@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--green-50: #f0fdf4;--green-100: #dcfce7;--green-400: #4ade80;--green-500: #22c55e;--green-600: #16a34a;--green-700: #15803d;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--shadow-card: 0 4px 24px rgba(0,0,0,.08);--shadow-hover: 0 8px 32px rgba(0,0,0,.14);--transition: .2s cubic-bezier(.4,0,.2,1)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden;font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}html{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.view-container{animation:slideUp .28s cubic-bezier(.4,0,.2,1) both}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.glass{background:#ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5)}.card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--transition),transform var(--transition)}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;font-weight:600;border-radius:var(--radius-md);padding:.625rem 1.25rem;transition:filter var(--transition),transform var(--transition);border:none;cursor:pointer}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:active{transform:scale(.96)}.skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dot-bounce{animation:dotBounce 1.2s infinite ease-in-out}.dot-bounce:nth-child(2){animation-delay:.2s}.dot-bounce:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.mic-ring{animation:micPulse 1.2s ease-out infinite}@keyframes micPulse{0%{box-shadow:0 0 #ef444480}70%{box-shadow:0 0 0 14px #ef444400}to{box-shadow:0 0 #ef444400}}
