html,body{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}.navbar{position:fixed;top:0;left:0;right:0;background-color:var(--color-white);border-bottom:1px solid var(--color-gray);box-shadow:var(--shadow-sm);z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffffff2}.navbar-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md);display:flex;align-items:center;justify-content:space-between;height:80px}.navbar-logo{display:flex;flex-direction:column;text-decoration:none;color:var(--color-black);transition:all var(--transition-fast)}.navbar-logo:hover{transform:translateY(-1px)}.logo-text{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-fresh);line-height:1}.logo-subtitle{font-size:var(--font-size-xs);color:var(--color-dark-gray);font-weight:500;margin-top:-2px}.navbar-menu{display:flex;align-items:center;gap:var(--spacing-lg)}.navbar-link{text-decoration:none;color:var(--color-dark-gray);font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative}.navbar-link:hover{color:var(--color-black);background-color:var(--color-light-gray)}.navbar-link.active{color:var(--color-fresh);background-color:var(--color-light-gray)}.navbar-link.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:20px;height:2px;background-color:var(--color-fresh);border-radius:1px}.navbar-profile{position:relative}.profile-button{background:none;border:none;padding:var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;color:var(--color-dark-gray);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.profile-button:hover{background-color:var(--color-light-gray);color:var(--color-black)}.profile-dropdown{position:absolute;top:100%;right:0;margin-top:var(--spacing-sm);background-color:var(--color-white);border:1px solid var(--color-gray);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);min-width:200px;z-index:1001;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.profile-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.profile-info{padding:var(--spacing-md)}.profile-info h4{margin-bottom:var(--spacing-sm);color:var(--color-black);font-size:var(--font-size-sm);font-weight:600}.profile-info p{padding:var(--spacing-sm) 0;color:var(--color-dark-gray);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.profile-info p:hover{background-color:var(--color-light-gray);color:var(--color-black);padding-left:var(--spacing-sm)}.mobile-menu-button{display:none;background:none;border:none;padding:var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;color:var(--color-dark-gray);transition:all var(--transition-fast)}.mobile-menu-button:hover{background-color:var(--color-light-gray);color:var(--color-black)}@media (max-width: 768px){.navbar-container{height:70px;padding:0 var(--spacing-sm)}.navbar-menu{position:fixed;top:70px;left:0;right:0;background-color:var(--color-white);border-bottom:1px solid var(--color-gray);box-shadow:var(--shadow-md);flex-direction:column;padding:var(--spacing-md);gap:var(--spacing-sm);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all var(--transition-normal)}.navbar-menu.active{transform:translateY(0);opacity:1;visibility:visible}.navbar-link{width:100%;text-align:center;padding:var(--spacing-md);border-radius:var(--radius-md)}.navbar-link:hover,.navbar-link.active{background-color:var(--color-light-gray)}.mobile-menu-button{display:block}.logo-text{font-size:var(--font-size-xl)}.logo-subtitle{font-size:var(--font-size-xs)}}@media (max-width: 480px){.navbar-container{height:60px}.navbar-menu{top:60px}.logo-text{font-size:var(--font-size-lg)}.logo-subtitle{font-size:10px}}.footer{background-color:var(--color-dark);color:var(--color-white);padding:var(--spacing-2xl) 0 var(--spacing-lg) 0;margin-top:auto}.footer-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.footer-section{display:flex;flex-direction:column}.footer-logo h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-fresh);margin-bottom:var(--spacing-sm)}.footer-logo p{color:var(--color-gray);line-height:1.6;max-width:300px}.footer-social h4,.footer-links h4{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-white)}.social-icons{display:flex;gap:var(--spacing-md)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--color-black);color:var(--color-gray);border-radius:var(--radius-md);transition:all var(--transition-fast);text-decoration:none}.social-link:hover{background-color:var(--color-fresh);color:var(--color-white);transform:translateY(-2px)}.footer-links ul{list-style:none;padding:0}.footer-links li{margin-bottom:var(--spacing-sm)}.footer-links a{color:var(--color-gray);text-decoration:none;transition:color var(--transition-fast);display:inline-block;padding:var(--spacing-xs) 0}.footer-links a:hover{color:var(--color-fresh)}.footer-bottom{max-width:1200px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-md) 0 var(--spacing-md);border-top:1px solid var(--color-black);text-align:center}.footer-bottom p{color:var(--color-gray);font-size:var(--font-size-sm)}@media (max-width: 768px){.footer{padding:var(--spacing-xl) 0 var(--spacing-md) 0}.footer-container{grid-template-columns:1fr;gap:var(--spacing-lg);text-align:center}.footer-logo p{max-width:100%;margin:0 auto}.social-icons{justify-content:center}.footer-links ul{display:flex;flex-direction:column;align-items:center}}@media (max-width: 480px){.footer{padding:var(--spacing-lg) 0 var(--spacing-md) 0}.footer-container{padding:0 var(--spacing-sm)}.footer-logo h3{font-size:var(--font-size-xl)}.social-icons{gap:var(--spacing-sm)}.social-link{width:35px;height:35px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-card{background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:400px;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-card h2{text-align:center;color:#333;margin-bottom:30px;font-size:28px;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:10px;font-size:16px;transition:all .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.submit-btn{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.error-alert{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;border:1px solid #fcc;font-size:14px}.toggle-form{text-align:center;margin-top:20px}.toggle-btn{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;text-decoration:underline;transition:color .3s ease}.toggle-btn:hover{color:#764ba2}@media (max-width: 480px){.login-card{padding:30px 20px}.login-card h2{font-size:24px}}.home{min-height:100vh}.hero{background:linear-gradient(135deg,var(--color-white) 0%,var(--color-light-gray) 100%);padding:var(--spacing-2xl) 0;position:relative;overflow:hidden}.hero-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md);display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.hero-content h1{font-size:var(--font-size-4xl);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-lg);color:var(--color-black)}.hero-title .highlight{color:var(--color-fresh);display:block}.hero-description{font-size:var(--font-size-lg);color:var(--color-dark-gray);margin-bottom:var(--spacing-xl);line-height:1.7}.hero-buttons{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.hero-visual{display:flex;justify-content:center;align-items:center}.hero-graphic{background:linear-gradient(135deg,var(--color-fresh-light) 0%,var(--color-fresh) 100%);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-xl);text-align:center;color:var(--color-white);transform:rotate(3deg);transition:transform var(--transition-normal)}.hero-graphic:hover{transform:rotate(0) scale(1.05)}.chart-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.chart-placeholder p{font-size:var(--font-size-sm);opacity:.9}.features{padding:var(--spacing-2xl) 0;background-color:var(--color-white)}.features-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section-title{text-align:center;font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-2xl);color:var(--color-black)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.feature-card{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:all var(--transition-normal);border:1px solid var(--color-gray)}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--color-fresh)}.feature-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--color-fresh-light) 0%,var(--color-fresh) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg) auto;color:var(--color-white);transition:transform var(--transition-normal)}.feature-card:hover .feature-icon{transform:scale(1.1)}.feature-card h3{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-black)}.feature-card p{color:var(--color-dark-gray);line-height:1.6}.cta{background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-black) 100%);padding:var(--spacing-2xl) 0;text-align:center;color:var(--color-white)}.cta-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-md)}.cta h2{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-lg)}.cta p{font-size:var(--font-size-lg);color:var(--color-gray);margin-bottom:var(--spacing-xl);line-height:1.6}@media (max-width: 768px){.hero{padding:var(--spacing-xl) 0}.hero-container{grid-template-columns:1fr;gap:var(--spacing-xl);text-align:center}.hero-content h1{font-size:var(--font-size-3xl)}.hero-description{font-size:var(--font-size-base)}.hero-buttons{justify-content:center}.hero-graphic{transform:none;padding:var(--spacing-xl)}.hero-graphic:hover{transform:scale(1.05)}.features{padding:var(--spacing-xl) 0}.section-title{font-size:var(--font-size-2xl)}.features-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.feature-card{padding:var(--spacing-lg)}.cta{padding:var(--spacing-xl) 0}.cta h2{font-size:var(--font-size-2xl)}.cta p{font-size:var(--font-size-base)}}@media (max-width: 480px){.hero-content h1{font-size:var(--font-size-2xl)}.hero-description{font-size:var(--font-size-sm)}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:100%;max-width:300px}.feature-card{padding:var(--spacing-md)}.feature-icon{width:60px;height:60px}.cta h2{font-size:var(--font-size-xl)}}.dyann-page{min-height:100vh;background:linear-gradient(135deg,var(--color-white) 0%,var(--color-light-gray) 100%);padding:var(--spacing-2xl) 0}.dyann-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-md)}.dyann-header{text-align:center;margin-bottom:var(--spacing-2xl)}.dyann-header h1{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-black);margin-bottom:var(--spacing-md)}.dyann-header p{font-size:var(--font-size-lg);color:var(--color-dark-gray);line-height:1.6}.upload-section{margin-bottom:var(--spacing-2xl)}.upload-area{border:3px dashed var(--color-gray);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;transition:all var(--transition-normal);background-color:var(--color-white);cursor:pointer}.upload-area:hover,.upload-area.has-file{border-color:var(--color-fresh);background-color:var(--color-light-gray)}.upload-area.has-error{border-color:#ef4444;background-color:#fef2f2}.upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.upload-icon{color:var(--color-fresh);opacity:.7}.upload-placeholder h3{font-size:var(--font-size-xl);font-weight:600;color:var(--color-black);margin:0}.upload-placeholder p{color:var(--color-dark-gray);margin:0}.upload-button{background-color:var(--color-fresh);color:var(--color-white);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast);display:inline-block;text-decoration:none}.upload-button:hover{background-color:var(--color-fresh-dark);transform:translateY(-1px)}.upload-hint{font-size:var(--font-size-sm);color:var(--color-dark-gray);margin-top:var(--spacing-sm)}.file-info{display:flex;align-items:center;gap:var(--spacing-md);background-color:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.file-details h4{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin:0 0 var(--spacing-xs) 0}.file-details p{color:var(--color-dark-gray);margin:0;font-size:var(--font-size-sm)}.remove-file{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-dark-gray);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);margin-left:auto}.remove-file:hover{color:#ef4444;background-color:#fef2f2}.error-message{display:flex;align-items:center;gap:var(--spacing-sm);background-color:#fef2f2;color:#dc2626;padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-md);border:1px solid #fecaca}.upload-actions{margin-top:var(--spacing-lg);text-align:center}.success-message{text-align:center;background-color:#f0fdf4;color:#166534;padding:var(--spacing-xl);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);border:1px solid #bbf7d0}.success-message h3{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-sm)}.success-message p{color:#15803d;margin:0}.features-preview{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray)}.features-preview h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg);text-align:center}.features-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.feature-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--color-light-gray);border-radius:var(--radius-md);transition:all var(--transition-fast)}.feature-item:hover{background-color:var(--color-fresh);color:var(--color-white);transform:translateY(-2px)}.feature-item span{font-weight:500}@media (max-width: 768px){.dyann-page{padding:var(--spacing-xl) 0}.dyann-header h1{font-size:var(--font-size-3xl)}.dyann-header p{font-size:var(--font-size-base)}.upload-area{padding:var(--spacing-xl)}.upload-placeholder h3{font-size:var(--font-size-lg)}.file-info{flex-direction:column;text-align:center;gap:var(--spacing-sm)}.remove-file{margin-left:0;margin-top:var(--spacing-sm)}.features-list{grid-template-columns:1fr}}@media (max-width: 480px){.dyann-header h1{font-size:var(--font-size-2xl)}.upload-area{padding:var(--spacing-lg)}.upload-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}.features-preview{padding:var(--spacing-lg)}}.ai-suggestions-container{margin:20px 0}.ai-suggestions-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:24px;color:#fff;box-shadow:0 10px 30px #667eea4d;position:relative;overflow:hidden}.ai-suggestions-card:before{content:"";position:absolute;inset:0;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px}.ai-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:relative;z-index:1}.ai-header h3{margin:0;font-size:24px;font-weight:600}.priority-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ai-tabs{display:flex;gap:8px;margin-bottom:20px;position:relative;z-index:1}.tab-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tab-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.tab-btn.active{background:#ffffffe6;color:#667eea;font-weight:600}.ai-content{position:relative;z-index:1;min-height:200px}.insights-section,.recommendations-section,.metrics-section,.trends-section{animation:fadeIn .3s ease-in}.insights-section h4,.recommendations-section h4,.metrics-section h4,.trends-section h4{margin:0 0 16px;font-size:18px;font-weight:600}.insights-list,.recommendations-list,.metrics-list{list-style:none;padding:0;margin:0}.insight-item,.recommendation-item,.metric-item{display:flex;align-items:flex-start;margin-bottom:12px;padding:12px;background:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.insight-item:hover,.recommendation-item:hover,.metric-item:hover{background:#fff3;transform:translate(5px)}.insight-icon,.rec-icon,.metric-icon{margin-right:12px;font-size:18px;flex-shrink:0}.trend-content{display:flex;align-items:flex-start;padding:16px;background:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.trend-icon{margin-right:12px;font-size:20px;flex-shrink:0}.trend-content p{margin:0;line-height:1.6}.ai-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);position:relative;z-index:1}.refresh-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.refresh-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.ai-footer small{opacity:.8;font-size:12px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-spinner p{margin:0;font-size:16px;opacity:.9}.error-message{text-align:center;padding:40px 20px}.error-message p{margin:0 0 16px;color:#ffebee}.retry-btn{background:#fff3;border:none;color:#fff;padding:10px 20px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.retry-btn:hover{background:#ffffff4d;transform:translateY(-1px)}@media (max-width: 768px){.ai-suggestions-card{padding:20px}.ai-header{flex-direction:column;gap:12px;align-items:flex-start}.ai-tabs{flex-wrap:wrap}.tab-btn{flex:1;min-width:80px}.ai-footer{flex-direction:column;gap:12px;text-align:center}}.dashboard{min-height:100vh;background-color:var(--color-light-gray);padding:var(--spacing-2xl) 0}.dashboard-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.dashboard-header{text-align:center;margin-bottom:var(--spacing-2xl)}.dashboard-header h1{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-black);margin-bottom:var(--spacing-md)}.dashboard-header p{font-size:var(--font-size-lg);color:var(--color-dark-gray);line-height:1.6}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.metric-card{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray);transition:all var(--transition-normal)}.metric-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-fresh)}.metric-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--color-fresh-light) 0%,var(--color-fresh) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-white);margin-bottom:var(--spacing-lg)}.metric-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-dark-gray);margin-bottom:var(--spacing-sm)}.metric-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-black);margin-bottom:var(--spacing-sm);line-height:1}.metric-change{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500}.metric-change.positive{color:#10b981}.metric-change.negative{color:#ef4444}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.chart-container{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray)}.chart-container h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg);text-align:center}.chart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background-color:var(--color-light-gray);border-radius:var(--radius-md);padding:var(--spacing-xl);text-align:center;color:var(--color-dark-gray)}.chart-placeholder p{margin:var(--spacing-sm) 0;font-size:var(--font-size-sm)}.category-section{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray);margin-bottom:var(--spacing-2xl)}.category-section h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg);text-align:center}.category-chart{display:grid;grid-template-columns:1fr auto;gap:var(--spacing-xl);align-items:center}.category-legend{display:flex;flex-direction:column;gap:var(--spacing-sm)}.legend-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.legend-item:hover{background-color:var(--color-light-gray)}.legend-value{font-weight:600;color:var(--color-black);margin-left:auto}.activity-section{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray)}.activity-section h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg)}.activity-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.activity-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-light-gray);border-radius:var(--radius-md);transition:all var(--transition-fast)}.activity-item:hover{background-color:var(--color-gray);transform:translate(4px)}.activity-icon{width:32px;height:32px;background-color:var(--color-fresh);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-white);flex-shrink:0}.activity-content p{font-weight:500;color:var(--color-black);margin:0;flex:1}.activity-time{font-size:var(--font-size-sm);color:var(--color-dark-gray)}@media (max-width: 768px){.dashboard{padding:var(--spacing-xl) 0}.dashboard-header h1{font-size:var(--font-size-3xl)}.dashboard-header p{font-size:var(--font-size-base)}.metrics-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.metric-card{padding:var(--spacing-lg)}.metric-value{font-size:var(--font-size-2xl)}.charts-section{grid-template-columns:1fr;gap:var(--spacing-lg)}.chart-container{padding:var(--spacing-lg)}.category-chart{grid-template-columns:1fr;gap:var(--spacing-lg)}.activity-section{padding:var(--spacing-lg)}}@media (max-width: 480px){.dashboard-header h1{font-size:var(--font-size-2xl)}.metric-card{padding:var(--spacing-md)}.metric-icon{width:50px;height:50px}.metric-value{font-size:var(--font-size-xl)}.chart-container{padding:var(--spacing-md)}.chart-placeholder{min-height:150px;padding:var(--spacing-lg)}.category-section,.activity-section{padding:var(--spacing-md)}}.assistant{min-height:100vh;background:linear-gradient(135deg,var(--color-white) 0%,var(--color-light-gray) 100%);padding:var(--spacing-2xl) 0}.assistant-container{max-width:1000px;margin:0 auto;padding:0 var(--spacing-md)}.assistant-header{text-align:center;margin-bottom:var(--spacing-2xl)}.assistant-title{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.assistant-title h1{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-black);margin:0}.assistant-header p{font-size:var(--font-size-lg);color:var(--color-dark-gray);line-height:1.6}.chat-container{background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-gray);overflow:hidden;margin-bottom:var(--spacing-xl)}.chat-messages{height:500px;overflow-y:auto;padding:var(--spacing-xl);background-color:var(--color-light-gray)}.message{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);animation:fadeIn .3s ease-in-out}.message:last-child{margin-bottom:0}.message.assistant{flex-direction:row}.message.user{flex-direction:row-reverse}.message-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.message.assistant .message-avatar{background-color:var(--color-fresh);color:var(--color-white)}.message.user .message-avatar{background-color:var(--color-dark-gray);color:var(--color-white)}.message-content{flex:1;max-width:70%}.message.user .message-content{text-align:right}.message-content p{background-color:var(--color-white);padding:var(--spacing-md);border-radius:var(--radius-lg);margin:0 0 var(--spacing-xs) 0;box-shadow:var(--shadow-sm);line-height:1.6;word-wrap:break-word}.message.user .message-content p{background-color:var(--color-fresh);color:var(--color-white)}.message-time{font-size:var(--font-size-xs);color:var(--color-dark-gray);display:block}.typing-indicator{display:flex;gap:var(--spacing-xs);padding:var(--spacing-md)}.typing-indicator span{width:8px;height:8px;background-color:var(--color-fresh);border-radius:50%;animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-input-container{padding:var(--spacing-lg);background-color:var(--color-white);border-top:1px solid var(--color-gray)}.chat-input-wrapper{display:flex;gap:var(--spacing-md);align-items:flex-end}.chat-input{flex:1;border:1px solid var(--color-gray);border-radius:var(--radius-lg);padding:var(--spacing-md);font-family:inherit;font-size:var(--font-size-base);resize:none;min-height:44px;max-height:120px;transition:all var(--transition-fast)}.chat-input:focus{outline:none;border-color:var(--color-fresh);box-shadow:0 0 0 3px #06b6d41a}.chat-actions{display:flex;gap:var(--spacing-sm)}.voice-button,.send-button{width:44px;height:44px;border:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);color:var(--color-white)}.voice-button{background-color:var(--color-dark-gray)}.voice-button:hover{background-color:var(--color-black)}.voice-button.recording{background-color:#ef4444;animation:pulse 2s infinite}.send-button{background-color:var(--color-fresh)}.send-button:hover:not(:disabled){background-color:var(--color-fresh-dark);transform:translateY(-1px)}.send-button:disabled{background-color:var(--color-gray);cursor:not-allowed;transform:none}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.chat-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.tool-section,.suggestions{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray)}.tool-section h4,.suggestions h4{font-size:var(--font-size-lg);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg)}.tool-buttons{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.tool-button{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--color-light-gray);color:var(--color-black);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;font-size:var(--font-size-sm)}.tool-button:hover{background-color:var(--color-fresh);color:var(--color-white);transform:translateY(-1px)}.suggestion-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.suggestion-chip{background-color:var(--color-light-gray);color:var(--color-black);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;font-size:var(--font-size-sm);white-space:nowrap}.suggestion-chip:hover{background-color:var(--color-fresh);color:var(--color-white);transform:translateY(-1px)}@media (max-width: 768px){.assistant{padding:var(--spacing-xl) 0}.assistant-title h1{font-size:var(--font-size-3xl)}.assistant-header p{font-size:var(--font-size-base)}.chat-messages{height:400px;padding:var(--spacing-lg)}.message-content{max-width:85%}.chat-input-wrapper{flex-direction:column;gap:var(--spacing-sm)}.chat-actions{align-self:flex-end}.chat-tools{grid-template-columns:1fr;gap:var(--spacing-lg)}.tool-section,.suggestions{padding:var(--spacing-lg)}.tool-buttons{flex-direction:column}.tool-button{justify-content:center}}@media (max-width: 480px){.assistant-title h1{font-size:var(--font-size-2xl)}.chat-messages{height:350px;padding:var(--spacing-md)}.message{gap:var(--spacing-sm)}.message-avatar{width:32px;height:32px}.message-content p{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.chat-input-container{padding:var(--spacing-md)}.chat-input{font-size:var(--font-size-sm)}.voice-button,.send-button{width:40px;height:40px}.tool-section,.suggestions{padding:var(--spacing-md)}}.reviews{min-height:100vh;background-color:var(--color-light-gray);padding:var(--spacing-2xl) 0}.reviews-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.reviews-header{text-align:center;margin-bottom:var(--spacing-2xl)}.reviews-header h1{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-black);margin-bottom:var(--spacing-md)}.reviews-header p{font-size:var(--font-size-lg);color:var(--color-dark-gray);line-height:1.6}.reviews-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.summary-card{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray);text-align:center;transition:all var(--transition-normal)}.summary-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-fresh)}.summary-card h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-dark-gray);margin-bottom:var(--spacing-lg)}.rating-display{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.rating-number{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-fresh);line-height:1}.rating-stars{display:flex;gap:var(--spacing-xs)}.star-filled{color:#fbbf24}.star-empty{color:var(--color-gray)}.summary-number{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-fresh);display:block;margin-bottom:var(--spacing-md);line-height:1}.summary-card p{color:var(--color-dark-gray);margin:0}.sentiment-breakdown{display:flex;flex-direction:column;gap:var(--spacing-sm)}.sentiment-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-dark-gray)}.sentiment-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.add-review-section{text-align:center;margin-bottom:var(--spacing-xl)}.review-form-container{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray);margin-bottom:var(--spacing-xl)}.review-form h3{font-size:var(--font-size-xl);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg);text-align:center}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;color:var(--color-black);margin-bottom:var(--spacing-sm)}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-md);border:1px solid var(--color-gray);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-base);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-fresh);box-shadow:0 0 0 3px #06b6d41a}.rating-input{display:flex;gap:var(--spacing-xs)}.rating-star{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);color:var(--color-gray)}.rating-star:hover,.rating-star.selected{color:#fbbf24;transform:scale(1.1)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-lg)}.reviews-list{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-gray)}.reviews-list h3{font-size:var(--font-size-xl);font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-lg)}.review-card{border:1px solid var(--color-gray);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);transition:all var(--transition-normal)}.review-card:last-child{margin-bottom:0}.review-card:hover{border-color:var(--color-fresh);box-shadow:var(--shadow-md)}.review-card.positive{border-left:4px solid #10b981}.review-card.neutral{border-left:4px solid #f59e0b}.review-card.negative{border-left:4px solid #ef4444}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.review-info{flex:1}.customer-info{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.customer-name{font-weight:600;color:var(--color-black)}.review-meta{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.product-name{background-color:var(--color-fresh);color:var(--color-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500}.category-tag{background-color:var(--color-light-gray);color:var(--color-dark-gray);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500}.review-rating{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs)}.stars{display:flex;gap:var(--spacing-xs)}.rating-text{font-weight:600;color:var(--color-black);font-size:var(--font-size-sm)}.review-content{margin-bottom:var(--spacing-md)}.review-content p{color:var(--color-black);line-height:1.6;margin:0}.review-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.review-timestamp{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-dark-gray);font-size:var(--font-size-sm)}.sentiment-badge{color:var(--color-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.review-actions{display:flex;gap:var(--spacing-sm)}.action-button{background:none;border:none;padding:var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--color-dark-gray)}.action-button:hover{background-color:var(--color-light-gray);color:var(--color-black)}.action-button.edit:hover{color:var(--color-fresh)}.action-button.delete:hover{color:#ef4444}@media (max-width: 768px){.reviews{padding:var(--spacing-xl) 0}.reviews-header h1{font-size:var(--font-size-3xl)}.reviews-header p{font-size:var(--font-size-base)}.reviews-summary{grid-template-columns:1fr;gap:var(--spacing-md)}.summary-card{padding:var(--spacing-lg)}.rating-number,.summary-number{font-size:var(--font-size-3xl)}.form-row{grid-template-columns:1fr;gap:var(--spacing-md)}.review-form-container{padding:var(--spacing-lg)}.review-header{flex-direction:column;gap:var(--spacing-md)}.review-rating{align-items:flex-start}.review-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.reviews-list{padding:var(--spacing-lg)}}@media (max-width: 480px){.reviews-header h1{font-size:var(--font-size-2xl)}.summary-card{padding:var(--spacing-md)}.rating-number,.summary-number{font-size:var(--font-size-2xl)}.review-form-container,.review-card{padding:var(--spacing-md)}.review-meta{flex-direction:column;gap:var(--spacing-xs)}.reviews-list{padding:var(--spacing-md)}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-white: #ffffff;--color-light-gray: #f8fafc;--color-gray: #e2e8f0;--color-dark-gray: #64748b;--color-black: #1e293b;--color-dark: #0f172a;--color-fresh: #06b6d4;--color-fresh-light: #22d3ee;--color-fresh-dark: #0891b2;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out}body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:1.6;color:var(--color-black);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:80px}.btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-sm);font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background-color:var(--color-fresh);color:var(--color-white);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-fresh-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background-color:var(--color-gray);cursor:not-allowed;transform:none}.btn-secondary{background-color:var(--color-white);color:var(--color-black);border:1px solid var(--color-gray);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background-color:var(--color-light-gray);border-color:var(--color-dark-gray);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-large{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}.spinner{width:16px;height:16px;border:2px solid var(--color-white);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-4{margin-top:var(--spacing-md)}.mt-6{margin-top:var(--spacing-lg)}.mt-8{margin-top:var(--spacing-xl)}.mt-12{margin-top:var(--spacing-2xl)}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-4{margin-bottom:var(--spacing-md)}.mb-6{margin-bottom:var(--spacing-lg)}.mb-8{margin-bottom:var(--spacing-xl)}.mb-12{margin-bottom:var(--spacing-2xl)}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-4{padding:var(--spacing-md)}.p-6{padding:var(--spacing-lg)}.p-8{padding:var(--spacing-xl)}.px-2{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-4{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-6{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-8{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.py-2{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-4{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-6{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-8{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}@media (max-width: 768px){.main-content{padding-top:70px}.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.btn-large{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base)}}@media (max-width: 480px){.main-content{padding-top:60px}.btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}}
