.app-card{background:#fff;border-radius:8px;border:1px solid rgba(0,0,0,.04);box-shadow:0 2px 8px #0000000f;overflow:hidden}.app-card-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 0;gap:8px}.app-card-title{font-size:14px;font-weight:600;color:#111827;flex:1}.app-card-extra{flex-shrink:0}.app-card-body{padding:14px 16px}.app-card-head+.app-card-body{padding-top:10px}.app-card-sm .app-card-head{padding:8px 12px 0}.app-card-sm .app-card-title{font-size:13px}.app-card-sm .app-card-body{padding:8px 12px}.app-card-sm .app-card-head+.app-card-body{padding-top:8px}.icon-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;border-radius:50%;color:#9ca3af;cursor:pointer;transition:color .16s ease,background-color .16s ease}.icon-action-btn:hover{color:var(--icon-action-hover, #3B82F6);background-color:var(--icon-action-hover-bg, rgba(59, 130, 246, .1))}.icon-action-btn:disabled{cursor:not-allowed;opacity:.5}.power-scan-results-card .power-scan-summary{font-size:11px;color:var(--app-text-muted, #9e9591);margin-bottom:10px}.power-scan-results-card .power-scan-loading{display:flex;align-items:center;justify-content:center;min-height:280px}.power-scan-results-card .power-scan-progress-box{min-width:320px;padding:24px}.power-scan-results-card .power-scan-stage{font-size:15px;font-weight:500;color:#111827;margin-bottom:16px}.power-scan-results-card .power-scan-stats{margin-top:12px;font-size:13px;color:#6b7280}.power-scan-results-card .power-scan-stats .label{color:#9ca3af;margin-right:4px}.power-scan-results-card .power-scan-result-summary,.power-scan-results-card .power-scan-conditions{margin-bottom:16px}.power-scan-results-card .power-scan-top5-results{background:#f8f9fa;padding:16px;border-radius:6px}.scan-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}@media (max-width: 480px){.scan-card-grid{grid-template-columns:1fr}}.scan-result-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s}.scan-card-header{display:flex;align-items:center;gap:8px}.scan-rank-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:24px;padding:0 7px;border-radius:12px;font-size:11px;font-weight:700;flex-shrink:0}.scan-card-name{flex:1;min-width:0;overflow:hidden}.scan-card-score-row{display:flex;align-items:center;gap:10px;background:#f8f9fa;border-radius:8px;padding:8px 12px}.scan-score-main{display:flex;flex-direction:column;align-items:center;flex:1;cursor:help}.scan-score-label{font-size:10px;color:#6b7280;line-height:1.2}.scan-score-value{font-size:20px;font-weight:800;color:#111827;line-height:1.2}.scan-grade-badge{min-width:52px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1.5px solid;font-size:13px;font-weight:700;flex-shrink:0}.scan-card-subscores{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.scan-subscore{display:flex;flex-direction:column;align-items:center;gap:3px;background:#f8f9fa;border-radius:6px;padding:5px 4px}.scan-subscore-value{font-size:12px;font-weight:700;color:#111827}.scan-subscore-label{font-size:9px;color:#6b7280;white-space:nowrap;text-align:center}.scan-card-stats{display:flex;gap:0;border-top:1px solid #E5E7EB;padding-top:8px}.scan-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.scan-stat-label{font-size:10px;color:#6b7280}.scan-stat-value{font-size:14px;font-weight:600;color:#111827}.scan-card-sparkline{border-top:1px solid #f0f0f0;padding-top:6px}.scan-card-mini-sparkline{width:auto;height:40px;flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;background:#f3f3f2;padding:6px 8px;border-radius:8px;border:1px solid #e5e4e3;overflow:hidden}.scan-mini-sparkline-svg{width:72px;height:28px;flex:0 0 72px}.scan-mini-sparkline-svg svg,.scan-mini-sparkline-svg canvas,.scan-mini-sparkline-svg img{width:100%!important;height:100%!important;display:block}.scan-mini-pct{font-size:13px;font-weight:800;line-height:1;min-width:44px;text-align:right}.scan-mini-pct.up{color:#f5222d}.scan-mini-pct.down{color:#1677ff}@media (max-width: 480px){.scan-card-mini-sparkline{height:34px;padding:5px 6px;border-radius:8px}.scan-mini-sparkline-svg{width:56px;height:22px;flex:0 0 56px}.scan-mini-pct{font-size:12px;min-width:38px}}.fav-container{display:flex;flex-direction:column;gap:8px}.fav-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px}.fav-count{font-size:12px;color:#6b7280}.fav-list-header{display:none}.fav-col-score,.fav-col-actions{text-align:center}.fav-stock-row{display:grid;grid-template-columns:130px 1fr 88px 44px;align-items:center;padding:12px;border:1px solid #E5E7EB;background:#fff;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:background .15s}.fav-stock-row:last-child{margin-bottom:0}.fav-stock-row:hover{background:#f8f9fa}.fav-stock-left{display:flex;align-items:center;gap:10px;min-width:0}.fav-logo-wrap{position:relative;width:36px;height:36px;flex-shrink:0}.fav-logo-letter{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:#fff;font-weight:700;font-size:15px}.fav-logo-img{position:absolute;top:0;right:0;bottom:0;left:0;width:36px;height:36px;border-radius:50%;object-fit:cover;background:#fff}.fav-stock-meta{min-width:0}.fav-stock-name{font-size:13px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fav-stock-code{font-size:11px;color:#6b7280}.fav-sparkline-col{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.fav-spark-pct{font-size:11px;font-weight:600}.fav-spark-pct.up{color:#f5222d}.fav-spark-pct.down{color:#1677ff}.fav-price-col{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.fav-current-price{font-size:13px;font-weight:700}.fav-current-price.up{color:#f5222d}.fav-current-price.down{color:#1677ff}.fav-day-pct{font-size:11px;font-weight:600;margin-top:1px}.fav-day-pct.up{color:#f5222d}.fav-day-pct.down{color:#1677ff}.fav-no-data{font-size:12px;color:#9ca3af}.fav-actions-col{display:flex;align-items:center;justify-content:center;gap:4px}.fav-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;cursor:pointer;border-radius:6px;color:#9ca3af;font-size:14px;transition:background .15s,color .15s}.fav-action-btn:hover{background:#f2f4f7;color:#374151}.fav-action-btn.has-note{color:#3b82f6}.fav-unfav-btn{color:#f59e0b}.fav-unfav-btn:hover{color:#2563eb}.fav-scan-status{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.fav-score-col{display:flex;flex-direction:column;align-items:center;gap:4px}.fav-col-label{font-size:10px;color:#6b7280;font-weight:500}.fav-score-badge{display:inline-block;font-size:12px;font-weight:700;padding:2px 6px;border-radius:6px;min-width:36px;text-align:center}.fav-score-badge.grade-A{background:#e8f5e9;color:#2e7d32}.fav-score-badge.grade-B{background:#eff6ff;color:#2563eb}.fav-score-badge.grade-C{background:#fff3e0;color:#e65100}.fav-score-badge.grade-D{background:#f5f5f5;color:#9e9e9e}@media (max-width: 520px){.fav-list-header,.fav-stock-row{grid-template-columns:110px 1fr 50px 36px;padding:10px 8px;margin-bottom:8px}.fav-stock-row:last-child{margin-bottom:0}.fav-logo-wrap{width:28px;height:28px}.fav-logo-letter{width:28px;height:28px;font-size:12px}.fav-logo-img{width:28px;height:28px}.fav-stock-left{gap:7px}.fav-stock-meta{min-width:0}.fav-stock-name{font-size:12px}.fav-stock-code,.fav-spark-pct{font-size:10px}.fav-score-badge{font-size:11px;padding:2px 4px;min-width:32px}}.filtered-stocks-card .link-name{cursor:pointer;color:var(--app-accent, #3B82F6)}.sniper-card{border-radius:8px}.sniper-order-status{font-weight:600;padding:4px 8px;border-radius:4px}.sniper-order-status.pending{background-color:#eff6ff;color:#3b82f6}.sniper-order-status.running{background-color:#ecfdf5;color:#f5222d}.sniper-order-status.completed{background-color:#e6fffb;color:#13c2c2}.sniper-order-status.failed{background-color:#fef2f2;color:#1677ff}.sniper-order-status.canceled{background-color:#f8f9fa;color:#6b7280}.sniper-ai-score{font-weight:600;font-size:18px;text-align:center}.sniper-ai-score.high{color:#52c41a}.sniper-ai-score.medium{color:#faad14}.sniper-order-cards{display:flex;flex-direction:column;gap:12px}.sniper-order-card{border-radius:8px;box-shadow:0 1px 2px #0000000d;border:1px solid #f0f0f0;background:#fff;transition:all .2s ease;padding:16px}.sniper-order-card:hover{box-shadow:0 2px 8px #00000014}.sniper-card-field{display:flex;justify-content:space-between;align-items:center;gap:8px}.sniper-card-label{font-size:12px;color:#8c8c8c;font-weight:500}.sniper-card-value{font-size:13px;color:#262626;font-weight:600;text-align:right}@media (max-width: 640px){.sniper-order-card{padding:12px}.sniper-card-field{font-size:12px}.sniper-card-label{font-size:11px}.sniper-card-value{font-size:12px}}.sniper-ai-score.low{color:#ff4d4f}.sniper-phase-progress{display:flex;gap:8px;align-items:center}.sniper-phase-item{flex:1;padding:8px;background:#f2f4f7;border-radius:4px;text-align:center}.sniper-phase-item.completed{background:#ecfdf5}.mobile-portfolio-container{display:flex;flex-direction:column;background:transparent}.tab-navigation{display:flex;gap:4px;padding:8px 8px 6px;background:#fff;border-bottom:1px solid #E5E7EB;position:sticky;top:0;z-index:10}.tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border:none;background:transparent;cursor:pointer;border-radius:6px;transition:all .2s ease;font-size:12px;color:#6b7280}.tab-btn.active{background:#eff6ff;color:#3b82f6;font-weight:600}.tab-btn:active{background:#dbeafe}.tab-icon{font-size:18px;display:block}.tab-label{font-size:11px;font-weight:500}.mobile-portfolio-content{padding:0 10px 10px}.mobile-portfolio-overview{display:flex;flex-direction:column;gap:12px;margin:0}.main-stats-card{background:#fff;border-radius:8px;padding:14px 12px;border:1px solid rgba(0,0,0,.04);margin:0}.stat-item{text-align:center}.overview-main-block{text-align:center;margin-bottom:10px}.stat-divider{height:1px;background:#e5e7eb;margin:14px 0}.stat-label{font-size:11px;color:#6b7280;margin-bottom:4px;font-weight:500}.stat-value{font-size:22px;font-weight:700;color:#111827;font-family:Roboto Mono,monospace;letter-spacing:.2px}.stat-value.main{font-size:24px}.stat-value.sub{font-size:16px}.stat-value.profit{color:#f5222d}.stat-value.loss{color:#1677ff}.stat-unit{font-size:11px;color:#6b7280;font-weight:400;margin-left:4px}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat-row.compact{margin-bottom:8px}.stat-item-half{text-align:center;padding:8px 6px;background:#f8f9fa;border-radius:6px}.overview-profit-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:6px;background:#f8f9fa}.overview-profit-row.profit{background:#f5222d14}.overview-profit-row.loss{background:#1677ff14}.overview-profit-label{font-size:11px;font-weight:600;color:#666}.overview-profit-values{text-align:right}.overview-profit-amount{font-size:18px;font-weight:700;font-family:Roboto Mono,monospace;letter-spacing:-.2px}.overview-profit-row.profit .overview-profit-amount{color:#f5222d}.overview-profit-row.loss .overview-profit-amount{color:#1677ff}.profit-icon{font-size:14px;margin-right:2px}.profit-rate{font-size:12px;font-weight:600;margin-top:2px}.profit-rate.profit{color:#f5222d}.profit-rate.loss{color:#1677ff}.action-buttons{display:flex;gap:8px;margin-top:0}.action-buttons .ant-btn{height:36px;font-size:13px}.action-buttons button{flex:1}.holdings-list,.sold-list{display:flex;flex-direction:column;gap:10px}.tab-header{padding:0 4px;margin-bottom:6px}.tab-count{font-size:12px;color:#6b7280;font-weight:500}.stocks-container{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width: 600px){.stocks-container{grid-template-columns:1fr}}.stock-card{background:#fff;border-radius:8px;padding:12px;border:1px solid #E5E7EB;cursor:pointer;transition:background .12s ease}.stock-card:hover{background:#f8f9fa}.stock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.stock-name-section{flex:1;min-width:0}.stock-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-change{text-align:right}.change-rate{font-size:13px;font-weight:700}.current-price-section{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #E5E7EB}.main-price{font-size:22px;font-weight:700;font-family:Roboto Mono,monospace;margin-bottom:4px;letter-spacing:-.5px}.price-unit{font-size:12px;font-weight:500;margin-left:4px;color:#6b7280}.sub-info{display:flex;align-items:center;gap:8px;font-size:11px;color:#6b7280;font-family:Roboto Mono,monospace}.buy-price{font-weight:500}.divider{color:#e5e7eb}.quantity{font-weight:500}.profit-section{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:6px;background:#f8f9fa}.profit-section.profit{background:#f5222d14}.profit-section.loss{background:#1677ff14}.profit-amount{font-size:16px;font-weight:700;font-family:Roboto Mono,monospace;letter-spacing:-.3px}.profit-section.profit .profit-amount{color:#f5222d}.profit-section.loss .profit-amount{color:#1677ff}.profit-percentage{font-size:13px;font-weight:600}.profit-section.profit .profit-percentage{color:#f5222d}.profit-section.loss .profit-percentage{color:#1677ff}.stock-name-section{display:flex;align-items:center;gap:5px}.signal-chip{display:inline-block;font-size:10px;font-weight:700;line-height:1;padding:2px 6px;border-radius:20px;cursor:default;white-space:nowrap;flex-shrink:0}.signal-chip.safe{background:#f2f4f7;color:#6b7280;border:1px solid #E5E7EB}.signal-chip.pre-warning{background:#fff7e6;color:#d46b08;border:1px solid #ffd591}.signal-chip.danger{background:#fff1f0;color:#cf1322;border:1px solid #ffa39e}@media (max-width: 480px){.mobile-portfolio-content{padding:8px}.stock-card{padding:12px}.stat-value{font-size:20px}.stat-value-large,.main-price{font-size:24px}.profit-amount{font-size:16px}}.ant-empty-description{font-size:12px;color:#6b7280!important}.portfolio-summary-card{background:#3b82f60f;border-radius:12px;border:1px solid rgba(59,130,246,.12);padding:16px 14px}.portfolio-summary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:0}.portfolio-summary-label{font-size:13px;color:#6b7280;font-weight:400;padding-top:6px;white-space:nowrap}.portfolio-summary-values{text-align:right}.portfolio-total-amount{font-size:20px;font-weight:600;color:#111827;letter-spacing:-.5px;line-height:1.2}.portfolio-profit-line{font-size:13px;font-weight:500;margin-top:4px}.portfolio-profit-line.profit{color:#f5222d}.portfolio-profit-line.loss{color:#1677ff}.overview-list-card{background:transparent;border-radius:0;border:none;overflow:visible}.overview-sort-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:none;margin-bottom:8px;background:#fff;border-radius:8px;border:1px solid #E5E7EB}.overview-sort-btn{background:none;border:none;padding:0;cursor:pointer;font-size:11px;color:#6b7280;font-weight:400;display:flex;align-items:center;gap:3px}.overview-sort-btn.active{color:#111827;font-weight:700}.sort-icon{font-size:11px}.overview-stock-list{display:flex;flex-direction:column}.overview-stock-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid #E5E7EB;border-radius:8px;margin-bottom:8px;background:#fff;cursor:pointer;transition:background .12s ease}.overview-stock-row:last-child{margin-bottom:0}.overview-stock-row:active{background:#f8f9fa}.overview-stock-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.stock-logo-wrapper{position:relative;flex-shrink:0;width:42px;height:42px}.stock-logo-circle{width:42px;height:42px;border-radius:50%;overflow:hidden;position:relative}.stock-change-badge{position:absolute;bottom:-3px;right:-4px;width:18px;height:18px;border-radius:50%;border:1.5px solid #fff;display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 1px 3px #00000040}.stock-logo-letter{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:#fff;border-radius:50%}.stock-logo-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.overview-stock-meta{flex:1;min-width:0}.overview-stock-name{font-size:14px;font-weight:500;color:#111827;display:flex;align-items:center;gap:4px;overflow:hidden}.overview-stock-name-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.overview-stock-qty{font-size:11px;color:#6b7280;margin-top:2px}.overview-stock-right{text-align:right;flex-shrink:0;padding-left:8px}.overview-eval-amount{font-size:15px;font-weight:600;color:#111827;letter-spacing:-.3px}.overview-profit-line{font-size:11px;font-weight:500;margin-top:3px}.overview-profit-line.profit{color:#f5222d}.overview-profit-line.loss{color:#1677ff}.nxt-badge{display:inline-block;font-size:9px;font-weight:700;line-height:1;padding:2px 5px;border-radius:6px;background:var(--app-accent-light);color:var(--app-accent);border:1px solid rgba(108,93,211,.18);margin-left:6px;vertical-align:middle;letter-spacing:.3px}.nxt-header-badge{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:8px;background:var(--app-accent);color:#fff;margin-left:8px;vertical-align:middle;letter-spacing:.02em}.journal-root{padding:16px 20px;max-width:1100px}.journal-summary-card{margin-bottom:12px;border-radius:8px}.journal-cal-card{border-radius:8px}.journal-cal-card .ant-picker-calendar-date-content{height:52px!important;overflow:hidden}.jc-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.jc-pnl{font-size:10px;font-weight:700;letter-spacing:-.2px;line-height:1.1;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.jc-icon{font-size:25px;line-height:1;display:inline-flex;align-items:center;justify-content:center;margin-bottom:0;color:#6b7280}.jc-pnl.pos{color:#f5222d}.jc-pnl.neg{color:#1677ff}.jc-count{font-size:10px;color:#b0b0b0;line-height:1}.jc-count{display:none}.jc-unreal{font-size:10px;line-height:1;margin-top:0}.jc-unreal.pos,.jc-unreal.neg{color:#6b7280}.jc-unreal{opacity:.9}.ant-picker-calendar-date-today .jc-pnl{font-size:12px}.journal-drawer-loading{display:flex;justify-content:center;align-items:center;min-height:200px}.journal-day-stats{margin-bottom:14px}.trade-cards-list{display:flex;flex-direction:column;gap:12px}.trade-card{border-radius:8px;box-shadow:0 1px 2px #0000000d;border:1px solid #f0f0f0;background:#fff;transition:all .2s ease}.trade-card:hover{box-shadow:0 2px 8px #00000014}.trade-field{display:flex;justify-content:space-between;align-items:center;gap:8px}.trade-label{font-size:12px;color:#8c8c8c;font-weight:500}.trade-value{font-size:13px;color:#262626;font-weight:600;text-align:right}@media (max-width: 640px){.journal-root{padding:12px 16px}.journal-summary-card,.trade-card{margin-bottom:10px}.trade-field{font-size:12px}.trade-label{font-size:11px}.trade-value{font-size:12px}}.journal-stat-card{text-align:center;border-radius:8px}.journal-trade-table{margin-bottom:16px}.journal-trade-table .ant-table-row.row-profit td:first-child{border-left:3px solid #F5222D}.journal-trade-table .ant-table-row.row-loss td:first-child{border-left:3px solid #1677FF}.pnl-pos{color:#f5222d;font-weight:700}.pnl-neg{color:#1677ff;font-weight:700}.jc-icon.jc-very-gain{color:#059669;font-size:25px}.jc-icon.jc-small-gain{color:#f5222d;font-size:25px}.jc-icon.jc-neutral{color:#9ca3af;font-size:25px}.jc-icon.jc-small-loss{color:#1677ff;font-size:25px}.jc-icon.jc-very-loss{color:#dc2626;font-size:25px}.jc-emoji{width:25px;height:25px;display:block;margin-bottom:0}.jc-emoji.jc-very-gain,.jc-emoji.jc-small-gain,.jc-emoji.jc-neutral,.jc-emoji.jc-small-loss,.jc-emoji.jc-very-loss{width:25px;height:25px}.jc-emoji-fallback{font-size:25px;line-height:1}.ant-layout-sider>div:first-child{position:relative!important}.sidebar-header-button{position:absolute!important;margin:0!important;padding:0!important;color:#fff!important;left:8px!important;transform:none!important;transition:none!important}.sidebar-header-button:hover{color:#60a5fa!important;background-color:#ffffff14!important}.ant-layout-sider-collapsed .sidebar-header-button,.ant-layout-sider:not(.ant-layout-sider-collapsed) .sidebar-header-button{left:8px!important;transform:none!important}.ant-layout-sider .ant-menu{padding:0!important}.ant-layout-sider .ant-menu-item{height:48px!important;line-height:48px!important;margin:0!important;padding:0!important;width:100%!important;position:relative!important}.ant-layout-sider-collapsed .ant-menu-item{display:flex!important;justify-content:flex-start!important;align-items:center!important;padding:0!important;width:100%!important}.ant-layout-sider-collapsed .ant-menu-item>*{margin:0!important}.ant-layout-sider-collapsed .ant-menu-item-icon{position:absolute!important;left:8px!important;margin:0!important;width:64px!important;display:flex!important;justify-content:center!important;align-items:center!important;font-size:16px!important;transform:none!important;transition:none!important}.ant-layout-sider-collapsed .ant-menu-title-content{display:none!important}.ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-menu-item{display:flex!important;align-items:center!important;padding:0!important;width:100%!important}.ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-menu-item-icon{position:absolute!important;left:8px!important;width:64px!important;min-width:64px!important;max-width:64px!important;display:flex!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;font-size:16px!important;transform:none!important;transition:none!important}.ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-menu-title-content{flex:1;padding-left:72px!important;margin-left:0}.ant-menu-inline .ant-menu-item{margin:0!important}.ant-menu-item:after{display:none!important}.ant-layout-sider .ant-menu-item{font-family:Segoe UI,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif!important;font-weight:500!important;letter-spacing:.04em!important;color:#fff!important}.ant-layout-sider .ant-menu-item .ant-menu-title-content{font-size:13px!important;letter-spacing:.05em!important}.ant-layout-sider .ant-menu-item:hover{background-color:#1e293b!important;color:#fff!important}.ant-layout-sider .ant-menu-item-selected{background:linear-gradient(90deg,rgba(59,130,246,.2) 0%,transparent 100%)!important;color:#60a5fa!important;border-left:3px solid #3B82F6}.ant-layout-sider .ant-menu-item-selected .ant-menu-title-content,.ant-layout-sider .ant-menu-item-icon{color:#fff!important}.ant-layout-sider .ant-menu-item-selected .ant-menu-item-icon{color:#60a5fa!important}.ant-layout-content{position:relative;overflow-y:auto;overflow-x:hidden;height:calc(100vh - 64px);padding-bottom:24px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.ant-layout-content:after{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;pointer-events:none;z-index:1}.ant-layout-content::-webkit-scrollbar{width:6px}.ant-layout-content::-webkit-scrollbar-track{background:transparent}.ant-layout-content::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.ant-layout-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.ant-layout-header{position:relative;z-index:10}.overlay-icon-btn{flex-shrink:0;width:32px;height:32px;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border:1px solid rgba(0,0,0,.06)!important;background:#00000008!important;cursor:pointer;transition:all .15s ease}.overlay-icon-btn:hover{background:#00000014!important;border-color:#0000001f!important}.overlay-icon-btn:active{transform:scale(.92)}.overlay-icon-btn .anticon{font-size:14px!important;font-weight:600!important;color:#555!important}.overlay-header{background:#fff;padding:8px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(0,0,0,.04);min-height:48px}.overlay-content{box-sizing:border-box;padding:12px 10px}.overlay-naver-link{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:6px;background:transparent;transition:background .12s}.overlay-naver-link:hover{background:#135fa614}.overlay-naver-link-text{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#135fa6;padding:6px 10px;border-radius:8px;border:1px solid rgba(19,95,166,.06);background:#135fa605;transition:background .12s,border-color .12s,transform .06s;text-decoration:none}.overlay-naver-link-text:hover{background:#135fa614;border-color:#135fa629;transform:translateY(-1px)}.ant-layout-header .header-title{font-size:20px;font-weight:700;background:linear-gradient(135deg,#3b82f6,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:1.5px;font-family:Rajdhani,Orbitron,-apple-system,BlinkMacSystemFont,sans-serif;white-space:nowrap;transition:font-size .2s ease}@media (max-width: 768px){.ant-layout-header .header-title{font-size:16px;letter-spacing:1px}}@media (max-width: 600px){.ant-layout-header .header-title{font-size:14px;letter-spacing:.8px}}@media (max-width: 480px){.ant-layout-header .header-title{font-size:12px;letter-spacing:.5px}}@media (max-width: 380px){.ant-layout-header .header-title{font-size:11px;letter-spacing:.3px}}.mobile-bottom-nav{display:none}.app-content{overflow-y:auto;overflow-x:hidden}@media (max-width: 768px){.mobile-hide-sider{display:none!important}.root-layout,.root-layout>.ant-layout{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important}.ant-layout-header{flex-shrink:0!important;height:52px!important;line-height:52px!important;padding:0 12px!important}.ant-layout-content{flex:1 1 0!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:60px;background:#0f172a;border-top:1px solid rgba(255,255,255,.08);z-index:1000;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -4px 20px #00000040;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.mobile-bottom-nav::-webkit-scrollbar{display:none}.mobile-bottom-nav-item{flex:1;min-width:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;color:#ffffff73;transition:color .18s;padding:6px 4px;position:relative;-webkit-tap-highlight-color:transparent}.mobile-bottom-nav-item.active{color:#3b82f6}.mobile-bottom-nav-item.active:before{content:"";position:absolute;top:0;left:20%;right:20%;height:2px;background:#3b82f6;border-radius:0 0 2px 2px}.mobile-bottom-nav-item .nav-icon{font-size:20px;line-height:1}.mobile-bottom-nav-item .nav-label{font-size:9px;font-weight:600;letter-spacing:.03em;white-space:nowrap;line-height:1}.app-content{padding:12px!important;padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))!important}}:root{--app-bg: rgb(245, 247, 250);--app-sidebar: #FFFFFF;--app-sidebar-hover: #F2F4F7;--app-accent: #3B82F6;--app-accent-hover: #2563EB;--app-accent-light: #EFF6FF;--app-up: #F5222D;--app-down: #1677FF;--app-warm-gray: #6B7280;--app-taupe: #9CA3AF;--app-card-bg: #FFFFFF;--app-card-border: #E5E7EB;--app-text: #111827;--app-text-muted: #6B7280}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Malgun Gothic,Apple SD Gothic Neo,sans-serif;background:var(--app-bg);color:var(--app-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"tnum" 1,"zero" 1;letter-spacing:-.011em}.numeric,.price,.percentage,.amount{font-family:Roboto Mono,SF Mono,Courier New,monospace;font-feature-settings:"tnum" 1,"zero" 1;letter-spacing:-.02em}.ant-btn,.ant-input,.ant-select,.ant-menu,.ant-table,.ant-card,.ant-modal,.ant-form,.ant-dropdown,.ant-tooltip{font-family:Inter,Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.ant-table-cell:has(.numeric),.ant-table-cell:has(.price),.ant-table-cell:has(.percentage),.ant-table-cell:has(.amount){font-family:Roboto Mono,SF Mono,monospace}.ant-statistic-content-value{font-family:Roboto Mono,SF Mono,monospace;font-weight:600}.ant-btn{font-weight:500;letter-spacing:-.01em}.ant-menu-item{font-weight:500}.ant-menu-item-selected{font-weight:600}#root{min-height:100vh}@media (max-width: 768px){html,body{overflow:hidden!important;height:100%!important;overscroll-behavior:none!important}#root{overflow:hidden!important;height:100%!important}}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:#0000004d}*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.app-content .ant-card{border-radius:10px;border:1px solid var(--app-card-border)}.app-content .ant-card-head{border-bottom-color:var(--app-card-border);font-weight:600;color:var(--app-text)}.app-content .ant-statistic-title{color:var(--app-text-muted);font-size:12px}.app-content .ant-table-thead>tr>th{background:transparent!important;color:var(--app-text-muted);font-weight:600;font-size:12px;text-transform:none;letter-spacing:.02em}.ant-tag{border-radius:6px}.ant-tag-default,.ant-tag{color:var(--app-accent);border-color:#3b82f633;background:var(--app-accent-light)}
