.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(120,119,198,.3),transparent 50%),radial-gradient(circle at 80% 80%,rgba(138,43,226,.3),transparent 50%);animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%,to{opacity:1}50%{opacity:.8}}.auth-card{background:linear-gradient(135deg,#1e3a8a,#3b82f6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;max-width:420px;width:100%;box-shadow:0 20px 60px #0006;position:relative;z-index:1;animation:slideUp .5s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:1rem}.auth-icon{width:60px;height:60px;margin:0 auto .75rem;background:#fff3;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px #0003}.auth-header h1{font-size:1.75rem;font-weight:700;color:#fff;margin-bottom:.15rem}.auth-header p{color:#fffc;font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:.65rem}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#fff;font-size:.9rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{padding:.65rem .9rem;border:2px solid rgba(255,255,255,.3);border-radius:10px;font-size:.9rem;transition:all .3s ease;background:#fff;color:#000;font-weight:500}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.error{border-color:#ef4444}.form-group input:disabled{background:#f9fafb;cursor:not-allowed}.error-message{color:#ef4444;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.field-hint{color:#ffffffe6;font-size:.85rem}.checkbox-group{margin:0}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{margin-top:.25rem;width:18px;height:18px;cursor:pointer;accent-color:#667eea}.checkbox-label span{color:#fff;font-size:.9rem}.terms-link{color:#fff;text-decoration:underline;font-weight:700}.terms-link:hover{opacity:.8}.auth-submit-btn{padding:.75rem;background:#fff;color:#1e3a8a;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0003;margin-top:.15rem}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0000004d;background:#f0f9ff}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.forgot-password-link{background:none;border:none;color:#fff;font-size:.85rem;cursor:pointer;text-align:right;padding:0;margin-top:-.25rem;font-weight:500;opacity:.9}.forgot-password-link:hover:not(:disabled){text-decoration:underline;opacity:1}.forgot-password-link:disabled{opacity:.5;cursor:not-allowed}.auth-footer{text-align:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.2)}.auth-footer p{color:#ffffffe6;font-size:.9rem}.switch-auth-link{background:none;border:none;color:#fff;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}.switch-auth-link:hover:not(:disabled){opacity:.8}.switch-auth-link:disabled{opacity:.5;cursor:not-allowed}.back-to-login-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;background:none;border:none;color:#fff;font-weight:600;cursor:pointer;padding:.5rem;margin:0 auto}.back-to-login-btn:hover:not(:disabled){text-decoration:underline}.error-banner{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:.75rem;display:flex;align-items:center;gap:.5rem;color:#991b1b;margin-bottom:1rem}.error-banner svg{flex-shrink:0}.success-banner{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;color:#166534;margin-bottom:1.5rem}.success-banner svg{flex-shrink:0;margin-top:.125rem}.success-banner strong{display:block;margin-bottom:.25rem}.success-banner p{margin:0;font-size:.9rem}@media (max-width: 640px){.auth-container{padding:1rem .5rem .5rem;align-items:flex-start}.auth-card{padding:1.25rem 1rem}.auth-header{margin-bottom:.75rem}.auth-header h1{font-size:1.5rem;margin-bottom:.1rem}.auth-header p{font-size:.85rem}.auth-icon{width:50px;height:50px;margin-bottom:.5rem}.auth-form{gap:.5rem}.form-group{gap:.25rem}.form-group label{font-size:.85rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{padding:.55rem .75rem;font-size:.875rem}.field-hint{font-size:.75rem}.auth-submit-btn{padding:.65rem;font-size:.9rem;margin-top:.1rem}.auth-footer{margin-top:.5rem;padding-top:.5rem}.auth-footer p{font-size:.85rem}.error-banner{padding:.6rem;margin-bottom:.75rem;font-size:.85rem}.checkbox-label span{font-size:.85rem}}.header{position:sticky;top:0;z-index:100;background:var(--color-bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-lg)}.header-container{max-width:1400px;margin:0 auto;padding:var(--spacing-md) var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-xl);justify-content:space-between}.header-brand{display:flex;align-items:center;gap:var(--spacing-md)}.brand-icon{width:48px;height:48px;background:var(--gradient-primary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-glow)}.brand-title{font-size:var(--font-size-2xl);font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.brand-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.header-nav{display:flex;gap:var(--spacing-sm);flex:1;justify-content:center}.nav-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.nav-tab:hover{background:#ffffff0d;color:var(--color-primary)}.nav-tab.active{background:#06b6d426;border-color:var(--color-primary);color:var(--color-primary)}.header-stats{display:flex;align-items:center;gap:var(--spacing-lg)}.stat-item{display:flex;flex-direction:column;align-items:flex-end}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary)}.stat-with-change{display:flex;align-items:center;gap:var(--spacing-sm)}.stat-change{display:flex;align-items:center;gap:2px;font-size:var(--font-size-sm);font-weight:600;padding:2px 6px;border-radius:var(--radius-sm)}.stat-change.positive{color:var(--color-accent);background:#10b98126}.stat-change.negative{color:var(--color-danger);background:#ef444426}.stat-divider{width:1px;height:40px;background:#ffffff1a}.header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.user-info{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:600}.header-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.header-btn:hover{background:#ffffff1a;transform:translateY(-1px)}.admin-btn{color:#fbbf24;border-color:#fbbf244d}.admin-btn:hover{background:#fbbf2426;border-color:#fbbf2480}.logout-btn:hover{background:#ef444426;border-color:#ef44444d;color:var(--color-danger)}.hamburger-btn{display:none;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:var(--spacing-sm);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base);z-index:1001}.hamburger-btn:hover{background:#ffffff1a}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999}@media (max-width: 1024px){.header-container{flex-wrap:wrap;gap:var(--spacing-md)}.header-nav{order:3;width:100%}}@media (max-width: 768px){.hamburger-btn{display:flex;align-items:center;justify-content:center}.mobile-menu-overlay{display:block}.header-nav{position:fixed;top:60px;left:-100%;height:auto;max-height:400px;width:200px;background:#0f172afa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid rgba(255,255,255,.1);border-radius:0 12px 12px 0;box-shadow:var(--shadow-xl);padding:8px 12px;flex-direction:column;align-items:stretch;gap:4px;transition:left .3s ease-in-out;z-index:1000;overflow-y:auto}.header-nav.mobile-open{left:0}.nav-tab{width:100%;justify-content:flex-start;padding:8px 10px;font-size:var(--font-size-xs)}.nav-tab span{display:inline}.brand-subtitle,.stat-item:first-child,.stat-divider,.header-stats{display:none}.user-info{padding:var(--spacing-xs) var(--spacing-sm)}.user-info span{display:none}.header-btn{padding:var(--spacing-xs) var(--spacing-sm)}.header-btn span{display:inline}.logout-btn span{display:inline!important}.header-container{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm)}.brand-icon{width:40px;height:40px}.brand-title{font-size:var(--font-size-xl)}.admin-btn span{display:none}}@media (max-width: 480px){.header-nav{width:180px}.brand-title{font-size:var(--font-size-lg)}}.chart-container{width:100%;padding:.5rem}.chart-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.chart-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:var(--font-size-base)}.custom-tooltip{background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);box-shadow:var(--shadow-lg)}.tooltip-label{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.custom-tooltip p{margin:var(--spacing-xs) 0;font-size:var(--font-size-sm)}.custom-tooltip strong{font-weight:700}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.transaction-modal{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:20px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:#ffffff1a;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s}.modal-close:hover{background:#fff3;transform:rotate(90deg)}.modal-header{text-align:center;margin-bottom:2rem}.modal-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.buy-icon{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 10px 30px #10b9814d}.sell-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 10px 30px #ef44444d}.modal-header h2{font-size:1.75rem;margin-bottom:.5rem;color:#fff}.modal-subtitle{color:#fff9;font-size:.95rem}.price-display{background:#ffffff0d;border-radius:12px;padding:1.5rem;text-align:center;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.1)}.price-label{color:#fff9;font-size:.85rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.price-value{font-size:2rem;font-weight:700;color:#06b6d4}.market-status{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;font-weight:500;animation:fadeIn .3s ease-out}.market-status.market-open{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#10b981}.market-status.market-closed{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.market-status svg{flex-shrink:0}.holding-info{background:#ffffff0d;border-radius:12px;padding:1rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.1)}.info-row{display:flex;justify-content:space-between;padding:.5rem 0;color:#fffc}.info-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#fffc;font-weight:500}.form-group input{width:100%;padding:1rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1.1rem;transition:all .2s}.form-group input:focus{outline:none;border-color:#06b6d4;background:#ffffff14}.transaction-summary{background:#ffffff0d;border-radius:12px;padding:1rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.1)}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;color:#fffc}.summary-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)}.total-amount{font-size:1.25rem;font-weight:700;color:#fff}.profit-loss{font-weight:600}.profit-loss.profit{color:#10b981}.profit-loss.loss{color:#ef4444}.balance-row{font-size:.9rem;opacity:.8}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#fca5a5;margin-bottom:1.5rem}.success-message{text-align:center;padding:2rem}.success-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:3rem;color:#fff;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-message h3{color:#fff;margin-bottom:.5rem;font-size:1.5rem}.success-message p{color:#ffffffb3}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions .btn{flex:1;padding:1rem;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s;border:none}.btn-outline{background:transparent;border:2px solid rgba(255,255,255,.2);color:#fff}.btn-outline:hover{background:#ffffff1a;border-color:#ffffff4d}.btn-buy{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-buy:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-sell{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 15px #ef44444d}.btn-sell:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.btn:disabled{opacity:.5;cursor:not-allowed}.position-badge{padding:.25rem .75rem;border-radius:6px;font-weight:600;font-size:.85rem}.position-type-selector{margin-bottom:1.5rem}.position-type-selector label{display:block;margin-bottom:1rem;color:#fffc;font-weight:500;font-size:.95rem}.position-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.position-option{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.75rem;color:#ffffffb3}.position-option:hover{background:#ffffff14;border-color:#fff3}.position-option.active{background:#06b6d41a;border-color:#06b6d4;color:#fff}.position-option.active svg{color:#06b6d4}.position-option div{display:flex;flex-direction:column;gap:.25rem;text-align:left}.position-option strong{font-size:.9rem;color:#fff}.position-option span{font-size:.75rem;color:#fff9}@media (max-width: 768px){.transaction-modal{padding:1rem;max-height:95vh}.modal-header{margin-bottom:1rem}.modal-icon{width:60px;height:60px;margin-bottom:.5rem}.modal-header h2{font-size:1.25rem;margin-bottom:.25rem;line-height:1.2}.modal-subtitle{font-size:.8rem;line-height:1.2}.price-display{padding:1rem;margin-bottom:1rem}.price-label{font-size:.75rem;margin-bottom:.25rem}.price-value{font-size:1.5rem;line-height:1.2}.market-status{padding:.4rem .6rem;margin-bottom:.75rem;font-size:.7rem;line-height:1.1}.position-type-selector{margin-bottom:.75rem}.position-type-selector label{margin-bottom:.4rem;font-size:.85rem;line-height:1.2}.position-option{padding:.6rem;gap:.4rem}.position-option strong{font-size:.85rem;line-height:1.2}.position-option span{font-size:.7rem;line-height:1.1}.holding-info{padding:.6rem;margin-bottom:.75rem}.info-row{padding:.3rem 0;font-size:.85rem;line-height:1.2}.form-group{margin-bottom:.75rem}.form-group label{margin-bottom:.3rem;font-size:.85rem;line-height:1.2}.form-group input{padding:.65rem;font-size:1rem;line-height:1.2}.transaction-summary{padding:.6rem;margin-bottom:.75rem}.summary-row{padding:.4rem 0;font-size:.85rem;line-height:1.2}.total-amount{font-size:1.1rem;line-height:1.2}.error-message{padding:.6rem;margin-bottom:.75rem;font-size:.85rem;line-height:1.2}.modal-actions{flex-direction:column;margin-top:.75rem;gap:.6rem}.modal-actions .btn{padding:.75rem;font-size:.95rem;line-height:1.2}}.dashboard{max-width:1600px;margin:0 auto;padding:var(--spacing-xl)}.dashboard h2{margin-bottom:var(--spacing-xl)}.dashboard-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--spacing-md)}.summary-cards{grid-column:span 12;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.card{background:var(--color-bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base)}.summary-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:#06b6d44d}.ranking-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.btn-toggle-ranking{padding:.25rem .5rem;font-size:.7rem;font-weight:600;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base)}.btn-toggle-ranking:hover{background:#ffffff1a;border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.card-icon{color:var(--color-primary)}.card-title{color:var(--color-text-muted);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.card-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.card-change{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:600}.card-change.positive{color:var(--color-accent)}.card-change.negative{color:var(--color-danger)}.change-label{color:var(--color-text-muted);font-weight:400;margin-left:var(--spacing-xs)}.card-subtitle{color:var(--color-text-muted);font-size:var(--font-size-sm)}.distribution-card{grid-column:span 6;min-height:450px}.empty-portfolio{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;text-align:center;color:var(--color-text-muted)}.empty-icon{margin-bottom:var(--spacing-md);opacity:.5}.empty-subtitle{font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.holdings-card{grid-column:span 6}.holdings-list{display:flex;flex-direction:column;gap:.4rem;margin-top:var(--spacing-md)}.holding-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem .6rem;background:#ffffff08;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.05);transition:all var(--transition-base)}.holding-item:hover{background:#ffffff0d;border-color:#ffffff1a}.holding-info{display:flex;flex-direction:column;min-width:120px}.holding-symbol{font-weight:700;font-size:.9rem;color:var(--color-text-primary)}.holding-shares{font-size:.75rem;color:var(--color-text-muted)}.holding-stats{display:flex;gap:1.5rem;flex:1;justify-content:center}.stat-row{display:flex;flex-direction:column;align-items:flex-end}.stat-label{font-size:.45rem;color:var(--color-text-muted);margin-bottom:.25rem}.stat-value{font-weight:600;font-size:.85rem}.positive-text .stat-value{color:var(--color-accent)}.negative-text .stat-value{color:var(--color-danger)}.btn-sell-asset{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2);border-radius:8px;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .2s}.btn-sell-asset:hover{background:#ef444433;border-color:#ef444466;transform:translateY(-1px)}.empty-holdings{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--color-text-muted)}.transactions-card{grid-column:span 12}.transactions-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:#ffffff08;border-radius:var(--radius-lg)}.transaction-type{display:flex;align-items:center;gap:var(--spacing-md)}.type-badge{padding:.25rem .5rem;border-radius:4px;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase}.type-badge.buy{background:#10b98133;color:var(--color-accent)}.type-badge.sell{background:#ef444433;color:var(--color-danger)}.transaction-symbol{font-weight:600}.transaction-details{display:flex;flex-direction:column;align-items:flex-end}.transaction-shares{font-size:var(--font-size-sm);color:var(--color-text-muted)}.transaction-total{font-weight:600}.transaction-total.positive{color:var(--color-accent)}.transaction-total.negative{color:var(--color-text-primary)}.operation-badge{padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;white-space:nowrap}.operation-badge.operation-long{background:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.3)}.operation-badge.operation-short{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.operation-badge.operation-call{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.operation-badge.operation-put{background:#f59e0b33;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.empty-transactions{display:flex;flex-direction:column;align-items:center;justify-content:center;height:150px;color:var(--color-text-muted)}.btn-show-more-transactions{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#06b6d41a;color:var(--color-primary);border:1px solid rgba(6,182,212,.3);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base)}.btn-show-more-transactions:hover{background:#06b6d433;border-color:#06b6d480;transform:translateY(-2px);box-shadow:0 4px 12px #06b6d433}@media (max-width: 1024px){.distribution-card,.holdings-card{grid-column:span 12}.options-list{grid-template-columns:1fr!important}}@media (max-width: 768px){.dashboard{padding:var(--spacing-sm)}.dashboard-grid{display:flex;flex-direction:column}.summary-cards{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.summary-card,.card{padding:var(--spacing-sm)}.card-header{margin-bottom:.25rem}.card-icon{width:16px;height:16px}.card-title{font-size:.65rem}.card-value{font-size:var(--font-size-xl);margin-bottom:.25rem}.card-change{font-size:.7rem;gap:.25rem}.card-subtitle{font-size:.7rem}.change-label{display:none}.holding-item{flex-direction:column;align-items:flex-start;gap:1rem}.holding-stats{width:100%;justify-content:space-between;gap:.5rem}.stat-label{font-size:.35rem!important}.stat-value{font-size:.75rem}.btn-sell-asset{width:100%;justify-content:center}.transactions-card{padding:var(--spacing-sm) 0!important}.transactions-card h3{padding:0 var(--spacing-sm);margin-bottom:var(--spacing-sm)}.transactions-list{gap:.3rem;margin-top:var(--spacing-sm);padding:0!important}.transaction-item{padding:.4rem var(--spacing-sm);border-radius:0;background:transparent!important;border:none!important;border-bottom:1px solid rgba(255,255,255,.05)}.transaction-item:last-child{border-bottom:none}.transaction-type{gap:.4rem;flex:1}.type-badge{padding:.15rem .35rem;font-size:.55rem;border-radius:3px}.transaction-symbol{font-size:.75rem;font-weight:700}.operation-badge{padding:.15rem .35rem;font-size:.5rem}.transaction-details{align-items:flex-end;gap:.15rem}.transaction-shares{font-size:.6rem}.transaction-total{font-size:.8rem;font-weight:700}.btn-show-more-transactions{margin:var(--spacing-sm)}.options-list{grid-template-columns:1fr!important}.options-card{grid-column:span 12}.option-item{padding:var(--spacing-sm)}.option-symbol{font-size:.9rem}.option-type-badge{font-size:.6rem;padding:.2rem .5rem}.moneyness-badge{font-size:.6rem;padding:.2rem .4rem}.option-contracts,.option-detail-row,.detail-label,.detail-value{font-size:.7rem}.btn-sell-option{padding:.5rem;font-size:.75rem}.distribution-card{padding:0!important;min-height:auto}.distribution-card .card{padding:.5rem 0!important}.distribution-card h3{font-size:1rem;margin-bottom:.5rem;padding:0 .5rem}.chart-container{height:auto!important;min-height:320px!important;padding:0!important;margin:0!important}.recharts-legend-wrapper{font-size:.65rem!important;margin-top:0!important;padding:0!important}.recharts-legend-item-text{font-size:.65rem!important}.recharts-legend-item{margin-right:6px!important;margin-bottom:2px!important}.recharts-surface{overflow:visible!important}.recharts-wrapper{margin:0!important;padding:0!important}}.position-badge{padding:.2rem .4rem;border-radius:4px;font-weight:600;font-size:.65rem;margin-left:.5rem}.position-badge.long{background:#10b98133;color:#10b981}.position-badge.short{background:#ef444433;color:#ef4444}.holding-info div{display:flex;align-items:center;gap:.5rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.header-title-group{display:flex;align-items:center;justify-content:space-between;width:100%;gap:var(--spacing-md);flex-wrap:wrap}.dashboard-header h2{margin:0}.market-status-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.1);transition:all var(--transition-base)}.status-light{width:12px;height:12px;border-radius:50%;position:relative;animation:pulse 2s ease-in-out infinite}.market-status-indicator.closed .status-light{background:#ef4444;box-shadow:0 0 10px #ef444480}.market-status-indicator.closed{border-color:#ef44444d;background:#ef44441a}.market-status-indicator.warning-opening .status-light{background:#fbbf24;box-shadow:0 0 10px #fbbf2480;animation:pulse-fast 1s ease-in-out infinite}.market-status-indicator.warning-opening{border-color:#fbbf244d;background:#fbbf241a}.market-status-indicator.warning-closing .status-light{background:#fbbf24;box-shadow:0 0 10px #fbbf2480;animation:pulse-fast 1s ease-in-out infinite}.market-status-indicator.warning-closing{border-color:#fbbf244d;background:#fbbf241a}.market-status-indicator.open .status-light{background:#10b981;box-shadow:0 0 10px #10b98180}.market-status-indicator.open{border-color:#10b9814d;background:#10b9811a}.status-text{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);white-space:nowrap}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes pulse-fast{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@media (max-width: 768px){.dashboard-header{margin-bottom:var(--spacing-md)}.header-title-group{width:100%;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.header-title-group h2{margin:0;font-size:1.25rem}.market-status-indicator{padding:.25rem .5rem;background:transparent;border:none;gap:.35rem}.status-light{width:8px;height:8px}.status-text{font-size:.7rem;font-weight:500}}.options-card{grid-column:span 6}.options-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.option-item{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all var(--transition-base)}.option-item:hover{background:#ffffff0d;border-color:#fff3}.option-item.expired{opacity:.6;border-color:#ef44444d}.option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.option-title{display:flex;align-items:center;gap:var(--spacing-sm)}.option-type-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:700;text-transform:uppercase}.option-type-badge.call{background:#10b98133;color:var(--color-accent)}.option-type-badge.put{background:#ef444433;color:var(--color-danger)}.option-symbol{font-size:.9rem;font-weight:700;color:var(--color-text-primary)}.moneyness-badge{padding:.2rem .4rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600}.moneyness-badge.itm{background:#10b98126;color:var(--color-accent)}.moneyness-badge.atm{background:#06b6d426;color:var(--color-primary)}.moneyness-badge.otm{background:#ef444426;color:var(--color-danger)}.option-contracts{color:var(--color-text-muted);font-size:.75rem}.option-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.option-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:.65rem}.detail-label{display:flex;align-items:center;gap:.25rem;color:var(--color-text-muted)}.detail-value{color:var(--color-text-secondary);font-weight:600;font-size:.65rem!important;text-align:right}.expiring-soon{color:#f59e0b!important;font-weight:700}.expired-text{color:var(--color-danger)!important;font-weight:700}.positive-text .profit-loss{color:var(--color-accent)}.negative-text .profit-loss{color:var(--color-danger)}.btn-sell-option{width:100%;padding:.4rem .8rem;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);transition:all var(--transition-base)}.btn-sell-option:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ef44444d}.empty-options{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center}.empty-options .empty-icon{color:var(--color-text-muted);margin-bottom:var(--spacing-md);opacity:.5}.empty-options p{color:var(--color-text-muted);margin:0}.empty-subtitle{font-size:var(--font-size-sm);margin-top:var(--spacing-xs)!important}.dashboard-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;gap:var(--spacing-md)}.dashboard-loading-overlay p{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:600}.loading-spinner{width:48px;height:48px;border:4px solid rgba(6,182,212,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.ranking-card{grid-column:span 6;min-height:400px}.ranking-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.btn-refresh-ranking{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#06b6d41a;color:var(--color-primary);border:1px solid rgba(6,182,212,.3);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base)}.btn-refresh-ranking:hover:not(:disabled){background:#06b6d433;border-color:#06b6d480;transform:translateY(-2px);box-shadow:0 4px 12px #06b6d433}.btn-refresh-ranking:disabled{opacity:.6;cursor:not-allowed}.btn-refresh-ranking .spinning{animation:spin 1s linear infinite}.ranking-icon{color:#f59e0b}.ranking-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);gap:var(--spacing-md)}.loading-spinner-small{width:32px;height:32px;border:3px solid rgba(6,182,212,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.ranking-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ranking-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff08;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.05);transition:all var(--transition-base)}.ranking-item:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translate(4px)}.ranking-item.top-three{background:#fbbf240d;border-color:#fbbf2433}.ranking-position{font-size:var(--font-size-lg);font-weight:700;min-width:40px;text-align:center}.ranking-user-info{flex:1;margin-left:var(--spacing-sm)}.ranking-user-name{font-weight:600;color:var(--color-text-primary)}.ranking-profit{display:flex;align-items:center;gap:.25rem;font-weight:700;font-size:var(--font-size-sm)}.ranking-profit.positive{color:var(--color-accent)}.ranking-profit.negative{color:var(--color-danger)}.ranking-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;color:var(--color-text-muted)}@media (max-width: 1024px){.ranking-card{grid-column:span 12}}.options-modal{background:var(--color-bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--spacing-2xl);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp var(--transition-base)}.option-type-selector{margin-bottom:var(--spacing-lg)}.option-type-selector label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-text-primary)}.option-types{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.option-type-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-align:left}.option-type-btn div{display:flex;flex-direction:column;gap:.25rem}.option-type-btn strong{color:var(--color-text-primary);font-size:var(--font-size-base)}.option-type-btn span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.option-type-btn:hover{background:#ffffff14;border-color:#fff3}.option-type-btn.active.call{background:#10b98126;border-color:var(--color-accent)}.option-type-btn.active.put{background:#ef444426;border-color:var(--color-danger)}.option-type-btn.active.call strong,.option-type-btn.active.call svg{color:var(--color-accent)}.option-type-btn.active.put strong,.option-type-btn.active.put svg{color:var(--color-danger)}.form-group label{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-text-primary)}.form-group select,.form-group input[type=number]{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-base);transition:all var(--transition-base)}.form-group select:focus,.form-group input[type=number]:focus{outline:none;border-color:var(--color-primary);background:#ffffff14}.option-summary{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:var(--spacing-lg) 0}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.summary-row.total{border-top:1px solid rgba(255,255,255,.1);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);font-weight:700;font-size:var(--font-size-base)}.summary-row.breakeven,.premium-value{color:var(--color-primary);font-weight:600}.total-amount{color:var(--color-text-primary);font-size:var(--font-size-lg)}.call-icon{background:linear-gradient(135deg,#10b981,#059669)}.put-icon{background:linear-gradient(135deg,#ef4444,#dc2626)}.modal-icon-logo{background:#fff!important;box-shadow:0 10px 30px #0000001a!important;border-radius:16px!important}.btn-option-call{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.btn-option-call:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-option-put{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.btn-option-put:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.btn-option-call:disabled,.btn-option-put:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 768px){.options-modal{width:95%;padding:1rem;max-height:95vh}.modal-header{margin-bottom:1rem}.modal-icon{width:60px;height:60px;margin-bottom:.5rem}.modal-header h2{font-size:1.25rem;margin-bottom:.25rem;line-height:1.2}.modal-subtitle{font-size:.8rem;line-height:1.2}.option-type-selector{margin-bottom:1rem}.option-type-selector label{margin-bottom:.5rem;font-size:.85rem}.option-types{grid-template-columns:1fr 1fr;gap:.5rem}.option-type-btn{padding:.6rem .4rem;gap:.3rem;flex-direction:column;text-align:center}.option-type-btn svg{margin:0 auto}.option-type-btn strong{font-size:.75rem}.option-type-btn span{font-size:.65rem;line-height:1.1}.form-group{margin-bottom:1rem}.form-group label{margin-bottom:.4rem;font-size:.85rem;gap:.25rem}.form-group select,.form-group input[type=number]{padding:.65rem .75rem;font-size:.95rem}.option-summary{padding:.75rem;margin:1rem 0}.summary-row{padding:.35rem 0;font-size:.85rem}.summary-row.total{padding-top:.4rem;margin-top:.4rem;font-size:.9rem}.premium-value,.total-amount{font-size:.95rem}.error-message{padding:.75rem;font-size:.85rem}.modal-actions{margin-top:1rem;gap:.75rem}.modal-actions .btn{padding:.85rem;font-size:.95rem}}.form-group select option{background-color:#1f2937;color:#fff}.market-data{max-width:1400px;margin:0 auto;padding:var(--spacing-xl)}.market-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl)}.market-header h2{margin:0 0 var(--spacing-xs) 0}.market-subtitle{color:var(--color-text-muted);font-size:var(--font-size-sm)}.refresh-btn{display:flex;align-items:center;gap:var(--spacing-sm)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.market-section{margin-bottom:var(--spacing-2xl)}.section-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.section-icon{color:var(--color-primary)}.section-header h3{margin:0;flex:1}.section-badge{background:#06b6d433;color:#06b6d4;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.asset-card{background:var(--color-bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base);animation:slideUp var(--transition-slow)}.asset-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:#06b6d44d}.asset-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.asset-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff}.asset-info{flex:1}.asset-symbol{margin:0;font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-primary)}.asset-category{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.asset-price{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.price-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary)}.price-change{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600}.price-change.positive{background:#10b98126;color:var(--color-accent)}.price-change.negative{background:#ef444426;color:var(--color-danger)}.asset-volume{display:flex;justify-content:space-between;padding-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.1)}.volume-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.volume-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-lg)}.loading-state p{color:var(--color-text-muted);font-size:var(--font-size-lg)}.btn-buy-asset{width:100%;margin-top:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-weight:600;font-size:.95rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;box-shadow:0 4px 15px #10b98133}.btn-buy-asset:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166;background:linear-gradient(135deg,#059669,#047857)}.btn-buy-asset:active{transform:translateY(0)}@media (max-width: 768px){.market-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.assets-grid{grid-template-columns:1fr}}.investment-calculator{max-width:1400px;margin:0 auto;padding:var(--spacing-xl)}.calculator-header{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.header-icon{padding:var(--spacing-md);background:var(--gradient-primary);border-radius:var(--radius-lg);color:#fff}.calculator-header h2{margin:0}.calculator-header p{color:var(--color-text-muted);margin:var(--spacing-xs) 0 0 0}.calculator-grid{display:grid;gap:var(--spacing-xl)}.input-panel h3,.scenarios-panel h3,.chart-panel h3,.input-group{margin-bottom:var(--spacing-lg)}.input-group label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.input-with-icon{position:relative}.input-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-muted)}.input-with-icon input{padding-left:calc(var(--spacing-md) * 3)}.timeframe-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.timeframe-btn{padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.timeframe-btn:hover{background:#ffffff14;border-color:var(--color-primary)}.timeframe-btn.active{background:#06b6d433;border-color:var(--color-primary);color:var(--color-primary)}.risk-indicator{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md)}.risk-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-weight:600;color:var(--color-text-primary)}.risk-bar{width:100%;height:8px;background:#ffffff1a;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.risk-fill{height:100%;border-radius:var(--radius-sm);transition:all var(--transition-slow)}.risk-label{font-size:var(--font-size-sm);font-weight:700;text-align:center}.scenarios-subtitle{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.scenarios-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.scenario-card{padding:var(--spacing-lg);border-radius:var(--radius-lg);text-align:center;animation:slideUp var(--transition-slow)}.scenario-card.optimistic{background:linear-gradient(135deg,#10b98126,#0596690d);border:1px solid rgba(16,185,129,.3)}.scenario-card.realistic{background:linear-gradient(135deg,#06b6d426,#0891b20d);border:1px solid rgba(6,182,212,.3)}.scenario-card.pessimistic{background:linear-gradient(135deg,#ef444426,#dc26260d);border:1px solid rgba(239,68,68,.3)}.scenario-header{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.scenario-card.optimistic .scenario-header{color:var(--color-accent)}.scenario-card.realistic .scenario-header{color:var(--color-primary)}.scenario-card.pessimistic .scenario-header{color:var(--color-danger)}.scenario-header span{font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.scenario-return{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-sm)}.scenario-value{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.scenario-probability{font-size:var(--font-size-sm);color:var(--color-text-muted)}.expected-profit{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:600}.profit-positive{color:var(--color-accent);font-size:var(--font-size-2xl);font-weight:700}.profit-negative{color:var(--color-danger);font-size:var(--font-size-2xl);font-weight:700}.loading-panel{min-height:300px}.loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:var(--spacing-lg)}.loading-spinner{width:48px;height:48px;border:4px solid rgba(6,182,212,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.scenarios-grid{grid-template-columns:1fr}.timeframe-buttons{grid-template-columns:repeat(2,1fr)}}.ai-analyzer{max-width:1400px;margin:0 auto;padding:var(--spacing-xl)}.analyzer-header{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.analyzer-header .header-icon{padding:var(--spacing-md);background:var(--gradient-primary);border-radius:var(--radius-lg);color:#fff}.analyzer-header h2{margin:0}.analyzer-header p{color:var(--color-text-muted);margin:var(--spacing-xs) 0 0 0}.questionnaire{max-width:800px;margin:0 auto;animation:fadeIn var(--transition-slow)}.question-progress{margin-bottom:var(--spacing-xl)}.question-progress span{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.progress-bar{width:100%;height:6px;background:#ffffff1a;border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-sm);transition:width var(--transition-slow)}.question-text{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xl);text-align:center}.options-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.option-btn{padding:var(--spacing-lg) var(--spacing-xl);background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;text-align:left;cursor:pointer;transition:all var(--transition-base)}.option-btn:hover{background:#ffffff14;border-color:var(--color-primary);transform:translate(4px)}.results-panel{max-width:800px;margin:0 auto;animation:slideUp var(--transition-slow)}.profile-header{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.profile-icon{padding:var(--spacing-lg);background:var(--gradient-primary);border-radius:var(--radius-lg);color:#fff;flex-shrink:0}.profile-header h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-base);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.profile-name{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-3xl);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-description{color:var(--color-text-secondary);margin:0}.profile-tolerance{margin-bottom:var(--spacing-2xl)}.profile-tolerance>span:first-child{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.tolerance-bar{width:100%;height:12px;background:#ffffff1a;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.tolerance-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-sm);transition:width var(--transition-slow)}.tolerance-value{display:block;font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);text-align:center}.allocation-section{margin-bottom:var(--spacing-2xl)}.allocation-section h4{margin-bottom:var(--spacing-lg)}.allocation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.allocation-item{display:flex;justify-content:space-between;padding:var(--spacing-md);background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.allocation-label{color:var(--color-text-secondary)}.allocation-value{font-weight:700;color:var(--color-primary)}.amount-input{margin-bottom:var(--spacing-xl)}.amount-input label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.amount-input input{width:100%}.btn-large{width:100%;padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-lg);justify-content:center}.recommendations-panel{animation:fadeIn var(--transition-slow)}.recommendations-header-card{text-align:center;margin-bottom:var(--spacing-xl)}.recommendations-header-card h3{margin:var(--spacing-md) 0 var(--spacing-sm) 0}.recommendations-header-card p{color:var(--color-text-muted);margin:0}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.recommendation-card{animation:slideUp var(--transition-slow)}.rec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.rec-header h4{margin:0;font-size:var(--font-size-xl)}.rec-badge{padding:var(--spacing-xs) var(--spacing-sm);background:#06b6d433;border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.rec-allocation{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);color:var(--color-text-muted);font-size:var(--font-size-sm)}.rec-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.rec-detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary)}.rec-reason{display:flex;gap:var(--spacing-sm);align-items:flex-start;padding:var(--spacing-md);background:#06b6d40d;border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.btn-full{width:100%;justify-content:center}.action-buttons{text-align:center}.action-buttons button{min-width:200px}@media (max-width: 768px){.allocation-grid,.recommendations-grid{grid-template-columns:1fr}}.ai-badge{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,#8b5cf61a,#3b82f61a);border:1px solid rgba(139,92,246,.3);border-radius:8px;color:#a78bfa;font-size:.9rem;font-weight:500}.ai-mini-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#8b5cf633;border-radius:4px;color:#a78bfa;font-size:.7rem;font-weight:600;margin-left:.5rem}.analyzing-indicator{text-align:center;padding:1.5rem;margin-top:1rem}.analyzing-indicator p{color:var(--color-text-muted);margin-top:1rem;font-size:.9rem}.spinner{width:40px;height:40px;margin:0 auto;border:4px solid rgba(139,92,246,.2);border-top-color:#a78bfa;border-radius:50%%;animation:spin 1s linear infinite}.rec-header div{display:flex;align-items:center}.admin-panel{min-height:100vh;background:var(--color-bg-primary)}.admin-header{background:var(--color-bg-card);border-bottom:1px solid rgba(255,255,255,.1);padding:var(--spacing-xl);box-shadow:var(--shadow-lg)}.admin-header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:var(--spacing-xl)}.back-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.back-btn:hover{background:#ffffff1a;transform:translate(-2px)}.admin-title{display:flex;align-items:center;gap:var(--spacing-md);color:#fbbf24}.admin-title h1{margin:0;font-size:var(--font-size-2xl);font-weight:800}.admin-title p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.admin-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl)}.admin-nav{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);border-bottom:2px solid rgba(255,255,255,.1)}.admin-nav-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-base);margin-bottom:-2px}.admin-nav-btn:hover{color:var(--color-primary);background:#ffffff0d}.admin-nav-btn.active{color:#fbbf24;border-bottom-color:#fbbf24}.admin-section{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-section h2{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.stat-card{background:var(--color-bg-card);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-lg);transition:all var(--transition-base)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.stat-icon{width:60px;height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff}.stat-icon.users{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon.transactions{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-icon.balance{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-icon.invested{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-number{font-size:var(--font-size-2xl);font-weight:800;color:var(--color-text-primary)}.table-container{background:var(--color-bg-card);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);overflow:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table thead{background:#ffffff0d}.admin-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.1)}.admin-table td{padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-primary);border-bottom:1px solid rgba(255,255,255,.05)}.admin-table tbody tr{transition:background var(--transition-base)}.admin-table tbody tr:hover{background:#ffffff0d}.admin-table code{background:#06b6d426;color:var(--color-primary);padding:2px 6px;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:var(--font-size-xs)}.admin-table .positive{color:var(--color-accent);font-weight:600}.admin-table .negative{color:var(--color-danger);font-weight:600}.badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.admin-badge{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.user-badge{background:#6b728033;color:#9ca3af;border:1px solid rgba(107,114,128,.3)}.buy-badge{background:#10b98133;color:var(--color-accent);border:1px solid rgba(16,185,129,.3)}.sell-badge{background:#ef444433;color:var(--color-danger);border:1px solid rgba(239,68,68,.3)}@media (max-width: 768px){.admin-header-content{flex-direction:column;align-items:flex-start}.admin-nav{flex-direction:column;border-bottom:none}.admin-nav-btn{width:100%;justify-content:flex-start;border-bottom:1px solid rgba(255,255,255,.1);border-left:3px solid transparent;margin-bottom:0}.admin-nav-btn.active{border-bottom-color:#ffffff1a;border-left-color:#fbbf24}.table-container{overflow-x:auto}.admin-table{min-width:800px}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:var(--spacing-md);padding-bottom:var(--spacing-2xl)}.footer{margin-top:auto;padding:var(--spacing-md);background:var(--color-bg-secondary);border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer p{margin:var(--spacing-xs) 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.footer-disclaimer{font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-lg);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);display:inline-block;margin-top:var(--spacing-md)}.loading-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);background:var(--color-bg-primary)}.loading-spinner{width:50px;height:50px;border:4px solid rgba(6,182,212,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:600}:root{--color-primary: #06b6d4;--color-primary-light: #22d3ee;--color-primary-dark: #0891b2;--color-secondary: #a855f7;--color-secondary-light: #c084fc;--color-secondary-dark: #7e22ce;--color-accent: #10b981;--color-danger: #ef4444;--color-warning: #f59e0b;--color-bg-primary: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-bg-card: rgba(30, 41, 59, .6);--color-text-primary: #f1f5f9;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-danger: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--gradient-card: linear-gradient(135deg, rgba(6, 182, 212, .1) 0%, rgba(168, 85, 247, .1) 100%);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--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);--shadow-glow: 0 0 20px rgba(6, 182, 212, .3);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", 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;--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);background:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(6,182,212,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(168,85,247,.08) 0%,transparent 50%);pointer-events:none;z-index:0}#root{position:relative;z-index:1}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}.card{background:var(--color-bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);transition:all var(--transition-base)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:#06b6d44d}.card-gradient{background:var(--gradient-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-base);display:inline-flex;align-items:center;gap:var(--spacing-sm);text-decoration:none}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 14px #06b6d44d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #06b6d466}.btn-success{background:var(--gradient-success);color:#fff}.btn-danger{background:var(--gradient-danger);color:#fff}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}input,select,textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);transition:all var(--transition-base)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #06b6d41a}.badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-success{background:#10b98133;color:var(--color-accent)}.badge-danger{background:#ef444433;color:var(--color-danger)}.badge-warning{background:#f59e0b33;color:var(--color-warning)}.badge-primary{background:#06b6d433;color:var(--color-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp var(--transition-slow)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-success{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.text-muted{color:var(--color-text-muted)}.bg-primary{background:var(--color-primary)}.bg-gradient{background:var(--gradient-primary)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-glow{box-shadow:var(--shadow-glow)}.transition{transition:all var(--transition-base)}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){:root{--font-size-4xl: 1.875rem;--font-size-3xl: 1.5rem;--font-size-2xl: 1.25rem}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:var(--radius-lg)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:var(--radius-md)}
