:root{--xs:375px;--sm:640px;--md:768px;--lg:1024px;--xl:1280px;--2xl:1536px;--3xl:1920px;--4xl:2560px;--spacing-xs:clamp(0.25rem,1vw,0.5rem);--spacing-sm:clamp(0.5rem,2vw,1rem);--spacing-md:clamp(1rem,3vw,1.5rem);--spacing-lg:clamp(1.5rem,4vw,2rem);--spacing-xl:clamp(2rem,5vw,3rem);--text-xs:clamp(0.625rem,2vw,0.75rem);--text-sm:clamp(0.75rem,2.5vw,0.875rem);--text-base:clamp(0.875rem,3vw,1rem);--text-lg:clamp(1rem,3.5vw,1.125rem);--text-xl:clamp(1.125rem,4vw,1.25rem);--text-2xl:clamp(1.25rem,5vw,1.5rem);--header-height:56px;--header-height-mobile:48px;--header-height-desktop:64px;--sidebar-width:280px;--sidebar-width-mobile:85vw;--input-area-height:120px;--input-area-height-mobile:100px}@media (max-width:374px){:root{--header-height:44px;--input-area-height:90px}.desktop-only,.tablet-only{display:none!important}.header-container{padding:.25rem!important;gap:.25rem!important}button{padding:.375rem!important;font-size:.625rem!important}.message-bubble,.messages-container{padding:.5rem!important}.message-bubble{font-size:calc(var(--chat-scale, 1) * .75rem)!important}}@media (min-width:375px) and (max-width:639px){.header-container{padding:.5rem!important;min-height:var(--header-height-mobile)}.persona-avatar{width:24px!important;height:24px!important}.model-selector-mobile{width:100px!important;font-size:.625rem!important}.messages-container{padding:.75rem!important}.message-bubble{max-width:85%!important;padding:.625rem!important;font-size:calc(var(--chat-scale, 1) * .8125rem)!important}.input-container{padding:.5rem!important}.input-textarea{min-height:60px!important;font-size:16px!important}.floating-action-buttons{bottom:calc(var(--input-area-height) + .5rem)!important;right:.5rem!important}.modal-container{margin:.5rem!important;max-width:calc(100vw - 1rem)!important}}@media (min-width:640px) and (max-width:767px){.tablet-only{display:block!important}.header-container{padding:.75rem 1rem!important;min-height:56px}.persona-info{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem!important}.messages-container{padding:1rem!important;max-width:100%!important}.message-bubble{max-width:75%!important;font-size:calc(var(--chat-scale, 1) * .875rem)!important}.input-container,.message-bubble{padding:.75rem 1rem!important}.input-textarea{min-height:80px!important;font-size:.875rem!important}.sidebar-container{width:320px!important}}@media (min-width:768px) and (max-width:1023px){.desktop-only{display:block!important}.mobile-only{display:none!important}.header-container{padding:.75rem 1.25rem!important;min-height:60px}.main-container{display:flex!important}.messages-container{padding:1.25rem!important}.message-bubble{max-width:65%!important;padding:.875rem 1.125rem!important;font-size:calc(var(--chat-scale, 1) * .9375rem)!important}.input-container{padding:1rem 1.25rem!important}.sidebar-container{position:relative!important;width:240px!important;display:block!important}}@media (min-width:1024px) and (max-width:1279px){.header-container{padding:1rem 1.5rem!important;min-height:var(--header-height-desktop)}.messages-container{padding:1.5rem!important}.message-bubble{max-width:60%!important;padding:1rem 1.25rem!important;font-size:calc(var(--chat-scale, 1) * 1rem)!important}.input-container{padding:1.25rem 1.5rem!important}.input-textarea{min-height:100px!important;font-size:1rem!important}.sidebar-container{width:280px!important}}@media (min-width:1280px) and (max-width:1535px){.messages-container{padding:1.75rem!important}.input-container{padding:1.5rem 1.75rem!important}.sidebar-container{width:320px!important}}@media (min-width:1536px) and (max-width:1919px){.messages-container{padding:2rem!important}.input-container{padding:1.75rem 2rem!important}.sidebar-container{width:360px!important}}@media (min-width:1920px){:root{font-size:18px}.messages-container{padding:2.5rem!important}.message-bubble{max-width:50%!important;padding:1.25rem 1.5rem!important;font-size:calc(var(--chat-scale, 1) * 1.125rem)!important}.input-container{padding:2rem 2.5rem!important}.sidebar-container{width:400px!important}}@media (orientation:landscape) and (max-height:500px){:root{--header-height:40px;--input-area-height:80px}.header-container{padding:.25rem .5rem!important}.messages-container{padding:.5rem!important}.input-container{padding:.375rem .5rem!important}.input-textarea{min-height:50px!important;max-height:80px!important}}@media (orientation:portrait) and (min-width:768px) and (max-width:1023px){.messages-container{padding:1.5rem!important}.message-bubble{max-width:70%!important}}@media (min-width:320px) and (max-width:853px) and (min-height:600px){.messages-container{padding:.5rem!important}.message-bubble{max-width:90%!important}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.floating-action-buttons,.header-container,.input-container,.sidebar-container,button{display:none!important}.messages-container{max-width:100%!important;padding:0!important}.message-bubble{max-width:100%!important;-moz-column-break-inside:avoid;break-inside:avoid}}@supports (height:100dvh){.main-container{height:100dvh!important}}@container (min-width: 768px){.message-actions{opacity:0;transition:opacity .2s}.message-bubble:hover .message-actions{opacity:1}}@supports (padding:env(safe-area-inset-left)){.main-container{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.header-container{padding-top:env(safe-area-inset-top)}.input-container{padding-bottom:env(safe-area-inset-bottom)}}@media (max-width:768px){.clickable,[role=button],a,button,input[type=button],input[type=submit]{min-height:44px;min-width:44px}.action-palette button{min-height:48px!important;font-size:clamp(13px,3.5vw,15px)!important;padding:12px 16px!important}header.header-container{padding:8px 12px!important;min-height:52px!important}.persona-selector button{padding:8px!important}.input-container{padding:12px!important}input[type=email],input[type=password],input[type=text],textarea{font-size:16px!important;padding:12px!important}.modal-container,[role=dialog]{margin:0!important;max-width:100vw!important;max-height:100vh!important;border-radius:0!important}.header-container{padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important;padding-top:max(8px,env(safe-area-inset-top))!important}.input-container{padding-bottom:max(12px,env(safe-area-inset-bottom))!important}.messages-container,.modal-body,[data-scroll]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}*{animation-duration:.2s!important;transition-duration:.2s!important}}@media (max-width:374px){.action-palette{width:100vw!important;left:50%!important;transform:translateX(-50%);border-radius:16px 16px 0 0!important}header.header-container{padding:6px 8px!important;min-height:48px!important}.action-palette button{font-size:12px!important;padding:10px 12px!important}}@media (min-width:768px) and (max-width:1024px){.action-palette{width:min(480px,90vw)!important}.action-palette .grid{grid-template-columns:repeat(3,1fr)!important}button{min-height:48px}}@media (max-width:896px) and (orientation:landscape){header.header-container{padding:4px 8px!important;min-height:44px!important}.input-container{padding:8px 12px!important}.action-palette{max-height:60vh!important}.action-palette button{padding:8px 12px!important;min-height:40px!important}[role=dialog]{max-height:90vh!important}}@media (min-resolution:192dpi){*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.message-bubble,.modal-container,button{border-width:.5px!important}}@media (prefers-color-scheme:dark) and (max-width:768px){body{background-color:#000000}.apple-glass,.glass,.glass-effect{backdrop-filter:blur(20px) saturate(150%)}}@media (min-width:280px) and (max-width:653px){.action-palette{width:100%!important;max-width:100vw!important}.grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}}@supports (-webkit-touch-callout:none){button,input,textarea{-webkit-appearance:none;-webkit-tap-highlight-color:rgba(0,0,0,.1)}body{overscroll-behavior-y:none}.input-container{position:relative;bottom:env(safe-area-inset-bottom,0)}}@supports not (-webkit-touch-callout:none){button:active{background-color:rgba(0,0,0,.05)}}@media (min-width:320px){html[data-text-size=large]{font-size:18px}html[data-text-size=xlarge]{font-size:20px}}@media print{.action-palette,.header-container,.input-container,button,input{display:none!important}.messages-container{max-width:100%!important}.message-bubble{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}@media (display-mode:fullscreen) or (display-mode:standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}@media (min-aspect-ratio:7/3){.messages-container{max-width:1400px;margin:0 auto}}@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){.action-palette{width:min(500px,85vw)!important}.message-bubble{max-width:75%!important}}@media (max-width:768px){:after,:before{animation-duration:.15s!important}.shadow-2xl,.shadow-xl{box-shadow:0 4px 12px rgba(0,0,0,.15)!important}}.apple-glass{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.86) 60%,rgba(255,255,255,.94));backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px rgba(17,24,39,.06),0 2px 8px rgba(17,24,39,.03),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(0,0,0,.02)}.dynamic-island{background:rgba(0,0,0,.85);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:24px;padding:8px 16px;transition:all .4s cubic-bezier(.4,0,.2,1)}.dynamic-island:hover{transform:scale(1.05);background:rgba(0,0,0,.9)}.apple-button{position:relative;background:linear-gradient(145deg,#ffffff,#f8fafc);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:10px 20px;font-weight:600;font-size:15px;letter-spacing:-.01em;color:inherit;box-shadow:0 4px 16px rgba(17,24,39,.08),0 1px 3px rgba(17,24,39,.06),inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(0,0,0,.04);transition:all .2s cubic-bezier(.4,0,.2,1);overflow:hidden}.apple-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.apple-button:hover:before{left:100%}.apple-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 28px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.95)}.apple-button:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.6),inset 0 2px 4px rgba(0,0,0,.06)}.apple-button-primary{background:linear-gradient(135deg,rgba(0,122,255,.95),rgba(0,122,255,.85));color:white;border-color:rgba(0,122,255,.3)}.apple-button-primary:hover{background:linear-gradient(135deg,rgba(0,122,255,1),rgba(0,122,255,.9))}.apple-card{background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.72));backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.35);border-radius:20px;box-shadow:0 16px 48px rgba(71,85,105,.1),0 8px 24px rgba(100,116,139,.07),0 4px 12px rgba(148,163,184,.05),inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(203,213,225,.1);transition:all .3s cubic-bezier(.4,0,.2,1)}.apple-card:hover{transform:translateY(-4px) scale(1.015);box-shadow:0 20px 56px rgba(0,0,0,.14),0 8px 20px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.85)}.apple-input{background:rgba(255,255,255,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(203,213,225,.35);border-radius:12px;padding:12px 16px;font-size:16px;color:#0f172a;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px rgba(71,85,105,.06),0 1px 4px rgba(100,116,139,.04),inset 0 1px 0 rgba(255,255,255,1)}.apple-input:focus{outline:none;background:rgba(255,255,255,.98);border-color:rgba(59,130,246,.5);box-shadow:0 6px 20px rgba(59,130,246,.15),0 4px 12px rgba(59,130,246,.1),0 2px 8px rgba(71,85,105,.06),inset 0 1px 0 rgba(255,255,255,1),0 0 0 3px rgba(59,130,246,.08)}.dark .apple-glass{background:linear-gradient(135deg,rgba(28,28,30,.85),rgba(28,28,30,.65) 50%,rgba(28,28,30,.75));border-color:rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.3),0 2px 8px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.08)}.dark .apple-button{background:linear-gradient(135deg,rgba(50,50,52,.95),rgba(50,50,52,.85));border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.9)}.dark .apple-card{background:linear-gradient(145deg,rgba(38,38,40,.88),rgba(38,38,40,.72));border-color:rgba(255,255,255,.08);box-shadow:0 12px 40px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.06)}.dark .apple-input{background:rgba(38,38,40,.88);border-color:rgba(255,255,255,.06);color:rgba(255,255,255,.9)}.dark .apple-input:focus{background:rgba(38,38,40,.95);border-color:rgba(0,122,255,.6)}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}.pulse-on-hover:hover{animation:pulse-glow 2s infinite}.shadow-premium{box-shadow:0 20px 40px rgba(0,0,0,.08),0 10px 20px rgba(0,0,0,.06),0 5px 10px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.02)}.glass-light{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.glass-medium{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.glass-heavy{backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px)}.glass-ultra{backdrop-filter:blur(48px) saturate(200%);-webkit-backdrop-filter:blur(48px) saturate(200%)}.action-palette .apple-button{background:rgba(20,24,28,.85);border:1px solid rgba(255,255,255,.06);color:rgba(255,255,255,.92);border-radius:12px;padding:10px 12px;font-weight:600;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 2px 8px rgba(0,0,0,.25);letter-spacing:0;min-height:44px}.action-palette .apple-button:before{display:none}.action-palette .apple-button:hover{transform:none;background:rgba(28,32,36,.92);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 4px 14px rgba(0,0,0,.28)}.action-palette .apple-button:active{transform:translateY(0);background:rgba(24,28,32,.92);box-shadow:inset 0 2px 6px rgba(0,0,0,.35)}.action-palette:not(.dark) .apple-button{background:linear-gradient(145deg,#ffffff,#f8fafc);color:#0f172a;border:1px solid rgba(203,213,225,.4);box-shadow:0 4px 16px rgba(71,85,105,.08),0 2px 8px rgba(100,116,139,.05),inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(203,213,225,.12)}.action-palette:not(.dark) .apple-button:hover{background:linear-gradient(145deg,#ffffff,#f1f5f9);border-color:rgba(191,219,254,.5);box-shadow:0 8px 24px rgba(59,130,246,.12),0 4px 12px rgba(71,85,105,.08),inset 0 1px 0 rgba(255,255,255,1)}.hover-glow{position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.hover-glow:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(135deg,var(--primary-green) 0,var(--accent-blue) 50%,var(--accent-purple) 100%);opacity:0;z-index:-1;filter:blur(8px);transition:opacity .3s ease}.hover-glow:hover:before{opacity:.4;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-enter{animation:enter-smooth .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes enter-smooth{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.stagger-animation>*{animation:stagger-in .4s cubic-bezier(.34,1.56,.64,1) both}.stagger-animation>:first-child{animation-delay:.05s}.stagger-animation>:nth-child(2){animation-delay:.1s}.stagger-animation>:nth-child(3){animation-delay:.15s}.stagger-animation>:nth-child(4){animation-delay:.2s}.stagger-animation>:nth-child(5){animation-delay:.25s}.stagger-animation>:nth-child(6){animation-delay:.3s}.stagger-animation>:nth-child(7){animation-delay:.35s}.stagger-animation>:nth-child(8){animation-delay:.4s}@keyframes stagger-in{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.float-animation{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.shine-effect{position:relative;overflow:hidden}.shine-effect:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);transform:rotate(45deg) translateX(-100%);transition:transform .6s ease}.shine-effect:hover:after{transform:rotate(45deg) translateX(100%)}.magnetic-button{position:relative;transition:transform .2s ease}.magnetic-button:hover{transform:scale(1.05)}.ripple{position:relative;overflow:hidden}.ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.5);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.ripple:active:before{width:300px;height:300px}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d;transform:perspective(1000px)}.card-hover:hover{transform:perspective(1000px) rotateX(5deg) translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.2),0 10px 20px rgba(34,197,94,.2)}.color-transition{transition:color .3s ease,background-color .3s ease,border-color .3s ease}.gradient-border{position:relative;background:linear-gradient(var(--bg-color,#000),var(--bg-color,#000));background-clip:padding-box;border:2px solid transparent}.gradient-border:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;background:linear-gradient(135deg,var(--primary-green) 0,var(--accent-blue) 50%,var(--accent-purple) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rotate-gradient 4s linear infinite}@keyframes rotate-gradient{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.scroll-reveal{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.4,0,.2,1)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.tooltip-premium{position:relative}.tooltip-premium:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-8px);background:linear-gradient(135deg,rgba(17,24,39,.98),rgba(31,41,55,.98));color:#a7f3d0;padding:8px 12px;border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(10px);border:1px solid rgba(34,197,94,.3);box-shadow:0 8px 24px rgba(0,0,0,.2);z-index:1000}.tooltip-premium:hover:after{opacity:1;transform:translateX(-50%) translateY(-12px)}.focus-ring{position:relative}.focus-ring:focus{outline:none}.focus-ring:focus:after{content:"";position:absolute;inset:-4px;border-radius:inherit;border:2px solid var(--primary-green);opacity:0;animation:focus-pulse .4s ease}@keyframes focus-pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.text-shadow-glow{text-shadow:0 0 20px rgba(34,197,94,.5),0 0 40px rgba(34,197,94,.3),0 0 60px rgba(34,197,94,.1)}.height-transition{transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;overflow:hidden}.divider-premium{position:relative;height:1px;background:linear-gradient(90deg,transparent,rgba(34,197,94,.5) 50%,transparent);margin:2rem 0}.divider-premium:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--primary-green) 0,var(--accent-blue) 100%);border-radius:2px;animation:pulse-width 2s ease-in-out infinite}@keyframes pulse-width{0%,to{width:60px}50%{width:100px}}.skeleton-smooth{background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.1) 20%,rgba(255,255,255,.05) 40%,rgba(255,255,255,.05));background-size:1000px 100%;animation:skeleton-wave 2s ease-in-out infinite}@keyframes skeleton-wave{0%{background-position:-1000px 0}to{background-position:1000px 0}}.badge-premium{position:relative;display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:linear-gradient(135deg,rgba(34,197,94,.1),rgba(59,130,246,.1));border:1px solid rgba(34,197,94,.3);border-radius:20px;font-size:12px;font-weight:600;color:#22c55e;transition:all .3s ease}.badge-premium:hover{background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(59,130,246,.2));border-color:rgba(34,197,94,.5);transform:translateY(-2px);box-shadow:0 4px 12px rgba(34,197,94,.2)}.accordion-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.accordion-content{max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1)}.accordion-content.open{max-height:1000px}.switch-premium{position:relative;width:48px;height:24px;background:linear-gradient(135deg,#374151,#1f2937);border-radius:24px;cursor:pointer;transition:all .3s ease}.switch-premium.active{background:linear-gradient(135deg,var(--primary-green) 0,var(--accent-blue) 100%)}.switch-premium:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:white;border-radius:50%;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 4px rgba(0,0,0,.2)}.switch-premium.active:after{transform:translateX(24px)}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.counter-animation{animation:count-up .6s ease-out}.notification-premium{animation:slide-in-right .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slide-in-right{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.page-transition{animation:page-enter .5s cubic-bezier(.4,0,.2,1)}@keyframes page-enter{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.dark-mode-transition{transition:background-color .3s ease,color .3s ease,border-color .3s ease}@media (max-width:768px){.touch-scale{transition:transform .1s ease}.touch-scale:active{transform:scale(.95)}.smooth-scroll-mobile{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.tap-feedback{-webkit-tap-highlight-color:rgba(34,197,94,.2);touch-action:manipulation}}.spinner-premium{width:40px;height:40px;position:relative;animation:spin-premium 1s linear infinite}.spinner-premium:after,.spinner-premium:before{content:"";position:absolute;inset:0;border-radius:50%;border:3px solid transparent}.spinner-premium:before{border-top-color:var(--primary-green);animation:spin-premium 1.5s linear infinite}.spinner-premium:after{border-bottom-color:var(--accent-blue);animation:spin-premium 1s linear infinite reverse}@keyframes spin-premium{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.expand-smooth{transition:all .3s cubic-bezier(.4,0,.2,1);transform-origin:top}.expand-smooth.collapsed{transform:scaleY(0);opacity:0}.expand-smooth.expanded{transform:scaleY(1);opacity:1}button:not(:disabled){transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}button:not(:disabled):active{transform:translateY(0) scale(.98);transition:transform .1s ease}input:not([type=checkbox]):not([type=radio]),select,textarea{transition:all .2s cubic-bezier(.4,0,.2,1)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{transform:scale(1.01);box-shadow:0 0 0 3px rgba(34,197,94,.1),0 4px 12px rgba(0,0,0,.08)}.interactive-scale{transition:transform .2s cubic-bezier(.4,0,.2,1)}.interactive-scale:hover{transform:scale(1.02)}.interactive-scale:active{transform:scale(.98)}.loading-pulse{animation:pulse-loading 1.5s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-loading{0%,to{opacity:1}50%{opacity:.5}}.fade-in-smooth{animation:fadeInSmooth .3s ease-out}@keyframes fadeInSmooth{0%{opacity:0}to{opacity:1}}.fade-out-smooth{animation:fadeOutSmooth .3s ease-in}@keyframes fadeOutSmooth{0%{opacity:1}to{opacity:0}}.slide-in-from-bottom{animation:slideInFromBottom .3s cubic-bezier(.34,1.56,.64,1)}.slide-in-from-top{animation:slideInFromTop .3s cubic-bezier(.34,1.56,.64,1)}.slide-in-from-left{animation:slideInFromLeft .3s cubic-bezier(.34,1.56,.64,1)}.slide-in-from-right{animation:slideInFromRight .3s cubic-bezier(.34,1.56,.64,1)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.backdrop-polish{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.1)}.dark .backdrop-polish{background:rgba(0,0,0,.75)}.rounded-polish{border-radius:12px;transition:border-radius .2s ease}.rounded-polish:hover{border-radius:16px}.shadow-polish{box-shadow:0 4px 6px rgba(0,0,0,.07),0 1px 3px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.1);transition:box-shadow .2s ease}.shadow-polish:hover{box-shadow:0 10px 20px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.15)}.dark .shadow-polish{box-shadow:0 4px 6px rgba(0,0,0,.3),0 1px 3px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.05)}.dark .shadow-polish:hover{box-shadow:0 10px 20px rgba(0,0,0,.4),0 4px 6px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.08)}.color-transition-smooth{transition:color .3s ease,background-color .3s ease,border-color .3s ease,fill .3s ease,stroke .3s ease}:focus-visible{outline:2px solid rgba(34,197,94,.6);outline-offset:2px;border-radius:4px;transition:outline .15s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(34,197,94,.8);outline-offset:3px}.gradient-polish{background:linear-gradient(135deg,rgba(34,197,94,.1),rgba(59,130,246,.1));transition:background .3s ease}.gradient-polish:hover{background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(59,130,246,.2))}.card-polish{transition:all .3s cubic-bezier(.4,0,.2,1);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.card-polish:hover{transform:translateY(-2px);background:rgba(255,255,255,.08);border-color:rgba(34,197,94,.3);box-shadow:0 8px 24px rgba(0,0,0,.15)}.list-item-polish{transition:all .2s ease;border-radius:8px}.list-item-polish:hover{background:rgba(255,255,255,.05);transform:translateX(4px)}.list-item-polish:active{transform:translateX(2px) scale(.98)}.icon-polish{transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center}.icon-polish:hover{transform:scale(1.1) rotate(5deg)}.icon-polish:active{transform:scale(.95)}.text-polish{transition:color .2s ease,text-shadow .2s ease}.text-polish:hover{text-shadow:0 0 8px currentColor}.separator-polish{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2) 50%,transparent);margin:1rem 0;transition:all .3s ease}.separator-polish:hover{background:linear-gradient(90deg,transparent,rgba(34,197,94,.5) 50%,transparent);height:2px}.size-transition{transition:width .3s cubic-bezier(.4,0,.2,1),height .3s cubic-bezier(.4,0,.2,1)}.modal-polish{animation:modalAppear .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalAppear{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.backdrop-fade{animation:backdropFade .3s ease-out}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.scroll-polish{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(34,197,94,.3) transparent}.scroll-polish::-webkit-scrollbar{width:8px}.scroll-polish::-webkit-scrollbar-track{background:transparent}.scroll-polish::-webkit-scrollbar-thumb{background:rgba(34,197,94,.3);border-radius:4px;-webkit-transition:background .2s ease;transition:background .2s ease}.scroll-polish::-webkit-scrollbar-thumb:hover{background:rgba(34,197,94,.5)}.glow-polish{position:relative}.glow-polish:before{content:"";position:absolute;inset:-4px;background:radial-gradient(circle,rgba(34,197,94,.3) 0,transparent 70%);opacity:0;filter:blur(8px);transition:opacity .3s ease;z-index:-1}.glow-polish:hover:before{opacity:1}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fade-in-smooth,.fade-out-smooth,.slide-in-from-bottom,.slide-in-from-left,.slide-in-from-right,.slide-in-from-top{animation:none!important}}@media (max-width:768px){.card-polish:hover,.list-item-polish:hover,button:not(:disabled):hover{transform:none}.touch-polish:active{transform:scale(.96);transition:transform .1s ease}}@media (prefers-contrast:high){button,input,select,textarea{border-width:2px}:focus-visible{outline-width:3px;outline-offset:3px}}.transition-all-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-colors-smooth{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.transition-transform-smooth{transition:transform .2s cubic-bezier(.4,0,.2,1)}.transition-opacity-smooth{transition:opacity .2s ease}.hover-glow-subtle{position:relative}.hover-glow-subtle:after{content:"";position:absolute;inset:-2px;border-radius:inherit;background:radial-gradient(circle,rgba(34,197,94,.15) 0,transparent 70%);opacity:0;filter:blur(6px);transition:opacity .3s ease;z-index:-1;pointer-events:none}.hover-glow-subtle:hover:after{opacity:1}.border-polish{transition:border-color .2s ease,border-width .2s ease}.border-polish:hover{border-color:rgba(34,197,94,.4)}.backdrop-polish-light{backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%)}.backdrop-polish-medium{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.backdrop-polish-heavy{backdrop-filter:blur(32px) saturate(200%);-webkit-backdrop-filter:blur(32px) saturate(200%)}.opacity-transition{transition:opacity .3s ease}.opacity-transition:hover{opacity:.8}.scale-on-hover{transition:transform .2s cubic-bezier(.4,0,.2,1)}.scale-on-hover:hover{transform:scale(1.05)}.scale-on-active:active{transform:scale(.95);transition:transform .1s ease}.shadow-transition{transition:box-shadow .3s ease}.shadow-transition:hover{box-shadow:0 8px 24px rgba(0,0,0,.12)}.gradient-text-polish{background:linear-gradient(135deg,rgba(34,197,94,1),rgba(59,130,246,1));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:background .3s ease}.gradient-text-polish:hover{background:linear-gradient(135deg,rgba(59,130,246,1),rgba(34,197,94,1))}.link-polish{position:relative;transition:color .2s ease;text-decoration:none}.link-polish:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:currentColor;transition:width .3s cubic-bezier(.4,0,.2,1)}.link-polish:hover:after{width:100%}.rotate-smooth{transition:transform .3s cubic-bezier(.4,0,.2,1)}.rotate-smooth:hover{transform:rotate(5deg)}.rotate-smooth:active{transform:rotate(-5deg)}.container-polish{transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.container-polish:hover{transform:translateY(-2px)}.border-glow{position:relative}.border-glow:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(135deg,rgba(34,197,94,.5),rgba(59,130,246,.5));opacity:0;filter:blur(4px);transition:opacity .3s ease;z-index:-1}.border-glow:hover:before{opacity:.6}.backdrop-transition{transition:backdrop-filter .3s ease,background-color .3s ease}.z-elevate:hover{z-index:10;position:relative}.width-transition{transition:width .3s cubic-bezier(.4,0,.2,1)}.height-transition{transition:height .3s cubic-bezier(.4,0,.2,1)}.cursor-polish{cursor:pointer}.cursor-polish:active{cursor:grabbing}::selection{background:rgba(34,197,94,.3);color:inherit}::-moz-selection{background:rgba(34,197,94,.3);color:inherit}.disabled-polish{opacity:.5;cursor:not-allowed;pointer-events:none;filter:grayscale(.3);transition:all .2s ease}.image-polish{transition:opacity .3s ease,transform .3s ease}.image-polish:hover{transform:scale(1.02)}.image-polish:active{transform:scale(.98)}.shimmer-effect{background:linear-gradient(90deg,transparent,rgba(255,255,255,.1) 50%,transparent);background-size:1000px 100%;animation:shimmer 2s infinite}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse-slow{0%,to{opacity:1}50%{opacity:.7}}.animate-fade-in{animation:fade-in .4s ease-out}.animate-scale-in{animation:scale-in .3s ease-out}.animate-pulse-slow{animation:pulse-slow 3s ease-in-out infinite}.container-polish *{transition:inherit}.action-palette,.chat-input,.message-bubble,.modal-container,[role=dialog],button{will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.action-palette,.messages-container,.modal-body,[data-scroll]{-webkit-overflow-scrolling:touch;overflow-scrolling:touch;contain:layout style paint;content-visibility:auto}*{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga","kern"}img{loading:lazy;decoding:async}.floating-action-buttons,.header-container,.input-container{contain:layout style paint;isolation:isolate}@media (prefers-reduced-motion:no-preference){*{animation-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}}@supports (backdrop-filter:blur(10px)){.apple-glass,.backdrop-blur,.glass,.glass-effect{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@supports not (backdrop-filter:blur(10px)){.apple-glass,.glass,.glass-effect{background-color:rgba(0,0,0,.8)}}@media (max-width:768px){.shadow-2xl,.shadow-xl{box-shadow:0 4px 8px rgba(0,0,0,.1)!important}}@media (max-width:768px) and (max-height:800px){*{animation-duration:.15s!important;transition-duration:.15s!important}.backdrop-blur,.glass,.glass-effect{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}.chat-input:not(:focus),.message-bubble:not(:hover){will-change:auto}.messages-container{min-height:100px}.header-container{min-height:52px}.input-container{min-height:80px}img[loading=lazy]{min-height:100px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.message-bubble{content-visibility:auto;contain-intrinsic-size:auto 100px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.messages-container ::-moz-selection{background-color:rgba(0,255,0,.3)}.messages-container ::selection{background-color:rgba(0,255,0,.3)}[role=button],a,button{-moz-user-select:none;user-select:none;-webkit-user-select:none}[role=dialog]:not(.show){visibility:hidden;pointer-events:none}@keyframes fadeIn{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes slideIn{0%{transform:translate3d(0,100%,0)}to{transform:translateZ(0)}}.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.05) 25%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.05) 75%);background-size:200% 100%;animation:shimmer 2s linear infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (min-width:1024px){.action-palette,.message-bubble,button{will-change:transform,opacity}}[data-lazy]{content-visibility:auto}.bg-gradient-to-br,.bg-gradient-to-r{background-attachment:scroll}@media (max-width:640px){.shadow-2xl,.shadow-premium{box-shadow:0 2px 8px rgba(0,0,0,.15)!important}*{border-radius:clamp(4px,1vw,12px)!important}}canvas,video{contain:strict}.critical-render{contain:layout style paint;content-visibility:auto}@media (hover:hover) and (pointer:fine){a:hover,button:hover{transform:scale(1.02);transition:transform .15s ease}}@media (prefers-reduced-data:reduce){img,video{display:none}.backdrop-blur,.glass{backdrop-filter:none!important}}