@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-color:#1e2029;--text-color:#fff;--accent-color:#9b5bf5;--accent-rgb:155, 91, 245;--surface:#282a36;--surface-low:#ffffff08;--bubble-bg:#282a36;--bubble-text:#fff;--header-bg:#1e2029d9;--border-color:#ffffff14;--tab-inactive:#8b8d9a;--danger-color:#ff3b30;--success-color:#34c759}[data-theme=light]{--bg-color:#f2f2f7;--text-color:#1a1a1e;--accent-color:#7b46d1;--accent-rgb:123, 70, 209;--surface:#fff;--surface-low:#00000008;--bubble-bg:#e5e5ea;--bubble-text:#1a1a1e;--header-bg:#f2f2f7d9;--border-color:#0000000d;--tab-inactive:#8e8e93}[data-theme=dark]{--bg-color:#1e2029;--text-color:#fff;--accent-color:#9b5bf5}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}html,body{color:var(--text-color);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;width:100vw;height:100vh;transition:background-color .3s,color .3s;overflow:hidden;background-color:var(--bg-color)!important}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text}#root{flex-direction:column;flex:1;width:100%;height:100%;display:flex}a{color:var(--accent-color);text-decoration:none}.glass{background-color:var(--header-bg);-webkit-backdrop-filter:blur(20px)}::-webkit-scrollbar{display:none}.app-shell{background-color:var(--bg-color);flex-direction:column;flex:1;width:100%;height:100%;margin:0 auto;display:flex;position:relative;box-shadow:0 0 100px #00000080}button{will-change:transform;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .2s,background-color .2s}button:active{opacity:.9;transform:scale(.96)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{will-change:transform, opacity;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUpFade}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.animate-scale-in{will-change:transform, opacity;animation:.4s cubic-bezier(.16,1,.3,1) forwards scaleIn}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}
