:root{--procogia-primary:#8bc34a;--procogia-secondary:#00bcd4;--procogia-dark:#2c3e50;--procogia-light:#f8fafc;--primary-bg:#fff;--card-bg:#fff;--card-border:#8bc34a1a;--header-bg:#8bc34a;--text-primary:#2c3e50;--text-secondary:#5a6c7d;--text-light:#7a8a9a;--success-green:#8bc34a;--warning-amber:#ff9800;--error-red:#e57373;--button-primary:#8bc34a;--button-hover:#7cb342;--link-color:#00bcd4;--shadow-sm:0 1px 2px #8bc34a1a;--shadow-md:0 4px 6px #8bc34a26;--shadow-lg:0 10px 15px #8bc34a33;--gradient:linear-gradient(135deg,#8bc34a,#7cb342);--sidebar-width:280px;--sidebar-collapsed-width:80px}*{margin:0;padding:0}body{background-attachment:fixed;background-color:#fff;background-color:var(--primary-bg);background-image:radial-gradient(ellipse 800px 600px at 10% 20%,#8bc34a0d 0,#0000 50%),radial-gradient(ellipse 600px 800px at 90% 80%,#00bcd408 0,#0000 50%);color:#2c3e50;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.app{display:flex;flex-direction:column;min-height:100vh}.header{background:linear-gradient(135deg,#8bc34a,#7cb342);background:var(--gradient);box-shadow:0 4px 6px #8bc34a26;box-shadow:var(--shadow-md);color:#fff;padding:1rem 2rem}.header-content{margin:0 auto;max-width:1200px}.logo-section{align-items:center;display:flex;gap:1rem}.logo{font-size:24px;font-weight:700}.tagline{font-size:14px;opacity:.9}.status-section{align-items:center;display:flex;font-size:14px;gap:1rem}.status-dot{background-color:#8bc34a;background-color:var(--success-green)}.status-dot.warning{background-color:#ff9800;background-color:var(--warning-amber)}.status-dot.error{background-color:#e57373;background-color:var(--error-red)}.main-content{background:#fffffff2}.card{background:#fff;background:var(--card-bg);border:1px solid #8bc34a1a;border:1px solid var(--card-border);border-radius:12px;box-shadow:0 1px 2px #8bc34a1a;box-shadow:var(--shadow-sm);overflow:hidden}.card-header{border-bottom:1px solid #8bc34a1a;border-bottom:1px solid var(--card-border);padding:1.5rem 1.5rem 1rem}.card-title{align-items:center;color:#2c3e50;color:var(--text-primary);display:flex;font-size:20px;font-weight:600;gap:.5rem}.card-subtitle{color:#5a6c7d;color:var(--text-secondary);font-size:14px;margin-top:.25rem}.card-content{padding:1.5rem}.portfolio-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.summary-item{background:#ffffffe6;border:1px solid #8bc34a1a;border-radius:12px;box-shadow:0 4px 15px #8bc34a1a;padding:1rem;text-align:center}.summary-label{color:#5a6c7d;color:var(--text-secondary);font-size:12px;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.summary-value{color:#2c3e50;color:var(--text-primary);font-size:24px;font-weight:700}.summary-change{font-size:14px;margin-top:.25rem}.positive{color:var(--success-green)}.negative{color:var(--error-red)}.holdings-table{margin-top:1rem}.holdings-table td,.holdings-table th{border-bottom:1px solid #8bc34a1a;border-bottom:1px solid var(--card-border);padding:1rem}.holdings-table th{background:#8bc34a0d;color:#5a6c7d;color:var(--text-secondary);font-size:14px;letter-spacing:.5px;text-transform:uppercase}.holdings-table td{font-size:15px}.symbol{color:#2c3e50;color:var(--text-primary);font-weight:600}.price{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.chat-container{display:flex;flex-direction:column;height:600px}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1rem}.message{word-wrap:break-word;border-radius:12px;max-width:80%;padding:1rem}.message.user{align-self:flex-end;background:#8bc34a;background:var(--procogia-primary);border-bottom-right-radius:4px;color:#fff}.message.assistant{align-self:flex-start;background:#ffffffe6;border:1px solid #8bc34a1a;border:1px solid var(--card-border);border-bottom-left-radius:4px;box-shadow:0 2px 8px #8bc34a1a;color:#2c3e50;color:var(--text-primary)}.message-content{line-height:1.5;white-space:pre-wrap}.message-timestamp{font-size:12px;margin-top:.5rem;opacity:.7}.chat-input-container{background:#fff;background:var(--card-bg);border-top:1px solid #8bc34a1a;border-top:1px solid var(--card-border);padding:1rem}.chat-input-form{display:flex;gap:.5rem}.chat-input{border:1px solid #8bc34a1a;border:1px solid var(--card-border);border-radius:8px;flex:1 1;font-size:14px;outline:none;padding:.75rem;transition:border-color .2s}.chat-input:focus{border-color:#8bc34a;border-color:var(--procogia-primary)}.chat-button{background:#8bc34a;background:var(--button-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s}.chat-button:hover{background:#7cb342;background:var(--button-hover)}.chat-button:disabled{background:#7a8a9a;background:var(--text-light);cursor:not-allowed}.loading{color:#5a6c7d;color:var(--text-secondary);gap:.5rem;padding:2rem}.spinner{border:2px solid #8bc34a1a;border-top:2px solid #8bc34a;border:2px solid var(--card-border);border-top-color:var(--procogia-primary);height:20px;width:20px}.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;margin:1rem 0;padding:1rem}@media (max-width:1024px){.main-content{gap:1.5rem;grid-template-columns:1fr}.header-content{flex-direction:column;gap:1rem;text-align:center}}@media (max-width:768px){.main-content{margin-left:0;margin-top:80px;width:100%}.header{padding:1rem}.portfolio-summary{grid-template-columns:1fr}.holdings-table{font-size:14px}.holdings-table td,.holdings-table th{padding:.75rem .5rem}.message{max-width:90%}.app-layout:has(.navigation.collapsed) .main-content{margin-left:0;width:100%}}@media (max-width:640px){.summary-item{padding:.75rem}.summary-value{font-size:20px}.card-content{padding:1rem}.chat-container{height:500px}}.loading-screen{align-items:center;background:linear-gradient(135deg,#8bc34a,#7cb342);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;justify-content:center}.loading-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;padding:3rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;margin:0 auto 2rem;width:50px}.loading-content h2{font-size:1.5rem;font-weight:600;margin:0 0 1rem}.loading-content p{color:#fffc;margin:0}.App{background:#fff}.main-container{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#fff;border-bottom:1px solid var(--border-light);box-shadow:0 1px 2px #8bc34a1a;box-shadow:var(--shadow-sm);justify-content:space-between;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.app-header,.header-left{align-items:center;display:flex}.app-title{display:flex;flex-direction:column;margin:0}.app-title .brand{color:var(--primary-blue);font-size:1.5rem;font-weight:700;line-height:1}.app-title .subtitle{color:#5a6c7d;color:var(--text-secondary);font-size:.85rem;font-weight:500;margin-top:-2px}.header-center,.status-indicator{align-items:center;display:flex}.status-indicator{border-radius:20px;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.status-indicator.success{background:var(--success-bg);color:var(--success-text)}.status-indicator.warning{background:var(--warning-bg);color:var(--warning-text)}.status-indicator.loading{background:var(--info-bg);color:var(--info-text)}.status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:8px;width:8px}.header-right,.user-info{align-items:center;display:flex}.user-info{gap:1rem}.user-avatar{border:2px solid var(--border-light);height:32px;width:32px}.user-name{color:var(--text-primary);font-weight:500}.logout-btn{background:#0000;border:1px solid var(--border-light);border-radius:6px;color:#5a6c7d;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.logout-btn:hover{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.config-notice{background:var(--warning-bg);border-bottom:1px solid var(--warning-border);padding:.75rem 2rem}.notice-content{align-items:center;display:flex;gap:.75rem;margin:0 auto;max-width:1200px}.notice-icon{font-size:1.1rem}.notice-text{color:var(--warning-text);font-size:.875rem;line-height:1.4}.notice-text strong{font-weight:600}.app-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.content-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;height:100%}.chat-section,.portfolio-section{display:flex;flex-direction:column}@media (max-width:1024px){.content-grid{grid-template-columns:1fr}.app-content,.app-header{padding:1rem}}@media (max-width:768px){.app-header{flex-direction:column;gap:1rem;padding:1rem}.header-center,.header-left,.header-right{justify-content:center;width:100%}.user-info{justify-content:center}.config-notice{padding:1rem}.notice-content{flex-direction:column;gap:.5rem;text-align:center}}@media (max-width:480px){.app-title .brand{font-size:1.25rem}.user-name{display:none}.status-indicator{font-size:.75rem;padding:.4rem .8rem}}.portfolio-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.portfolio-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.buy-stock-button{align-items:center;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:8px;box-shadow:0 2px 8px #05966933;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.buy-stock-button:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 16px #0596694d;transform:translateY(-2px)}.buy-stock-button:active{box-shadow:0 2px 8px #05966933;transform:translateY(0)}@media (max-width:768px){.portfolio-header{align-items:flex-start;flex-direction:column;gap:12px}.buy-stock-button{align-self:stretch;justify-content:center}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafbfc;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#fafbfc;min-height:100vh}.app-layout,.main-content{display:flex;min-height:100vh}.main-content{background:#fafbfc;box-sizing:border-box;flex:1 1;flex-direction:column;margin-left:280px;margin-left:var(--sidebar-width);padding:0;transition:margin-left .3s ease,width .3s ease;width:calc(100% - 280px);width:calc(100% - var(--sidebar-width))}.app-layout:has(.navigation.collapsed) .main-content{margin-left:80px;margin-left:var(--sidebar-collapsed-width);width:calc(100% - 80px);width:calc(100% - var(--sidebar-collapsed-width))}.app-loading{align-items:center;background:#fafbfc;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.app-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:1rem;width:40px}.app-loading p{color:#6b7280;font-size:.875rem;margin:0}@media (max-width:768px){.main-content{margin-left:0;margin-top:80px}.app-layout:has(.navigation.collapsed) .main-content{margin-left:0}}button{border:none;cursor:pointer;font-family:inherit;outline:none;transition:all .2s ease}button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}input,select,textarea{font-family:inherit;outline:none;transition:all .2s ease}input:focus,select:focus,textarea:focus{outline:2px solid #3b82f6;outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-gray-900{color:#1f2937}.text-blue-600{color:#2563eb}.text-green-600{color:#059669}.text-red-600{color:#dc2626}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.border{border-width:1px}.border-0{border-width:0}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.shadow{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-blue-50{background-color:#eff6ff}.bg-blue-500{background-color:#3b82f6}.bg-blue-600{background-color:#2563eb}.bg-green-50{background-color:#f0fdf4}.bg-green-500{background-color:#10b981}.bg-red-50{background-color:#fef2f2}.bg-red-500{background-color:#ef4444}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:-webkit-sticky;position:sticky}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mobile-menu-button{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:50%;box-shadow:0 2px 5px #0000001a;color:#1f2937;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;left:1rem;position:fixed;top:1rem;transition:all .2s ease;width:40px;z-index:1000}.mobile-menu-button:hover{background:#f9fafb}.mobile-nav-overlay{background:#00000080;height:100%;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%;z-index:1001}.mobile-nav-overlay.open{opacity:1;visibility:visible}.mobile-navigation{background:#fff;box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;left:-100%;position:fixed;top:0;transition:left .3s ease;width:100%;z-index:1002}.mobile-navigation.open{left:0}@media (min-width:640px){.mobile-navigation{left:-320px;width:320px}}.mobile-nav-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1.5rem}.mobile-nav-brand{flex:1 1}.mobile-brand-logo{height:32px;max-width:100%;object-fit:contain}.mobile-close-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;width:32px}.mobile-nav-menu{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:1rem 0}.mobile-nav-item{align-items:center;border-left:4px solid #0000;color:#6b7280;display:flex;gap:1rem;padding:1.25rem 1.5rem;text-decoration:none;transition:all .2s ease}.mobile-nav-item:hover{background:#f9fafb;color:#1f2937}.mobile-nav-item-active{background:#f3f4f6;border-left:4px solid #3b82f6;color:#1f2937}.mobile-nav-item-icon{flex-shrink:0;font-size:1.5rem}.mobile-nav-item-text{flex:1 1}.mobile-nav-item-label{font-size:1rem;font-weight:600;line-height:1.25}.mobile-nav-item-description{color:#9ca3af;font-size:.875rem;line-height:1.25;margin-top:.25rem}.mobile-nav-footer{background:#fafbfc;border-top:1px solid #f3f4f6;padding:1.5rem}.mobile-user-profile{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;margin-bottom:1rem;padding:.75rem}.mobile-user-avatar{border:2px solid #e5e7eb;border-radius:50%;height:40px;margin-right:.75rem;width:40px}.mobile-user-info{flex:1 1;min-width:0}.mobile-user-name{color:#1f2937;font-size:.875rem;font-weight:600}.mobile-user-email,.mobile-user-name{line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-user-email{color:#6b7280;font-size:.75rem}.mobile-logout-button{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.mobile-logout-button:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.mobile-logout-icon{font-size:1rem}.App.mobile .main-content{margin-left:0;padding-top:60px;width:100%}.app-layout.mobile.mobile-nav-open .main-content{opacity:.7;pointer-events:none}@media (max-width:768px){.navigation{display:none}}@media (min-width:769px){.mobile-menu-button,.mobile-nav-overlay,.mobile-navigation{display:none}}@media (max-width:768px){.portfolio-page{padding:1rem}.page-title{font-size:1.5rem;margin-bottom:1rem}.header-actions{flex-wrap:wrap;gap:.5rem}.status-badge{justify-content:center;order:3;width:100%}.buy-stock-btn,.refresh-btn{flex:1 1;min-width:0;padding:.75rem .5rem}.portfolio-summary{grid-template-columns:1fr}.summary-card{padding:1rem}.summary-value{font-size:1.5rem}.holdings-section{overflow-x:auto}.holdings-table{min-width:650px}.section-header{align-items:flex-start;flex-direction:column;gap:.5rem}}@media (max-width:480px){.portfolio-page{padding:.75rem}.buy-stock-btn,.refresh-btn{font-size:.75rem;padding:.5rem}.summary-card{padding:.75rem}.summary-label{font-size:.7rem}.summary-value{font-size:1.25rem}}.landing-page{background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.landing-page:before{background:radial-gradient(ellipse 800px 600px at 10% 20%,#8bc34a26 0,#0000 50%),radial-gradient(ellipse 600px 800px at 90% 80%,#00bcd41f 0,#0000 50%),radial-gradient(ellipse 400px 300px at 70% 10%,#8bc34a14 0,#0000 50%),radial-gradient(ellipse 300px 400px at 20% 90%,#00bcd41a 0,#0000 50%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:0}.container{margin:0 auto;max-width:1200px;padding:0 20px}.landing-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #8bc34a1a;position:-webkit-sticky;position:sticky;position:relative;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;padding:1rem 0;position:relative;z-index:1}.logo{display:flex;flex-direction:column}.logo-image{height:40px;width:auto}.logo-image-small{flex-shrink:0;height:32px;max-width:200px;object-fit:contain;width:auto}.logo-subtitle{color:#666;font-size:.9rem;font-weight:500;margin-top:4px}.header-login-btn{background:linear-gradient(135deg,#8bc34a,#7cb342);border:none;border-radius:12px;box-shadow:0 4px 15px #8bc34a4d;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.header-login-btn:hover{background:linear-gradient(135deg,#7cb342,#689f38);box-shadow:0 6px 20px #8bc34a66;transform:translateY(-2px)}.header-login-btn:disabled{cursor:not-allowed;opacity:.6}.hero-section{color:#2c3e50;padding:4rem 0 6rem;position:relative;z-index:1}.hero-content{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr}.hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2c3e50,#34495e);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem}.hero-description{color:#5a6c7d;font-size:1.25rem;line-height:1.6;margin-bottom:2.5rem}.hero-stats{display:flex;gap:2rem}.stat{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-number{color:#8bc34a;font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.stat-label{font-size:.9rem}.portfolio-preview{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #8bc34a33;border-radius:20px;box-shadow:0 20px 40px #8bc34a1a;padding:2rem}.preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.preview-title{color:#5a6c7d;font-size:1.1rem;font-weight:600}.preview-value{color:#8bc34a;font-size:2rem;font-weight:700}.preview-chart{align-items:end;display:flex;gap:.5rem;height:120px;margin-bottom:2rem}.chart-bar{animation:growUp 1s ease-out;background:linear-gradient(0deg,#00bcd4,#00acc1);border-radius:6px 6px 0 0;flex:1 1;min-height:20px;transition:all .3s ease}@keyframes growUp{0%{height:0}to{height:var(--final-height)}}.chart-bar:hover{background:linear-gradient(0deg,#00acc1,#0097a7)}.preview-stocks{display:flex;flex-direction:column;gap:.75rem}.stock-item{border-bottom:1px solid #8bc34a1a;color:#2c3e50;padding:.5rem 0}.stock-item:last-child{border-bottom:none}.positive{color:#8bc34a;font-weight:600}.negative{color:#e57373;font-weight:600}.features-section{background:#fffc;padding:6rem 0;position:relative;z-index:1}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:3rem;text-align:center}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #8bc34a1a;border-radius:20px;box-shadow:0 8px 25px #8bc34a1a;padding:2rem;text-align:center;transition:all .3s ease}.feature-card:hover{background:#fff;border:1px solid #8bc34a33;box-shadow:0 20px 40px #8bc34a33;transform:translateY(-8px)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{color:#2c3e50;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.feature-card p{color:#5a6c7d;line-height:1.5}.cta-section{padding:6rem 0;position:relative;text-align:center;z-index:1}.cta-content h2{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.cta-content p{color:#5a6c7d;font-size:1.25rem;margin-bottom:2rem}.cta-button{align-items:center;background:linear-gradient(135deg,#8bc34a,#7cb342);border:none;border-radius:16px;box-shadow:0 6px 20px #8bc34a4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all .3s ease}.cta-button:hover{background:linear-gradient(135deg,#7cb342,#689f38);box-shadow:0 12px 30px #8bc34a66;transform:translateY(-3px)}.cta-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.google-icon{align-items:center;background:#fff;border-radius:50%;color:#00bcd4;display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;width:24px}.cta-note{color:#7a8a9a;font-size:.9rem;margin-top:1rem}.landing-footer{background:#8bc34a0d;border-top:1px solid #8bc34a1a;padding:2rem 0;position:relative;z-index:1}.footer-content{color:#5a6c7d;gap:2rem;justify-content:space-between}.footer-content,.footer-logo{align-items:flex-start;display:flex}.footer-logo{flex-direction:column;flex-shrink:0;margin-bottom:.5rem}.footer-logo .logo-text{color:#2c3e50;font-size:1.2rem}.footer-logo .logo-subtitle{font-size:.8rem;margin-top:-2px}@media (max-width:768px){.hero-content{gap:3rem;grid-template-columns:1fr;text-align:center}.hero-title{font-size:2.5rem}.hero-stats{justify-content:center}.features-grid{grid-template-columns:1fr}.footer-content{text-align:center}.footer-content,.header-content{flex-direction:column;gap:1rem}}@media (max-width:480px){.container{padding:0 15px}.hero-title{font-size:2rem}.feature-card,.portfolio-preview{padding:1.5rem}}.global-loading-indicator{animation:slideInRight .2s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #8bc34a4d;border-radius:50%;box-shadow:0 2px 8px #0000001f;height:48px;position:fixed;right:15px;top:15px;width:48px;z-index:1000}.global-loading-indicator,.loading-content{align-items:center;display:flex;justify-content:center}.loading-content{height:100%;width:100%}.loading-icon{display:none}.mini-spinner{border:2px solid #8bc34a33}.loading-message{display:none}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@media (max-width:768px){.global-loading-indicator{min-width:120px;padding:10px 12px;right:15px;top:15px}.loading-message{font-size:13px}.mini-spinner{height:14px;width:14px}}.buy-stock-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.buy-stock-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff;border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 8px 32px #0000001f;max-height:90vh;max-width:520px;overflow-y:auto;position:relative;width:100%}.modal-header{align-items:center;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:2rem 2rem 1.5rem}.modal-header h2{color:#333;font-size:1.5rem;margin:0}.close-button{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;margin:-.5rem;padding:.5rem}.modal-content{padding:0}.stock-search{padding:1.5rem 2rem 2rem}.search-box{background:#f8f9fa;border:2px solid #0000;border-radius:50px;box-shadow:0 2px 8px #0000000a;display:flex;margin-bottom:1.5rem;overflow:hidden;transition:all .3s ease}.search-box:focus-within{border-color:#2196f3;box-shadow:0 4px 16px #2196f326}.search-box input{background:#0000;border:none;color:#333;flex:1 1;font-size:1rem;outline:none;padding:1rem 1.5rem}.search-box input::placeholder{color:#888}.search-button{background:linear-gradient(135deg,#2196f3,#1976d2);border:none;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease;white-space:nowrap}.search-button:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);transform:translateY(-1px)}.search-button:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;transform:none}.search-results{margin:0 -.5rem;max-height:300px;overflow-y:auto}.stock-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.stock-item{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:16px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;transition:all .3s ease}.stock-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.stock-item:hover{background:#2196f314;border-color:#2196f333;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.stock-symbol{color:#2196f3;font-size:1.1rem;font-weight:700}.stock-name{color:#666;font-size:.9rem}.stock-details{display:flex;flex-wrap:wrap;gap:.5rem}.stock-currency,.stock-exchange,.stock-region{border-radius:12px;font-size:.75rem;font-weight:500;padding:.125rem .375rem}.stock-exchange{background:#2196f31a;color:#1976d2}.stock-region{background:#9c27b01a;color:#7b1fa2}.stock-currency{background:#ff98001a;color:#f57c00}.stock-price{color:#2c3e50;font-size:1.1rem;font-weight:600}.no-results{background:#f8f9fa;border:2px dashed #0000001a;border-radius:16px;color:#888;font-style:italic;margin:.5rem;padding:2rem;text-align:center}.stock-purchase.modern-layout{display:flex;flex-direction:column;gap:1.5rem;max-height:75vh;overflow-y:auto;padding:1.5rem 2rem 120px;position:relative}.purchase-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #0000000d;border-radius:16px;padding:1.5rem}.stock-info-compact{align-items:center;display:flex;justify-content:space-between}.symbol-price{display:flex;flex-direction:column;gap:.25rem}.symbol-large{color:#2196f3;font-size:2rem;font-weight:700;letter-spacing:-.5px}.current-price-large{color:#2c3e50;font-size:1.5rem;font-weight:600}.position-summary{display:flex;flex-direction:column;gap:.25rem;text-align:right}.current-position{color:#666;font-size:.9rem;font-weight:500}.position-value{color:#4caf50;font-size:1.1rem;font-weight:600}.slider-section.modern-slider{background:#fff;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:1.5rem}.slider-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.slider-title{color:#2c3e50;font-size:1.1rem;font-weight:600}.target-input-wrapper{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:12px;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .3s ease}.target-input-wrapper:focus-within{background:#fff;border-color:#2196f3;box-shadow:0 4px 12px #2196f326}.target-input-modern{background:#0000;border:none;color:#2c3e50;font-size:1rem;font-weight:600;outline:none;text-align:center;width:80px}.input-label{color:#666;font-size:.85rem;font-weight:500}.slider-container-modern{margin:2rem 0 1rem;padding:0 12px;position:relative}.slider-track{align-items:center;background:#0000;border-radius:6px;display:flex;height:28px;position:relative}.slider-track:before{background:#e9ecef;border-radius:6px;content:"";height:12px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}.position-slider-modern{-webkit-appearance:none;appearance:none;background:#0000;cursor:pointer;height:100%;left:0;outline:none;position:absolute;top:0;width:100%;z-index:2}.position-slider-modern::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#2196f3,#1976d2);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0003;cursor:pointer;height:24px;-webkit-transition:all .3s ease;transition:all .3s ease;width:24px}.position-slider-modern::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #2196f366;transform:scale(1.1)}.position-slider-modern::-moz-range-thumb{background:linear-gradient(135deg,#2196f3,#1976d2);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0003;cursor:pointer;height:24px;width:24px}.slider-progress{background:linear-gradient(90deg,#e53935,#ff9800,#4caf50);border-radius:6px;height:12px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:width .3s ease;z-index:1}.current-position-indicator{align-items:center;display:flex;flex-direction:column;font-size:.75rem;position:absolute;top:-2.5rem;transform:translateX(-50%);z-index:4}.current-indicator-value{background:#2196f3;border-radius:8px;box-shadow:0 2px 8px #2196f34d;color:#fff;font-weight:600;margin-bottom:.25rem;padding:.25rem .5rem;white-space:nowrap}.current-indicator-text{color:#666;font-weight:500}.slider-labels-modern{height:30px;margin-top:1rem;position:relative}.label-item{align-items:center;display:flex;flex-direction:column;font-size:.75rem;position:absolute}.label-item:first-child{left:0;transform:translateX(0)}.label-item:last-child{left:auto;right:0;transform:translateX(0)}.label-value{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;color:#2c3e50;font-weight:600;margin-bottom:.25rem;padding:.25rem .5rem}.label-text{color:#666;font-weight:500}.stats-section-modern{background:#fff;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:1.5rem}.transaction-summary{display:flex;flex-direction:column;gap:1rem}.summary-header{display:flex;justify-content:center;margin-bottom:.5rem}.transaction-badge{align-items:center;border-radius:50px;display:inline-flex;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;text-align:center}.transaction-badge.buy{background:linear-gradient(135deg,#4caf501a,#8bc34a1a);border:2px solid #4caf5033;color:#4caf50}.transaction-badge.sell{background:linear-gradient(135deg,#f443361a,#ff57221a);border:2px solid #f4433633;color:#f44336}.transaction-badge.neutral{background:linear-gradient(135deg,#9e9e9e1a,#7575751a);border:2px solid #9e9e9e33;color:#757575}.stats-grid-compact{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.stat-card{background:#f8f9fa;border:1px solid #0000000a;display:flex;flex-direction:column;gap:.25rem;padding:1rem;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.stat-label{font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.stat-value{font-size:1.2rem}.stat-value.negative{color:#f44336}.stat-unit{color:#888;font-size:.8rem;font-weight:500}@media (max-width:768px){.stock-purchase.modern-layout{gap:1rem;padding:1rem 1rem 100px}.purchase-header{padding:1rem}.stock-info-compact{flex-direction:column;gap:1rem;text-align:center}.position-summary{text-align:center}.symbol-large{font-size:1.5rem}.current-price-large{font-size:1.2rem}.slider-section.modern-slider{padding:1rem}.slider-header{flex-direction:column;gap:1rem;text-align:center}.slider-container-modern{padding:0 8px}.current-position-indicator{top:-2rem}.stats-grid-compact{gap:.75rem;grid-template-columns:1fr}.action-buttons{gap:.75rem;padding:1rem}.buy-button,.cancel-button,.sell-button{font-size:.9rem;min-width:120px;padding:.875rem 1.5rem}}.stock-card{background-color:#f8f9fa;margin-bottom:1.5rem;padding:1.5rem}.stock-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.symbol{color:#1a73e8;font-size:1.2rem;font-weight:700}.price-info{color:#555;display:flex;font-size:.9rem;justify-content:space-between;margin-top:1rem}.slider-section{margin:1.5rem 0;padding:.5rem}.slider-section label{display:block;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.slider-container{margin:1.5rem 0 1rem;position:relative}.slider-labels{color:#666;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:.5rem}.slider-label.sell{color:#e53935;font-weight:500}.slider-label.current{color:#1a73e8;font-weight:500}.slider-label.buy{color:#4caf50;font-weight:500}.position-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#e53935 0,#e53935 30%,#1a73e8 0,#1a73e8 35%,#4caf50 35%,#4caf50);background:linear-gradient(to right,#e53935 0,#e53935 var(--current-position,30%),#1a73e8 var(--current-position,30%),#1a73e8 calc(var(--current-position, 30%) + 5%),#4caf50 calc(var(--current-position, 30%) + 5%),#4caf50 100%);border-radius:3px;height:6px;margin:1rem 0;outline:none;width:100%}.position-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1a73e8;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.position-slider::-moz-range-thumb{background:#1a73e8;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.slider-markers{height:0;position:relative}.marker{background:#fff;border:2px solid #1a73e8;border-radius:50%;height:12px;position:absolute;transform:translate(-50%,-14px);width:12px}.marker.sell-all{background:#e53935;border-color:#e53935}.marker.current-position{background:#1a73e8}.marker.max-position{background:#4caf50;border-color:#4caf50}.target-display{align-items:center;display:flex;justify-content:center;margin-top:1.5rem}.target-label{font-weight:500;margin-right:1rem}.target-input{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.75rem;text-align:center;width:80px}.stats-section{background-color:#f8f9fa;border-radius:8px;margin:1.5rem 0;padding:1.5rem}.stats-header{margin-bottom:1rem;text-align:center}.stats-header h4{border-radius:4px;display:inline-block;font-size:1.1rem;margin:0;padding:.5rem 1rem}.stats-header h4.buying{background-color:#4caf50;color:#fff}.stats-header h4.selling{background-color:#e53935;color:#fff}.stats-header h4.no-change{background-color:#e0e0e0;color:#757575}.stats-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:1fr 1fr;padding:.5rem}.stat-item{display:flex;flex-direction:column}.stat-label{color:#666;font-size:.85rem;margin-bottom:.5rem}.stat-value{font-weight:500}.stat-value.positive{color:#4caf50}.stat-value.negative{color:#e53935}.affordability-warning{align-items:center;background-color:#ffebee;border-radius:4px;color:#e53935;display:flex;margin-top:1.5rem;padding:1rem}.warning-icon{font-size:1.2rem;margin-right:.5rem}.action-buttons{background:#fff;border-top:1px solid #00000014;bottom:0;display:flex;gap:1rem;justify-content:flex-end;margin-top:auto;padding:1.5rem 2rem 2rem;position:-webkit-sticky;position:sticky;z-index:10}.buy-button,.cancel-button,.sell-button{border-radius:50px;cursor:pointer;font-size:.95rem;font-weight:600;min-width:140px;padding:1rem 2rem;text-align:center;transition:all .3s ease}.cancel-button{background:#f8f9fa;border:2px solid #0000001a;color:#666}.cancel-button:hover{background:#e9ecef;border-color:#0003;transform:translateY(-1px)}.buy-button{background:linear-gradient(135deg,#2196f3,#1976d2);border:none;box-shadow:0 4px 12px #2196f34d;color:#fff}.buy-button:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 6px 16px #2196f366;transform:translateY(-2px)}.sell-button{background:linear-gradient(135deg,#e53935,#c62828);border:none;box-shadow:0 4px 12px #e539354d;color:#fff}.sell-button:hover:not(:disabled){background:linear-gradient(135deg,#c62828,#b71c1c);box-shadow:0 6px 16px #e5393566;transform:translateY(-2px)}.buy-button:disabled,.sell-button:disabled{background:#e0e0e0;box-shadow:none;color:#999;cursor:not-allowed;transform:none}.error-message{background-color:#ffebee;border-radius:4px;color:#e53935;margin:1rem 0;padding:.75rem}.loading-indicator{align-items:center;display:flex;flex-direction:column;padding:2rem}.spinner{margin-bottom:1rem}.buy-stock-modal.mobile{border-radius:0;display:flex;flex-direction:column;height:100%;max-height:100%;width:100%}.buy-stock-modal.mobile .modal-content{flex:1 1;overflow-y:auto}.buy-stock-modal.adjust-modal{max-width:500px}.buy-stock-modal.adjust-modal .modal-content{padding:1.5rem}.buy-stock-modal.adjust-modal .action-buttons{border-top:1px solid #eee;margin-top:0;padding:1.5rem}.dashboard-page{background:var(--background-color);display:flex;flex-direction:column;padding:2rem}@media (min-width:1201px){.dashboard-page{height:100vh;overflow:hidden}}.page-title{margin:0 0 1rem}.market-status-bar{background:#fff;box-shadow:0 1px 3px #0000001a;flex-shrink:0;margin-bottom:1rem;padding:12px 16px}.status-indicator-container{gap:12px}.status-text{font-size:14px;gap:8px}.market-status-text.open{color:#2e7d32}.market-status-text.closed{color:#c62828}.separator{margin:0 4px}.separator,.update-text{color:#adb5bd}.icon-button{background:#0000;border:1px solid #0000;color:#6c757d;gap:8px;padding:8px 12px}.icon-button:hover{background:#f8f9fa;border-color:#e9ecef;color:#495057}.icon{font-size:16px}.dashboard-grid{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-areas:"portfolio lookup" "news ai";grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;min-height:0}.dashboard-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:16px}.portfolio-section{grid-area:portfolio;min-width:0;width:100%}.lookup-section{grid-area:lookup}.ai-section,.lookup-section{min-width:0;overflow:hidden;padding:12px}.ai-section{grid-area:ai}.news-section{grid-area:news}.section-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:8px}.ai-section .section-header,.lookup-section .section-header{margin-bottom:6px}.section-title{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0}.view-all-button{background:none;border:none;color:var(--procogia-primary);cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s ease}.view-all-button:hover{color:var(--procogia-secondary)}.dashboard-page .summary-cards{grid-gap:16px;display:grid;flex-shrink:0;gap:16px;grid-template-columns:repeat(3,1fr);grid-template-rows:1fr;margin-bottom:16px;width:100%}.dashboard-page .summary-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;height:90px;justify-content:space-between;min-height:90px;min-width:0;padding:16px 20px;transition:box-shadow .2s ease;width:100%}.dashboard-page .summary-card:hover{box-shadow:0 2px 8px #00000026}.dashboard-page .card-label{color:#6c757d;font-size:11px;font-weight:600;letter-spacing:.5px;line-height:1.2;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.dashboard-page .card-value{color:#2c3e50;flex:1 1;font-size:20px;font-weight:700;line-height:1.1;margin:0}.dashboard-page .card-subtitle,.dashboard-page .card-value{align-items:center;display:flex;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-page .card-subtitle{font-size:12px;font-weight:500;line-height:1.2;margin:6px 0 0}.portfolio-info,.portfolio-percentage{color:#6c757d;font-weight:500}.top-holdings{display:flex;flex:1 1;flex-direction:column;margin-top:16px;min-height:0}.holdings-title{color:#2c3e50;flex-shrink:0;font-size:16px;font-weight:600;margin:0 0 12px}.holdings-list{display:flex;flex:1 1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.holding-item{align-items:center;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.holding-item:hover{background:#e9ecef;transform:translateY(-1px)}.holding-info{display:flex;flex-direction:column;gap:4px}.holding-symbol{color:#2c3e50;font-size:14px;font-weight:600}.holding-shares{color:#6c757d;font-size:12px}.holding-values{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.holding-value{color:#2c3e50;font-size:14px;font-weight:600}.holding-change{border-radius:4px;font-size:12px;font-weight:600;padding:2px 6px}.holding-change.positive{background:#e8f5e8;color:#2e7d32}.holding-change.negative{background:#ffebee;color:#c62828}.search-box-compact{background:#f8f9fa;border:1px solid #e9ecef;border-radius:50px;box-shadow:0 1px 3px #0000001a;display:flex;margin-bottom:.5rem;overflow:hidden}.search-box-compact:focus-within{border-color:var(--procogia-primary);box-shadow:0 0 0 2px #8bc34a1a}.search-box-compact input{background:#0000;border:none;color:#2c3e50;flex:1 1;font-size:13px;outline:none;padding:8px 12px}.search-box-compact input::placeholder{color:#adb5bd}.search-button-compact{background:linear-gradient(135deg,var(--procogia-primary),var(--procogia-secondary));border:none;color:#fff;cursor:pointer;font-size:12px;font-weight:600;min-width:50px;padding:8px 12px;transition:all .2s ease}.search-button-compact:hover:not(:disabled){background:linear-gradient(135deg,var(--procogia-secondary),var(--procogia-primary))}.search-button-compact:disabled{cursor:not-allowed;opacity:.6}.error-message-compact{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;font-size:12px;margin-bottom:.5rem;padding:4px 8px}.loading-compact{align-items:center;color:#6c757d;display:flex;font-size:12px;gap:8px;justify-content:center;padding:1rem}.spinner-small{border:2px solid #e9ecef;border-top:2px solid var(--procogia-primary)}.stock-grid{grid-gap:.05rem;display:grid;gap:.05rem;grid-template-columns:1fr;overflow-x:hidden;overflow-y:auto}.stock-card,.stock-grid{max-width:100%;width:100%}.stock-card{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;cursor:pointer;display:flex;gap:.5rem;min-height:55px;overflow:hidden;padding:.5rem;text-align:left;transition:all .2s ease}.stock-card:hover{border-color:var(--procogia-primary);box-shadow:0 2px 8px #8bc34a33;transform:translateY(-1px)}.stock-icon{align-items:center;background:#8bc34a1a;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;height:2rem;justify-content:center;width:2rem}.stock-content{flex:1 1;min-width:0}.stock-title{color:var(--procogia-primary);font-size:.9rem;font-weight:600;line-height:1.2;margin:0 0 .2rem;overflow-wrap:break-word}.stock-preview,.stock-title{word-wrap:break-word;max-width:100%}.stock-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6c757d;display:-webkit-box;font-size:.8rem;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis}.owned-indicator{color:var(--procogia-primary);font-weight:600}.stock-action{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;justify-content:center}.stock-price-compact{color:#2c3e50;font-size:.8rem;font-weight:600}.buy-btn-compact{background:linear-gradient(135deg,var(--procogia-primary),var(--procogia-secondary));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:5px 10px;transition:all .2s ease}.buy-btn-compact:hover{transform:scale(1.05)}.no-results-compact{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;font-size:12px;padding:1rem;text-align:center}.ai-section .recommendations-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr;max-width:100%;overflow-x:hidden;overflow-y:auto;width:100%}.recommendation-card{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;cursor:pointer;display:flex;gap:.75rem;max-width:100%;min-height:60px;overflow:hidden;padding:.75rem;text-align:left;transition:all .2s ease;width:100%}.recommendation-card:hover{border-color:var(--procogia-primary);box-shadow:0 2px 8px #8bc34a33;transform:translateY(-1px)}.recommendation-card.high{border-left:3px solid #dc3545}.recommendation-card.medium{border-left:3px solid #ffc107}.recommendation-card.low{border-left:3px solid var(--procogia-primary)}.recommendation-icon{align-items:center;background:#8bc34a1a;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;height:2rem;justify-content:center;width:2rem}.recommendation-content{flex:1 1;min-width:0}.recommendation-title{color:#2c3e50;font-size:.9rem;font-weight:600;line-height:1.2;margin:0 0 .2rem;white-space:nowrap}.recommendation-preview,.recommendation-title{max-width:100%;overflow:hidden;text-overflow:ellipsis}.recommendation-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;word-wrap:break-word;color:#6c757d;display:-webkit-box;font-size:.8rem;line-height:1.3;margin:0}.recommendation-action{color:var(--procogia-primary);flex-shrink:0;opacity:.7;transition:opacity .2s ease}.recommendation-card:hover .recommendation-action{opacity:1}.news-feed{flex:1 1;min-height:0;overflow-y:auto}.news-list{display:flex;flex-direction:column;gap:16px}.news-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;padding:16px;transition:all .2s ease}.news-item:hover{background:#e9ecef;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.news-content{display:flex;flex-direction:column;gap:8px}.news-title{color:#2c3e50;font-size:14px;font-weight:600;line-height:1.4;margin:0}.news-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6c757d;display:-webkit-box;font-size:13px;line-height:1.4;margin:0;overflow:hidden}.news-meta{align-items:center;color:#adb5bd;display:flex;font-size:12px;justify-content:space-between}.news-source{font-weight:500}.news-time{font-style:italic}.no-news{color:#6c757d;padding:40px 20px;text-align:center}@media (max-width:1200px){.dashboard-page{height:auto;min-height:100vh;overflow:visible}.dashboard-grid{flex:none;grid-template-areas:"portfolio" "news" "lookup" "ai";grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.dashboard-section{height:auto;min-height:auto}.dashboard-page .summary-cards{gap:16px;grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.dashboard-page{padding:1.5rem}.dashboard-section{min-height:300px;padding:20px}.summary-cards{gap:12px;grid-template-columns:1fr}.summary-card{height:85px;padding:12px 16px}.card-value{font-size:20px}.market-status-bar{align-items:flex-start;flex-direction:column;gap:12px}.status-actions{align-self:stretch;justify-content:flex-end}.news-feed,.recommendations-grid,.stock-search,.top-holdings{flex:none;min-height:200px;overflow-y:auto}.stock-main .stock-name{max-width:100px}.search-box input,.search-button{padding:10px 16px}.search-button{font-size:13px;min-width:70px}}@media (max-width:480px){.dashboard-page{padding:1rem}.dashboard-section{min-height:280px;padding:16px}.summary-card{height:80px;padding:10px 16px}.card-value{font-size:18px}.card-label{font-size:11px}.section-title{font-size:1.1rem}.news-feed,.recommendations-grid,.stock-search,.top-holdings{min-height:180px}.stock-main .stock-name{max-width:80px}.search-box input{font-size:13px;padding:8px 12px}.search-box input::placeholder{content:"Search..."}.search-button{font-size:12px;min-width:60px;padding:8px 12px}}@media (max-width:1400px){.lookup-section .search-box input::placeholder{content:"Search stocks..."}}@media (max-width:1300px){.lookup-section .search-box input{padding:10px 14px}.lookup-section .search-button{min-width:75px;padding:10px 18px}.lookup-section .search-box input::placeholder{content:"Search..."}}.hover-chart-container{animation:fadeInUp .2s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #8bc34a4d;border-radius:12px;box-shadow:0 8px 32px #00000026;height:180px;pointer-events:auto;position:fixed;transform:translateZ(0);width:300px;z-index:1000}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hover-chart-header{align-items:center;border-bottom:1px solid #8bc34a1a;display:flex;justify-content:space-between;padding:12px 16px 8px}.hover-symbol{color:#2c3e50;font-size:14px;font-weight:600}.hover-period{color:#7a8a9a;font-size:11px;font-weight:500}.hover-chart-content{height:120px;overflow:hidden;padding:4px 8px;position:relative}.hover-chart-wrapper{height:100%;width:100%}.hover-chart-loading{align-items:center;color:#7a8a9a;display:flex;flex-direction:column;gap:8px;height:100%;justify-content:center}.mini-spinner{animation:spin 1s linear infinite;border:2px solid #8bc34a1a;border-radius:50%;border-top-color:#8bc34a;height:20px;width:20px}.hover-chart-error,.hover-chart-loading span{font-size:12px;font-weight:500}.hover-chart-error{align-items:center;color:#e57373;display:flex;height:100%;justify-content:center}.hover-chart-footer{border-top:1px solid #8bc34a1a;padding:6px 16px 12px;text-align:center}.hover-hint{color:#7a8a9a;font-size:10px;font-style:italic}@media (max-width:768px){.hover-chart-container{height:160px;width:280px}.hover-chart-content{height:100px}.hover-chart-header{padding:10px 14px 6px}.hover-symbol{font-size:13px}.hover-period{font-size:10px}}.hover-chart-container.fade-out{animation:fadeOut .15s ease-in forwards}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}.hover-chart-wrapper canvas{display:block!important;height:auto!important;margin:0!important;max-width:100%!important;padding:0!important}.hover-chart-wrapper{align-items:center;display:flex;justify-content:center}.hover-chart-container{user-select:none;-webkit-user-select:none;-moz-user-select:none}.portfolio-page{background:#fafbfc;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;min-height:100vh;padding:2rem;width:100%}.market-status-text{font-weight:600}.market-status-text.open{color:#4caf50}.market-status-text.closed{color:#f44336}.icon-button:hover{border-color:#8bc34a80}.icon-button:hover .icon{transform:scale(1.1)}.buy-icon .icon{font-size:18px}.refresh-icon .icon{font-size:16px}.portfolio-summary{margin-bottom:24px;width:100%}.portfolio-page .summary-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);grid-template-rows:1fr;margin:0;max-width:none;width:100%}.portfolio-page .summary-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;height:140px;justify-content:space-between;min-height:140px;min-width:0;padding:28px 32px;transition:box-shadow .2s ease;width:100%}.portfolio-page .summary-card:hover{box-shadow:0 2px 8px #00000026}.portfolio-page .card-label{color:#6c757d;font-size:12px;font-weight:600;letter-spacing:.5px;line-height:1.2;margin:0 0 8px;text-transform:uppercase}.portfolio-page .card-value{align-items:center;color:#2c3e50;display:flex;flex:1 1;font-size:32px;font-weight:700;line-height:1.1;margin:8px 0}.portfolio-page .card-subtitle{align-items:center;display:flex;font-size:14px;font-weight:500;line-height:1.3;margin:4px 0 0}.change-indicator{border-radius:4px;font-size:12px;font-weight:600;padding:2px 6px}.change-indicator.positive{background:#e8f5e8;color:#2e7d32}.change-indicator.negative{background:#ffebee;color:#c62828}.change-placeholder{color:#adb5bd;font-size:12px;font-style:italic}.portfolio-percentage{color:#6c757d;font-weight:500}.positions-count{color:#6c757d;font-size:.9rem;margin-bottom:10px}.holdings-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.holdings-table{border-collapse:collapse;width:100%}.holdings-table td,.holdings-table th{border-bottom:1px solid #e9ecef;padding:15px;text-align:left}.holdings-table td:first-child,.holdings-table th:first-child{padding-left:30px}.holdings-table th{color:#495057;font-size:.9rem;font-weight:600}.holdings-table th,.holdings-table tr:hover{background-color:#f8f9fa}.interactive-row{position:relative;transition:all .2s ease}.interactive-row:hover{background-color:#8bc34a14!important;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.symbol-cell.clickable{color:#8bc34a;font-weight:600;position:relative}.symbol-cell.clickable:hover{color:#7cb342;text-decoration:underline}.holdings-table tr:last-child td{border-bottom:none}.symbol-cell{color:#333}.profit-cell{font-weight:500}.profit-cell.positive{color:#4caf50}.profit-cell.negative{color:#f44336}.action-cell{position:relative;text-align:right;width:50px}.table-icon-button{align-items:center;background:none;border:1px solid #0000;border-radius:4px;color:#5a6c7d;cursor:pointer;display:flex;height:32px;justify-content:center;padding:6px;transition:all .2s ease;width:32px}.table-icon-button .icon{font-size:18px;transition:all .2s ease}.table-icon-button:hover{background-color:#8bc34a1a;border:1px solid #8bc34a80;color:#8bc34a}.table-icon-button:hover .icon{transform:scale(1.1)}.no-holdings{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:40px;text-align:center}.no-holdings h3{color:#333;font-size:1.2rem;margin-bottom:10px;margin-top:0}.no-holdings p{color:#6c757d;margin-bottom:20px}.no-holdings button{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:12px 24px}.loading{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;padding:40px}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#2196f3;height:40px;margin-bottom:20px;width:40px}.loading p{color:#6c757d}.error{background-color:#fff8f8;border:1px solid #f5c6cb;color:#721c24;margin-bottom:20px;padding:20px}.error button{background-color:#dc3545;border-radius:4px;margin-top:10px;padding:8px 16px}@media (max-width:1024px){.portfolio-page{padding:1.5rem}.summary-cards{gap:12px;grid-template-columns:repeat(3,1fr)}.summary-card{padding:14px 16px}.portfolio-summary{flex-direction:column}}@media (max-width:1024px) and (min-width:769px){.summary-cards{gap:12px;grid-template-columns:repeat(3,1fr)}.summary-card{height:90px}}@media (max-width:768px) and (min-width:481px){.portfolio-page{padding:1.5rem}.summary-cards{gap:12px;grid-template-columns:repeat(2,1fr)}.summary-card{height:85px;padding:12px 16px}.portfolio-page .card-value{font-size:20px}.portfolio-page .summary-cards{gap:16px}.market-status-bar{align-items:flex-start;flex-direction:column;gap:10px}.status-actions{align-self:stretch;justify-content:flex-end}}@media (max-width:480px){.portfolio-page{padding:1rem}.market-status-bar{align-items:flex-start;flex-direction:column;gap:10px}.status-actions{align-self:stretch;justify-content:flex-end}.summary-cards{gap:12px;grid-template-columns:1fr}.summary-card{height:80px;padding:10px 16px}.portfolio-page .card-value{font-size:18px}.portfolio-page .summary-cards{gap:12px}.portfolio-page .card-label{font-size:11px}.holdings-table td,.holdings-table th{font-size:.9rem;padding:10px}.table-icon-button{min-width:32px;padding:8px 10px}.table-icon-button:hover{padding:8px 14px}}.modern-chat-page{background:#fafbfc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;overflow:hidden;padding:2rem}.page-title{color:#2c3e50;flex-shrink:0;font-size:1.75rem;margin:0 0 1.5rem}.chat-main-container{display:flex;flex:1 1;flex-direction:column;overflow:hidden;position:relative}.welcome-container{align-items:center;display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:2rem}.welcome-content{margin:0 auto;max-width:600px;text-align:center}.welcome-icon{align-items:center;color:var(--procogia-primary);display:flex;justify-content:center;margin-bottom:1.5rem}.welcome-title{color:#1f2937;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 1rem}.welcome-description{color:#6b7280;font-size:1.125rem;line-height:1.6;margin:0 0 2.5rem}.suggestions-grid{margin-top:2rem}.suggestions-title{color:#374151;font-size:1.125rem;font-weight:600;margin:0 0 1.5rem;text-align:left}.suggestions-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));text-align:left}.suggestion-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;color:#374151;cursor:pointer;font-size:.925rem;overflow:hidden;padding:1rem 1.25rem;position:relative;text-align:left;transition:all .2s ease}.suggestion-card:hover{background:linear-gradient(135deg,#8bc34a05,#00bcd405);border-color:var(--procogia-primary);box-shadow:0 4px 12px #8bc34a26;transform:translateY(-1px)}.suggestion-card:disabled{cursor:not-allowed;opacity:.6;transform:none}.messages-container-modern{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.messages-scroll-area{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:1.5rem 2rem}.message-wrapper{display:flex;width:100%}.message-wrapper.user{justify-content:flex-end}.message-wrapper.assistant{justify-content:flex-start}.message-bubble{display:flex;flex-direction:column;gap:.5rem;max-width:65%;position:relative}.message-wrapper.user .message-bubble{background:linear-gradient(135deg,var(--procogia-primary),var(--procogia-secondary));border-radius:18px 18px 4px 18px;box-shadow:0 2px 8px #8bc34a33;color:#fff;padding:1rem 1.25rem}.message-wrapper.assistant .message-bubble{background:#fff;border:1px solid #e5e7eb;border-radius:18px 18px 18px 4px;box-shadow:0 1px 3px #0000000d;color:#374151;padding:1rem 1.25rem}.message-bubble.loading{background:#f9fafb;border-color:#e5e7eb}.message-content-modern{word-wrap:break-word;font-size:.925rem;line-height:1.6;white-space:pre-wrap}.message-content-modern h1,.message-content-modern h2,.message-content-modern h3{margin:.6rem 0 .3rem}.message-content-modern pre{background:#0b1020;border:1px solid #1f2937;border-radius:8px;color:#e8e8e8;overflow-x:auto;padding:.75rem}.message-content-modern code{background:#f3f4f6;border-radius:4px;padding:.1rem .3rem}.message-meta{align-items:center;display:flex;justify-content:flex-end;margin-top:.25rem}.message-wrapper.assistant .message-meta{justify-content:flex-start}.message-time{font-size:.75rem;font-weight:500;opacity:.7}.message-wrapper.user .message-time{color:#fffc}.message-wrapper.assistant .message-time{color:#6b7280}.typing-indicator-modern{align-items:center;display:flex;gap:.75rem}.typing-dots{display:flex;gap:.25rem}.typing-dots span{animation:typing-bounce 1.4s ease-in-out infinite;background:var(--procogia-primary);border-radius:50%;height:8px;width:8px}.typing-dots span:first-child{animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.typing-text{color:#6b7280;font-size:.825rem;font-style:italic}@keyframes typing-bounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.active-functions-container{animation:slideInDown .3s ease-out;background:#8bc34a0d;border:1px solid #8bc34a33;border-radius:12px;display:flex;flex-direction:column;gap:.75rem;margin:1rem 2rem;padding:1rem 1.5rem}.active-function-item{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1rem;padding:.75rem 1rem;transition:all .2s ease}.active-function-item:hover{box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.function-icon{align-items:center;background:#8bc34a1a;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;height:2rem;justify-content:center;width:2rem}.function-name{color:#2c3e50;flex:1 1;font-size:.9rem;font-weight:500}.function-name strong{color:var(--procogia-primary);font-weight:600}.function-status{align-items:center;background:#f3f4f6;border-radius:12px;color:#6b7280;display:flex;font-size:.8rem;gap:.5rem;padding:.25rem .75rem}.function-spinner{animation:spin 1s linear infinite;border:2px solid #8bc34a4d;border-radius:50%;border-top:2px solid var(--procogia-primary);height:12px;width:12px}.function-response{background:#f8f9fa;border-left:3px solid var(--procogia-primary);border-radius:6px;color:#374151;font-size:.85rem;margin-top:.5rem;padding:.75rem}.function-calls-container{margin-bottom:.5rem}.function-calls-summary{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem;padding:.75rem;transition:all .2s ease}.function-calls-summary:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);border-color:var(--procogia-primary);box-shadow:0 2px 4px #8bc34a1a}.function-summary-content{align-items:center;display:flex;gap:.5rem}.function-summary-triangle{color:var(--procogia-primary);font-size:.8rem;font-weight:700;text-align:center;transition:transform .2s ease;width:1rem}.function-summary-text{color:var(--procogia-primary);font-size:.9rem;font-weight:600}.function-calls-preview{display:flex;flex-wrap:wrap;gap:.35rem;margin-left:1.5rem}.function-chip-mini{align-items:center;background:var(--procogia-primary);border-radius:10px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:500;gap:.25rem;padding:.2rem .4rem}.function-chip-icon{font-size:.7rem}.function-calls-details{animation:slideDown .3s ease-out;border-top:1px solid #e5e7eb;margin-top:.75rem;padding-top:.75rem}.function-calls-details .function-call-display{margin-bottom:.75rem}.function-calls-details .function-call-display:last-child{margin-bottom:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.function-response-toggle{background:none;border:none;border-radius:4px;color:var(--procogia-primary);cursor:pointer;font-size:.8rem;margin-top:.5rem;padding:.25rem .5rem;transition:all .2s ease}.function-response-toggle:hover{background:#8bc34a1a}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.input-area-modern{background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;gap:1rem;padding:1.5rem 2rem}.quick-suggestions{display:flex;flex-wrap:wrap;gap:.75rem;overflow-x:auto;padding-bottom:.5rem}.quick-suggestion-chip{background:#f8f9fa;border:1px solid #e9ecef;border-radius:20px;box-shadow:0 1px 3px #0000001a;color:#2c3e50;cursor:pointer;flex-shrink:0;font-size:.825rem;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap}.quick-suggestion-chip:hover{background:#8bc34a1a;border-color:var(--procogia-primary);box-shadow:0 2px 6px #8bc34a33;color:#2d5a0a;transform:translateY(-1px)}.quick-suggestion-chip:disabled{cursor:not-allowed;opacity:.6;transform:none}.input-container-modern{align-items:stretch;display:flex;gap:0}.input-wrapper{background:#f8f9fa;border:1px solid #e9ecef;border-radius:50px;box-shadow:0 2px 4px #0000001a;display:flex;flex:1 1;min-height:48px;overflow:hidden;position:relative;transition:all .3s ease}.input-wrapper:focus-within{border-color:var(--procogia-primary);box-shadow:0 0 0 3px #8bc34a1a}.input-field-modern{background:#0000;border:none;color:#2c3e50;flex:1 1;font-family:inherit;font-size:14px;line-height:1.5;max-height:120px;min-height:24px;min-width:0;outline:none;overflow-y:auto;padding:12px 20px 12px 3rem;resize:none}.input-field-modern::placeholder{color:#adb5bd}.input-field-modern:disabled{cursor:not-allowed;opacity:.6}.send-button-modern{align-items:center;background:linear-gradient(135deg,var(--procogia-primary),var(--procogia-secondary));border:none;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:600;justify-content:center;min-width:80px;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.send-button-modern:hover:not(:disabled){background:linear-gradient(135deg,var(--procogia-secondary),var(--procogia-primary));box-shadow:0 4px 8px #8bc34a4d;transform:translateY(-1px)}.send-button-modern:disabled{cursor:not-allowed;opacity:.6;transform:none}.send-icon-modern{align-items:center;display:flex;font-size:16px;font-weight:700;justify-content:center}.spinner-small{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.chat-header-modern{padding:1rem 1.5rem}.ai-title{font-size:1.25rem}.welcome-container{padding:1.5rem}.welcome-title{font-size:1.75rem}.suggestions-list{grid-template-columns:1fr}.messages-scroll-area{padding:1rem 1.5rem}.message-bubble{max-width:85%}.input-area-modern{padding:1rem 1.5rem}.quick-suggestions{gap:.5rem}.quick-suggestion-chip{font-size:.75rem;padding:.4rem .8rem}}@media (max-width:480px){.ai-indicator{gap:.75rem}.ai-avatar{height:40px;width:40px}.procogia-icon{font-size:20px}.welcome-icon{font-size:3rem}.welcome-title{font-size:1.5rem}.welcome-description{font-size:1rem}.message-bubble{max-width:95%}.input-wrapper{padding:.6rem 3rem .6rem 1rem}.send-button-modern{height:28px;right:.6rem;width:28px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.clear-chat-btn-modern:focus,.quick-suggestion-chip:focus,.send-button-modern:focus,.suggestion-card:focus{outline:2px solid var(--procogia-primary);outline-offset:2px}.file-upload-button{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:30px;justify-content:center;left:.75rem;padding:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:30px;z-index:2}.file-upload-button:hover:not(:disabled){background:var(--procogia-primary);border-color:var(--procogia-primary);box-shadow:0 2px 8px #8bc34a4d;color:#fff}.file-upload-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.upload-plus-icon{font-size:1rem;font-weight:400;line-height:1;-webkit-user-select:none;user-select:none}.upload-spinner{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top:2px solid var(--procogia-primary);height:14px;width:14px}.attached-files-preview{background:#8bc34a0d;border:1px solid #8bc34a33;border-radius:12px 12px 0 0;display:flex;flex-wrap:wrap;gap:.5rem;margin:0 2rem;padding:.75rem 1rem}.attached-file-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem}.attached-file-item .file-icon{font-size:1rem}.attached-file-item .file-name{color:#374151;font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-file-item .file-size{color:#6b7280;font-size:.75rem}.remove-file-btn{align-items:center;background:none;border:none;border-radius:50%;color:#ef4444;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;line-height:1;margin-left:.25rem;padding:0;transition:all .2s ease;width:20px}.remove-file-btn:hover{background:#ef44441a;transform:scale(1.1)}.drag-drop-overlay{align-items:center;animation:pulseGlow 1.5s ease-in-out infinite;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#8bc34a1a;border:3px dashed var(--procogia-primary);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.drag-drop-content{background:#fff;border:2px solid var(--procogia-primary);border-radius:20px;box-shadow:0 10px 25px #00000026;padding:3rem;text-align:center}.drag-drop-icon{animation:bounce 1s ease-in-out infinite;font-size:4rem;margin-bottom:1rem}.drag-drop-text{color:var(--procogia-primary);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.drag-drop-subtext{color:#6b7280;font-size:1rem}@keyframes pulseGlow{0%,to{border-color:var(--procogia-primary)}50%{border-color:var(--procogia-secondary)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.message-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.message-attachment-item{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid #ffffff4d;border-radius:6px;color:#ffffffe6;display:flex;font-size:.75rem;gap:.25rem;padding:.25rem .5rem}.message-wrapper.user .message-attachment-item{background:#fff3;border-color:#ffffff4d;color:#ffffffe6}.message-wrapper.assistant .message-attachment-item{background:#8bc34a1a;border-color:#8bc34a33;color:#374151}.message-attachment-item .attachment-icon{font-size:.875rem}.message-attachment-item .attachment-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment-item .attachment-size{font-size:.7rem;opacity:.7}.actions-log-page{background:#fafbfc;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;min-height:100vh;padding:2rem;width:100%}.page-title{color:#333;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 20px}.market-status-bar{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;justify-content:space-between;margin-bottom:16px;padding:10px 20px}.market-status-bar,.status-indicator-container,.status-text{align-items:center;display:flex}.status-text{color:#2c3e50;font-weight:500}.activity-text{color:#8bc34a;font-weight:600}.separator{margin:0 8px}.separator,.update-text{color:#6c757d;font-weight:400}.status-actions{gap:8px}.icon-button,.status-actions{align-items:center;display:flex}.icon-button{background:none;border:1px solid #8bc34a4d;border-radius:6px;color:#5a6c7d;cursor:pointer;font-size:14px;justify-content:center;min-width:32px;overflow:hidden;padding:6px 8px;transition:all .2s ease;white-space:nowrap}.icon-button .icon{font-size:16px;font-weight:700;transition:all .2s ease}.icon-button .button-text{margin-left:0;max-width:0;opacity:0;overflow:hidden;transition:all .3s ease}.icon-button:hover{background-color:#8bc34a1a;border-color:#8bc34a;color:#8bc34a;min-width:auto;padding:6px 12px}.icon-button:hover .button-text{margin-left:6px;max-width:80px;opacity:1}.icon-button:disabled{cursor:not-allowed;opacity:.5}.filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:8px}.search-input{background:#fff;border:1px solid #e9ecef;border-radius:4px;color:#495057;font-size:13px;font-weight:500;min-width:180px;padding:4px 8px;transition:border-color .2s ease}.search-input::placeholder{color:#adb5bd;font-style:italic}.search-input:focus{box-shadow:0 0 0 2px #8bc34a1a;outline:none}.search-input:focus,.search-input:hover{border-color:#8bc34a}.filter-select,.sort-select,.time-filter-select{background:#fff;border:1px solid #e9ecef;border-radius:4px;color:#495057;cursor:pointer;font-size:13px;font-weight:500;padding:4px 8px;transition:border-color .2s ease}.filter-select:focus,.sort-select:focus,.time-filter-select:focus{border-color:#8bc34a;box-shadow:0 0 0 2px #8bc34a1a;outline:none}.filter-select:hover,.sort-select:hover,.time-filter-select:hover{border-color:#8bc34a}.transaction-summary{margin-bottom:24px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr)}.summary-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:16px;transition:box-shadow .2s ease}.summary-card:hover{box-shadow:0 2px 8px #0000001a}.card-label{color:#6c757d;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.actions-log-page .card-value{color:#2c3e50;font-size:20px;font-weight:700;line-height:1.2;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actions-log-page .card-value.symbol-value{color:#8bc34a;font-size:18px;font-weight:600}.actions-log-page .card-subtitle{color:#6c757d;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.traded-info,.transaction-info{color:#6c757d}.buy-info{color:#28a745}.sell-info{color:#17a2b8}.net-info.positive{color:#28a745}.net-info.negative{color:#dc3545}.transactions-count{color:#6c757d;font-size:14px;font-weight:500;margin-bottom:12px}.transactions-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.transactions-table{border-collapse:collapse;width:100%}.transactions-table th{background:#f8f9fa;border-bottom:1px solid #e9ecef;color:#495057;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left}.transactions-table td{border-bottom:1px solid #f1f3f4;padding:16px;vertical-align:middle}.transaction-row{transition:background-color .2s ease}.transaction-row:hover{background-color:#f8f9fa}.transaction-row:last-child td{border-bottom:none}.transaction-row.buy-transaction{border-left:3px solid #28a745}.transaction-row.sell-transaction{border-left:3px solid #dc3545}.transaction-row.other-transaction{border-left:3px solid #6c757d}.transaction-type{align-items:center;display:flex;font-weight:500;gap:8px}.transaction-icon{font-size:16px;font-weight:700}.buy-transaction .transaction-icon{color:#28a745}.sell-transaction .transaction-icon{color:#dc3545}.date-cell,.other-transaction .transaction-icon{color:#6c757d}.date-cell{font-size:14px}.symbol-cell,.symbol-link{font-weight:600}.symbol-link{background:none;border:none;color:#8bc34a;cursor:pointer;font-size:14px;text-decoration:none;transition:color .2s ease}.symbol-link:hover{color:#689f38;text-decoration:underline}.price-cell,.shares-cell,.total-cell{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:500}.notes-cell{color:#6c757d;font-style:italic}.no-transactions{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin-top:20px;padding:60px 20px;text-align:center}.no-transactions-icon{font-size:48px;margin-bottom:16px;opacity:.5}.no-transactions h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 8px}.no-transactions p{color:#6c757d;line-height:1.5;margin:0 0 24px;max-width:400px}.start-trading-btn{background:linear-gradient(135deg,#8bc34a,#689f38);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.start-trading-btn:hover{background:linear-gradient(135deg,#689f38,#558b2f);box-shadow:0 4px 12px #8bc34a4d;transform:translateY(-1px)}.error{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin-top:20px;padding:60px 20px;text-align:center}.error p{color:#dc3545;font-weight:500;margin:0 0 20px}.error button{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.error button:hover{background:#c82333;transform:translateY(-1px)}@media (max-width:1200px){.summary-cards{grid-template-columns:repeat(3,1fr)}.filter-controls{gap:6px}.search-input{min-width:140px}}@media (max-width:768px){.actions-log-page{padding:1.5rem}.summary-cards{grid-template-columns:repeat(2,1fr)}.market-status-bar{align-items:flex-start;flex-direction:column;gap:12px}.status-actions{align-self:stretch;justify-content:flex-end}.filter-controls{align-items:flex-start;flex-direction:column;gap:8px;margin-left:0;margin-top:8px}.search-input{min-width:200px}.transactions-table{font-size:14px}.transactions-table td,.transactions-table th{padding:8px 12px}}@media (max-width:480px){.actions-log-page{padding:1rem}.summary-cards{grid-template-columns:1fr}.card-value{font-size:20px}.transactions-table{font-size:12px}.transactions-table td,.transactions-table th{padding:6px 8px}.page-title{font-size:1.75rem}}.actions-page{background:#fafbfc;box-sizing:border-box;min-height:100vh;padding:2rem}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.title-group h1{color:#333;font-size:2rem;font-weight:700;margin:0}.subtitle{color:#6c757d;font-size:14px;margin:4px 0 0}.header-actions{display:flex;gap:8px}.filter-select{padding:8px 12px}.primary-btn{background:linear-gradient(135deg,#8bc34a,#689f38);color:#fff;padding:10px 14px}.primary-btn,.secondary-btn{border:none;border-radius:8px;cursor:pointer;font-weight:600}.secondary-btn{background-color:#e6f0ff;color:#0052cc;padding:8px 12px}.danger-btn{background-color:#ffe6e6;border:none;border-radius:6px;color:#c00;cursor:pointer;padding:6px 10px}.actions-table-wrapper{overflow-x:auto}.actions-table{background:#fff;border:1px solid #e9ecef;border-collapse:collapse;border-radius:10px;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.actions-table td,.actions-table th{border-bottom:1px solid #f1f3f4;padding:12px 14px;text-align:left}.actions-table thead th{background-color:#f8f9fa;color:#495057;font-size:12px;font-weight:600;letter-spacing:.5px}.empty-cell{color:#666;padding:24px;text-align:center}.status-chip{border-radius:999px;font-size:12px;padding:4px 8px;text-transform:capitalize}.status-chip.active{background-color:#e6ffed;color:#1a7f37}.status-chip.paused{background-color:#fff7e6;color:#8a6d1a}.status-chip.completed{background-color:#e6f0ff;color:#0052cc}.status-chip.cancelled{background-color:#ffe6e6;color:#c00}.row-actions{display:flex;gap:8px}.loading{color:#6c757d;padding:12px 0}.error-banner{background:#ffe6e6;border-radius:8px;color:#a40000;margin-bottom:12px;padding:10px 12px}.modal-backdrop{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 12px 32px #0003;max-width:95vw;width:720px}.modal-header{border-bottom:1px solid #eee;padding:16px 20px}.modal-body{display:flex;flex-direction:column;gap:12px;padding:16px 20px}.modal-footer{border-top:1px solid #eee;display:flex;gap:8px;justify-content:flex-end;padding:14px 20px}.form-row{display:flex;flex-direction:column;gap:6px}.form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.form-row label{color:#555;font-size:12px}.form-row input,.form-row select,.form-row textarea{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:8px 10px}.form-row .req{color:#c62828;font-weight:600;margin-left:6px}.form-row .opt{color:#6c757d;font-weight:500;margin-left:6px}.help-text{color:#6c757d;font-size:12px}.section{margin-top:16px}.section-header{color:#2c3e50;font-size:14px;font-weight:700;letter-spacing:.5px;margin:12px 0;text-transform:uppercase}@media (max-width:768px){.form-grid{grid-template-columns:1fr}}.stock-chart-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #8bc34a1a;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:20px;position:relative}.chart-controls{gap:8px;justify-content:center;margin-bottom:20px;padding-bottom:15px}.period-button{background:none;border:1px solid #8bc34a4d;border-radius:6px;color:#5a6c7d;cursor:pointer;font-size:14px;font-weight:500;min-width:40px;padding:8px 16px;transition:all .2s ease}.period-button:hover{background-color:#8bc34a1a;border-color:#8bc34a80;color:#8bc34a}.period-button.active{background-color:#8bc34a;border-color:#8bc34a;box-shadow:0 2px 4px #8bc34a4d;color:#fff}.chart-wrapper{height:calc(100% - 60px);position:relative;width:100%}.chart-loading{align-items:center;color:#5a6c7d;display:flex;flex-direction:column;height:100%;justify-content:center}.chart-loading .spinner{animation:spin 1s linear infinite;border:3px solid #8bc34a1a;border-radius:50%;border-top-color:#8bc34a;height:40px;margin-bottom:15px;width:40px}.chart-loading p{font-size:16px;font-weight:500;margin:0}.chart-error{align-items:center;color:#e57373;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.chart-error p{font-size:16px;font-weight:500;margin:0 0 15px}.retry-button{background:linear-gradient(135deg,#8bc34a,#7cb342);border:none;border-radius:8px;box-shadow:0 2px 4px #8bc34a4d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.retry-button:hover{box-shadow:0 4px 8px #8bc34a66;transform:translateY(-1px)}@media (max-width:768px){.stock-chart-container{padding:15px}.chart-controls{flex-wrap:wrap;gap:6px}.period-button{font-size:13px;min-width:35px;padding:6px 12px}.chart-wrapper{height:calc(100% - 80px)}}@media (max-width:480px){.stock-chart-container{padding:12px}.period-button{font-size:12px;min-width:32px;padding:6px 10px}}.stock-chart-container:not(:has(.chart-controls)) .chart-wrapper{height:100%}.stock-chart-container.mini{border-radius:8px;padding:10px}.stock-chart-container.mini .chart-controls{margin-bottom:10px;padding-bottom:8px}.stock-chart-container.mini .period-button{font-size:12px;min-width:28px;padding:4px 8px}.stock-detail-page{background:#fff;background:var(--background-color,#fff);min-height:calc(100vh - 80px);overflow-x:hidden;padding:24px}.stock-detail-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 4px 16px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px}.header-main{gap:20px}.back-button,.header-main{align-items:center;display:flex}.back-button{background:none;border:1px solid #8bc34a4d;border-radius:8px;color:#8bc34a;cursor:pointer;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.back-button:hover{background-color:#8bc34a1a;border-color:#8bc34a;transform:translateX(-2px)}.stock-title h1{color:#2c3e50;font-size:32px;font-weight:700;margin:0}.stock-subtitle-container{display:flex;flex-direction:column;gap:8px}.stock-subtitle{color:#7a8a9a;font-size:16px;font-weight:500}.stock-exchange-info{display:flex;flex-wrap:wrap;gap:8px}.currency-badge,.exchange-badge,.region-badge{border-radius:4px;font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase}.exchange-badge{background:#e3f2fd;color:#1565c0}.region-badge{background:#f3e5f5;color:#7b1fa2}.currency-badge{background:#fff3e0;color:#ef6c00}.price-section{text-align:right}.current-price{color:#2c3e50;font-size:36px;font-weight:700;margin-bottom:8px}.price-change{align-items:center;display:flex;font-size:16px;font-weight:600;gap:6px;justify-content:flex-end}.price-change.positive{color:#8bc34a}.price-change.negative{color:#e57373}.stats-section{margin-bottom:32px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);margin:0 auto;max-width:1200px}.stat-card{background:#ffffffe6;border:1px solid #8bc34a1a;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;text-align:center;transition:all .2s ease}.stat-card:hover{border-color:#8bc34a4d;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.stat-label{color:#7a8a9a;font-size:14px;font-weight:500;margin-bottom:8px}.stat-value{color:#2c3e50;font-size:18px;font-weight:700}.stat-value.positive{color:#8bc34a}.stat-value.negative{color:#e57373}.chart-section{background:#fffffff2;border-radius:16px;box-shadow:0 4px 16px #0000001a;margin-bottom:24px;padding:24px}.chart-controls{align-items:center;border-bottom:1px solid #8bc34a1a;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.chart-controls h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.chart-type-selector{display:flex;gap:8px}.chart-type-btn{background:none;border:1px solid #8bc34a4d;border-radius:8px;color:#5a6c7d;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.chart-type-btn:hover{background-color:#8bc34a1a;border-color:#8bc34a80}.chart-type-btn.active{background-color:#8bc34a;border-color:#8bc34a;box-shadow:0 2px 4px #8bc34a4d;color:#fff}.chart-container{min-height:500px}.intraday-chart-container{height:100%}.intraday-controls{margin-bottom:20px}.interval-selector{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:16px}.interval-btn{background:#fff;border:1px solid #8bc34a80;border-radius:6px;color:#5a6c7d;cursor:pointer;font-size:14px;font-weight:500;min-width:60px;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.interval-btn:hover{background-color:#8bc34a1a;border-color:#8bc34a80}.interval-btn.active{background-color:#8bc34a;border-color:#8bc34a;color:#fff}.intraday-chart-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;height:400px;padding:16px}.actions-section{margin-bottom:24px}.action-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.action-card{background:#ffffffe6;border:1px solid #8bc34a1a;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.action-card h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 16px}.action-card p{color:#5a6c7d;font-size:14px;margin:8px 0}.action-btn{background:linear-gradient(135deg,#8bc34a,#7cb342);border:none;border-radius:8px;box-shadow:0 2px 4px #8bc34a4d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin:8px 8px 8px 0;padding:12px 20px;transition:all .2s ease}.action-btn:hover{box-shadow:0 4px 8px #8bc34a66;transform:translateY(-1px)}.portfolio-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 4px #667eea4d}.portfolio-btn:hover{box-shadow:0 4px 8px #667eea66}.stock-detail-error,.stock-detail-loading{align-items:center;color:#5a6c7d;display:flex;flex-direction:column;justify-content:center;min-height:50vh;text-align:center}.detail-spinner{animation:spin 1s linear infinite;border:4px solid #8bc34a1a;border-radius:50%;border-top-color:#8bc34a;height:50px;margin-bottom:20px;width:50px}.stock-detail-error h2{color:#e57373;margin-bottom:16px}.error-actions{display:flex;gap:12px;margin-top:20px}.back-btn,.retry-btn{background:linear-gradient(135deg,#8bc34a,#7cb342);border:none;border-radius:8px;box-shadow:0 2px 4px #8bc34a4d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease}.back-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 4px #667eea4d}.back-btn:hover,.retry-btn:hover{box-shadow:0 4px 8px #8bc34a66;transform:translateY(-1px)}.back-btn:hover{box-shadow:0 4px 8px #667eea66}.intraday-error,.intraday-loading{align-items:center;color:#5a6c7d;display:flex;flex-direction:column;height:300px;justify-content:center}@media (max-width:1024px){.stock-detail-header{flex-direction:column;gap:20px;text-align:center}.header-main{flex-direction:column;gap:16px}.stats-grid{gap:12px;grid-template-columns:repeat(3,1fr)}.chart-controls{align-items:flex-start;flex-direction:column;gap:16px}}@media (max-width:768px){.stock-detail-page{padding:16px}.stock-detail-header{padding:20px}.current-price{font-size:28px}.stock-title h1{font-size:24px}.stats-grid{gap:10px;grid-template-columns:repeat(3,1fr)}.chart-section,.stat-card{padding:16px}.action-cards{grid-template-columns:1fr}}@media (max-width:480px){.stock-detail-page{padding:12px}.stats-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.chart-type-selector{flex-direction:column;width:100%}.chart-type-btn{width:100%}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navigation{background:#fff;border-right:1px solid #8bc34a1a;box-shadow:4px 0 15px #8bc34a0d;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:width .3s ease;width:280px;z-index:100}.navigation.collapsed{width:80px}.nav-header{align-items:flex-start;border-bottom:1px solid #8bc34a1a;display:flex;justify-content:space-between;padding:2rem 1.5rem 1.5rem;position:relative}.navigation.collapsed .nav-header{align-items:center;flex-direction:column;gap:1rem;justify-content:center;padding:1.5rem 1rem}.nav-brand{align-items:center;display:flex}.brand-title{display:flex;flex-direction:column;line-height:1.2;margin:0;transition:opacity .3s ease}.brand-logo{height:36px;width:auto}.brand-subtitle{color:#5a6c7d;display:block;font-size:.875rem;font-weight:500;margin-top:.25rem}.brand-title-collapsed{align-items:center;display:flex;height:40px;justify-content:center;margin:0;width:40px}.brand-icon{height:40px;width:40px}.collapse-toggle{align-items:center;background:#8bc34a1a;border:1px solid #8bc34a33;border-radius:8px;color:#8bc34a;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;height:28px;justify-content:center;transition:all .2s ease;width:28px}.collapse-toggle:hover{background:#8bc34a33;color:#7cb342}.toggle-icon{font-size:1rem;transition:transform .3s ease}.toggle-icon.collapsed{transform:rotate(180deg)}.navigation.collapsed .collapse-toggle{height:32px;width:32px}.nav-menu{flex:1 1;overflow-y:auto;padding:1rem 0}.nav-item{align-items:flex-start;border-radius:12px;color:#5a6c7d;display:flex;margin:.25rem 1rem;padding:1rem 1.5rem;position:relative;text-decoration:none;transition:all .2s ease}.navigation.collapsed .nav-item{justify-content:center;margin:.25rem .5rem;padding:1rem .75rem;text-align:center}.nav-item:hover{background:#8bc34a0d;color:#2c3e50;transform:translateX(2px)}.navigation.collapsed .nav-item:hover{transform:none}.nav-item-active{background:#8bc34a1a;box-shadow:0 4px 15px #8bc34a33;color:#8bc34a}.nav-item-active:before{background:#8bc34a;border-radius:0 2px 2px 0;content:"";height:24px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.navigation.collapsed .nav-item-active:before{border-radius:0 0 2px 2px;height:3px;left:50%;top:0;transform:translateX(-50%);width:24px}.nav-item-content{flex:1 1;min-width:0}.nav-item-main{align-items:flex-start;display:flex;gap:.75rem}.navigation.collapsed .nav-item-main{align-items:center;flex-direction:column;gap:.5rem}.nav-item-icon{flex-shrink:0;font-size:1.25rem;margin-top:.125rem}.navigation.collapsed .nav-item-icon{font-size:1.5rem;margin-top:0}.nav-item-text{flex:1 1;min-width:0}.navigation.collapsed .nav-item-text{text-align:center}.nav-item-label{font-size:.875rem;font-weight:600;line-height:1.25;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navigation.collapsed .nav-item-label{font-size:.75rem;margin-bottom:0}.nav-item-description{font-size:.75rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-footer{background:#8bc34a05;border-top:1px solid #8bc34a1a;padding:1.5rem}.navigation.collapsed .nav-footer{padding:1rem .5rem}.user-profile{align-items:center;background:#fff;border:1px solid #8bc34a1a;border-radius:12px;box-shadow:0 2px 8px #8bc34a0d;display:flex;margin-bottom:1rem;padding:.75rem}.user-avatar{border:2px solid #8bc34a33;border-radius:50%;height:40px;margin-right:.75rem;width:40px}.user-info{flex:1 1;min-width:0}.user-name{color:#2c3e50;font-size:.875rem;font-weight:600}.user-email,.user-name{line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{color:#5a6c7d;font-size:.75rem}.logout-button{align-items:center;background:#fff;border:1px solid #8bc34a33;border-radius:8px;color:#5a6c7d;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.logout-button:hover{background:#8bc34a0d;border-color:#8bc34a4d;color:#2c3e50}.logout-icon{font-size:1rem}.nav-footer-collapsed{align-items:center;display:flex;flex-direction:column;gap:1rem}.user-profile-collapsed{align-items:center;display:flex;justify-content:center}.user-avatar-small{border:2px solid #e5e7eb;border-radius:50%;height:32px;width:32px}.logout-button-collapsed{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.logout-button-collapsed:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}@media (max-width:768px){.navigation{border-bottom:1px solid #e5e7eb;border-right:none;height:auto;position:relative;width:100%}.navigation.collapsed{width:100%}.nav-header,.navigation.collapsed .nav-header{align-items:center;flex-direction:row;justify-content:space-between;padding:1rem 1.5rem}.brand-title{font-size:1.25rem}.nav-menu{flex-direction:row;overflow-x:auto;padding:.5rem 0}.navigation.collapsed .nav-menu{display:none}.nav-item{flex-direction:column;margin:0 .5rem;min-width:120px;padding:.75rem .5rem;text-align:center}.nav-item-label{margin-bottom:.125rem}.nav-item-description{display:none}.nav-footer{align-items:center;flex-direction:row;justify-content:space-between}.navigation.collapsed .nav-footer{display:none}.user-profile{flex:1 1;margin-bottom:0;margin-right:1rem}.logout-button{min-width:100px;width:auto}}
/*# sourceMappingURL=main.8dfab72f.css.map*/