:root{--bg-primary: #F5F7FA;--bg-white: #FFFFFF;--border-color: #E5E9F0;--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--brand-primary: #2563EB;--brand-hover: #1D4ED8;--brand-light: #EFF6FF;--success: #059669;--success-light: #ECFDF5;--danger: #DC2626;--danger-light: #FEF2F2;--warning: #D97706;--warning-light: #FFFBEB;--disabled-bg: #D1D5DB;--disabled-text: #9CA3AF;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-lg: 0 4px 16px rgba(0,0,0,.08);--shadow-modal: 0 8px 32px rgba(0,0,0,.12);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--nav-height: 0px;--sidebar-width: 220px;--font-family: "Inter", "Segoe UI", Arial, sans-serif;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--up-color: #059669;--down-color: #DC2626}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-family);font-size:14px;color:var(--text-primary);background:var(--bg-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden}a{color:var(--brand-primary);text-decoration:none}a:hover{color:var(--brand-hover)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}h1{font-size:24px;font-weight:700}h2{font-size:20px;font-weight:700}h3{font-size:18px;font-weight:600}h4{font-size:16px;font-weight:600}.text-sm{font-size:12px}.text-base{font-size:14px}.text-lg{font-size:16px}.text-muted{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-brand{color:var(--brand-primary)}.text-up{color:var(--up-color)}.text-down{color:var(--down-color)}.app-container{display:flex;flex-direction:column;height:100vh;overflow:hidden}.main-content{flex:1;overflow-y:auto;padding:24px 32px;margin-left:var(--sidebar-width)}body.auth-page-mode .main-content{margin-left:0}.content-wrapper{max-width:1400px;margin:0 auto;width:100%}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{font-size:22px}.page-header-actions{display:flex;gap:12px;align-items:center}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.flex-row{display:flex;align-items:center;gap:12px}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column;gap:8px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.navbar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--bg-white);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:24px 16px 16px;z-index:1000;overflow-y:auto}.navbar-left{display:flex;flex-direction:column;gap:28px;flex:1;min-height:0}.navbar-logo{font-size:20px;font-weight:800;color:var(--text-primary);display:flex;align-items:center;gap:10px;cursor:pointer;padding:0 8px;letter-spacing:-.3px}.navbar-logo .logo-icon{width:34px;height:34px;background:var(--brand-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:800;letter-spacing:-.5px}.navbar-nav{display:flex;flex-direction:column;gap:4px;list-style:none;padding:0;margin:0}.navbar-nav .nav-item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-secondary);transition:background var(--transition-fast),color var(--transition-fast);position:relative;white-space:nowrap;border:2px solid transparent;letter-spacing:.2px}.navbar-nav .nav-item .nav-icon{font-size:22px;line-height:1;width:28px;text-align:center;flex-shrink:0}.navbar-nav .nav-item:hover{color:var(--text-primary);background:var(--bg-primary)}.navbar-nav .nav-item.active{color:var(--brand-primary);background:#2563eb1a;border-color:#2563eb40}.navbar-right{position:fixed;top:16px;right:24px;display:flex;align-items:center;gap:12px;z-index:1001}.nav-back-btn{display:flex;align-items:center;gap:4px;color:var(--text-secondary);cursor:pointer;padding:6px 10px;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:13px;border:1px solid var(--border-color);background:transparent}.nav-back-btn:hover{color:var(--text-primary);background:var(--bg-primary)}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--brand-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-weight:600;cursor:pointer;font-size:14px;position:relative;transition:all var(--transition-fast)}.user-avatar:hover{background:var(--brand-primary);color:#fff}.user-dropdown{position:absolute;top:48px;right:0;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;z-index:1100;display:none;overflow:hidden}.user-dropdown.show{display:block;animation:fadeInDown .2s ease}.user-dropdown-item{padding:10px 16px;cursor:pointer;transition:background var(--transition-fast);font-size:14px;display:flex;align-items:center;gap:8px}.user-dropdown-item:hover{background:var(--bg-primary)}.user-dropdown-item.danger{color:var(--danger)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;min-width:80px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast);white-space:nowrap;font-family:var(--font-family)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--brand-primary);color:#fff}.btn-primary:hover{background:var(--brand-hover)}.btn-primary:disabled{background:var(--disabled-bg);color:#fff;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-white);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-primary);border-color:#d1d5db}.btn-secondary:disabled{color:var(--disabled-text);cursor:not-allowed;transform:none}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#16a34a}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-outline{background:transparent;color:var(--brand-primary);border:1px solid var(--brand-primary)}.btn-outline:hover{background:var(--brand-light)}.btn-sm{height:28px;padding:0 10px;font-size:12px;min-width:60px}.btn-lg{height:42px;padding:0 24px;font-size:16px;min-width:120px}.btn-icon{width:36px;min-width:36px;padding:0}.btn-block{width:100%}.btn-group{display:flex;gap:0}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.btn-group .btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:14px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:4px}.form-label .required{color:var(--danger)}.form-hint{font-size:12px;color:var(--text-secondary);line-height:1.4}.form-error{font-size:12px;color:var(--danger);display:none;align-items:center;gap:4px}.form-error.show{display:flex}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=tel],select,textarea{height:34px;padding:0 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font-family);color:var(--text-primary);background:var(--bg-white);transition:all var(--transition-fast);outline:none;width:100%}textarea{height:auto;padding:8px 12px;min-height:80px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #165dff1a}input.error,select.error,textarea.error{border-color:var(--danger);box-shadow:0 0 0 3px #f53f3f1a}input:disabled,select:disabled,textarea:disabled{background:var(--bg-primary);color:var(--disabled-text);cursor:not-allowed}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%236B7280'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;cursor:pointer}.input-group{display:flex;align-items:center}.input-group .input-prefix,.input-group .input-suffix{padding:0 10px;height:34px;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;align-items:center;font-size:14px;color:var(--text-secondary)}.input-group .input-prefix{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:0}.input-group .input-suffix{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:0}.input-group input{border-radius:0}.radio-group,.checkbox-group{display:flex;flex-wrap:wrap;gap:16px}.radio-item,.checkbox-item{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:14px}.radio-item input[type=radio],.checkbox-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer}.radio-item.disabled,.checkbox-item.disabled{opacity:.5;cursor:not-allowed}.toggle-switch{position:relative;width:44px;height:24px;cursor:pointer}.toggle-switch input{display:none}.toggle-switch .toggle-track{width:100%;height:100%;background:#d1d5db;border-radius:12px;transition:background var(--transition-fast);position:relative}.toggle-switch .toggle-track:after{content:"";width:20px;height:20px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:left var(--transition-fast);box-shadow:var(--shadow-sm)}.toggle-switch input:checked+.toggle-track{background:var(--brand-primary)}.toggle-switch input:checked+.toggle-track:after{left:22px}.card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px 24px;transition:box-shadow var(--transition-fast)}.card:hover{box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.card-title{font-size:16px;font-weight:600}.card-entry{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px 24px 24px;cursor:pointer;transition:all var(--transition-normal);text-align:center;display:flex;flex-direction:column;align-items:center;position:relative}.card-entry:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-entry--training{border-top:3px solid var(--brand-primary)}.card-entry--training:hover{border-color:var(--brand-primary);border-top-width:3px}.card-entry--backtest{border-top:3px solid var(--success)}.card-entry--backtest:hover{border-color:var(--success);border-top-width:3px}.card-entry--challenge{border-top:3px solid #F59E0B}.card-entry--challenge:hover{border-color:#f59e0b;border-top-width:3px}.card-entry--learn{border-top:3px solid #4F46E5}.card-entry--learn:hover{border-color:#4f46e5;border-top-width:3px}.card-entry .entry-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:26px;flex-shrink:0}.card-entry .entry-icon.training{background:var(--brand-light);color:var(--brand-primary)}.card-entry .entry-icon.backtest{background:#f0fdf4;color:var(--success)}.card-entry .entry-icon.challenge{background:#fff7ed;color:#f59e0b}.card-entry .entry-icon.learn{background:#eef2ff;color:#4f46e5}.card-entry h3{margin-bottom:6px;font-size:15px}.card-entry p{color:var(--text-secondary);font-size:13px;margin-bottom:14px;line-height:1.5;flex:1}.card-entry .btn{margin-top:auto}.card-entry-badge{position:absolute;top:12px;right:12px;font-size:10px}.card-entry--training{background:linear-gradient(135deg,#fff,#f0f4ff)}.card-entry--backtest{background:linear-gradient(135deg,#fff,#f0fdf4)}.card-entry--challenge{background:linear-gradient(135deg,#fff,#fffdf5)}.card-entry--learn{background:linear-gradient(135deg,#fff,#f5f3ff)}.streak-fire{display:inline-block;animation:streakPulse 1.5s ease-in-out infinite}@keyframes streakPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 2px rgba(249,115,22,.3))}50%{transform:scale(1.08);filter:drop-shadow(0 0 6px rgba(249,115,22,.5))}}.fund-glow{animation:fundBreath 2.5s ease-in-out infinite}@keyframes fundBreath{0%,to{text-shadow:0 0 0 rgba(37,99,235,0)}50%{text-shadow:0 0 12px rgba(37,99,235,.15)}}.upgrade-plan-card.upc-action{position:relative;overflow:hidden}.upgrade-plan-card.upc-action:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#f59e0b,#d97706,#fbbf24,#f59e0b);background-size:300% 300%;animation:goldenBorder 3s ease-in-out infinite;z-index:-1;opacity:.4}@keyframes goldenBorder{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}[data-theme="4"] .card-entry--training{background:linear-gradient(135deg,#1f2329,#1a2240)}[data-theme="4"] .card-entry--backtest{background:linear-gradient(135deg,#1f2329,#1a2d2a)}[data-theme="4"] .card-entry--challenge{background:linear-gradient(135deg,#1f2329,#2a2618)}[data-theme="4"] .card-entry--learn{background:linear-gradient(135deg,#1f2329,#1f1d35)}.stat-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 20px}.stat-card .stat-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.stat-card .stat-value{font-size:20px;font-weight:700}.stat-card .stat-change{font-size:12px;margin-top:2px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.modal{background:var(--bg-white);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);width:440px;max-width:90vw;max-height:85vh;overflow-y:auto;animation:slideUp .25s ease}.modal.modal-lg{width:600px}.modal.modal-sm{width:360px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-header h3{font-size:18px;font-weight:600}.modal-close{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);font-size:18px;transition:all var(--transition-fast);border:none;background:transparent}.modal-close:hover{background:var(--bg-primary);color:var(--text-primary)}.modal-body{padding:20px 24px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}table th,table td{padding:10px 14px;text-align:left;font-size:13px;border-bottom:1px solid var(--border-color);white-space:nowrap}table th{font-weight:600;color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.5px;background:var(--bg-primary);position:sticky;top:0}table tr:hover td{background:#fafbfc}table tr.clickable{cursor:pointer}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.badge-primary{background:var(--brand-light);color:var(--brand-primary)}.badge-success{background:var(--success-light);color:var(--success)}.badge-danger{background:var(--danger-light);color:var(--danger)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--text-primary);color:#fff;padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:500}.tooltip:hover:after{opacity:1}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffc;z-index:3000;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:20px;height:20px;border-width:2px}.spinner-lg{width:56px;height:56px;border-width:4px}.loading-text{font-size:14px;color:var(--text-secondary)}.toast-container{position:fixed;top:80px;right:24px;z-index:4000;display:flex;flex-direction:column;gap:8px}.toast{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:12px 16px;display:flex;align-items:center;gap:10px;min-width:300px;max-width:420px;animation:slideInRight .3s ease;font-size:14px}.toast.toast-success{border-left:3px solid var(--success)}.toast.toast-error{border-left:3px solid var(--danger)}.toast.toast-warning{border-left:3px solid var(--warning)}.toast.toast-info{border-left:3px solid var(--brand-primary)}.toast .toast-close{margin-left:auto;cursor:pointer;color:var(--text-secondary);font-size:16px;padding:2px;border:none;background:transparent}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state .empty-icon{width:80px;height:80px;border-radius:50%;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:36px;margin-bottom:16px;color:var(--text-muted)}.empty-state h4{margin-bottom:8px;color:var(--text-secondary)}.empty-state p{color:var(--text-muted);margin-bottom:20px}.divider{height:1px;background:var(--border-color);margin:20px 0}.progress-bar{height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.progress-bar .progress-fill{height:100%;background:var(--brand-primary);border-radius:3px;transition:width .3s ease}.progress-fill.success{background:var(--success)}.progress-fill.danger{background:var(--danger)}.progress-fill.warning{background:var(--warning)}.tabs{display:flex;border-bottom:2px solid var(--border-color);gap:0;margin-bottom:20px}.tab-item{padding:10px 20px;cursor:pointer;font-size:14px;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.tab-item:hover{color:var(--text-primary)}.tab-item.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:600}.draggable-panel{position:relative}.draggable-panel .drag-handle{cursor:move;color:var(--text-muted);padding:4px}.draggable-panel.dragging{box-shadow:var(--shadow-lg);opacity:.9;z-index:500}.resize-handle{position:absolute;bottom:0;right:0;width:12px;height:12px;cursor:se-resize;background:linear-gradient(135deg,transparent 50%,var(--border-color) 50%)}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e8edf5)}.auth-card{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:40px;width:420px;max-width:95vw}.auth-card .auth-logo{text-align:center;margin-bottom:32px}.auth-card .auth-logo .logo-icon{width:48px;height:48px;background:var(--brand-primary);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:700;margin-bottom:12px}.auth-card h2{text-align:center;margin-bottom:8px}.auth-card .auth-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:28px;font-size:14px}.auth-card .form-group{margin-bottom:16px}.auth-card .auth-footer{text-align:center;margin-top:20px;font-size:14px;color:var(--text-secondary)}.social-login{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.social-btn{flex:1 1 calc(50% - 6px);height:40px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-white);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--transition-fast);font-size:13px;font-family:var(--font-family)}.social-btn:hover{background:var(--bg-primary)}.home-ticker{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 0;margin-bottom:20px;overflow:hidden;position:relative}.home-ticker-track{display:flex;gap:32px;animation:tickerScroll 30s linear infinite;white-space:nowrap;padding:0 16px}.home-ticker:hover .home-ticker-track{animation-play-state:paused}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;flex-shrink:0;padding:2px 0}.ticker-icon{font-size:14px;flex-shrink:0}.ticker-item--stat{color:var(--text-primary)}.ticker-item--stat b{color:var(--brand-primary)}.ticker-item--knowledge{color:var(--text-secondary);font-size:12px}.ticker-item--knowledge .ticker-icon{opacity:.7}.ticker-item--promo{color:var(--text-primary)}.ticker-item--promo b{color:#f59e0b}.ticker-sep{color:var(--border-color);margin:0 4px;-webkit-user-select:none;user-select:none}.home-grid{display:grid;grid-template-columns:1fr 320px;gap:24px}.home-main{display:flex;flex-direction:column;gap:20px}.home-entry-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.user-info-panel{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px}.user-info-panel .user-info-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.user-info-panel .user-avatar-lg{width:44px;height:44px;border-radius:50%;background:var(--brand-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.upgrade-plan-card{border-radius:var(--radius-sm);padding:12px 14px;font-size:13px}.upgrade-plan-card.upc-action{background:var(--brand-light);border:1px solid rgba(22,93,255,.15)}.upgrade-plan-card.upc-current{background:var(--bg-primary);border:1px solid var(--border-color)}.upgrade-plan-card .upc-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.upgrade-plan-card .upc-icon{font-size:16px}.upgrade-plan-card .upc-title{font-weight:600;font-size:13px}.upgrade-plan-card .upc-hint{color:var(--text-secondary);font-size:11px;margin-bottom:8px}.upgrade-plan-card .upc-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.upgrade-plan-card .upc-features li{font-size:11px;color:var(--text-secondary);padding-left:14px;position:relative}.upgrade-plan-card .upc-features li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700;font-size:10px}.config-form{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:28px 32px;max-width:800px}.config-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border-color)}.config-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.config-section h4{font-size:15px;margin-bottom:14px;display:flex;align-items:center;gap:8px}.config-section .section-icon{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--brand-light);display:flex;align-items:center;justify-content:center;font-size:14px}.config-actions{display:flex;gap:12px;margin-top:28px}.quickstart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:800px;margin-bottom:24px}.quickstart-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px 20px;cursor:pointer;text-align:center;transition:border-color .15s,transform .15s,box-shadow .15s}.quickstart-card:hover{border-color:var(--brand-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.quickstart-card.disabled{opacity:.5;cursor:not-allowed}.quickstart-card.disabled:hover{border-color:var(--border-color);transform:none;box-shadow:none}.quickstart-card .qs-icon{font-size:30px;line-height:1}.quickstart-card .qs-title{font-size:15px;font-weight:600;margin-top:12px}.quickstart-card .qs-desc{font-size:12px;color:var(--text-secondary);margin-top:6px}@media (max-width: 640px){.quickstart-grid{grid-template-columns:1fr}}.ts-gate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(120% 120% at 50% 0%,#12161edb,#06080bf5 70%);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:tsGateFade .25s ease}@keyframes tsGateFade{0%{opacity:0}to{opacity:1}}@keyframes tsGateRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.ts-gate{position:relative;width:100%;max-width:520px;background:#11141a;border:1px solid #262b36;border-top:2px solid var(--brand-primary, #3b82f6);border-radius:4px;padding:40px 40px 36px;box-shadow:0 30px 80px #0009;color:#e7e9ee;animation:tsGateRise .3s ease}.ts-gate-dismiss{position:absolute;top:16px;right:16px;background:transparent;border:none;color:#5b626f;font-size:15px;cursor:pointer;line-height:1;padding:4px;transition:color .15s}.ts-gate-dismiss:hover{color:#aeb4bf}.ts-gate-eyebrow{font-size:11px;letter-spacing:3px;font-weight:600;color:#6b7280}.ts-gate-title{font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:700;letter-spacing:4px;margin:14px 0 10px;color:#f3f4f7}.ts-gate-sub{font-size:13px;line-height:1.7;color:#8b929f;margin:0}.ts-gate-rule{height:1px;background:linear-gradient(90deg,var(--brand-primary, #3b82f6) 0%,#262b36 40%,transparent 100%);margin:24px 0}.ts-gate-options{display:flex;flex-direction:column;gap:14px}.ts-gate-option{display:flex;align-items:center;gap:18px;width:100%;text-align:left;background:#161a21;border:1px solid #272d39;border-radius:4px;padding:20px 22px;cursor:pointer;color:inherit;transition:border-color .18s,background .18s,transform .18s}.ts-gate-option:hover{background:#1b212b;border-color:var(--brand-primary, #3b82f6);transform:translate(3px)}.ts-gate-idx{font-family:Courier New,monospace;font-size:22px;font-weight:700;color:#4a515f;min-width:30px}.ts-gate-option:hover .ts-gate-idx{color:var(--brand-primary, #3b82f6)}.ts-gate-opt-main{flex:1;display:flex;flex-direction:column;gap:4px}.ts-gate-opt-title{font-size:16px;font-weight:600;color:#eef0f3;letter-spacing:1px}.ts-gate-opt-desc{font-size:12px;color:#818897;line-height:1.5}.ts-gate-arrow{font-size:18px;color:#4a515f;transition:transform .18s,color .18s}.ts-gate-option:hover .ts-gate-arrow{color:var(--brand-primary, #3b82f6);transform:translate(4px)}.ts-gate--form{max-width:560px;max-height:86vh;overflow-y:auto;text-align:left}.ts-gate-title--sm{font-size:24px;letter-spacing:3px;margin:12px 0 8px}.ts-form{display:flex;flex-direction:column;gap:22px}.ts-form-section{display:flex;flex-direction:column;gap:10px}.ts-form-section>h4{margin:0;font-size:11px;letter-spacing:2px;font-weight:600;color:#6b7280;text-transform:uppercase;display:flex;align-items:center;gap:8px}.ts-form-ico{font-size:13px}.ts-form-group{display:flex;flex-direction:column;gap:6px}.ts-form-label{font-size:12px;color:#8b929f}.ts-form input[type=text],.ts-form input[type=date],.ts-form select{width:100%;background:#161a21;border:1px solid #272d39;border-radius:4px;padding:10px 12px;color:#e7e9ee;font-size:13px;font-family:inherit;transition:border-color .15s}.ts-form input:focus,.ts-form select:focus{outline:none;border-color:var(--brand-primary, #3b82f6)}.ts-form input.error{border-color:#ef4444}.ts-input-group{display:flex;align-items:center;background:#161a21;border:1px solid #272d39;border-radius:4px}.ts-input-group:focus-within{border-color:var(--brand-primary, #3b82f6)}.ts-input-prefix{padding-left:12px;color:#6b7280;font-size:13px}.ts-input-group input{border:none!important;background:transparent!important}.ts-form-hint{font-size:11px;color:#6b7280;line-height:1.5}.ts-form-error{font-size:11px;color:#ef4444;min-height:14px;display:none}.ts-form-error.show{display:block}.ts-radio-row{display:flex;flex-wrap:wrap;gap:10px 18px}.ts-check-col{display:flex;flex-direction:column;gap:10px}.ts-opt{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#c8cdd6;cursor:pointer}.ts-opt input{accent-color:var(--brand-primary, #3b82f6)}.ts-opt.disabled{color:#565d6a;cursor:not-allowed}.ts-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ts-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:28px;padding-top:20px;border-top:1px solid #1f242e}.ts-btn{padding:11px 22px;border-radius:4px;font-size:13px;font-weight:600;letter-spacing:1px;cursor:pointer;border:1px solid transparent;transition:border-color .15s,background .15s,filter .15s,color .15s}.ts-btn--ghost{background:transparent;border-color:#2b313d;color:#9aa1ad}.ts-btn--ghost:hover{border-color:#3a4150;color:#cdd2db}.ts-btn--primary{background:var(--brand-primary, #3b82f6);color:#fff}.ts-btn--primary:hover{filter:brightness(1.08)}@media (max-width: 640px){.ts-gate{padding:28px 22px 24px}.ts-gate-title{font-size:24px}.ts-grid-2{grid-template-columns:1fr}.ts-form-actions{flex-direction:column-reverse}.ts-btn{width:100%}}.trade-layout{display:grid;grid-template-columns:1fr 340px;grid-template-rows:1fr 200px;gap:12px;height:calc(100vh - var(--nav-height) - 130px)}.trade-chart-panel{grid-row:1 / 2;grid-column:1 / 2;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.trade-order-panel{grid-row:1 / 2;grid-column:2 / 3;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow-y:auto}.trade-trades-panel{grid-row:2 / 3;grid-column:1 / 3;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border-color);background:#fafbfc;flex-shrink:0}.panel-header .panel-title{font-size:13px;font-weight:600}.panel-body{flex:1;overflow-y:auto;padding:12px 14px}.chart-toolbar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.chart-period-btn{height:26px;padding:0 10px;font-size:12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-white);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-family)}.chart-period-btn:hover{background:var(--bg-primary)}.chart-period-btn.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.chart-indicator-btn{height:26px;padding:0 10px;font-size:12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:transparent;cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);font-family:var(--font-family)}.chart-indicator-btn:hover{color:var(--text-primary);border-color:#d1d5db}.chart-indicator-btn.active{color:var(--brand-primary);border-color:var(--brand-primary);background:var(--brand-light)}.chart-container{flex:1;position:relative;overflow:hidden}.chart-container canvas{width:100%;height:100%}.order-form{display:flex;flex-direction:column;gap:12px}.order-form .form-row{display:flex;gap:10px;align-items:flex-end}.order-form .form-row .form-group{flex:1}.order-type-selector{display:flex;gap:4px}.order-type-btn{flex:1;height:30px;font-size:12px;border:1px solid var(--border-color);background:var(--bg-white);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-family)}.order-type-btn:hover{background:var(--bg-primary)}.order-type-btn.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.order-type-btn.buy{color:var(--up-color)}.order-type-btn.buy.active{background:var(--up-color);border-color:var(--up-color);color:#fff}.order-type-btn.sell{color:var(--down-color)}.order-type-btn.sell.active{background:var(--down-color);border-color:var(--down-color);color:#fff}.order-action-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.btn-buy{background:var(--up-color);color:#fff}.btn-buy:hover{background:#16a34a}.btn-sell{background:var(--down-color);color:#fff}.btn-sell:hover{background:#dc2626}.position-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color)}.position-item:last-child{border-bottom:none}.position-info h4{font-size:13px;font-weight:600}.position-info .pos-qty{font-size:12px;color:var(--text-secondary)}.position-pnl{text-align:right}.position-pnl .pnl-amount{font-size:14px;font-weight:600}.position-pnl .pnl-pct{font-size:12px}.trade-record-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:12px;border-bottom:1px solid #F5F5F5}.strategy-selector{display:flex;gap:12px;margin-bottom:20px}.strategy-card{flex:1;padding:16px;border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:center;background:var(--bg-white)}.strategy-card:hover{border-color:#d1d5db}.strategy-card.selected{border-color:var(--brand-primary);background:var(--brand-light)}.strategy-card h4{margin-bottom:4px}.strategy-card p{font-size:12px;color:var(--text-secondary)}.code-editor{width:100%;min-height:200px;background:#1e1e2e;color:#cdd6f4;border-radius:var(--radius-md);padding:16px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:1.6;border:none;resize:vertical}.code-editor:focus{outline:2px solid var(--brand-primary);outline-offset:2px}.execute-progress{text-align:center;padding:40px}.execute-progress .progress-ring{width:120px;height:120px;margin:0 auto 24px;position:relative}.execute-progress .progress-ring canvas{width:100%;height:100%}.execute-progress .progress-pct{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:28px;font-weight:700}.execute-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}.execute-log{background:#1e1e2e;color:#a6e3a1;border-radius:var(--radius-md);padding:16px;font-family:Consolas,Monaco,monospace;font-size:12px;line-height:1.8;max-height:200px;overflow-y:auto;margin-top:20px}.metrics-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:24px}.metric-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px}.metric-card .metric-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.metric-card .metric-value{font-size:20px;font-weight:700}.metric-card .metric-unit{font-size:12px;color:var(--text-muted)}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.chart-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md)}.chart-card .chart-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-color)}.chart-card .chart-card-body{padding:16px;height:280px;position:relative}.chart-card .chart-card-body canvas{width:100%;height:100%}.review-section{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px;margin-bottom:20px}.review-section h3{font-size:16px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.review-insight{display:flex;gap:12px;padding:12px;background:var(--bg-primary);border-radius:var(--radius-sm);margin-bottom:10px}.review-insight .insight-icon{font-size:18px;flex-shrink:0}.review-insight .insight-text{font-size:13px;line-height:1.6}.review-insight.positive{border-left:3px solid var(--success)}.review-insight.negative{border-left:3px solid var(--danger)}.review-insight.neutral{border-left:3px solid var(--brand-primary)}.emotion-gauge{display:flex;align-items:center;gap:16px;padding:16px}.emotion-gauge .gauge-bar{flex:1;height:10px;background:linear-gradient(to right,var(--danger),var(--warning),var(--success));border-radius:5px;position:relative}.emotion-gauge .gauge-indicator{position:absolute;top:-4px;width:18px;height:18px;background:#fff;border:2px solid var(--text-primary);border-radius:50%;transform:translate(-50%)}.profile-layout{display:grid;grid-template-columns:300px 1fr;gap:24px}.profile-sidebar{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px;text-align:center}.profile-sidebar .profile-avatar{width:80px;height:80px;border-radius:50%;background:var(--brand-light);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin-bottom:12px}.profile-sidebar .user-tier{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;margin-top:8px}.tier-free{background:var(--bg-primary);color:var(--text-secondary)}.tier-pro{background:var(--brand-light);color:var(--brand-primary)}.tier-institution{background:#fef3c7;color:#92400e}.profile-content{display:flex;flex-direction:column;gap:20px}.history-list-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:8px;cursor:pointer;transition:all var(--transition-fast)}.history-list-item:hover{border-color:var(--brand-primary);box-shadow:var(--shadow-sm)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}.pricing-card{background:var(--bg-white);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:32px 24px;text-align:center;transition:all var(--transition-normal);position:relative;cursor:pointer}.pricing-card:hover{box-shadow:var(--shadow-lg)}.pricing-card.featured{border-color:var(--brand-primary);box-shadow:var(--shadow-md);transform:scale(1.03)}.pricing-card .popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--brand-primary);color:#fff;padding:4px 16px;border-radius:12px;font-size:12px;font-weight:600}.pricing-card .plan-name{font-size:18px;font-weight:700;margin-bottom:4px}.pricing-card .plan-price{font-size:36px;font-weight:700;color:var(--text-primary);margin:16px 0}.pricing-card .plan-price span{font-size:14px;font-weight:400;color:var(--text-secondary)}.pricing-card .plan-features{list-style:none;text-align:left;margin:20px 0}.pricing-card .plan-features li{padding:8px 0;font-size:13px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #F5F5F5}.pricing-card .plan-features li .check-icon{color:var(--success)}.pricing-card .plan-features li .cross-icon{color:var(--text-muted)}.layout-preview{background:var(--bg-white);border:2px dashed var(--border-color);border-radius:var(--radius-md);min-height:500px;position:relative;padding:8px}.layout-module{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px;cursor:move;-webkit-user-select:none;user-select:none;transition:box-shadow var(--transition-fast);position:absolute}.layout-module:hover{box-shadow:var(--shadow-md)}.layout-module .module-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.module-library{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.module-chip{padding:8px 14px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;font-size:13px;transition:all var(--transition-fast)}.module-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-light)}.trade-layout-v2{display:grid;grid-template-columns:280px 1fr 320px;grid-template-rows:1fr 1fr 180px;gap:8px;height:calc(100vh - var(--nav-height) - 130px)}.trade-layout-v2 .panel-col-left{grid-row:1 / 3;grid-column:1 / 2;display:flex;flex-direction:column;gap:8px}.trade-layout-v2 .panel-col-mid{grid-row:1 / 3;grid-column:2 / 3;display:flex;flex-direction:column;gap:8px}.trade-layout-v2 .panel-col-right{grid-row:1 / 3;grid-column:3 / 4;display:flex;flex-direction:column;gap:8px}.trade-layout-v2 .panel-row-bottom{grid-row:3 / 4;grid-column:1 / 4;display:flex;gap:8px}.trade-layout-v2 .trade-panel{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;overflow:hidden;min-height:0}.trade-layout-v2 .trade-panel .panel-hd{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border-color);background:#fafbfc;flex-shrink:0;font-size:12px;font-weight:600}.trade-layout-v2 .trade-panel .panel-bd{flex:1;overflow-y:auto;padding:8px 10px;font-size:12px}.product-detail{display:flex;flex-direction:column;gap:3px}.product-detail .pd-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0;font-size:11px}.product-detail .pd-symbol{font-size:16px;font-weight:700}.product-detail .pd-name{font-size:11px;color:var(--text-secondary)}.product-detail .pd-price{font-size:22px;font-weight:700}.product-detail .pd-change{font-size:13px;font-weight:600}.product-detail .pd-label{color:var(--text-secondary)}.product-detail .pd-value{font-weight:500;text-align:right}.tick-row{display:flex;align-items:center;justify-content:space-between;padding:2px 0;border-bottom:1px solid #F8F8F8;font-size:11px;font-family:Consolas,Monaco,monospace}.tick-row .tick-time{color:var(--text-muted);width:50px}.tick-row .tick-price{flex:1;text-align:center;font-weight:500}.tick-row .tick-vol{width:60px;text-align:right;color:var(--text-secondary)}.tick-up{color:var(--up-color)}.tick-down{color:var(--down-color)}.orderbook-container{display:flex;flex-direction:column;gap:4px;height:100%}.orderbook-header{display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted);padding:0 4px}.orderbook-header span{width:33%;text-align:center}.orderbook-bids,.orderbook-asks{flex:1;overflow-y:auto}.orderbook-row{display:flex;align-items:center;justify-content:space-between;padding:1px 4px;font-size:11px;font-family:Consolas,Monaco,monospace;cursor:pointer;position:relative}.orderbook-row .ob-price{width:33%;text-align:left}.orderbook-row .ob-size{width:33%;text-align:center}.orderbook-row .ob-total{width:33%;text-align:right;color:var(--text-muted)}.orderbook-row.bid .ob-price{color:var(--up-color)}.orderbook-row.ask .ob-price{color:var(--down-color)}.orderbook-row .ob-bar{position:absolute;right:0;top:0;bottom:0;opacity:.12;z-index:0}.orderbook-row.bid .ob-bar{background:var(--up-color);left:0;right:auto}.orderbook-row.ask .ob-bar{background:var(--down-color)}.orderbook-row span{position:relative;z-index:1}.orderbook-row:hover{background:#165dff14}.orderbook-row.flash{animation:ob-flash .5s ease}@keyframes ob-flash{0%{background:#165dff33}to{background:transparent}}.ob-hover-tip{display:none;position:absolute;right:105%;top:50%;transform:translateY(-50%);padding:4px 8px;background:#000000d1;color:#fff;font-size:10px;border-radius:var(--radius-sm);white-space:nowrap;z-index:10;pointer-events:none;font-family:var(--font-family)}.orderbook-row:hover .ob-hover-tip{display:block}.ob-donut{width:60px;height:60px;border-radius:50%;margin:4px auto;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.unfilled-item{display:flex;align-items:center;justify-content:space-between;padding:4px 0;border-bottom:1px solid #F5F5F5;font-size:11px}.unfilled-item .uf-type{font-weight:600;width:30px}.unfilled-item .uf-info{flex:1;text-align:center}.unfilled-item .uf-time{color:var(--text-muted);width:55px;text-align:right;font-size:10px}.action-row{display:flex;gap:6px;margin-top:6px}.action-row .btn{flex:1;font-size:11px;height:28px}.indicator-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.indicator-chip{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-size:12px;text-align:center;transition:all var(--transition-fast)}.indicator-chip:hover{border-color:var(--brand-primary);background:var(--brand-light)}.indicator-chip.active{border-color:var(--brand-primary);background:var(--brand-light);color:var(--brand-primary);font-weight:600}.challenge-hero{background:linear-gradient(135deg,#1a1d2e,#2d3148);border-radius:var(--radius-lg);padding:40px 48px;color:#fff;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between}.challenge-hero h2{font-size:24px;color:#fff;margin-bottom:8px}.challenge-hero p{color:#a0a4b8;font-size:14px;max-width:500px}.difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.difficulty-card{background:var(--bg-white);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:28px 24px;text-align:center;cursor:pointer;transition:all var(--transition-normal)}.difficulty-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.difficulty-card.selected{border-color:var(--brand-primary);box-shadow:0 0 0 3px #165dff1a}.difficulty-card.easy.selected{border-color:var(--success);box-shadow:0 0 0 3px #22c55e1a}.difficulty-card.hard.selected{border-color:var(--danger);box-shadow:0 0 0 3px #f53f3f1a}.difficulty-card .diff-icon{font-size:36px;margin-bottom:12px}.difficulty-card .diff-name{font-size:18px;font-weight:700;margin-bottom:4px}.difficulty-card .diff-desc{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.difficulty-card .diff-rules{text-align:left;font-size:11px}.difficulty-card .diff-rules li{padding:3px 0;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.challenge-btn{min-width:180px;height:44px;font-size:16px}.challenge-timer{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:700;font-family:Consolas,Monaco,monospace;color:var(--text-primary)}.challenge-timer.warning{color:var(--warning);animation:pulse 1s infinite}.challenge-timer.danger{color:var(--danger);animation:pulse .5s infinite}.leaderboard-table{width:100%}.leaderboard-table td{font-size:13px}.leaderboard-rank{font-weight:700;font-size:16px}.leaderboard-rank.top1{color:#f59e0b}.leaderboard-rank.top2{color:#9ca3af}.leaderboard-rank.top3{color:peru}.leaderboard-user{display:flex;align-items:center;gap:8px}.leaderboard-avatar{width:28px;height:28px;border-radius:50%;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-secondary)}.reveal-card{background:linear-gradient(135deg,#fffbeb,#fff7ed);border:2px solid #F59E0B;border-radius:var(--radius-lg);padding:28px 32px;text-align:center;margin-bottom:24px}.reveal-card .reveal-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.reveal-card .reveal-symbol{font-size:32px;font-weight:700;margin:4px 0}.reveal-card .reveal-date{font-size:14px;color:var(--text-secondary)}.reward-banner{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #F59E0B;border-radius:var(--radius-md);padding:20px 28px;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.reward-banner .reward-text h4{color:#92400e}.reward-banner .reward-text p{font-size:13px;color:#a16207}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.page-transition{animation:fadeIn .25s ease}@media (min-width: 1600px){.content-wrapper{max-width:1600px}.home-grid{grid-template-columns:1fr 360px}.home-entry-cards{gap:24px}.card-entry{padding:28px}.card-entry h3{font-size:17px}.card-entry p{font-size:14px}.terminal-body{font-size:13px}.terminal-topbar{font-size:14px;padding:0 24px}.terminal-panel .tp-hd{padding:6px 12px;font-size:12px}.terminal-panel .tp-bd{padding:10px}.period-switch-group button{padding:4px 14px;font-size:12px}.ticker-item{font-size:14px}.main-content{padding:32px 48px}table{font-size:14px}th,td{padding:10px 16px}.stat-card{padding:20px 24px}.auth-card-v2{width:460px;padding:52px 48px}.auth-card-v2 h2{font-size:24px}.auth-card-v2 input{height:44px;font-size:15px}.auth-card-v2 .btn{height:46px;font-size:16px}}@media (min-width: 2000px){.content-wrapper{max-width:1800px}.home-grid{grid-template-columns:1fr 400px}}@media (max-width: 1400px){.home-grid,.trade-layout{grid-template-columns:1fr 280px}.metrics-grid{grid-template-columns:repeat(3,1fr)}.config-form{max-width:900px}}@media (max-width: 1200px){.home-grid{grid-template-columns:1fr}.home-entry-cards{grid-template-columns:repeat(2,1fr)}.home-ticker-track{font-size:12px}.pricing-grid,.profile-layout,.charts-grid{grid-template-columns:1fr}.content-wrapper{max-width:100%}.main-content{padding:20px 24px}.trade-layout{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3{grid-template-columns:1fr}.navbar-nav .nav-item{padding:8px 10px;font-size:12px}.navbar-left{gap:20px}.navbar{padding:0 20px}}@media (max-width: 1024px){.terminal-body{grid-template-columns:1fr 1fr;grid-template-rows:55fr 25fr 20fr;gap:4px;padding:4px;font-size:11px}.terminal-chart{grid-row:1/2;grid-column:1/3}.terminal-orderbook{grid-row:2/3;grid-column:1/2}.terminal-trade-panel{grid-row:2/3;grid-column:2/3}.terminal-trades{grid-row:3/4;grid-column:1/2}.terminal-positions{grid-row:3/4;grid-column:2/3}.terminal-indicators{display:none}.terminal-topbar{font-size:12px;padding:0 12px}.terminal-panel .tp-hd{padding:4px 8px;font-size:11px}.terminal-panel .tp-bd{padding:6px}.terminal-topbar .tt-price{font-size:15px}.trade-layout{grid-template-columns:1fr;grid-template-rows:auto}.metrics-grid{grid-template-columns:repeat(2,1fr)}.navbar-nav .nav-item{font-size:11px;padding:6px 8px}.navbar-left{gap:12px}.navbar-logo{font-size:16px}.auth-card-v2{width:380px;padding:36px 30px}.auth-card-v2 h2{font-size:20px}.config-section{padding:16px}.config-form{max-width:100%}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:600px}.result-summary{flex-wrap:wrap;gap:12px}}@media (max-width: 768px){.main-content{padding:16px}.page-header{flex-wrap:wrap;gap:8px;margin-bottom:16px}.page-header h1{font-size:18px}.content-wrapper{padding:0}.navbar{padding:0 16px}.navbar-logo{font-size:15px}.navbar-logo .logo-icon{width:26px;height:26px;font-size:14px}.navbar-nav .nav-item{padding:6px;font-size:10px}.navbar-right{gap:8px}.nav-back-btn{font-size:12px}.home-entry-cards{grid-template-columns:1fr}.home-ticker{padding:6px 0}.ticker-item{font-size:11px}.user-info-panel{font-size:13px}.auth-card-v2{width:340px;max-width:92vw;padding:28px 22px}.auth-card-v2 h2{font-size:18px}.auth-logo-v2 .logo-icon-v2{width:40px;height:40px;font-size:20px}.auth-card-v2 input{height:36px;font-size:13px}.auth-card-v2 .btn{height:38px;font-size:14px}.social-btn{font-size:11px;height:36px}.terminal-body{grid-template-columns:1fr;grid-template-rows:45fr 20fr 20fr 15fr;font-size:10px}.terminal-chart{grid-row:1/2;grid-column:1/2}.terminal-orderbook{grid-row:2/3;grid-column:1/2}.terminal-trades{grid-row:3/4;grid-column:1/2}.terminal-positions{grid-row:4/5;grid-column:1/2}.terminal-trade-panel,.terminal-indicators{display:none}.terminal-topbar{font-size:11px;height:32px;padding:0 8px}.terminal-topbar .tt-price{font-size:13px}.period-switch-group button{padding:2px 6px;font-size:10px}.modal-content{width:92vw;max-width:440px;padding:20px}.modal-title{font-size:16px}.modal-body{font-size:13px}table{min-width:480px;font-size:12px}th,td{padding:6px 10px}.radio-group{flex-direction:column;gap:6px}.config-section h4{font-size:14px}.result-header{flex-wrap:wrap;gap:10px}.result-stats{grid-template-columns:repeat(2,1fr)}.chart-container{min-height:280px}.toast{min-width:auto;max-width:85vw;font-size:12px;padding:10px 16px}.auth-footer{font-size:12px}}@media (max-width: 480px){.main-content{padding:12px}.page-header h1{font-size:16px}.page-header{margin-bottom:12px}.navbar{padding:0 10px;height:48px}:root{--nav-height: 48px}.navbar-nav{gap:0}.navbar-nav .nav-item{padding:4px 5px;font-size:9px}.navbar-logo{font-size:13px;gap:4px}.navbar-logo .logo-icon{width:22px;height:22px;font-size:12px}.navbar-right{gap:4px}.navbar-right .btn{padding:4px 8px;font-size:10px}.nav-back-btn{font-size:10px;padding:4px 8px}.auth-card-v2{width:100%;max-width:94vw;padding:24px 16px;border-radius:12px}.auth-card-v2 h2{font-size:16px}.auth-logo-v2 .logo-icon-v2{width:36px;height:36px;font-size:18px;margin-bottom:6px}.auth-card-v2 input{height:34px;font-size:12px}.auth-card-v2 .btn{height:36px;font-size:13px}.auth-card-v2 .form-group{margin-bottom:10px}.social-login{gap:8px}.social-btn{font-size:10px;height:34px}.home-ticker{margin-bottom:12px}.ticker-item{font-size:10px}.card-entry{padding:14px}.card-entry h3{font-size:13px}.card-entry p{font-size:11px}.card-entry .entry-icon{width:42px;height:42px;font-size:20px;margin-bottom:10px}.stat-card{padding:12px 14px}.stat-value{font-size:20px!important}.terminal-body{grid-template-columns:1fr;grid-template-rows:55fr 25fr 20fr;font-size:9px}.terminal-chart{grid-row:1/2}.terminal-orderbook{grid-row:2/3}.terminal-positions{grid-row:3/4}.terminal-trades{display:none}.terminal-topbar{font-size:10px;height:28px}.modal-content{padding:16px;border-radius:10px}.modal-title{font-size:14px}.modal-body{font-size:12px;max-height:50vh}.modal-footer{gap:8px}.modal-footer .btn{padding:8px 14px;font-size:12px}table{min-width:400px;font-size:11px}th,td{padding:4px 8px}.config-form{gap:12px}.config-section{padding:12px}.form-group label{font-size:12px}input,select,textarea{font-size:13px;padding:6px 10px}.result-stats{grid-template-columns:1fr}.toast-container{top:12px;right:12px}.toast{font-size:11px;padding:8px 12px}.chart-container{min-height:240px}}@media (max-width: 360px){.navbar-nav .nav-item{font-size:8px;padding:3px 4px}.navbar-logo{font-size:12px}.auth-card-v2{padding:20px 12px}.auth-card-v2 h2{font-size:15px}.auth-slogan{font-size:11px}.home-entry-cards{gap:8px}.card-entry{padding:10px}.modal-content{padding:12px}}.hidden{display:none!important}.text-center{text-align:center}.text-right{text-align:right}.font-bold{font-weight:700}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.cursor-pointer{cursor:pointer}.w-full{width:100%}.relative{position:relative}.chart-tooltip{position:fixed;background:var(--text-primary);color:#fff;padding:8px 12px;border-radius:var(--radius-sm);font-size:12px;pointer-events:none;z-index:500;display:none;line-height:1.6}.chart-context-menu{position:fixed;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;min-width:180px;padding:6px 0;display:none;font-size:12px}.chart-context-menu .ctx-section{padding:4px 12px;font-size:10px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.chart-context-menu .ctx-item{display:flex;align-items:center;gap:8px;padding:7px 14px;cursor:pointer;transition:background var(--transition-fast);color:var(--text-primary)}.chart-context-menu .ctx-item:hover{background:var(--bg-primary)}.chart-context-menu .ctx-item.active{color:var(--brand-primary);font-weight:600}.chart-context-menu .ctx-item .ctx-icon{width:16px;text-align:center;font-size:13px}.chart-context-menu .ctx-divider{height:1px;background:var(--border-color);margin:4px 0}.auth-page-v2{display:flex;align-items:center;justify-content:center;height:100vh;position:relative;overflow:hidden;perspective:1200px}.auth-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:#000;z-index:0;transition:background .3s ease}body[data-auth-mode=light] .auth-bg{background:#fff}body[data-auth-mode=dark] .auth-bg{background:#000}.auth-lightbulb{position:fixed;top:20px;right:20px;z-index:10;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:#ffffff14;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease,transform .2s ease,background .2s ease,filter .2s ease;opacity:.55;filter:grayscale(1) brightness(.85);-webkit-user-select:none;user-select:none}.auth-lightbulb:hover{opacity:1;transform:scale(1.05)}body[data-auth-mode=light] .auth-lightbulb{background:#0000000a;border-color:#00000014;opacity:1;filter:none}body[data-auth-mode=light] .auth-card-v2{background:#fff;box-shadow:0 20px 60px #0000001f,0 0 0 1px #0000000d}body[data-auth-mode=dark] .auth-card-v2{background:#fffffff5;box-shadow:0 20px 60px #0009,0 0 0 1px #ffffff0f}.auth-card-v2{background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 20px 60px #0003,0 0 0 1px #ffffff4d;padding:44px 40px;width:420px;max-width:95vw;position:relative;z-index:2;transform-style:preserve-3d;transition:transform .15s ease-out,box-shadow .15s ease-out;animation:authSlideUp .6s cubic-bezier(.16,1,.3,1)}.auth-card-v2:hover{box-shadow:0 30px 80px #00000040,0 0 0 1px #ffffff59,0 0 60px #2563eb14}.auth-card-v2.card-flip-out{animation:cardFlipOut .35s ease-in forwards}.auth-card-v2.card-flip-in{animation:cardFlipIn .4s ease-out forwards}@keyframes cardFlipOut{to{opacity:0;transform:rotateY(90deg) scale(.92)}}@keyframes cardFlipIn{0%{opacity:0;transform:rotateY(-90deg) scale(.92)}to{opacity:1;transform:rotateY(0) scale(1)}}@keyframes authSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-card-v2 .btn-primary{position:relative;overflow:hidden}.auth-card-v2 .btn-primary:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:skew(-20deg);animation:btnShimmer 3s ease-in-out infinite}@keyframes btnShimmer{0%,to{left:-100%}50%{left:150%}}.auth-card-v2 input{transition:all .25s ease}.auth-card-v2 input:focus{box-shadow:0 0 0 3px #2563eb1f,0 0 12px #2563eb0f}[data-theme="4"] .auth-card-v2{background:#1e2228f0;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff14}[data-theme="4"] .auth-card-v2:hover{box-shadow:0 30px 80px #0009,0 0 0 1px #ffffff1f,0 0 60px #3b82f61f}[data-theme="4"] .auth-card-v2 input{background:#282c34cc;color:#e5e7eb}[data-theme="4"] .auth-card-v2 input:focus{background:#323741e6;box-shadow:0 0 0 3px #3b82f626,0 0 12px #3b82f614}[data-theme="4"] .auth-card-v2 h2{color:#e5e7eb}[data-theme="4"] .auth-slogan,[data-theme="4"] .auth-footer{color:#9ca3af}.auth-card-v2 .auth-logo-v2{text-align:center;margin-bottom:24px}.auth-card-v2 .auth-logo-v2 .logo-icon-v2{width:52px;height:52px;background:linear-gradient(135deg,#0f2e68,#1e40af);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:26px;font-weight:700;margin-bottom:10px;box-shadow:0 8px 24px #0f2e684d}.auth-slogan{color:var(--text-secondary);font-size:13px;margin-top:4px}.auth-card-v2 .form-group{margin-bottom:14px}.auth-card-v2 input{height:40px;border-radius:8px;background:#f5f7facc;border:1px solid var(--border-color);transition:all .2s ease}.auth-card-v2 input:focus{border-color:#1e40af;box-shadow:0 0 0 3px #1e40af1a;background:#fff}.auth-card-v2 .btn{height:42px;border-radius:8px;font-size:15px;font-weight:600;transition:all .2s ease}.auth-card-v2 .btn-primary{background:linear-gradient(135deg,#0f2e68,#1e40af)}.auth-card-v2 .btn-primary:hover{background:linear-gradient(135deg,#0a2350,#163a8f);transform:scale(1.02);box-shadow:0 4px 16px #0f2e684d}.auth-card-v2 .social-btn{height:42px;border-radius:8px;background:#fff9}.auth-card-v2 .social-btn:hover{transform:scale(1.02)}.guide-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:5000;pointer-events:all}.guide-spotlight{position:absolute;box-shadow:0 0 0 9999px #000000b3;border-radius:8px;transition:all .4s cubic-bezier(.16,1,.3,1);pointer-events:none;z-index:5001}.guide-tooltip{position:absolute;background:var(--bg-white);border-radius:12px;box-shadow:0 16px 48px #00000040;padding:20px 24px;width:320px;z-index:5002;transition:all .4s cubic-bezier(.16,1,.3,1)}.guide-tooltip:before{content:"";position:absolute;width:14px;height:14px;background:var(--bg-white);transform:rotate(45deg)}.guide-tooltip.arrow-top:before{bottom:-7px;left:50%;margin-left:-7px}.guide-tooltip.arrow-bottom:before{top:-7px;left:50%;margin-left:-7px}.guide-tooltip.arrow-left:before{right:-7px;top:50%;margin-top:-7px}.guide-step-indicator{font-size:12px;color:var(--text-muted);margin-bottom:8px}.guide-step-title{font-size:16px;font-weight:700;margin-bottom:6px}.guide-step-desc{font-size:13px;color:var(--text-secondary);margin-bottom:16px;line-height:1.6}.guide-actions{display:flex;align-items:center;justify-content:space-between}.guide-skip{font-size:13px;color:var(--text-muted);cursor:pointer;border:none;background:transparent;font-family:var(--font-family);padding:4px 8px}.guide-skip:hover{color:var(--text-secondary)}.learn-hero{background:linear-gradient(135deg,#eef2ff,#e8f0fe);border-radius:var(--radius-lg);padding:36px 40px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between}.learn-hero h2{font-size:22px;margin-bottom:4px}.learn-hero .learn-subtitle{color:var(--text-secondary);font-size:13px}.learn-hero .learn-badge{background:#fef3c7;color:#92400e;padding:6px 14px;border-radius:16px;font-size:12px;font-weight:600}.category-filters{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.category-chip{padding:8px 18px;border-radius:20px;border:1px solid var(--border-color);cursor:pointer;font-size:13px;background:var(--bg-white);transition:all var(--transition-fast);display:flex;align-items:center;gap:6px;font-family:var(--font-family)}.category-chip:hover{border-color:var(--brand-primary)}.category-chip.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.category-chip .cat-count{font-size:11px;opacity:.7}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.course-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:all var(--transition-normal)}.course-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.course-card .course-cover{height:140px;display:flex;align-items:center;justify-content:center;font-size:48px;position:relative}.course-card .course-tag{position:absolute;top:10px;right:10px;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:600}.course-tag.free{background:#f0fdf4;color:#16a34a}.course-tag.premium{background:#fef3c7;color:#92400e}.course-card .course-info{padding:14px 16px}.course-card .course-name{font-size:15px;font-weight:600;margin-bottom:4px}.course-card .course-desc{font-size:12px;color:var(--text-secondary);margin-bottom:10px;line-height:1.5}.course-card .course-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-muted)}.learn-sidebar{display:flex;flex-direction:column;gap:16px}.learn-sidebar-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px}.learn-sidebar-card h4{font-size:14px;margin-bottom:10px}.learn-progress-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:12px}.learn-progress-item .lp-name{flex:1}.learn-progress-item .lp-pct{font-weight:600;color:var(--brand-primary);width:40px;text-align:right}.course-list-hero{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:16px}.course-list-hero h2{font-size:22px;margin-bottom:4px}.course-list-hero .cl-subtitle{color:var(--text-secondary);font-size:13px}.course-list-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md)}.course-search-input{flex:1;min-width:200px;height:34px;padding:0 12px 0 32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);font-size:13px;color:var(--text-primary)}.course-search-wrap{position:relative;flex:1;min-width:200px}.course-search-wrap .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--text-muted);pointer-events:none}.course-filter-select{height:34px;padding:0 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);font-size:12px;color:var(--text-primary);cursor:pointer}.course-sort-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-white);font-size:12px;cursor:pointer;color:var(--text-primary);transition:all var(--transition-fast);white-space:nowrap}.course-sort-btn:hover,.course-sort-btn.active{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-light)}.course-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.course-list-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:all var(--transition-normal);display:flex;flex-direction:column}.course-list-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.course-list-card .clc-cover{height:120px;display:flex;align-items:center;justify-content:center;font-size:44px;position:relative;background:var(--bg-primary)}.course-list-card .clc-body{padding:14px 16px;flex:1;display:flex;flex-direction:column}.course-list-card .clc-title{font-size:15px;font-weight:600;margin-bottom:6px}.course-list-card .clc-desc{font-size:12px;color:var(--text-secondary);line-height:1.5;flex:1;margin-bottom:10px}.course-list-card .clc-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-muted)}.course-list-card .clc-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-top:1px solid var(--border-color)}.course-list-empty{text-align:center;padding:48px 24px;color:var(--text-muted)}.course-list-empty .cle-icon{font-size:48px;margin-bottom:12px}.course-detail-hero{display:grid;grid-template-columns:280px 1fr;gap:28px;margin-bottom:24px}.course-detail-cover{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-lg);height:200px;display:flex;align-items:center;justify-content:center;font-size:64px}.course-detail-info h2{margin-bottom:8px}.course-detail-info .course-stats{display:flex;gap:20px;font-size:13px;color:var(--text-secondary);margin-bottom:12px}.course-detail-info .course-stats span{display:flex;align-items:center;gap:4px}.syllabus-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:8px;cursor:pointer;transition:all var(--transition-fast)}.syllabus-item:hover{background:var(--bg-primary)}.syllabus-item.completed{border-left:3px solid var(--success)}.syllabus-item.current{border-left:3px solid var(--brand-primary);background:var(--brand-light)}.syllabus-num{width:30px;height:30px;border-radius:50%;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.syllabus-item.completed .syllabus-num{background:var(--success-light);color:var(--success)}.syllabus-title{flex:1;font-size:13px;font-weight:500}.syllabus-meta{font-size:11px;color:var(--text-muted)}.course-learn-layout{display:grid;grid-template-columns:1fr 300px;gap:24px}.course-content-area{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:28px 32px;min-height:500px}.course-content-area h2{margin-bottom:16px}.course-content-body{font-size:14px;line-height:1.9;color:var(--text-primary)}.course-content-body .content-block{margin-bottom:20px;padding:16px;background:var(--bg-primary);border-radius:var(--radius-sm);border-left:3px solid var(--brand-primary)}.course-content-body .content-block.warning-block{border-left-color:var(--warning);background:var(--warning-light)}.course-content-body ul{padding-left:20px}.course-content-body li{margin-bottom:6px}.course-learn-sidebar{display:flex;flex-direction:column;gap:16px}.course-outline-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px}.course-outline-card h4{margin-bottom:10px;font-size:14px}.outline-item{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:12px;border-radius:4px;cursor:pointer;transition:all var(--transition-fast)}.outline-item:hover{background:var(--bg-primary)}.outline-item.active{background:var(--brand-light);color:var(--brand-primary);font-weight:600}.outline-item.completed{color:var(--success)}.course-nav-btns{display:flex;justify-content:space-between;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}[data-theme="2"]{--bg-primary: #E8ECEA;--bg-white: #EEF1EF;--border-color: #D1D6D3;--text-primary: #1A1F1C;--text-secondary: #5B6B60;--text-muted: #889990;--brand-primary: #0F766E;--brand-hover: #0D5F58;--brand-light: #E6F4F1;--success: #0F766E;--success-light: #ECF5F2;--danger: #DC2626;--danger-light: #FEF2F2;--warning: #B45309;--warning-light: #FFF7ED;--disabled-bg: #D1D6D3;--disabled-text: #889990;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 1px 3px rgba(0,0,0,.05);--shadow-lg: 0 4px 14px rgba(0,0,0,.07);--shadow-modal: 0 8px 30px rgba(0,0,0,.1);--up-color: #0F766E;--down-color: #DC2626}[data-theme="3"]{--bg-primary: #F9F6F2;--bg-white: #FEFCF9;--border-color: #E7E2DB;--text-primary: #1C1917;--text-secondary: #6B5E53;--text-muted: #9C8F84;--brand-primary: #B45309;--brand-hover: #92400E;--brand-light: #FFF3EB;--success: #059669;--success-light: #ECFDF5;--danger: #DC2626;--danger-light: #FEF2F2;--warning: #D97706;--warning-light: #FFF7ED;--disabled-bg: #E7E2DB;--disabled-text: #9C8F84;--shadow-sm: 0 1px 2px rgba(0,0,0,.03);--shadow-md: 0 1px 3px rgba(0,0,0,.04);--shadow-lg: 0 4px 12px rgba(0,0,0,.06);--shadow-modal: 0 8px 28px rgba(0,0,0,.1);--up-color: #059669;--down-color: #DC2626}[data-theme="4"]{--bg-primary: #181C22;--bg-white: #1F2329;--border-color: #2C3036;--text-primary: #F1F5F9;--text-secondary: #94A3B8;--text-muted: #64748B;--brand-primary: #3B82F6;--brand-hover: #60A5FA;--brand-light: rgba(59,130,246,.15);--success: #10B981;--success-light: rgba(16,185,129,.12);--danger: #EF4444;--danger-light: rgba(239,68,68,.12);--warning: #F59E0B;--warning-light: rgba(245,158,11,.12);--disabled-bg: #2C3036;--disabled-text: #64748B;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 1px 3px rgba(0,0,0,.4);--shadow-lg: 0 4px 16px rgba(0,0,0,.5);--shadow-modal: 0 8px 32px rgba(0,0,0,.6);--up-color: #00B42A;--down-color: #F53F3F}[data-theme="4"] ::-webkit-scrollbar-thumb{background:#3c4048;border-radius:3px}[data-theme="4"] ::-webkit-scrollbar-thumb:hover{background:#555960}[data-theme="4"] .navbar{background:#1a1e26;border-bottom-color:#2c3036}[data-theme="4"] .card,[data-theme="4"] .modal-content{background:#1f2329;border-color:#2c3036}[data-theme="4"] .modal-header{border-bottom-color:#2c3036}[data-theme="4"] .btn-outline{border-color:#3c4048;color:#cbd5e1}[data-theme="4"] .btn-outline:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-light)}[data-theme="4"] input,[data-theme="4"] select,[data-theme="4"] textarea{background:#22262d;border-color:#2c3036;color:#f1f5f9}[data-theme="4"] input::placeholder,[data-theme="4"] textarea::placeholder{color:#64748b}[data-theme="4"] input:focus,[data-theme="4"] select:focus,[data-theme="4"] textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px #3b82f640}[data-theme="4"] .table th{background:#22262d;color:#94a3b8;border-bottom-color:#2c3036}[data-theme="4"] .table td,[data-theme="4"] .page-header{border-bottom-color:#2c3036}[data-theme="4"] .tag{background:#ffffff14;color:#94a3b8}[data-theme="4"] .divider{background:#2c3036}[data-theme="4"] .user-dropdown{background:#1f2329;border-color:#2c3036}[data-theme="4"] .user-dropdown a{color:#cbd5f1}[data-theme="4"] .user-dropdown a:hover{background:#22262d;color:#fff}[data-theme="4"] .toast{background:#22262d;color:#f1f5f9}[data-theme="4"] .badge-outline{border-color:#3c4048;color:#94a3b8}[data-theme="4"] .guide-tooltip{background:#22262d;color:#f1f5f9;border-color:#2c3036}.theme-switch-btn{width:32px;height:32px;border-radius:50%;border:2px solid var(--border-color);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;background:var(--bg-white);transition:all var(--transition-fast);margin-right:12px;position:relative}.theme-switch-btn:hover{border-color:var(--brand-primary);transform:scale(1.05)}.theme-swatch{width:16px;height:16px;border-radius:50%}.theme-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.theme-option{padding:16px 12px;border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;text-align:center;transition:all var(--transition-fast)}.theme-option:hover{border-color:var(--brand-primary)}.theme-option.active{border-color:var(--brand-primary);background:var(--brand-light)}.theme-option .theme-preview{display:flex;gap:3px;margin-bottom:8px;justify-content:center}.theme-option .theme-dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.streak-display{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--brand-light);border-radius:20px;font-size:13px;font-weight:600;color:var(--brand-primary);cursor:default;position:relative}.streak-display:hover .streak-tooltip{display:block}.streak-icon{font-size:18px}.streak-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--text-primary);color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:400;white-space:nowrap;z-index:100}.streak-detail{display:flex;align-items:center;gap:12px;margin-bottom:12px}.streak-detail .streak-icon-lg{font-size:36px}.streak-achievements{margin-top:8px}.streak-achievement-item{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px}.trade-layout-v3{display:grid;grid-template-columns:1fr 340px 240px;grid-template-rows:1fr 200px;gap:10px;height:calc(100vh - var(--nav-height) - 130px)}.trade-layout-v3 .col-chart{grid-row:1 / 2;grid-column:1 / 2;display:flex;flex-direction:column;gap:8px}.trade-layout-v3 .col-trade{grid-row:1 / 2;grid-column:2 / 3;display:flex;flex-direction:column;gap:8px}.trade-layout-v3 .col-bottom{grid-row:2 / 3;grid-column:1 / 3;display:flex;gap:10px}.trade-layout-v3 .col-bottom .trade-panel{flex:1}.trade-layout-v3 .col-bottom .trade-panel:last-child{flex:0 0 280px}.trade-layout-v3 .col-info{grid-row:1 / 3;grid-column:3 / 4;display:flex;flex-direction:column;gap:8px}.trade-layout-v3 .trade-panel{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;overflow:hidden}.trade-layout-v3 .trade-panel .panel-hd{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border-color);font-size:12px;font-weight:600;background:var(--bg-primary)}.trade-layout-v3 .trade-panel .panel-bd{flex:1;overflow-y:auto;padding:8px 10px;font-size:12px}.volume-chart-container{height:80px;border-top:1px solid var(--border-color);position:relative}.volume-chart-container canvas{width:100%;height:100%}.depth-chart-container{position:relative;width:100%;height:100%;min-height:160px}.depth-chart-container canvas{width:100%;height:100%}.depth-hover-tip{position:absolute;padding:6px 10px;background:#000000d9;color:#fff;font-size:11px;border-radius:var(--radius-sm);pointer-events:none;white-space:nowrap;z-index:100;display:none;line-height:1.6}.depth-hover-tip .dt-label{color:#9ca3af}.depth-hover-tip .dt-bid{color:var(--up-color)}.depth-hover-tip .dt-ask{color:var(--down-color)}.btn-buy-v2{background:var(--success)!important;color:#fff!important;font-weight:700;flex:1;height:42px;border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:15px;transition:all var(--transition-fast)}.btn-buy-v2:hover{background:#16a34a!important;transform:scale(1.01);box-shadow:0 2px 8px #22c55e4d}.btn-sell-v2{background:var(--danger)!important;color:#fff!important;font-weight:700;flex:1;height:42px;border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:15px;transition:all var(--transition-fast)}.btn-sell-v2:hover{background:#dc2626!important;transform:scale(1.01);box-shadow:0 2px 8px #f53f3f4d}.order-confirm-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.order-confirm-grid .oc-label{font-size:12px;color:var(--text-secondary)}.order-confirm-grid .oc-value{font-size:14px;font-weight:600}.indicator-block{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;min-height:120px;animation:fadeIn .2s ease}.indicator-block .ind-title{font-size:12px;font-weight:700;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.indicator-block .ind-row{display:flex;justify-content:space-between;padding:2px 0}.indicator-block .ind-val{font-weight:600}.indicator-block .ind-val.up{color:var(--up-color)}.indicator-block .ind-val.down{color:var(--down-color)}.price-alert{position:absolute;font-size:11px;font-weight:700;pointer-events:none;animation:priceAlertFade 2s ease-out forwards;z-index:10}.price-alert.up{color:var(--up-color)}.price-alert.down{color:var(--down-color)}@keyframes priceAlertFade{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}.position-item-v2{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast);font-size:12px}.position-item-v2:hover{background:var(--bg-primary)}.position-item-v2:last-child{border-bottom:none}.period-switch-group{display:inline-flex;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.period-switch-group button{padding:4px 10px;border:none;background:var(--bg-white);cursor:pointer;font-size:11px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast)}.period-switch-group button:hover{background:var(--bg-primary);color:var(--text-primary)}.period-switch-group button.active{background:var(--brand-primary);color:#fff}.period-switch-group button+button{border-left:1px solid var(--border-color)}.auth-page-mode{overflow:hidden}.auth-page-mode #navbar{display:none!important}.auth-page-mode #app-root{height:100vh}.auth-page-mode .main-content{margin-top:0!important;padding:0!important;max-width:none!important;height:100vh;overflow:hidden}.auth-page-mode .content-wrapper{max-width:none!important;padding:0!important;height:100%}.fullscreen-trade{overflow:hidden}.fullscreen-trade #navbar{display:none!important}.fullscreen-trade #app-root{height:100vh}.fullscreen-trade .main-content{margin-top:0!important;padding:0!important;max-width:none!important;height:100vh;overflow:hidden}.fullscreen-trade .content-wrapper{max-width:none!important;padding:0!important;height:100%}.fullscreen-trade .toast-container{z-index:10000}.trade-terminal{display:flex;flex-direction:column;height:100vh;width:100vw;background:var(--bg-primary);overflow:hidden;font-size:12px}.terminal-topbar{display:flex;align-items:center;gap:12px;height:32px;padding:0 8px;background:var(--bg-white);border-bottom:1px solid var(--border-color);flex-shrink:0;font-size:12px}.terminal-topbar .tt-symbol{font-weight:700;font-size:13px}.terminal-topbar .tt-price{font-size:14px;font-weight:700}.terminal-topbar .tt-change{font-size:11px}.terminal-topbar .tt-ohlc{font-size:10px;margin-left:auto;display:flex;gap:8px}.terminal-topbar .tt-ohlc span{white-space:nowrap}.terminal-topbar .tt-ohlc .ohl{color:var(--text-secondary)}.terminal-topbar .tt-sep{width:1px;height:18px;background:var(--border-color)}.terminal-body{flex:1;display:grid;grid-template-columns:1fr 2fr 1fr;grid-template-rows:70fr 30fr;gap:2px;background:var(--border-color);overflow:hidden}.terminal-body>*{overflow:hidden}.terminal-panel{display:flex;flex-direction:column;background:var(--bg-white);overflow:hidden}.terminal-panel .tp-hd{display:flex;align-items:center;justify-content:space-between;padding:2px 8px;border-bottom:1px solid var(--border-color);font-size:10px;font-weight:600;color:var(--text-secondary);background:var(--bg-primary);flex-shrink:0;height:22px;line-height:1}.terminal-panel .tp-bd{flex:1;overflow-y:auto;font-size:11px;padding:2px 0}.terminal-trades{grid-row:1/2;grid-column:1/2}.tick-row{display:flex;align-items:center;gap:6px;padding:1px 8px;font-size:10px;font-family:Consolas,Monaco,monospace;border-bottom:1px solid rgba(128,128,128,.06)}.tick-row .t-time{color:var(--text-muted);font-size:9px;min-width:50px}.tick-row .t-price{font-weight:600;min-width:50px}.tick-row .t-vol{color:var(--text-muted);font-size:9px;text-align:right;min-width:40px}.tick-row .t-side{font-size:9px;font-weight:600;min-width:28px;text-align:center}.tick-row.buy .t-price,.tick-row.buy .t-side{color:var(--up-color)}.tick-row.sell .t-price,.tick-row.sell .t-side{color:var(--down-color)}.terminal-positions{grid-row:2/3;grid-column:1/2}.pos-row{display:flex;align-items:center;justify-content:space-between;padding:3px 8px;font-size:10px;border-bottom:1px solid rgba(128,128,128,.06);cursor:pointer}.pos-row:hover{background:var(--bg-primary)}.pos-row .pos-sym{font-weight:600}.pos-row .pos-info{color:var(--text-secondary);font-size:9px}.pos-row .pos-flat{padding:1px 8px;border:1px solid var(--border-color);border-radius:2px;font-size:9px;cursor:pointer;background:var(--bg-white);color:var(--text-secondary)}.pos-row .pos-flat:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-light)}.terminal-chart{grid-row:1/2;grid-column:2/3}.terminal-chart .tp-bd{position:relative;padding:0;overflow:hidden}.terminal-chart canvas{display:block;width:100%;height:100%}.chart-ohlc-overlay{position:absolute;top:4px;left:50%;transform:translate(-50%);display:flex;gap:12px;padding:3px 10px;background:#000000b8;color:#fff;border-radius:var(--radius-sm);font-size:10px;pointer-events:none;z-index:50;white-space:nowrap}.chart-ohlc-overlay .o-label{color:#9ca3af}.chart-ohlc-overlay .o-up{color:#00b42a}.chart-ohlc-overlay .o-down{color:#f53f3f}.chart-toolbar{position:absolute;bottom:2px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:2px 8px;z-index:50}.chart-toolbar .period-group{display:inline-flex;border-radius:3px;overflow:hidden;border:1px solid var(--border-color)}.chart-toolbar .period-btn{padding:2px 10px;border:none;background:var(--bg-white);cursor:pointer;font-size:10px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast)}.chart-toolbar .period-btn:hover{background:var(--bg-primary)}.chart-toolbar .period-btn.active{background:var(--brand-primary);color:#fff}.chart-toolbar .period-btn+.period-btn{border-left:1px solid var(--border-color)}.chart-toolbar .draw-tool{width:26px;height:22px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-white);cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast)}.chart-toolbar .draw-tool:hover{border-color:var(--brand-primary)}.chart-toolbar .draw-tool.active{border-color:var(--brand-primary);background:var(--brand-light);color:var(--brand-primary)}.chart-fs-btn{position:absolute;top:6px;right:8px;z-index:60;width:28px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-white);color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1;transition:all var(--transition-fast)}.chart-fs-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-light)}.terminal-chart:fullscreen{background:var(--bg-white)}.terminal-chart.chart-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--bg-white)}.chart-fs-info{position:absolute;top:6px;left:10px;z-index:60;display:flex;align-items:baseline;gap:8px;padding:4px 10px;border-radius:var(--radius-sm);background:#000000b8;pointer-events:none;white-space:nowrap}.chart-fs-info .fs-sym{font-weight:700;font-size:12px;color:#fff}.chart-fs-info .fs-price{font-weight:700;font-size:13px}.chart-fs-info .fs-change{font-size:10px}.terminal-indicators{grid-row:2/3;grid-column:2/3}.terminal-indicators .tp-bd{position:relative;padding:0}.terminal-indicators canvas{display:block;width:100%;height:100%}.ind-switch-bar{position:absolute;bottom:2px;left:0;right:0;display:flex;justify-content:center;gap:4px;z-index:50}.ind-switch-btn{padding:2px 8px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-white);cursor:pointer;font-size:10px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast)}.ind-switch-btn:hover{border-color:var(--brand-primary)}.ind-switch-btn.active{border-color:var(--brand-primary);background:var(--brand-light);color:var(--brand-primary)}.terminal-orderbook{grid-row:1/2;grid-column:3/4}.ob-small-row{display:flex;align-items:center;gap:4px;padding:0 6px;font-size:10px;cursor:pointer;font-family:Consolas,Monaco,monospace;position:relative;height:18px;line-height:18px}.ob-small-row:hover{background:#165dff0f}.ob-small-row .ob-bar-sm{position:absolute;top:0;bottom:0;opacity:.1;z-index:0}.ob-small-row .ob-price-sm{position:relative;z-index:1;font-weight:600;min-width:50px}.ob-small-row .ob-size-sm{position:relative;z-index:1;color:var(--text-muted);text-align:right;flex:1;font-size:9px}.ob-small-row.ask .ob-bar-sm{background:var(--down-color);right:0}.ob-small-row.ask .ob-price-sm{color:var(--down-color)}.ob-small-row.bid .ob-bar-sm{background:var(--up-color);left:0}.ob-small-row.bid .ob-price-sm{color:var(--up-color)}.ob-small-row.flash{animation:ob-small-flash .4s ease}@keyframes ob-small-flash{0%{background:var(--brand-light)}to{background:transparent}}.ob-spread-line{display:flex;align-items:center;justify-content:space-between;padding:1px 6px;font-size:9px;color:var(--text-muted);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.terminal-trade-panel{grid-row:2/3;grid-column:3/4}.terminal-trade-panel .tp-bd{padding:8px;display:flex;flex-direction:column;gap:6px}.tt-order-type{display:flex;gap:4px}.tt-order-type button{flex:1;padding:4px 8px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-white);cursor:pointer;font-size:10px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast)}.tt-order-type button.active{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-light)}.tt-order-type button:hover{border-color:var(--brand-primary)}.tt-input-group{display:flex;gap:4px;align-items:center}.tt-input-group label{font-size:10px;color:var(--text-secondary);white-space:nowrap;min-width:28px}.tt-input-group input{flex:1;height:28px;padding:0 8px;border:1px solid var(--border-color);border-radius:3px;font-size:11px;font-family:Consolas,Monaco,monospace;color:var(--text-primary);background:var(--bg-primary)}.tt-input-group input:focus{border-color:var(--brand-primary);outline:none}.tt-btn-row{display:flex;gap:6px}.tt-btn-buy{flex:1;height:32px;border:none;border-radius:3px;background:var(--up-color);color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:all var(--transition-fast)}.tt-btn-buy:hover{background:#16a34a}.tt-btn-sell{flex:1;height:32px;border:none;border-radius:3px;background:var(--down-color);color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:all var(--transition-fast)}.tt-btn-sell:hover{background:#dc2626}.tt-btn-end{height:26px;padding:0 14px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-white);cursor:pointer;font-size:10px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast);margin-left:auto}.tt-btn-end:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-light)}.trade-terminal{background:#e8e8e8}.terminal-topbar{background:#ededed;border-bottom-color:#ccc}.terminal-body{background:#ccc}.terminal-panel{background:#efefef}.terminal-panel .tp-hd{background:#e0e0e0;border-bottom-color:#ccc}.terminal-chart .tp-bd{background:#e5e5e5}.terminal-chart canvas{background:transparent}[data-theme="2"] .trade-terminal{background:#dbdfda}[data-theme="2"] .terminal-topbar{background:#e1e5e1;border-bottom-color:#bfc4bf}[data-theme="2"] .terminal-body{background:#bfc4bf}[data-theme="2"] .terminal-panel{background:#e3e8e4}[data-theme="2"] .terminal-panel .tp-hd{background:#d6dbd7;border-bottom-color:#bfc4bf}[data-theme="2"] .terminal-chart .tp-bd{background:#dbe1dc}[data-theme="3"] .trade-terminal{background:#ede8e1}[data-theme="3"] .terminal-topbar{background:#f0ece5;border-bottom-color:#d3ccc1}[data-theme="3"] .terminal-body{background:#d3ccc1}[data-theme="3"] .terminal-panel{background:#eee9e2}[data-theme="3"] .terminal-panel .tp-hd{background:#e5ded5;border-bottom-color:#d3ccc1}[data-theme="3"] .terminal-chart .tp-bd{background:#e7e0d8}[data-theme="4"] .trade-terminal{background:#161a20}[data-theme="4"] .terminal-topbar{background:#1c2028;border-bottom-color:#2a2d33}[data-theme="4"] .terminal-body{background:#2a2d33}[data-theme="4"] .terminal-panel{background:#1e2228}[data-theme="4"] .terminal-panel .tp-hd{background:#232730;border-bottom-color:#2a2d33}[data-theme="4"] .terminal-chart .tp-bd{background:#1c2026}.course-note-area{margin-top:16px}.course-note-area textarea{width:100%;height:80px;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;font-family:var(--font-family);resize:vertical}.course-note-area textarea:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 2px #165dff1a}.instructor-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-primary);border-radius:var(--radius-md);margin-top:12px}.instructor-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand-light);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:var(--brand-primary)}@media (max-width: 1200px){.navbar{padding:24px 16px 16px;width:var(--sidebar-width)}.navbar-nav .nav-item{font-size:14px;padding:11px 14px}}@media (max-width: 1024px){.navbar{padding:24px 16px 16px;width:var(--sidebar-width)}.navbar-logo{font-size:20px}.navbar-nav .nav-item{font-size:14px;padding:11px 14px}}@media (max-width: 768px){:root{--sidebar-width: 64px}.navbar{width:64px;padding:16px 8px;height:auto}.navbar-logo{font-size:0;padding:0;justify-content:center;gap:0}.navbar-logo .logo-icon{width:32px;height:32px;font-size:13px}.navbar-nav .nav-item{justify-content:center;padding:10px;font-size:0}.navbar-nav .nav-item .nav-icon{font-size:20px}.main-content{margin-left:64px;padding:16px}}@media (max-width: 480px){:root{--sidebar-width: 56px;--nav-height: 0px}.navbar{width:56px;padding:12px 6px;height:auto}.navbar-logo .logo-icon{width:28px;height:28px;font-size:12px}.navbar-nav .nav-item{padding:8px}.navbar-nav .nav-item .nav-icon{font-size:18px}.main-content{margin-left:56px;padding:12px}.navbar-right{top:8px;right:8px;gap:8px}}.learning-path-wrap{max-width:560px;margin:0 auto;padding:8px 0 80px}.path-header{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:14px 22px;border-radius:16px;margin-bottom:28px;box-shadow:0 4px #0000001f;text-align:left;position:sticky;top:12px;z-index:5;transition:background .3s ease}.path-header .crumb{font-size:12px;opacity:.85;margin-bottom:4px;letter-spacing:.3px}.path-header .title{font-size:19px;font-weight:800;letter-spacing:-.3px}.path-header--blue{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px #1e3a8a}.path-header--purple{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 4px #4c1d95}.path-header--green{background:linear-gradient(135deg,#58cc02,#3fa000);box-shadow:0 4px #2e7800}.path-stage{position:relative}.stage-divider{display:flex;align-items:center;gap:16px;margin:56px 0 32px;color:var(--text-secondary);font-size:13px;font-weight:800;letter-spacing:2px;-webkit-user-select:none;user-select:none}.stage-divider span{white-space:nowrap;padding:0 4px}.stage-divider:before,.stage-divider:after{content:"";flex:1;height:0;border-top:2px dashed #D4D4D4}.path-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:36px}.path-stat{display:flex;align-items:center;gap:10px;background:var(--bg-white);border:1px solid var(--border-color);border-radius:14px;padding:10px 14px}.path-stat-icon{font-size:24px}.path-stat-value{font-weight:800;font-size:16px;color:var(--text-primary);line-height:1.1}.path-stat-label{font-size:11px;color:var(--text-secondary);margin-top:2px}.learning-path{display:flex;flex-direction:column;align-items:center;gap:48px;position:relative;padding-top:8px}.path-node-pos{position:relative;transition:transform .3s cubic-bezier(.16,1,.3,1)}.path-node{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:34px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .12s ease,box-shadow .12s ease;position:relative;line-height:1}.path-node:hover{transform:translateY(-2px)}.path-node:active{transform:translateY(2px)}.path-node--done{background:#58cc02;color:#fff;box-shadow:0 6px #45a300}.path-node--done:after{content:"✓";position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;border-radius:50%;background:#fff;color:#45a300;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #45A300}.path-node--current{background:#ffc800;color:#fff;box-shadow:0 6px #cd9f00;animation:nodePulse 1.8s ease-in-out infinite}@keyframes nodePulse{0%,to{box-shadow:0 6px #cd9f00,0 0 #ffc80073}50%{box-shadow:0 6px #cd9f00,0 0 0 14px #ffc80000}}.path-node--locked{background:#e5e5e5;color:#b0b0b0;box-shadow:0 4px #cfcfcf;font-size:26px}.path-node--boss{width:104px;height:104px;font-size:44px;background:#ce82ff;color:#fff;box-shadow:0 6px #a557d9}.path-node--boss.path-node--done{background:#58cc02;box-shadow:0 6px #45a300}.path-node--boss.path-node--current{background:#ffc800;box-shadow:0 6px #cd9f00}.path-node--boss.path-node--locked{background:#e5e5e5;box-shadow:0 4px #cfcfcf;color:#b0b0b0}.path-node--chest.path-node--current,.path-node--chest.path-node--done{background:#ff9600;box-shadow:0 6px #cc7a00}.path-node-label{position:absolute;bottom:-26px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:12px;color:var(--text-secondary);font-weight:600;pointer-events:none}.path-current-tooltip{position:absolute;top:-40px;left:50%;transform:translate(-50%);background:#fff;border:2px solid #FFC800;color:#b47a00;font-weight:800;font-size:12px;padding:5px 14px;border-radius:10px;white-space:nowrap;box-shadow:0 2px 4px #00000014;pointer-events:none;letter-spacing:.5px}.path-current-tooltip:after{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%) rotate(45deg);width:10px;height:10px;background:#fff;border-right:2px solid #FFC800;border-bottom:2px solid #FFC800}.member-card-wrap{position:relative}.member-card{display:flex;align-items:center;gap:10px;padding:4px 14px 4px 4px;background:var(--bg-white);border:1px solid var(--border-color);border-radius:24px;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.member-card:hover{border-color:var(--brand-primary);box-shadow:0 2px 10px #2563eb1a}.member-card-info{display:flex;flex-direction:column;line-height:1.15}.member-card-name{font-size:13px;font-weight:700;color:var(--text-primary)}.member-card-tier{font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:3px;margin-top:1px}.member-card-tier.tier-free{color:#6b7280}.member-card-tier.tier-pro{color:var(--brand-primary)}.member-card-tier.tier-institution{color:#b45309}@media (max-width: 768px){.member-card-info{display:none}.member-card{padding:4px;border-radius:50%}.path-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.path-stat{padding:8px 10px}.path-stat-icon{font-size:20px}.path-stat-value{font-size:14px}.learning-path{gap:40px}.path-node{width:74px;height:74px;font-size:30px}.path-node--boss{width:90px;height:90px;font-size:38px}}.home-layout{display:grid;grid-template-columns:minmax(0,560px) 280px;gap:32px;justify-content:center;align-items:start;max-width:1100px;margin:0 auto}.home-layout .learning-path-wrap{margin:0;max-width:none;padding-top:0}.home-right-rail{position:sticky;top:76px;margin-top:56px}.path-stats--2col{grid-template-columns:1fr 1fr}.rank-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:16px;padding:20px 18px 16px;box-shadow:0 2px 6px #00000008}.rank-card-head{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.rank-card-icon{font-size:22px}.rank-card-title{font-size:15px;font-weight:800;color:var(--text-primary);letter-spacing:.3px}.rank-row{display:flex;align-items:center;gap:14px}.rank-row--primary .rank-num{font-size:44px;font-weight:900;color:var(--brand-primary);line-height:1;letter-spacing:-1px;text-shadow:0 2px 0 rgba(37,99,235,.12)}.rank-row--primary .rank-board{font-size:15px;font-weight:700;color:var(--text-primary)}.rank-row--primary .rank-total{font-size:11px;color:var(--text-secondary);margin-top:2px}.rank-divider{height:1px;background:var(--border-color);margin:14px 0}.rank-row--secondary .rank-num{font-size:22px;font-weight:800;color:var(--text-secondary);line-height:1;min-width:56px}.rank-row--secondary .rank-board{font-size:13px;font-weight:600;color:var(--text-primary)}.rank-row--secondary .rank-total{font-size:11px;color:var(--text-secondary);margin-top:2px}.rank-card-cta{width:100%;margin-top:16px}.topbar-streak{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:#ff84001a;border:1px solid rgba(255,132,0,.3);border-radius:22px;font-weight:800;font-size:14px;color:#e07300;line-height:1;-webkit-user-select:none;user-select:none}.topbar-streak-flame{font-size:16px}.topbar-streak-days{font-size:15px;font-weight:900}.topbar-streak-unit{font-size:12px;opacity:.85}@media (max-width: 1024px){.home-layout{grid-template-columns:1fr;max-width:580px;gap:20px}.home-right-rail{position:static}}@media (max-width: 768px){.topbar-streak{padding:4px 9px;font-size:12px}.topbar-streak-flame{font-size:14px}.topbar-streak-days{font-size:13px}.topbar-streak-unit{display:none}.rank-row--primary .rank-num{font-size:38px}}.rank-card-head{position:relative}.rank-card-link{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:12px;font-weight:600;color:var(--brand-primary);cursor:pointer}.rank-card-link:hover{text-decoration:underline}.rank-pep{margin:10px 0 0;padding:8px 12px;background:#2563eb14;color:var(--brand-primary);font-size:12px;font-weight:700;border-radius:10px;text-align:center;letter-spacing:.3px}.rank-card-cta{display:none}.mission-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:16px;padding:18px 18px 14px;margin-top:16px;box-shadow:0 2px 6px #00000008}.mission-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.mission-card-title{font-size:15px;font-weight:800;color:var(--text-primary);letter-spacing:.3px}.mission-card-link{font-size:12px;font-weight:600;color:var(--brand-primary);cursor:pointer}.mission-card-link:hover{text-decoration:underline}.mission-row{display:flex;align-items:center;gap:12px;padding:10px 0}.mission-row+.mission-row{border-top:1px solid var(--border-color)}.mission-icon{width:36px;height:36px;border-radius:10px;background:#ff84001a;color:#e07300;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.mission-row--done .mission-icon{background:#58cc0224;color:#45a300}.mission-body{flex:1;min-width:0}.mission-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mission-progress{display:flex;align-items:center;gap:8px}.mission-bar{flex:1;height:8px;background:var(--bg-primary);border-radius:999px;overflow:hidden}.mission-bar-fill{height:100%;background:linear-gradient(90deg,#ff8400,#ffc800);border-radius:999px;transition:width .4s ease}.mission-row--done .mission-bar-fill{background:linear-gradient(90deg,#58cc02,#84e04f)}.mission-progress-text{font-size:11px;font-weight:700;color:var(--text-secondary);min-width:36px;text-align:right}.mission-row--done .mission-progress-text{color:#45a300}.mission-chest{font-size:22px;filter:saturate(1.1);flex-shrink:0}.mission-row--done .mission-chest{animation:chestWiggle 1.6s ease-in-out infinite}@keyframes chestWiggle{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.contest-card{background:linear-gradient(135deg,#fff7e6,#ffebc2);border:1px solid rgba(255,132,0,.25);border-radius:16px;padding:16px 18px 14px;margin-top:16px;box-shadow:0 2px 6px #00000008}.contest-card-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.contest-card-icon{font-size:20px}.contest-card-title{font-size:13px;font-weight:800;color:#b45309;letter-spacing:.5px}.contest-card-name{font-size:16px;font-weight:800;color:var(--text-primary);margin-bottom:10px}.contest-countdown-wrap{display:flex;align-items:baseline;gap:8px;margin-bottom:12px}.countdown-display{font-size:22px;font-weight:900;color:#e07300;font-variant-numeric:tabular-nums;letter-spacing:.5px}.countdown-display.countdown-live{font-size:18px;color:#45a300;animation:livePulse 1.2s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.6}}.countdown-label{font-size:12px;color:var(--text-secondary);font-weight:600}.contest-card-cta{width:100%;background:#ff8400;border-color:#ff8400;color:#fff}.contest-card-cta:hover{background:#e07300;border-color:#e07300}.summary-card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:16px;padding:16px 18px 14px;margin-top:16px;box-shadow:0 2px 6px #00000008}.summary-card-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:10px;border-bottom:1px solid var(--border-color);position:relative}.summary-card-icon{font-size:20px}.summary-card-title{font-size:15px;font-weight:800;color:var(--text-primary);letter-spacing:.3px}.summary-card-link{margin-left:auto;font-size:12px;font-weight:600;color:var(--brand-primary);cursor:pointer}.summary-card-link:hover{text-decoration:underline}.summary-sparkline{display:block;width:100%;height:56px;margin:4px 0 12px}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.summary-stat{text-align:center;padding:4px 0}.summary-stat-value{font-size:16px;font-weight:800;color:var(--text-primary);line-height:1.1}.summary-stat-label{font-size:11px;color:var(--text-secondary);margin-top:3px}.assessment-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#f5f7fa,#e8ecf2)}.assessment-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000014;padding:36px 36px 32px;width:480px;max-width:96vw;text-align:center}.assessment-progress{display:flex;justify-content:center;gap:8px;margin-bottom:16px}.assess-dot{width:32px;height:6px;border-radius:999px;background:#e5e7eb;transition:background .3s ease}.assess-dot.done{background:#58cc02}.assess-dot.active{background:var(--brand-primary)}.assessment-step{font-size:12px;font-weight:700;color:var(--text-secondary);letter-spacing:1px;margin-bottom:8px}.assessment-q{font-size:20px;font-weight:800;color:var(--text-primary);margin:0 0 22px;line-height:1.4}.assessment-opts{display:flex;flex-direction:column;gap:10px}.assessment-opt{background:#fff;border:2px solid var(--border-color);border-radius:14px;padding:13px 18px;font-size:15px;font-weight:600;color:var(--text-primary);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,transform .1s ease;font-family:inherit}.assessment-opt:hover{border-color:var(--brand-primary);background:#2563eb0d}.assessment-opt:active{transform:translateY(1px)}.assessment-result .result-emoji{font-size:64px;line-height:1;margin-bottom:12px}.assessment-result h2{font-size:24px;font-weight:800;margin:0 0 8px}.result-tag{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.result-detail{background:var(--bg-primary);border-radius:14px;padding:14px 16px;margin-bottom:20px}.result-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px}.result-row+.result-row{border-top:1px solid var(--border-color)}.result-row span{color:var(--text-secondary)}.result-row strong{color:var(--text-primary);font-weight:700}.result-row--warn strong{color:#e07300}.nav-item--locked{opacity:.6;position:relative}.nav-item--locked:hover{background:#ff840014;color:#e07300}.nav-item--locked .nav-icon{filter:grayscale(.2)}.home-practice-wrap{max-width:1100px;margin:0 auto;padding-top:56px}.practice-roadmap{margin-top:40px;background:var(--bg-white);border:1px dashed var(--border-color);border-radius:14px;padding:20px 24px;color:var(--text-secondary)}.practice-roadmap h4{margin:0 0 12px;font-size:15px;font-weight:800;color:var(--text-primary);letter-spacing:.5px}.practice-roadmap ul{margin:0;padding-left:20px;font-size:13px;line-height:1.9}body.sidebar-collapsed{--sidebar-width: 64px}body.sidebar-collapsed .navbar{padding:16px 8px}body.sidebar-collapsed .navbar-logo{font-size:0;padding:0;justify-content:center;gap:0}body.sidebar-collapsed .navbar-logo .logo-icon{width:34px;height:34px;font-size:14px}body.sidebar-collapsed .nav-item{justify-content:center;padding:10px}body.sidebar-collapsed .nav-label{display:none}body.sidebar-collapsed .sidebar-toggle-icon{transform:rotate(180deg)}.sidebar-toggle{margin:auto 0 4px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;height:36px;cursor:pointer;color:var(--text-secondary);font-family:inherit;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-toggle:hover{background:var(--brand-primary);color:#fff}.sidebar-toggle-icon{display:inline-block;font-size:18px;font-weight:700;line-height:1;transition:transform .2s ease}@media (max-width: 768px){.sidebar-toggle{display:none}}.practice-page{--pp-bg: #0E1320;--pp-bg-2: #161C2C;--pp-bg-3: #1E2536;--pp-border: #232B40;--pp-text: #E6E9F0;--pp-text-2: #9097AC;--pp-text-3: #6B7390;--pp-up: #22C55E;--pp-down: #EF4444;--pp-accent: #FF8400;position:fixed;top:0;left:var(--sidebar-width);right:0;bottom:0;background:var(--pp-bg);color:var(--pp-text);display:flex;flex-direction:column;overflow:hidden;z-index:1;font-family:"Inter",var(--font-family)}.pp-up{color:var(--pp-up)}.pp-down{color:var(--pp-down)}.pp-muted{color:var(--pp-text-3)}.pp-topbar{display:flex;align-items:center;gap:16px;padding:8px 16px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);height:44px;flex-shrink:0}.pp-symbol{display:flex;align-items:center;gap:8px}.pp-sym-code{font-size:16px;font-weight:800;color:var(--pp-text);letter-spacing:.5px}.pp-sym-name{font-size:13px;color:var(--pp-text-2)}.pp-sym-exch{font-size:10px;padding:2px 6px;background:var(--pp-bg-3);border-radius:4px;color:var(--pp-text-3);font-weight:600;letter-spacing:.5px}.pp-mode-badge{margin-left:8px;font-size:11px;padding:3px 10px;background:#ff840026;color:var(--pp-accent);border-radius:12px;font-weight:700;letter-spacing:.5px}.pp-quote-strip{display:flex;align-items:center;gap:24px;padding:10px 20px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-quote-main{display:flex;align-items:baseline;gap:12px}.pp-quote-price{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.pp-quote-change{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.pp-quote-meta{display:flex;gap:20px;margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}.pp-quote-meta>div{display:flex;gap:6px}.pp-meta-label{color:var(--pp-text-3)}.pp-meta-value{color:var(--pp-text);font-weight:600}.pp-grid{display:grid;grid-template-columns:1fr 300px;grid-template-rows:1fr 240px;gap:1px;background:var(--pp-border);flex:1;min-height:0}.pp-chart-section,.pp-order-section,.pp-positions-section{background:var(--pp-bg);overflow:hidden;display:flex;flex-direction:column;min-height:0}.pp-chart-section{grid-column:1 / 2;grid-row:1 / 2}.pp-order-section{grid-column:2 / 3;grid-row:1 / 3;overflow-y:auto}.pp-positions-section{grid-column:1 / 2;grid-row:2 / 3}.pp-grid--order-collapsed{grid-template-columns:1fr 30px}.pp-grid--positions-collapsed{grid-template-rows:1fr 34px}.pp-order-section--collapsed{overflow:hidden}.pp-collapse-strip{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;border:none;background:var(--pp-bg-2);color:var(--pp-text-3);cursor:pointer;font-family:inherit;transition:background var(--transition-fast),color var(--transition-fast)}.pp-collapse-strip:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-collapse-strip .pp-strip-arrow{font-size:10px}.pp-collapse-strip .pp-strip-text{writing-mode:vertical-rl;font-size:11px;font-weight:700;letter-spacing:3px}.pp-panel-collapse-btn{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--pp-border);border-radius:4px;background:transparent;color:var(--pp-text-3);font-size:9px;line-height:1;cursor:pointer;font-family:inherit;transition:background var(--transition-fast),color var(--transition-fast)}.pp-panel-collapse-btn:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-tabs-collapse-btn{margin:6px 8px 6px auto}.pp-chart-toolbar{display:flex;align-items:center;gap:14px;padding:6px 12px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-periods{display:flex;gap:2px}.pp-period-btn{background:transparent;border:none;color:var(--pp-text-2);padding:4px 10px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;border-radius:4px}.pp-period-btn:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-period-btn.active{background:var(--pp-accent);color:#fff}.pp-indicators{display:flex;align-items:center;gap:4px;margin-left:auto}.pp-tool-btn{background:transparent;border:1px solid var(--pp-border);color:var(--pp-text-2);padding:3px 8px;font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;border-radius:4px}.pp-tool-btn:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-tool-btn.active{background:var(--pp-bg-3);border-color:var(--pp-accent);color:var(--pp-text)}.pp-marks-btn.active .pp-mark-b{color:#22c55e}.pp-marks-btn.active .pp-mark-s{color:#ef4444}.pp-marks-btn:not(.active){opacity:.55}.pp-divider{width:1px;height:16px;background:var(--pp-border)}.pp-chart{flex:1;width:100%;display:block;min-height:0}.pp-account{padding:12px 14px;border-bottom:1px solid var(--pp-border)}.pp-account-head{font-size:11px;color:var(--pp-text-3);letter-spacing:.8px;font-weight:700;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between}.pp-account-total{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}.pp-account-day{font-size:12px;font-weight:600;margin-top:2px}.pp-account-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--pp-border)}.pp-acc-label{font-size:10px;color:var(--pp-text-3);letter-spacing:.5px}.pp-acc-value{font-size:13px;font-weight:700;color:var(--pp-text);font-variant-numeric:tabular-nums;margin-top:2px}.pp-order{padding:14px}.pp-side-switch{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:14px;background:var(--pp-bg-3);border-radius:8px;padding:3px}.pp-side-btn{background:transparent;border:none;color:var(--pp-text-2);padding:8px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;border-radius:6px;transition:background .15s ease,color .15s ease}.pp-side-btn.active.pp-side-buy{background:var(--pp-up);color:#fff}.pp-side-btn.active.pp-side-sell{background:var(--pp-down);color:#fff}.pp-order-field{margin-bottom:10px}.pp-order-field label{display:block;font-size:11px;color:var(--pp-text-3);margin-bottom:4px;letter-spacing:.5px}.pp-order-field input,.pp-order-field select{width:100%;height:32px;padding:0 10px;background:var(--pp-bg);border:1px solid var(--pp-border);color:var(--pp-text);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;border-radius:6px;font-family:inherit}.pp-order-field input:focus,.pp-order-field select:focus{outline:none;border-color:var(--pp-accent)}.pp-order-summary{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:12px;color:var(--pp-text-2);border-top:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);margin:10px 0 14px}.pp-order-summary strong{color:var(--pp-text);font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}.pp-submit-btn{width:100%;height:42px;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:800;letter-spacing:1px;cursor:pointer;font-family:inherit;transition:transform .08s ease,box-shadow .15s ease}.pp-submit-buy{background:var(--pp-up);box-shadow:0 4px #15803d}.pp-submit-sell{background:var(--pp-down);box-shadow:0 4px #b91c1c}.pp-submit-btn:active{transform:translateY(2px);box-shadow:0 2px 0 currentColor}.pp-section-head{padding:8px 12px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);font-size:11px;font-weight:700;color:var(--pp-text-2);letter-spacing:.8px;text-transform:uppercase}.pp-tabs{display:flex;gap:0;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-tab{background:transparent;border:none;color:var(--pp-text-2);padding:8px 16px;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;position:relative;letter-spacing:.5px}.pp-tab.active{color:var(--pp-text)}.pp-tab.active:after{content:"";position:absolute;bottom:-1px;left:12px;right:12px;height:2px;background:var(--pp-accent)}.pp-tab-body{flex:1;overflow:auto}.pp-tab-body.hidden{display:none}.pp-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.pp-table th,.pp-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--pp-border)}.pp-table th{background:var(--pp-bg-2);font-weight:700;color:var(--pp-text-3);font-size:11px;letter-spacing:.5px;text-transform:uppercase;position:sticky;top:0}.pp-table tbody tr:hover{background:var(--pp-bg-3)}.pp-pos-code{font-weight:800;color:var(--pp-text)}.pp-pos-name{font-size:10px;color:var(--pp-text-3);margin-top:2px}.pp-btn-mini{background:var(--pp-bg-3);border:1px solid var(--pp-border);color:var(--pp-text-2);padding:3px 8px;font-size:11px;font-weight:700;border-radius:4px;cursor:pointer;font-family:inherit;margin-right:4px}.pp-btn-buy:hover{background:var(--pp-up);color:#fff;border-color:var(--pp-up)}.pp-btn-sell:hover{background:var(--pp-down);color:#fff;border-color:var(--pp-down)}.pp-toolbar{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0;position:relative;z-index:5}.pp-toolbar-left,.pp-toolbar-right{display:flex;align-items:center;gap:4px}.pp-toolbar-right{margin-left:auto}.pp-toolbar-btn{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;background:transparent;border:1px solid transparent;border-radius:5px;color:var(--pp-text-2);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.pp-toolbar-btn:hover{background:var(--pp-bg-3);color:var(--pp-text);border-color:var(--pp-border)}.pp-toolbar-btn--primary{background:var(--pp-bg-3);border-color:var(--pp-border);color:var(--pp-text)}.pp-toolbar-btn--primary:hover{background:#2a3349}.pp-tb-icon{font-size:14px;line-height:1}.pp-tb-caret{font-size:9px;opacity:.6;margin-left:2px}.pp-tb-divider{width:1px;height:18px;background:var(--pp-border);margin:0 4px}.pp-dropdown{position:relative}.pp-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:160px;background:var(--pp-bg-2);border:1px solid var(--pp-border);border-radius:8px;box-shadow:0 10px 30px #00000080;padding:4px;display:none;z-index:100}.pp-dropdown-menu.open{display:block}.pp-dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:12px;font-weight:600;color:var(--pp-text-2);cursor:pointer;border-radius:5px;transition:background .1s ease,color .1s ease}.pp-dropdown-item:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-dropdown-item.active{background:#ff84001f;color:var(--pp-accent)}.pp-layout-ico{font-size:14px;line-height:1}.pp-multi-grid{display:grid;grid-template-columns:repeat(var(--cols),1fr);grid-template-rows:repeat(var(--rows),1fr);gap:1px;background:var(--pp-border);flex:1;min-height:0}.pp-mini-chart{background:var(--pp-bg);display:flex;flex-direction:column;min-height:0;overflow:hidden}.pp-mini-head{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 4px;border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-mini-info{display:flex;align-items:baseline;gap:6px;min-width:0}.pp-mini-code{font-size:13px;font-weight:800;color:var(--pp-text);letter-spacing:.3px}.pp-mini-name{font-size:10px;color:var(--pp-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-mini-price-wrap{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;flex-shrink:0}.pp-mini-price{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}.pp-mini-change{font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:1px}.pp-mini-periods{display:flex;gap:1px;padding:3px 8px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-mini-period{background:transparent;border:none;color:var(--pp-text-3);padding:2px 8px;font-size:10px;font-weight:600;font-family:inherit;cursor:pointer;border-radius:3px}.pp-mini-period:hover{background:var(--pp-bg-3);color:var(--pp-text)}.pp-mini-period.active{background:var(--pp-accent);color:#fff}.pp-mini-canvas{flex:1;width:100%;display:block;min-height:0}.pp-body{display:flex;flex:1;min-height:0;position:relative}.pp-body .pp-grid{flex:1;min-width:0}.pp-toolbar-btn--active{background:#ff840026;color:var(--pp-accent);border-color:#ff84004d}.pp-toolbar-btn:disabled{opacity:.4;cursor:not-allowed;background:transparent}.pp-toolbar-btn:disabled:hover{background:transparent}.pp-tb-fx{font-family:Times New Roman,Georgia,serif;font-style:italic;font-weight:700;letter-spacing:-1px;font-size:13px}.pp-indicator-panel{background:var(--pp-bg);display:flex;flex-direction:column;min-height:0}.pp-indicator-panel--docked{width:280px;flex-shrink:0;border-left:1px solid var(--pp-border)}.pp-indicator-panel--floating{position:absolute;top:12px;right:12px;width:280px;height:540px;max-height:calc(100% - 24px);border:1px solid var(--pp-border);border-radius:10px;box-shadow:0 14px 40px #0000008c,0 0 0 1px #ffffff0a;z-index:60;overflow:hidden}.pp-ind-head{display:flex;align-items:center;padding:8px 10px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);gap:8px;flex-shrink:0}.pp-ind-title{font-size:13px;font-weight:800;color:var(--pp-text);letter-spacing:1px}.pp-ind-tabs{display:flex;gap:2px;margin-left:4px}.pp-ind-tab{background:transparent;border:none;color:var(--pp-text-3);padding:3px 8px;font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;border-radius:4px}.pp-ind-tab:hover,.pp-ind-tab.active{background:var(--pp-bg-3);color:var(--pp-text)}.pp-ind-actions{display:flex;gap:2px;margin-left:auto}.pp-ind-btn{width:26px;height:26px;background:transparent;border:1px solid transparent;border-radius:5px;color:var(--pp-text-2);font-size:14px;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pp-ind-btn:hover{background:var(--pp-bg-3);color:var(--pp-text);border-color:var(--pp-border)}.pp-ind-search{padding:8px 10px;background:var(--pp-bg-2);border-bottom:1px solid var(--pp-border);flex-shrink:0}.pp-ind-search input{width:100%;height:26px;background:var(--pp-bg);border:1px solid var(--pp-border);color:var(--pp-text);border-radius:5px;padding:0 10px;font-size:12px;font-family:inherit}.pp-ind-search input::placeholder{color:var(--pp-text-3)}.pp-ind-body{flex:1;overflow-y:auto;padding:4px 0 12px}.pp-ind-section-title{padding:10px 14px 4px;font-size:11px;font-weight:700;color:var(--pp-text-3);letter-spacing:1px}.pp-ind-row{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;cursor:pointer;transition:background .1s ease;font-size:12px}.pp-ind-row:hover{background:var(--pp-bg-3)}.pp-ind-name{color:var(--pp-text-2)}.pp-ind-row.on .pp-ind-name{color:var(--pp-text);font-weight:600}.pp-ind-check{width:18px;text-align:center;font-size:14px;color:var(--pp-text-3)}.pp-ind-row.on .pp-ind-check{color:var(--pp-accent)}.pp-order--ibkr{padding:12px 14px 14px}.pp-bidask{background:var(--pp-bg-3);border-radius:8px;padding:6px 10px;margin-bottom:12px}.pp-bidask-row{display:grid;grid-template-columns:36px 1fr 1fr;align-items:center;font-size:12px;font-variant-numeric:tabular-nums;padding:3px 0}.pp-bidask-row+.pp-bidask-row{border-top:1px solid var(--pp-border)}.pp-bidask-bid{background:linear-gradient(90deg,rgba(34,197,94,.06) 0%,transparent 60%)}.pp-bidask-ask{background:linear-gradient(90deg,rgba(239,68,68,.06) 0%,transparent 60%)}.pp-bidask-label{color:var(--pp-text-3);font-size:10px;font-weight:700;letter-spacing:.5px}.pp-bidask-qty{color:var(--pp-text-2);font-size:11px}.pp-bidask-price{font-weight:800;font-size:13px;text-align:right}.pp-bidask-ask .pp-bidask-price{text-align:left;padding-left:8px}.pp-bidask-ask .pp-bidask-qty{text-align:right}.pp-qty-block{margin-bottom:12px}.pp-qty-label{font-size:11px;color:var(--pp-text-3);letter-spacing:.5px;margin-bottom:6px;font-weight:600}.pp-qty-input-row{display:flex;gap:6px;align-items:center;margin-bottom:8px}.pp-qty-input{flex:1;height:40px;background:var(--pp-bg);border:1px solid var(--pp-border);color:var(--pp-text);font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;border-radius:6px;padding:0 12px;font-family:inherit;text-align:left}.pp-qty-input:focus{outline:none;border-color:var(--pp-accent)}.pp-qty-input::-webkit-outer-spin-button,.pp-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pp-qty-input{-moz-appearance:textfield}.pp-qty-unit{display:flex;gap:1px;background:var(--pp-bg-3);border-radius:6px;padding:2px}.pp-qty-unit-btn{background:transparent;border:none;color:var(--pp-text-3);padding:6px 10px;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;border-radius:4px}.pp-qty-unit-btn.active{background:var(--pp-bg-2);color:var(--pp-text)}.pp-qty-presets{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pp-qty-preset{background:var(--pp-bg-3);border:1px solid var(--pp-border);color:var(--pp-text-2);font-size:11px;font-weight:600;padding:5px 0;border-radius:4px;cursor:pointer;font-family:inherit;transition:background .1s ease,color .1s ease}.pp-qty-preset:hover{background:var(--pp-bg-2);color:var(--pp-text);border-color:var(--pp-accent)}.pp-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.pp-action-btn{display:flex;align-items:center;justify-content:center;gap:6px;height:40px;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .08s ease,filter .12s ease}.pp-action-btn:hover{filter:brightness(1.12)}.pp-action-btn:active{transform:translateY(1px)}.pp-action-buy{background:linear-gradient(180deg,#2563eb,#1d4ed8)}.pp-action-sell{background:linear-gradient(180deg,#dc2626,#b91c1c)}.pp-action-side{font-weight:800}.pp-action-qty{font-variant-numeric:tabular-nums}.pp-action-at{opacity:.85;font-size:11px}.pp-order-cfg{text-align:center;font-size:11px;color:var(--pp-text-3);cursor:pointer;padding:4px}.pp-order-cfg:hover{color:var(--pp-text-2)}.pp-volume-card{margin:0 14px 14px;background:var(--pp-bg-3);border-radius:8px;overflow:hidden}.pp-volume-card .pp-section-head{padding:6px 10px;background:transparent;border-bottom:1px solid var(--pp-border);font-size:11px}.pp-volume-stat{display:flex;justify-content:space-between;padding:8px 10px 4px;gap:8px}.pp-vol-row{display:flex;flex-direction:column;gap:2px}.pp-vol-row>span:first-child{font-size:10px;color:var(--pp-text-3);letter-spacing:.3px}.pp-vol-num{font-size:13px;font-weight:800;color:var(--pp-text);font-variant-numeric:tabular-nums}.pp-vol-mini{display:block;width:100%;height:44px;padding:0 6px 6px;box-sizing:border-box}.pp-mask{display:inline-block;vertical-align:middle;color:transparent!important;background:linear-gradient(135deg,#3D4358 25%,transparent 25%),linear-gradient(225deg,#3D4358 25%,transparent 25%),linear-gradient(45deg,#3D4358 25%,transparent 25%),linear-gradient(315deg,#3d4358 25%,#2a2f40 25%);background-position:4px 0,4px 0,0 0,0 0;background-size:8px 8px;background-color:#2a2f40;border-radius:3px;padding:0 4px;margin:0 1px;-webkit-user-select:none;user-select:none;letter-spacing:-.5px;vertical-align:baseline;line-height:1.1;min-width:24px;height:1.1em;position:relative;cursor:not-allowed}.pp-mask:after{content:"?";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#ffffff59;font-weight:800;font-size:.85em;letter-spacing:0}.pp-session-btn{border-color:var(--pp-border);background:var(--pp-bg-3);color:var(--pp-text)}.pp-session-btn--active{background:#ff84002e;color:var(--pp-accent);border-color:#ff840066;animation:ppSessionPulse 2.2s ease-in-out infinite}@keyframes ppSessionPulse{0%,to{box-shadow:0 0 #ff840000}50%{box-shadow:0 0 0 4px #ff84002e}}.pp-chart-section{flex-direction:row!important}.pp-chart-area{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative}.pp-draw-edit-bar{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--pp-bg-2);border:1px solid var(--pp-border);border-radius:8px;box-shadow:0 4px 16px #00000073;z-index:30;white-space:nowrap}.pp-draw-edit-bar.below{transform:translate(-50%)}.pp-de-sep{width:1px;height:16px;background:var(--pp-border)}.pp-de-colors,.pp-de-widths{display:flex;gap:4px}.pp-de-color{width:16px;height:16px;padding:0;border-radius:50%;border:2px solid transparent;cursor:pointer}.pp-de-color:hover{border-color:var(--pp-text-3)}.pp-de-color.active{border-color:var(--pp-text)}.pp-de-width{width:24px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--pp-border);border-radius:4px;cursor:pointer}.pp-de-width:hover{background:var(--pp-bg-3)}.pp-de-width.active{border-color:var(--pp-accent)}.pp-de-width-bar{width:14px;background:var(--pp-text-2);border-radius:2px}.pp-de-width.active .pp-de-width-bar{background:var(--pp-accent)}.pp-de-del{width:24px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;font-size:13px;border-radius:4px}.pp-de-del:hover{background:#ef44442e}.pp-drawing-palette{width:42px;flex-shrink:0;background:var(--pp-bg-2);border-right:1px solid var(--pp-border);display:flex;flex-direction:column;padding:4px 0 8px;gap:1px;overflow-y:auto;scrollbar-width:thin}.pp-drawing-palette::-webkit-scrollbar{width:5px}.pp-drawing-palette::-webkit-scrollbar-thumb{background:var(--pp-border);border-radius:3px}.pp-draw-group-label{font-size:9px;color:var(--pp-text-3);text-align:center;padding:4px 0 2px;font-weight:700;letter-spacing:.5px}.pp-draw-tool{width:30px;height:28px;margin:0 auto;background:transparent;border:1px solid transparent;border-radius:5px;color:var(--pp-text-2);font-size:14px;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s ease,color .1s ease,border-color .1s ease}.pp-draw-tool:hover{background:var(--pp-bg-3);color:var(--pp-text);border-color:var(--pp-border)}.pp-draw-tool.active{background:#ff84002e;color:var(--pp-accent);border-color:#ff840066}.pp-draw-tool-icon{font-size:14px;line-height:1}.pp-draw-divider{height:1px;background:var(--pp-border);margin:4px 8px}
