.app-shell{min-height:100vh;background:linear-gradient(180deg,#0a0e27,#0f1729);color:#e2e8f0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes glow{0%,to{box-shadow:0 0 #6366f100}50%{box-shadow:0 0 20px #6366f14d}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.top-navbar{background:#0a0e27f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(148,163,184,.1);padding:16px 30px;display:flex;align-items:center;justify-content:space-between;gap:40px;animation:slideInDown .5s ease-out}.nav-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem;min-width:120px;animation:slideInLeft .6s ease-out .1s both}.brand-icon{font-size:1.3rem;animation:float 3s ease-in-out infinite}.brand-name{color:#e2e8f0}.nav-tabs{display:flex;gap:30px;flex:1;align-items:center}.nav-tab:hover{color:#e2e8f0;transform:translateY(-2px)}.nav-tab.active:after{content:"";position:absolute;bottom:-16px;left:0;right:0;height:2px;background:linear-gradient(90deg,#818cf8,#6366f1);animation:slideInLeft .4s ease-out}.nav-right{display:flex;align-items:center;gap:20px;animation:slideInRight .6s ease-out .1s both}.nav-icon-btn{background:none;border:none;color:#cbd5e1;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.nav-icon-btn:hover{color:#e2e8f0;background:#94a3b81a;border-radius:8px;transform:scale(1.1) rotate(5deg)}.main-header{padding:30px 30px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid rgba(148,163,184,.08);animation:slideInDown .6s ease-out .1s both}.header-title-area{flex:1}.main-title{font-size:2rem;font-weight:700;margin:0;color:#e2e8f0;animation:slideInLeft .7s ease-out .2s both}.header-controls{display:flex;align-items:center;gap:20px}.time-period-selector{display:flex;gap:10px;background:#94a3b814;padding:6px;border-radius:10px;animation:slideInRight .6s ease-out .25s both}.period-btn{background:transparent;border:none;color:#cbd5e1;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease}.period-btn:hover{background:#94a3b81a;transform:translateY(-1px)}.period-btn.active{background:#6366f133;color:#818cf8;box-shadow:0 4px 12px #6366f133}.main-content{padding:30px;animation:fadeIn .8s ease-out .2s both}.stats-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:24px;margin-bottom:30px}.main-metric-card{background:linear-gradient(135deg,#6366f126,#8b5cf60d);border:1px solid rgba(99,102,241,.2);border-radius:16px;padding:28px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:scaleIn .6s ease-out .3s both;transition:all .3s ease}.main-metric-card:hover{transform:translateY(-8px);border-color:#6366f166;box-shadow:0 20px 40px #6366f126}.metric-label{color:#94a3b8;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;animation:fadeIn .5s ease-out .4s both}.metric-large-value{font-size:2.5rem;font-weight:700;color:#e2e8f0;margin-bottom:8px;animation:slideInUp .6s ease-out .4s both}.metric-subtext{color:#cbd5e1;font-size:.9rem;margin-bottom:12px}.metric-change{font-size:1rem;font-weight:600;animation:slideInUp .6s ease-out .5s both}.secondary-metrics{display:grid;grid-template-rows:1fr 1fr;gap:12px}.metric-box{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;animation:scaleIn .6s ease-out both;transition:all .3s ease}.metric-box:nth-child(1){animation-delay:.35s}.metric-box:nth-child(2){animation-delay:.45s}.metric-box:hover{border-color:#6366f14d;transform:translate(4px);background:#6366f114}.metric-icon{font-size:1.5rem}.metric-box .metric-label{margin-bottom:0}.metric-box .metric-value{font-size:1.3rem;font-weight:700;color:#e2e8f0}.metric-box>div{flex:1}.quick-actions{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;animation:scaleIn .6s ease-out .4s both;transition:all .3s ease}.quick-actions:hover{border-color:#6366f14d;transform:translateY(-4px);background:#6366f114}.action-card{text-align:center}.action-label{color:#94a3b8;font-size:.85rem;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.action-value{font-size:1.8rem;font-weight:700;color:#e2e8f0;margin-bottom:16px;animation:slideInUp .6s ease-out .5s both}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action-btn{padding:10px 12px;border-radius:8px;border:1px solid rgba(99,102,241,.2);background:transparent;color:#818cf8;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease}.action-btn:hover{background:#6366f11a;border-color:#6366f166;transform:scale(1.05)}.action-btn.primary{background:#6366f133;border-color:#6366f14d}.action-btn.primary:hover{background:#6366f14d;box-shadow:0 0 15px #6366f133}.ticker-selector-section{display:flex;gap:12px;margin-bottom:30px;animation:slideInUp .6s ease-out .35s both}.ticker-select{flex:.2;padding:12px 16px;border-radius:10px;border:1px solid rgba(148,163,184,.2);background:#0f172acc;color:#e2e8f0;cursor:pointer;font-size:.9rem;transition:all .3s ease}.ticker-select:hover,.ticker-select:focus{outline:none;border-color:#6366f166;background:#0f172af2;box-shadow:0 0 0 3px #6366f11a}.load-btn{padding:12px 24px;border-radius:10px;border:none;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.load-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 24px #6366f166}.load-btn:disabled{opacity:.6;cursor:not-allowed;animation:pulse 2s ease-in-out infinite}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#fecaca;padding:12px 16px;border-radius:10px;margin-bottom:20px;font-size:.9rem;animation:slideInUp .5s ease-out}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.grid-item{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:scaleIn .6s ease-out both;transition:all .3s ease}.grid-item:nth-child(1){animation-delay:.4s}.grid-item:nth-child(2){animation-delay:.5s}.grid-item:nth-child(3){animation-delay:.6s}.grid-item:hover{border-color:#6366f14d;transform:translateY(-6px);box-shadow:0 20px 40px #6366f11a}.chart-panel{grid-column:1}.section-title{margin:0 0 20px;font-size:1rem;font-weight:600;color:#e2e8f0}.metrics-list{display:grid;gap:12px;animation:fadeIn .6s ease-out .35s both}.metric-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#6366f10d;border-radius:8px;border:1px solid rgba(99,102,241,.1);transition:all .3s ease;animation:slideInLeft .6s ease-out both}.metric-item:nth-child(1){animation-delay:.4s}.metric-item:nth-child(2){animation-delay:.45s}.metric-item:nth-child(3){animation-delay:.5s}.metric-item:nth-child(4){animation-delay:.55s}.metric-item:hover{background:#6366f11a;border-color:#6366f14d;transform:translate(4px)}.metric-item .label{color:#94a3b8;font-size:.85rem;font-weight:500}.metric-item .value{color:#e2e8f0;font-weight:600;font-size:.95rem}.summary-box{display:grid;gap:10px;animation:fadeIn .6s ease-out .35s both}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#6366f10d;border-radius:8px;border:1px solid rgba(99,102,241,.1);transition:all .3s ease;animation:slideInRight .6s ease-out both}.summary-item:nth-child(1){animation-delay:.4s}.summary-item:nth-child(2){animation-delay:.45s}.summary-item:nth-child(3){animation-delay:.5s}.summary-item:hover{background:#6366f11a;border-color:#6366f14d;transform:translate(-4px)}.summary-item .sLabel{color:#94a3b8;font-size:.85rem;font-weight:500}.summary-item .sValue{color:#e2e8f0;font-weight:600;font-size:.95rem}.user-avatar{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.avatar-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#818cf8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9rem;border:2px solid rgba(99,102,241,.3);transition:all .3s ease;animation:scaleIn .6s ease-out}.user-avatar:hover .avatar-circle{border-color:#6366f199;box-shadow:0 0 16px #6366f14d;transform:scale(1.08) rotate(5deg)}.user-menu-container{position:relative}.user-menu{position:absolute;top:100%;right:0;margin-top:12px;background:#0f172afa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:0;min-width:220px;box-shadow:0 10px 30px #0006;z-index:1000;animation:slideInUp .3s ease-out}.user-info{padding:16px;border-bottom:1px solid rgba(148,163,184,.1);animation:fadeIn .3s ease-out .1s both}.user-name{color:#e2e8f0;font-weight:600;font-size:.95rem;margin-bottom:4px}.user-email{color:#94a3b8;font-size:.8rem}.menu-divider{border:none;border-top:1px solid rgba(148,163,184,.1);margin:0}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;color:#e2e8f0;text-align:left;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500}.menu-item:hover{background:#6366f11a;transform:translate(4px)}.logout-menu-item{color:#ef4444}.logout-menu-item:hover{background:#ef44441a;transform:translate(4px)}.menu-icon{width:16px;height:16px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.chart-container{position:relative;width:100%}.tv-chart{position:relative}.tv-chart-mini .tv-toolbar{display:none}.tv-shell{background:linear-gradient(180deg,#090e1afa,#070b16fa);border-color:#94a3b833}.tv-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tv-title{color:#e2e8f0;font-weight:600;letter-spacing:.02em}.tv-timeframes{display:inline-flex;gap:6px;background:#0f172acc;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:4px}.tv-timeframe-btn{background:transparent;border:none;color:#94a3b8;border-radius:6px;font-size:.76rem;font-weight:600;padding:6px 10px;cursor:pointer}.tv-timeframe-btn.active{color:#0b1220;background:#22d3ee}.tv-tooltip{top:12px;right:12px;border-color:#22d3ee73}.tv-like-wrap{background:#f8fafc;border:1px solid #dbe2ea;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px #0206171a}.tv-like-topbar{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:10px 14px;border-bottom:1px solid #e2e8f0;background:#fff}.tv-like-symbol{color:#0f172a;font-size:.95rem;font-weight:700}.tv-like-stats{color:#334155;font-size:.82rem;white-space:nowrap}.tv-like-up{color:#059669;margin-left:6px;font-weight:700}.tv-like-down{color:#dc2626;margin-left:6px;font-weight:700}.tv-like-actions{display:inline-flex;gap:6px}.tv-type-btn{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:8px;font-size:.76rem;font-weight:700;padding:6px 10px;cursor:pointer}.tv-type-btn.active{background:#0f172a;color:#f8fafc;border-color:#0f172a}.tv-like-main{display:grid;grid-template-columns:40px 1fr;min-height:420px}.tv-like-left-rail{border-right:1px solid #e2e8f0;background:#f1f5f9;display:flex;flex-direction:column;gap:10px;align-items:center;padding:10px 6px}.tv-like-left-rail button{border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;width:26px;height:26px;cursor:pointer;font-size:.78rem}.tv-like-chart-zone{position:relative;background:#fff;padding:8px}.tv-like-svg{min-width:100%}.tv-like-tooltip{top:14px;right:14px;border:1px solid #cbd5e1;background:#fffffff5}.tv-like-tooltip .tooltip-date{color:#64748b}.tv-like-tooltip .tooltip-price{color:#1e293b;font-size:.85rem;font-weight:700}.tv-like-bottom-bar{display:flex;gap:4px;padding:8px;border-top:1px solid #e2e8f0;background:#fff}.tv-bottom-tf-btn{border:none;background:transparent;color:#475569;font-size:.78rem;font-weight:700;border-radius:6px;padding:4px 8px;cursor:pointer}.tv-bottom-tf-btn.active{background:#e2e8f0;color:#0f172a}@media (max-width: 900px){.tv-like-topbar{grid-template-columns:1fr;gap:8px}.tv-like-main{grid-template-columns:1fr}.tv-like-left-rail{display:none}.tv-like-bottom-bar{flex-wrap:wrap}}.chart-shell{overflow-x:auto;background:#6366f10d;border-radius:12px;border:1px solid rgba(99,102,241,.1);padding:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:scaleIn .6s ease-out .45s both;transition:all .3s ease}.chart-shell:hover{border-color:#6366f133;background:#6366f114}.stock-chart{width:100%;height:auto;min-width:100%;display:block;animation:fadeIn .8s ease-out .6s both}.data-point{transition:all .2s ease}.chart-tooltip{position:absolute;top:-50px;right:20px;background:#0f172af2;border:1px solid rgba(99,102,241,.4);border-radius:8px;padding:10px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;animation:slideUp .2s ease}.tooltip-date{font-size:.75rem;color:#94a3b8;margin-bottom:4px}.tooltip-price{font-size:1.2rem;font-weight:700;color:#6366f1}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chart-empty{color:#94a3b8;font-size:.98rem}.app-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .6s ease-out}.auth-container{width:100%;max-width:400px;padding:20px;animation:slideInUp .7s ease-out}.auth-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);animation:scaleIn .6s ease-out}.auth-header{text-align:center;margin-bottom:30px;animation:slideInDown .6s ease-out .1s both}.auth-header h2{color:#1f2937;font-size:2rem;font-weight:700;margin:0 0 8px}.auth-header p{color:#6b7280;margin:0;font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px;animation:slideInUp .6s ease-out both}.form-group:nth-child(1){animation-delay:.2s}.form-group:nth-child(2){animation-delay:.3s}.form-group:nth-child(3){animation-delay:.4s}.form-group label{color:#374151;font-weight:500;font-size:.9rem}.form-group input{padding:12px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff}.form-group input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;transform:scale(1.01)}.auth-button{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;padding:14px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px;animation:slideInUp .6s ease-out .5s both}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.auth-button:disabled{opacity:.7;cursor:not-allowed;transform:none;animation:pulse 2s ease-in-out infinite}.resend-button{background:transparent;color:#4f46e5;border:2px solid #4f46e5;padding:10px;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .3s ease;margin-top:10px;animation:slideInUp .6s ease-out .55s both}.resend-button:hover:not(:disabled){background:#4f46e5;color:#fff;transform:scale(1.05)}.resend-button:disabled{opacity:.5;cursor:not-allowed}.otp-info{text-align:center;margin-bottom:20px;animation:slideInUp .6s ease-out .25s both}.otp-info p{margin:0 0 5px;color:#6b7280;font-size:.9rem}.email-display{color:#1f2937;font-weight:600;font-size:1rem}.error-message{background:#fef2f2;color:#dc2626;padding:12px;border-radius:8px;border:1px solid #fecaca;font-size:.9rem;text-align:center;animation:slideInDown .4s ease-out}.auth-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e5e7eb;animation:fadeIn .6s ease-out .6s both}.auth-footer p{color:#6b7280;margin:0;font-size:.9rem}.link-button{background:none;border:none;color:#4f46e5;cursor:pointer;font-weight:600;text-decoration:underline;padding:0;font-size:inherit;transition:all .3s ease}.link-button:hover{color:#3730a3;transform:translateY(-1px)}.dashboard-wrapper{min-height:100vh;background:linear-gradient(180deg,#0a0e27,#0f1729);color:#e2e8f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;animation:fadeIn .6s ease-out}.dashboard-header{background:#0a0e27f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(148,163,184,.1);padding:16px 30px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:sticky;top:0;z-index:100;animation:slideInDown .5s ease-out}.header-left{display:flex;align-items:center}.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem;color:#e2e8f0}.logo-icon{font-size:1.4rem;animation:float 3s ease-in-out infinite}.logo-text{color:#e2e8f0}.header-center{flex:1}.nav-tabs{display:flex;gap:20px;align-items:center;list-style:none;padding:0;margin:0}.nav-tab{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 0;transition:all .3s ease;position:relative}.nav-tab:hover{color:#e2e8f0}.nav-tab.active{color:#818cf8}.header-right{display:flex;align-items:center;gap:20px}.icon-btn{background:none;border:none;color:#cbd5e1;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:8px}.icon-btn:hover{background:#94a3b81a;color:#e2e8f0}.user-btn{display:flex;align-items:center;gap:12px;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:8px;padding:8px 16px;cursor:pointer;transition:all .3s ease;color:#e2e8f0}.user-btn:hover{background:#6366f133;border-color:#6366f166}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#818cf8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.85rem}.user-name{font-size:.9rem;font-weight:500}.welcome-section{padding:40px 30px 20px;animation:slideInDown .6s ease-out .1s both}.welcome-title{font-size:2.5rem;font-weight:700;margin:0 0 8px;color:#e2e8f0}.welcome-subtitle{color:#94a3b8;font-size:1rem;margin:0}.refresh-section{padding:0 30px 20px;display:flex;gap:12px;animation:slideInUp .6s ease-out}.refresh-button{padding:10px 20px;background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:8px;color:#818cf8;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.refresh-button:hover:not(:disabled){background:#6366f14d;border-color:#6366f180;transform:translateY(-2px)}.refresh-button:disabled{opacity:.6;cursor:not-allowed;animation:pulse 2s ease-in-out infinite}.stocks-grid-wrapper{padding:30px;animation:fadeIn .8s ease-out .2s both}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.spinner{width:50px;height:50px;border:3px solid rgba(99,102,241,.2);border-top:3px solid #818cf8;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-small{width:30px;height:30px;border:2px solid rgba(99,102,241,.2);border-top:2px solid #818cf8;border-radius:50%;animation:spin 1s linear infinite}.stocks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:24px;animation:fadeIn .8s ease-out .3s both}.stock-grid-item{animation:scaleIn .6s ease-out both}.stock-grid-item:nth-child(1){animation-delay:.4s}.stock-grid-item:nth-child(2){animation-delay:.45s}.stock-grid-item:nth-child(3){animation-delay:.5s}.stock-grid-item:nth-child(4){animation-delay:.55s}.stock-grid-item:nth-child(5){animation-delay:.6s}.stock-grid-item:nth-child(6){animation-delay:.65s}.stock-grid-item:nth-child(7){animation-delay:.7s}.stock-grid-item:nth-child(8){animation-delay:.75s}.loading-card,.error-card{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:300px;text-align:center}.error-card{border-color:#ef444433;background:#ef44440d}.error-card p{color:#fecaca}.stock-card{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;display:flex;flex-direction:column;gap:16px;height:100%;cursor:pointer}.stock-card-selected{border-color:#22d3eea6;box-shadow:0 0 0 2px #22d3ee33,0 16px 28px #22d3ee26}.stock-card:hover{border-color:#6366f14d;transform:translateY(-6px);box-shadow:0 20px 40px #6366f11a}.stock-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.stock-info{flex:1}.stock-ticker{font-size:1.5rem;font-weight:700;margin:0 0 8px;color:#e2e8f0}.stock-price{font-size:1.8rem;font-weight:700;margin:0;color:#e2e8f0}.stock-change{font-size:.95rem;font-weight:600;margin:4px 0 0}.stock-signal{display:flex;align-items:center}.signal-badge{padding:6px 12px;border-radius:8px;color:#fff;font-weight:600;font-size:.8rem;white-space:nowrap}.stock-chart-mini{height:200px;overflow:hidden;border-radius:12px;background:#6366f10d;border:1px solid rgba(99,102,241,.1);padding:12px}.featured-chart-panel{background:radial-gradient(circle at top right,#6366f12e,#0f172af2);border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:16px;margin-bottom:20px}.featured-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.featured-chart-header h2{margin:0;font-size:1.1rem;color:#e2e8f0}.featured-chip-row{display:flex;align-items:center;gap:10px}.featured-price{font-weight:700;color:#e2e8f0}.stock-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:12px;background:#6366f10d;border-radius:12px;border:1px solid rgba(99,102,241,.1)}.metric-item{display:flex;flex-direction:column;gap:4px}.metric-label{color:#94a3b8;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.metric-value{color:#e2e8f0;font-size:1.1rem;font-weight:700}.prediction-box{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:linear-gradient(135deg,#6366f126,#8b5cf60d);border:1px solid rgba(99,102,241,.2);border-radius:12px}.prediction-content{flex:1}.prediction-label{color:#94a3b8;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.prediction-direction{font-size:1.3rem;font-weight:700;margin-top:4px}.ai-button{padding:10px 16px;background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:8px;color:#818cf8;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem;white-space:nowrap}.ai-button:hover:not(:disabled){background:#6366f14d;border-color:#6366f180;transform:scale(1.08)}.ai-button:disabled{opacity:.6;cursor:not-allowed}.stock-card-footer{display:flex;gap:12px;padding-top:12px;border-top:1px solid rgba(148,163,184,.1)}.details-btn{flex:1;padding:10px;background:transparent;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#cbd5e1;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.details-btn:hover{background:#6366f11a;border-color:#6366f14d;color:#818cf8}.details-panel{display:flex;flex-direction:column;gap:8px;padding:12px;background:#6366f10d;border-radius:8px;border:1px solid rgba(99,102,241,.1)}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px;font-size:.9rem}.detail-label{color:#94a3b8;font-weight:500}.detail-value{color:#e2e8f0;font-weight:600}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background:#0f172afa;border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:0;max-width:1100px;width:90%;max-height:90vh;overflow-y:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:scaleIn .3s ease-out;box-shadow:0 20px 60px #0000004d}.modal-chart-wrap{margin-top:4px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(148,163,184,.1)}.modal-header h2{font-size:1.5rem;font-weight:700;margin:0;color:#e2e8f0}.modal-close{background:none;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:8px}.modal-close:hover{background:#94a3b81a;color:#e2e8f0}.modal-body{padding:24px;display:flex;flex-direction:column;gap:24px}.prediction-display{display:flex;flex-direction:column;gap:16px;text-align:center}.prediction-direction-large{font-size:2rem;font-weight:700}.confidence-label{color:#94a3b8;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.confidence-bar{width:100%;height:8px;background:#94a3b833;border-radius:4px;overflow:hidden;margin-bottom:8px}.confidence-fill{height:100%;border-radius:4px;transition:width .3s ease}.confidence-value{font-size:1.3rem;font-weight:700;color:#e2e8f0}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric-card{background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:12px;padding:16px;text-align:center}.metric-card .metric-label{color:#94a3b8;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:500;margin-bottom:8px}.metric-large-value{font-size:1.4rem;font-weight:700;color:#e2e8f0}.info-section{display:flex;flex-direction:column;gap:8px;padding:12px;background:#6366f10d;border-radius:8px;border:1px solid rgba(99,102,241,.1)}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.info-label{color:#94a3b8;font-weight:500}.info-value{color:#e2e8f0;font-weight:600}.disclaimer{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:12px;color:#fcd34d;font-size:.85rem;line-height:1.5}.modal-footer{display:flex;gap:12px;padding:24px;border-top:1px solid rgba(148,163,184,.1)}.btn-secondary,.btn-primary{flex:1;padding:12px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;font-size:.95rem}.btn-secondary{background:#94a3b81a;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}.btn-secondary:hover{background:#94a3b833;color:#e2e8f0}.btn-primary{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 16px #6366f14d}.btn-up{background:linear-gradient(135deg,#10b981,#34d399)}.btn-up:hover{box-shadow:0 8px 16px #10b9814d}.btn-down{background:linear-gradient(135deg,#ef4444,#f87171)}.btn-down:hover{box-shadow:0 8px 16px #ef44444d}.auth-page{min-height:100vh;display:flex;background:linear-gradient(135deg,#0a0e27,#0f1729);position:relative;overflow:hidden}.auth-bg-animation{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0}.bg-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.3;animation:float 20s ease-in-out infinite}.bg-blob-1{width:400px;height:400px;background:linear-gradient(135deg,#6366f1,#818cf8);top:-100px;left:-100px;animation-delay:0s}.bg-blob-2{width:350px;height:350px;background:linear-gradient(135deg,#8b5cf6,#a78bfa);bottom:-50px;right:-50px;animation-delay:5s}.bg-blob-3{width:300px;height:300px;background:linear-gradient(135deg,#06b6d4,#22d3ee);top:50%;right:10%;animation-delay:10s}.bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.05) 1px,transparent 1px);background-size:50px 50px;animation:moveGrid 20s linear infinite}@keyframes moveGrid{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.auth-page>*{position:relative;z-index:1}.auth-info-panel{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:60px;color:#fff;animation:slideInLeft .8s ease-out}.auth-logo{display:flex;align-items:center;gap:12px;font-size:1.8rem;font-weight:700}.logo-icon{font-size:2.2rem;animation:bounce 3s ease-in-out infinite}.auth-features{margin:60px 0}.auth-features h2{font-size:2.5rem;font-weight:700;margin:0 0 40px;background:linear-gradient(135deg,#e2e8f0,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:slideInUp .8s ease-out .2s both}.features-list{list-style:none;padding:0;margin:0;display:grid;gap:20px}.features-list li{display:flex;align-items:center;gap:16px;padding:16px;background:#6366f11a;border-radius:12px;border:1px solid rgba(99,102,241,.2);animation:slideInLeft .8s ease-out both;transition:all .3s ease}.features-list li:nth-child(1){animation-delay:.3s}.features-list li:nth-child(2){animation-delay:.4s}.features-list li:nth-child(3){animation-delay:.5s}.features-list li:nth-child(4){animation-delay:.6s}.features-list li:hover{background:#6366f133;transform:translate(8px);border-color:#6366f166}.feature-icon{font-size:1.5rem}.auth-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stat{text-align:center;padding:20px;background:#0f172a80;border:1px solid rgba(148,163,184,.2);border-radius:12px;animation:scaleIn .8s ease-out both}.stat:nth-child(1){animation-delay:.4s}.stat:nth-child(2){animation-delay:.5s}.stat:nth-child(3){animation-delay:.6s}.stat-number{font-size:2rem;font-weight:700;color:#6366f1;margin-bottom:8px}.stat-label{font-size:.85rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.auth-form-panel{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;animation:slideInRight .8s ease-out}.auth-card-container{width:100%;max-width:420px}.auth-card{background:#0f172af2;border:1px solid rgba(99,102,241,.2);border-radius:20px;padding:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 20px 60px #0000004d,inset 0 1px #ffffff1a;animation:scaleIn .8s ease-out .2s both}.auth-header{margin-bottom:30px;text-align:center;animation:slideInDown .6s ease-out .3s both}.auth-header h2{font-size:1.8rem;font-weight:700;margin:0 0 8px;color:#e2e8f0}.auth-header p{color:#94a3b8;margin:0;font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:20px;animation:fadeIn .8s ease-out .4s both}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#cbd5e1;font-size:.9rem;font-weight:500}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;font-size:1.1rem;pointer-events:none}.form-input{width:100%;padding:12px 16px 12px 40px;border:1.5px solid rgba(148,163,184,.2);border-radius:10px;background:#1e293bcc;color:#e2e8f0;font-size:1rem;transition:all .3s ease;font-family:inherit}.form-input::placeholder{color:#64748b}.form-input:focus{outline:none;border-color:#6366f180;background:#1e293b;box-shadow:0 0 0 3px #6366f11a;transform:translateY(-2px)}.otp-input-wrapper{display:flex;gap:8px;justify-content:center}.otp-input{width:50px;height:50px;border:1.5px solid rgba(148,163,184,.2);border-radius:10px;background:#1e293bcc;color:#e2e8f0;font-size:1.2rem;font-weight:600;text-align:center;transition:all .3s ease;font-family:Courier New,monospace}.otp-input::placeholder{color:#64748b}.otp-input:focus{outline:none;border-color:#6366f180;background:#1e293b;box-shadow:0 0 0 3px #6366f11a;transform:scale(1.05)}.form-group.checkbox{flex-direction:row;align-items:center;gap:10px;margin:10px 0}.form-group.checkbox label{margin:0;display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:pointer}.form-group.checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6366f1}.inline-link{color:#818cf8;text-decoration:none;transition:all .3s ease}.inline-link:hover{color:#a5b4fc;text-decoration:underline}.auth-button{padding:12px 24px;border:none;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit}.auth-button.primary{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;box-shadow:0 4px 15px #6366f14d}.auth-button.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #6366f166}.auth-button.primary:disabled{opacity:.6;cursor:not-allowed;animation:pulse 2s ease-in-out infinite}.auth-button.secondary{background:#6366f11a;color:#818cf8;border:1.5px solid rgba(99,102,241,.2)}.auth-button.secondary:hover:not(:disabled){background:#6366f133;border-color:#6366f166;transform:translateY(-1px)}.auth-button.secondary:disabled{opacity:.5;cursor:not-allowed}.button-icon{font-size:1.1rem}.auth-button.signup-link{background:linear-gradient(135deg,#6366f133,#8b5cf633);color:#818cf8;border:1.5px solid rgba(99,102,241,.3)}.auth-button.signup-link:hover{background:linear-gradient(135deg,#6366f14d,#8b5cf64d);border-color:#6366f180}.otp-info{text-align:center;margin:20px 0;animation:slideInUp .6s ease-out}.otp-info p{margin:0;color:#94a3b8;font-size:.95rem}.email-display{color:#e2e8f0;font-weight:600;font-size:1rem;margin-top:4px}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fecaca;padding:12px 16px;border-radius:10px;font-size:.9rem;display:flex;align-items:center;gap:8px;animation:slideDown .4s ease-out}.error-icon{font-size:1.2rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#64748b;font-size:.9rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#94a3b833}.auth-footer-links{display:flex;justify-content:center;gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(148,163,184,.1)}.footer-link{color:#64748b;text-decoration:none;font-size:.85rem;transition:all .3s ease}.footer-link:hover{color:#818cf8;text-decoration:underline}.analytics-section,.watchlist-section{padding:30px;max-width:1400px;margin:0 auto;animation:fadeIn .8s ease-out}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;animation:slideInDown .6s ease-out}.section-header h2{font-size:2rem;font-weight:700;margin:0;color:#e2e8f0}.badge{background:#6366f133;color:#818cf8;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600}.period-selector{display:flex;gap:8px;background:#6366f11a;padding:6px;border-radius:10px}.period-btn{padding:8px 16px;background:transparent;border:none;color:#cbd5e1;cursor:pointer;border-radius:8px;font-weight:500;transition:all .3s ease}.period-btn.active{background:#6366f14d;color:#818cf8}.performance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}.performance-card{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-left:4px solid;border-radius:12px;padding:24px;animation:scaleIn .6s ease-out both}.performance-card:nth-child(1){animation-delay:.1s}.performance-card:nth-child(2){animation-delay:.2s}.performance-card:nth-child(3){animation-delay:.3s}.performance-card:nth-child(4){animation-delay:.4s}.performance-card .metric-label{color:#94a3b8;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.performance-card .metric-large-value{font-size:1.8rem;font-weight:700}.analytics-table-container{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:24px;margin-bottom:40px;animation:scaleIn .6s ease-out .2s both;overflow-x:auto}.analytics-table-container h3{margin:0 0 20px;font-size:1.1rem;color:#e2e8f0}.analytics-table{width:100%;border-collapse:collapse;color:#e2e8f0}.analytics-table thead{border-bottom:2px solid rgba(99,102,241,.2)}.analytics-table th{text-align:left;padding:12px;color:#94a3b8;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.analytics-table td{padding:16px 12px;border-bottom:1px solid rgba(148,163,184,.1)}.analytics-table tbody tr:hover{background:#6366f10d}.accuracy-bar{width:100%;height:6px;background:#94a3b833;border-radius:3px;overflow:hidden;margin-bottom:8px}.accuracy-fill{height:100%;background:linear-gradient(90deg,#6366f1,#818cf8);border-radius:3px;transition:width .3s ease}.signal-badge-small{padding:6px 12px;border-radius:6px;color:#fff;font-size:.8rem;font-weight:600;white-space:nowrap}.analytics-chart{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:24px;animation:scaleIn .6s ease-out .3s both}.analytics-chart h3{margin:0 0 20px;font-size:1.1rem;color:#e2e8f0}.chart-placeholder{background:#6366f10d;border-radius:8px;padding:30px;min-height:250px}.chart-placeholder svg{display:block}.add-watchlist-form{margin-bottom:30px;animation:slideInUp .6s ease-out}.input-group{display:flex;gap:12px}.watchlist-input{flex:1;padding:12px 16px;border:1.5px solid rgba(148,163,184,.2);border-radius:10px;background:#1e293bcc;color:#e2e8f0;font-size:1rem;transition:all .3s ease}.watchlist-input:focus{outline:none;border-color:#6366f180;box-shadow:0 0 0 3px #6366f11a}.btn-add{padding:12px 24px;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-add:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.watchlist-items{display:grid;gap:16px;margin-bottom:30px}.empty-state{background:#0f172af2;border:2px dashed rgba(148,163,184,.2);border-radius:12px;padding:60px 30px;text-align:center;animation:scaleIn .6s ease-out}.empty-icon{font-size:3rem;margin-bottom:16px}.empty-state p{margin:0;color:#cbd5e1;font-size:1rem}.empty-subtext{color:#64748b!important;font-size:.9rem!important;margin-top:8px!important}.watchlist-item{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:20px;animation:scaleIn .6s ease-out both;transition:all .3s ease}.watchlist-item:hover{border-color:#6366f14d;transform:translateY(-4px);box-shadow:0 12px 30px #6366f11a}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.ticker-info{flex:1}.ticker-info h4{margin:0;font-size:1.3rem;font-weight:700;color:#e2e8f0}.item-price{color:#94a3b8;font-size:.9rem}.btn-remove{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#fecaca;width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:1.1rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-remove:hover{background:#ef444433;border-color:#ef444466}.item-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.1)}.metric{display:flex;flex-direction:column;gap:4px}.metric .label{color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.metric .value{color:#e2e8f0;font-size:1.1rem;font-weight:700}.item-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.signal-badge{padding:8px 16px;border-radius:6px;color:#fff;font-size:.85rem;font-weight:600;white-space:nowrap}.btn-details{padding:8px 16px;background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:6px;color:#818cf8;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem;white-space:nowrap}.btn-details:hover{background:#6366f14d;border-color:#6366f180}.watchlist-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-card{background:#0f172af2;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:20px;text-align:center;animation:scaleIn .6s ease-out both}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-label{color:#94a3b8;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-weight:600}.stat-value{font-size:1.6rem;font-weight:700;color:#818cf8}.chart-legend{display:flex;gap:24px;justify-content:center;margin-top:20px;padding:16px;background:#0f172a80;border-radius:8px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#94a3b8}.legend-color{width:16px;height:16px;border-radius:3px;display:inline-block}.pie-charts-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:32px;margin:40px 0;padding:0 20px}.pie-chart-wrapper{display:flex;flex-direction:column;align-items:center;gap:20px;background:#0f172ab3;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:24px;animation:scaleIn .6s ease-out}.pie-chart-wrapper h4{font-size:1.1rem;font-weight:600;color:#e2e8f0;margin:0}.pie-chart{width:180px;height:180px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.pie-legend{display:flex;flex-direction:column;gap:12px;width:100%}.pie-legend-item{display:flex;align-items:center;gap:12px;font-size:.9rem;padding:8px 12px;background:#6366f10d;border-radius:6px}.pie-color-box{width:14px;height:14px;border-radius:3px;flex-shrink:0}.pie-label{color:#cbd5e1;flex:1}.pie-value{color:#818cf8;font-weight:600;margin-left:auto}.ws-status{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:6px;cursor:pointer;transition:all .3s ease}.ws-status:hover{background:#10b98133;border-color:#10b98180}.ws-indicator{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:pulse 2s infinite}.ws-indicator.connected{background:#10b981;animation:pulse-connected 2s infinite}.ws-text{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#10b981}.ws-status:not(:has(.ws-indicator.connected)) .ws-text{color:#f59e0b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-connected{0%,to{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 4px #10b9814d}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#020617;color:#e2e8f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,select{font:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
