.dashboard{display:flex;flex-direction:column;gap:20px;padding:20px;min-height:calc(100vh - 60px)}.events-panel{background:white;border-radius:12px;padding:25px;box-shadow:0 2px 12px #00000014}.market-panel{background:white;border-radius:12px;padding:25px;box-shadow:0 2px 12px #00000014;flex:1}.panel-header{margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.panel-header h2{color:#1a1a1a;font-size:1.5em;margin:0}.data-time{margin-top:8px;color:#8c8c8c;font-size:.9em}.data-container{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.stock-data,.coin-data,.gold-data{background:white;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.gold-data{grid-column:span 2}.section-title{color:#434343;font-size:1.1em;margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid #f0f0f0}.stock-item,.coin-item{display:flex;justify-content:space-between;align-items:center;padding:12px;margin-bottom:8px;background:white;border-radius:6px;transition:all .3s ease;position:relative}.stock-item:hover,.coin-item:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.stock-name,.coin-name{font-weight:500;color:#262626}.stock-price{font-weight:600;padding:2px 8px;border-radius:4px;transition:all .3s ease}.coin-price{color:#1890ff;font-weight:600}.gold-price{text-align:center;font-size:1.4em;color:#d4b106;font-weight:500;padding:20px;background:white;border-radius:6px}.gold-price .price-link{color:inherit;text-decoration:none;position:relative;padding:2px 4px;border-bottom:1px dashed #666;cursor:pointer;white-space:nowrap}.gold-price .price-link:hover{color:#f0a500;background-color:#f0a5001a}.gold-price .price-link:hover:after{content:"点击查看数据来源";position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:rgba(0,0,0,.8);color:#fff;padding:5px 10px;border-radius:4px;font-size:12px;white-space:nowrap;margin-bottom:5px;z-index:1000}.event-list{display:flex;flex-direction:column;gap:15px;padding:0;margin:0}.event-list li{padding:15px;background:white;border-radius:8px;border:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.event-list li:hover{transform:translate(5px);border-color:#d9d9d9}.event-list .urgent{color:#ff4d4f;font-weight:500;border-color:#ffccc7;background:#fff2f0}.event-list .urgent:hover{background:#fff1f0}.error-message{color:#ff4d4f;padding:12px;margin:10px 0;background-color:#fff2f0;border:1px solid #ffccc7;border-radius:8px;text-align:center}.loading{text-align:center;color:#8c8c8c;padding:20px}.stock-prices{display:flex;gap:12px;align-items:center}.reference-price{color:#8c8c8c;font-size:.9em;background:#f5f5f5;padding:2px 6px;border-radius:4px}.price-up{color:#52c41a;background:#f6ffed}.price-down{color:#ff4d4f;background:#fff1f0}.price-up-strong{color:#fff;background:#52c41a}.price-down-strong{color:#fff;background:#ff4d4f}.price-diff{font-size:.85em;margin-left:6px;padding:1px 4px;border-radius:3px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.price-up-strong,.price-down-strong{animation:pulse 2s infinite}.stock-item:hover:after{content:"点击查看详情";position:absolute;right:0;top:-20px;background:rgba(0,0,0,.7);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;pointer-events:none}.price-link{color:inherit;text-decoration:none;position:relative;padding:2px 4px;border-bottom:1px dashed #666;cursor:pointer}.price-link:hover{color:#f0a500;background-color:#f0a5001a}.price-link:hover:after{content:"点击查看数据来源";position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:rgba(0,0,0,.8);color:#fff;padding:5px 10px;border-radius:4px;font-size:12px;white-space:nowrap;margin-bottom:5px;z-index:1000}.empty-message{text-align:center;padding:20px;color:#8c8c8c;font-size:1.1em;background:#fafafa;border-radius:6px;border:1px dashed #d9d9d9}.stock-link,.coin-link{text-decoration:none;color:inherit;transition:opacity .3s}.stock-link:hover,.coin-link:hover{opacity:.8}.stock-link .stock-name,.coin-link .coin-name{position:relative}.stock-link .stock-name:after,.coin-link .coin-name:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transition:transform .3s;transform-origin:right}.stock-link:hover .stock-name:after,.coin-link:hover .coin-name:after{transform:scaleX(1);transform-origin:left}.background-container,.background-overlay{min-height:100vh;height:auto;overflow-y:visible}#root{height:100vh;overflow-y:auto;position:relative;z-index:1}.dashboard,.event-manager,.stock-manager,.coin-manager,.fund-manager{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;margin:0;box-shadow:none;min-height:auto;height:auto}#root::-webkit-scrollbar{width:8px}#root::-webkit-scrollbar-track{background:transparent}#root::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}#root::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.event-manager{padding:20px;background:#f5f7fa;min-height:auto}.panel-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.panel-header h2{margin:0;color:#1a1a1a;font-size:1.5em}.event-form{background:white;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px}.form-inputs{display:flex;gap:16px;margin-bottom:16px}.form-inputs input{flex:1;padding:10px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;transition:all .3s}.form-inputs input:focus{border-color:#4096ff;box-shadow:0 0 0 2px #4096ff1a;outline:none}.form-inputs input[type=date]{min-width:200px}button{background:#1677ff;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .3s}button:hover{background:#4096ff}button:active{background:#0958d9}.error-message{color:#ff4d4f;margin-bottom:16px;padding:8px 12px;background:#fff2f0;border:1px solid #ffccc7;border-radius:6px}.event-list{background:white;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden;margin-bottom:20px}.event-list table{width:100%;border-collapse:collapse}.event-list th,.event-list td{padding:16px;text-align:left;border-bottom:1px solid #f0f0f0}.event-list th{background:#fafafa;font-weight:500;color:#262626}.event-list tr:hover{background:#fafafa}.event-list .days-left{color:#8c8c8c}.event-list .urgent .days-left{color:#ff4d4f;font-weight:500}.delete-btn{background:#ff4d4f;padding:6px 12px;font-size:13px}.delete-btn:hover{background:#ff7875}.delete-btn:active{background:#d9363e}.empty-message{text-align:center;padding:32px;color:#8c8c8c;background:#fafafa;border-radius:12px;border:1px dashed #d9d9d9}@media (max-width: 768px){.form-inputs{flex-direction:column}.form-inputs input[type=date]{width:100%}.event-list th:nth-child(3),.event-list td:nth-child(3){display:none}}.stock-manager{padding:0;background:none;border-radius:0;box-shadow:none;max-width:unset;margin:0;width:auto}.stock-manager form{display:flex;gap:10px;margin-bottom:20px}.stock-manager input{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;flex:1}.stock-manager button{padding:8px 16px;background:#1890ff;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .3s}.stock-manager button:hover{background:#40a9ff}.stock-manager .edit-button,.stock-manager .delete-btn{display:inline-block;margin:0 2px;padding:4px 10px;font-size:13px;border-radius:4px;border:none;cursor:pointer;transition:background .2s}.stock-manager .edit-button{background:#1677ff;color:#fff}.stock-manager .edit-button:hover{background:#4096ff}.stock-manager .delete-btn{background:#ffeaea;color:#ff4d4f;border:1px solid #ffb3b3}.stock-manager .delete-btn:hover{background:#ffd6d6;color:#d9363e;border-color:#ff7875}.coin-manager{padding:0;background:none;border-radius:0;box-shadow:none;max-width:unset;margin:0;width:auto}.coin-manager .reference-form{display:flex;flex-direction:column;gap:15px}.coin-manager .form-inputs{display:flex;gap:10px;align-items:center}.coin-manager .form-buttons{display:flex;gap:10px}.coin-manager input{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;flex:1}.coin-manager button{padding:8px 16px;background:#1890ff;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .3s}.coin-manager button:hover{background:#40a9ff}.coin-manager button:disabled{background:#d9d9d9;cursor:not-allowed}.coin-manager .reference-list table{width:100%;border-collapse:collapse;margin-top:20px}.coin-manager .reference-list th,.coin-manager .reference-list td{padding:12px;text-align:left;border-bottom:1px solid #f0f0f0}.coin-manager .reference-list th{background:#fafafa;font-weight:500}.coin-manager .reference-list tr:hover td{background:#f5f5f5}.coin-manager .notification-toggle{display:flex;align-items:center;gap:8px;cursor:pointer}.coin-manager .notification-status{padding:2px 8px;border-radius:4px;font-size:.9em}.coin-manager .notification-status.enabled{background:#f6ffed;color:#52c41a}.coin-manager .notification-status.disabled{background:#fff1f0;color:#ff4d4f}.coin-manager .error-message{color:#ff4d4f;padding:12px;margin:10px 0;background-color:#fff2f0;border:1px solid #ffccc7;border-radius:8px;text-align:center}.coin-manager .edit-button,.coin-manager .delete-btn{display:inline-block;margin:0 2px;padding:4px 10px;font-size:13px;border-radius:4px;border:none;cursor:pointer;transition:background .2s}.coin-manager .edit-button{background:#1677ff;color:#fff}.coin-manager .edit-button:hover{background:#4096ff}.coin-manager .delete-btn{background:#ffeaea;color:#ff4d4f;border:1px solid #ffb3b3}.coin-manager .delete-btn:hover{background:#ffd6d6;color:#d9363e;border-color:#ff7875}.fund-manager{padding:0;background:none;border-radius:0;box-shadow:none;max-width:unset;margin:0;width:auto}.fund-manager form{display:flex;gap:10px;margin-bottom:20px}.fund-manager input{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;flex:1}.fund-manager button{padding:8px 16px;background:#1890ff;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .3s}.fund-manager button:hover{background:#40a9ff}.reference-list table{width:100%;border-collapse:collapse;margin-top:20px}.reference-list th,.reference-list td{padding:12px;text-align:left;border-bottom:1px solid #f0f0f0}.reference-list th{background:#fafafa;font-weight:500}.reference-list tr:hover td{background:#f5f5f5}.reference-form{display:flex;flex-direction:column;gap:15px}.form-inputs{display:flex;gap:10px;align-items:center}.form-buttons{display:flex;gap:10px}.edit-button{padding:4px 8px;background:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .3s}.edit-button:hover{background:#40a9ff}.cancel-button{padding:8px 16px;background:#f5f5f5;color:#595959;border:1px solid #d9d9d9}.cancel-button:hover{background:#fafafa;border-color:#40a9ff;color:#40a9ff}.notification-status{padding:2px 8px;border-radius:4px;font-size:.9em}.notification-status.enabled{background:#f6ffed;color:#52c41a}.notification-status.disabled{background:#fff1f0;color:#ff4d4f}.delete-button{margin-left:8px;background:#ff4d4f}.delete-button:hover{background:#ff7875}td button{padding:4px 8px;margin:0 4px;font-size:.9em}.fund-manager .form-inputs input{max-width:140px;min-width:80px;flex:unset}.reference-list td{vertical-align:middle}.fund-manager .edit-button,.fund-manager .delete-btn{display:inline-block;margin:0 2px;padding:4px 10px;font-size:13px;border-radius:4px;border:none;cursor:pointer;transition:background .2s}.fund-manager .edit-button{background:#1677ff;color:#fff}.fund-manager .edit-button:hover{background:#4096ff}.fund-manager .delete-btn{background:#ffeaea;color:#ff4d4f;border:1px solid #ffb3b3}.fund-manager .delete-btn:hover{background:#ffd6d6;color:#d9363e;border-color:#ff7875}.notification-settings-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.25);z-index:9999;display:flex;align-items:center;justify-content:center}.notification-settings-content{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000026;padding:32px 32px 24px;min-width:340px;max-width:90vw}.form-group{margin-bottom:18px;display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;margin-bottom:4px}.form-group input[type=text],.form-group input[type=email]{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:15px}.form-actions{display:flex;gap:12px;margin-top:10px}.form-actions button{padding:8px 20px;border-radius:6px;border:none;font-size:15px;background:#1677ff;color:#fff;cursor:pointer;transition:background .2s}.form-actions .cancel{background:#f5f5f5;color:#595959;border:1px solid #d9d9d9}.form-actions .cancel:hover{background:#fafafa;color:#1677ff;border-color:#1677ff}.form-actions button:disabled{background:#b3d6ff;cursor:not-allowed}.message{margin-top:12px;color:#52c41a;font-size:15px}.hkus-manager{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:32px 24px 24px;margin:0 auto 32px;max-width:900px}.hkus-manager .panel-header{display:flex;align-items:center;margin-bottom:18px}.hkus-manager .panel-header h2{font-size:1.3rem;font-weight:600;margin:0}.hkus-manager .error-message{color:#d32f2f;margin-bottom:12px;font-size:.98rem}.hkus-manager .reference-form{margin-bottom:18px}.hkus-manager .form-inputs{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hkus-manager .form-inputs input,.hkus-manager .form-inputs select{padding:6px 10px;border:1px solid #d0d7de;border-radius:6px;font-size:1rem;min-width:90px;max-width:160px}.hkus-manager .form-inputs input[type=checkbox]{min-width:unset;max-width:unset;margin-right:4px}.hkus-manager .form-inputs button{padding:5px 14px;border-radius:6px;border:none;background:#1976d2;color:#fff;font-size:1rem;cursor:pointer;margin-left:2px}.hkus-manager .form-inputs button[type=button]{background:#e0e0e0;color:#333}.hkus-manager .reference-table-wrapper{overflow-x:auto}.hkus-manager .reference-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:.98rem}.hkus-manager .reference-table th,.hkus-manager .reference-table td{border:1px solid #e0e0e0;padding:7px 8px;text-align:center}.hkus-manager .reference-table th{background:#f5f5f5;font-weight:600}.hkus-manager .edit-btn{background:#1976d2;color:#fff;border:none;border-radius:5px;padding:3px 10px;font-size:.95rem;margin-right:4px;cursor:pointer}.hkus-manager .delete-btn{background:#ffebee;color:#d32f2f;border:none;border-radius:5px;padding:3px 10px;font-size:.95rem;cursor:pointer}.app{width:100%;padding:0}nav{margin-bottom:20px;display:flex;align-items:center;padding:25px 20px;background:white;box-shadow:0 2px 8px #0000001a;max-width:1600px;width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}nav .nav-links{display:flex;gap:20px;align-items:center}nav a{text-decoration:none;color:#595959;padding:6px 12px;border-radius:4px;transition:all .3s ease}nav a:hover{background:#f5f5f5;color:#1890ff}nav a.active{background:#e6f7ff;color:#1890ff;font-weight:500}nav a.active:after{content:"";display:block;width:100%;height:2px;background:#1890ff;margin-top:4px;border-radius:2px}.dashboard,.event-manager,.stock-manager,.coin-manager,.fund-manager{max-width:1600px;width:100%;margin:30px auto;background:white;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:25px 20px;box-sizing:border-box}.icon-group{display:flex!important;align-items:center!important;gap:20px!important;margin-left:20px!important}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:18px;border:1px solid #d9d9d9;background:#fff;color:#1677ff;cursor:pointer;transition:all .2s ease;font-size:20px}.icon-button svg{width:20px;height:20px}.icon-button:hover{border-color:#1677ff;background:#f0f7ff}.icon-button span{font-size:18px}.logout-button{display:inline-flex;align-items:center;gap:6px;background:#ff4d4f;color:#fff;border:none;border-radius:20px;padding:6px 14px;font-size:14px;cursor:pointer;transition:background .2s ease}.logout-button:hover{background:#d9363e}.logout-icon{font-size:16px}.dot-manager{max-width:1600px;width:100%;margin:30px auto;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:25px 20px;box-sizing:border-box}.dot-manager .panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:1px solid #f0f0f0;padding-bottom:12px}.dot-layout{display:flex;gap:24px;flex-wrap:wrap}.dot-panel{flex:1 1 480px;background:#f8fafc;border:1px solid #e5eaf2;border-radius:12px;padding:18px;box-sizing:border-box}.dot-panel .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.dot-panel h3{margin-top:0;margin-bottom:12px}.dot-price-indicator{display:inline-flex;align-items:center;gap:8px;background:#ffffff;border:1px solid #d4dbe8;border-radius:999px;padding:4px 12px;font-size:13px;color:#1f2937;white-space:normal;flex-wrap:wrap}.dot-price-indicator .label{font-size:12px;color:#64748b}.dot-price-indicator .value{font-weight:600;font-size:16px;color:#1677ff}.dot-price-indicator .timestamp{font-size:12px;color:#94a3b8}.dot-price-indicator .metric{display:inline-flex;align-items:center;gap:4px;font-size:13px}.dot-price-indicator .metric .label{color:#64748b}.dot-price-indicator .metric .value{font-size:14px}.dot-price-indicator .metric .positive{color:#cf1322}.dot-price-indicator .metric .negative{color:#389e0d}.dot-price-indicator .metric .neutral{color:#1f2937}.dot-price-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.dot-price-summary__meta{font-size:15px;font-weight:500;color:#1f2937}.dot-table-wrapper.cleared-list{margin-top:18px}.dot-table-wrapper.cleared-list table tbody tr{opacity:.85}.dot-trade-direction{font-weight:600}.dot-trade-direction.buy{color:#d4380d}.dot-trade-direction.sell{color:#1d4ed8}.dot-trade-time{white-space:nowrap;line-height:1.2}.dot-trade-time .date,.dot-trade-time .time{display:block}.dot-cost-chart{margin:12px 0 24px;padding:12px 16px 8px;background:#fff;border:1px solid #e5eaf2;border-radius:12px;position:relative}.dot-cost-chart .chart-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.dot-cost-chart .chart-heading h4{margin:0;font-size:15px}.dot-cost-chart .chart-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:#475569}.dot-cost-chart .chart-legend .legend{display:inline-flex;align-items:center;gap:6px}.dot-cost-chart .chart-legend .legend .dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot-cost-chart .chart-legend .legend.original .dot{background:#94a3b8}.dot-cost-chart .chart-legend .legend.diluted .dot{background:#2563eb}.dot-cost-chart .chart-legend strong{margin-left:4px;color:#1f2937;font-size:14px}.dot-cost-chart .cost-chart-svg{width:100%;height:200px;display:block}.dot-cost-chart .line{fill:none;stroke-width:2}.dot-cost-chart .line.original{stroke:#94a3b8;stroke-dasharray:6 4}.dot-cost-chart .line.diluted{stroke:#2563eb}.dot-cost-chart .point.diluted{fill:#2563eb;stroke:#fff;stroke-width:2}.dot-cost-chart .chart-labels{margin-top:6px;display:flex;justify-content:space-between;font-size:12px;color:#94a3b8}.cost-tooltip{position:absolute;transform:translate(-50%,-110%);background:rgba(15,23,42,.92);color:#fff;padding:8px 10px;border-radius:8px;font-size:12px;min-width:180px;pointer-events:none;box-shadow:0 4px 12px #0f172a40;z-index:2}.cost-tooltip .tooltip-title{font-weight:600;margin-bottom:4px}.cost-tooltip .tooltip-cost{margin-bottom:4px;font-size:13px}.cost-tooltip .tooltip-trades ul{margin:4px 0 0;padding-left:16px}.cost-tooltip .tooltip-trades li{line-height:1.3}.dot-price-indicator .error{font-size:12px;color:#ff4d4f}.dot-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.dot-form .form-row{display:flex;flex-direction:column;gap:6px}.toggle-group{display:flex;gap:8px}.toggle-btn{padding:6px 16px;border-radius:20px;border:1px solid #d0d7e2;background:#fff;color:#4b5563;cursor:pointer;font-size:13px;transition:all .2s ease}.toggle-btn.active{border-color:#1677ff;background:rgba(22,119,255,.12);color:#1677ff;font-weight:600}.toggle-btn:hover{border-color:#1677ff;color:#1677ff}.quick-select{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}.quick-btn{padding:4px 10px;border-radius:6px;border:1px solid #e0e5ee;background:#fff;font-size:12px;color:#4b5563;cursor:pointer;transition:all .2s ease}.quick-btn.active{border-color:#1677ff;background:rgba(22,119,255,.12);color:#1677ff}.quick-btn:hover{border-color:#1677ff;color:#1677ff}.dot-form label{font-size:13px;color:#4b5563}.dot-form input,.dot-form select,.dot-form textarea{border:1px solid #d0d7e2;border-radius:8px;padding:8px 10px;font-size:14px;background:#fff;transition:border .2s ease}.dot-form input:focus,.dot-form select:focus,.dot-form textarea:focus{border-color:#1677ff;outline:none;box-shadow:0 0 0 3px #1677ff1f}.dot-form textarea{resize:vertical}.dot-form .form-actions{display:flex;gap:10px;align-items:center}.dot-form .form-actions button{padding:8px 16px;border-radius:8px;border:1px solid #1677ff;background:#fff;color:#1677ff;cursor:pointer;font-size:14px;transition:all .2s ease}.dot-form .form-actions button.primary{background:#1677ff;color:#fff}.dot-form .form-actions button:hover{filter:brightness(.95)}.dot-table-wrapper{background:#fff;border-radius:10px;padding:12px;border:1px solid #e5eaf2;box-shadow:inset 0 0 0 1px #f3f4f6}.dot-table-wrapper table{width:100%;border-collapse:collapse}.dot-table-wrapper th,.dot-table-wrapper td{padding:10px 8px;border-bottom:1px solid #eef1f6;text-align:left;font-size:13px}.dot-table-wrapper th{background:#f3f6fb;color:#4b5563;font-weight:500}.dot-table-wrapper tr.active{background:rgba(22,119,255,.08)}.dot-table-wrapper tr:hover{background:rgba(22,119,255,.12);cursor:pointer}.dot-table-wrapper td button{border:1px solid transparent;border-radius:6px;padding:4px 10px;background:#f2f5ff;color:#1f3f8c;cursor:pointer;font-size:12px;margin-right:8px;transition:all .2s ease}.dot-table-wrapper td button:hover{background:#dce6ff}.dot-table-wrapper td button.danger{background:#fff1f0;color:#cf1322}.dot-table-wrapper td button.danger:hover{background:#ffdcdc}.dot-table-wrapper td.positive{color:#cf1322}.dot-table-wrapper td.negative{color:#389e0d}.dot-alert{padding:10px 14px;border-radius:8px;margin-bottom:12px;font-size:13px}.dot-alert.error{background:#fff2f0;border:1px solid #ffa39e;color:#cf1322}.dot-alert.success{background:#f6ffed;border:1px solid #b7eb8f;color:#389e0d}.dot-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;background:#fff;border:1px solid #e5eaf2;border-radius:10px;padding:12px;margin-bottom:18px}.dot-summary-item{display:flex;flex-direction:column}.dot-summary-item .label{color:#6b7280;font-size:12px;margin-bottom:4px}.dot-summary-item .label.label-blue{color:#1677ff}.dot-summary-item .value{font-size:16px;font-weight:600}.dot-summary-item .value.positive{color:#cf1322}.dot-summary-item .value.negative{color:#389e0d}.dot-summary-item .value.blue{color:#1677ff}.table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.today-indicator,.row-today-indicator{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:#cf1322}.position-name-cell{display:flex;align-items:center;gap:6px}.header-actions{display:inline-flex;align-items:center;gap:12px}.ghost-danger-btn{padding:6px 12px;border-radius:6px;border:1px solid #ffccc7;background:#fff5f5;color:#cf1322;font-size:12px;cursor:pointer;transition:all .2s ease}.ghost-danger-btn:hover:not(:disabled){background:#ffecec}.ghost-danger-btn:disabled{opacity:.6;cursor:not-allowed}.trade-hands{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#475569}.cleared-summary{font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:4px}.cleared-summary.positive{color:#cf1322}.cleared-summary.negative{color:#389e0d}.loading{font-size:12px;color:#999}.dot-table-note{margin:8px 2px 0;font-size:12px;color:#6b7280}.dot-empty{color:#6b7280;background:#fff;border-radius:10px;border:1px dashed #d0d7e2;padding:40px 20px;text-align:center}@media (max-width: 1024px){.dot-layout{flex-direction:column}}body,#root{min-height:100vh;height:auto;overflow-y:auto}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html,#root{min-height:100vh;overflow-y:auto}.background-overlay{min-height:100vh;width:100%;max-width:1200px;padding:60px 20px 20px;margin:0 auto;position:relative;overflow-y:visible}.dashboard,.event-manager,.stock-manager,.coin-manager{min-height:auto;height:auto;overflow:visible}
