*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#071018;--color-bg-elevated:#0b1520;--color-surface:#101b27;--color-surface-soft:#142232;--color-surface-muted:#1a2a3b;--color-border:#233548;--color-border-strong:#31506a;--color-text:#e7eef6;--color-text-muted:#8ea1b4;--color-text-soft:#b7c4d1;--color-accent:#2dd4bf;--color-accent-blue:#38bdf8;--color-profit:#22c55e;--color-loss:#ef4444;--color-warning:#f59e0b;--color-danger-bg:#ef44441f;--color-profit-bg:#22c55e1f;--color-accent-bg:#2dd4bf1f;--shadow-panel:0 18px 45px #00000047;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#071018;background-color:var(--color-bg);color:#e7eef6;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button,input,select,textarea{font:inherit}.settings-container{margin:0 auto;max-width:760px;padding:28px}.settings-container h1{color:var(--color-text);font-size:32px;line-height:1.1;margin:0 0 24px}.existing-settings,.info-box,.settings-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);margin-bottom:20px;padding:20px}.existing-settings h3,.info-box h4{color:var(--color-text);font-size:18px;margin:0 0 14px}.setting-item{border-bottom:1px solid #233548b8;display:flex;justify-content:space-between;padding:10px 0}.setting-item:last-child{border-bottom:none}.form-group label,.setting-item label{color:var(--color-text-soft);font-weight:800}.masked-key{color:var(--color-accent);font-family:var(--font-mono)}.form-input{width:100%}.form-group small,.info-box li{color:var(--color-text-muted);line-height:1.5}.checkbox-group label{font-weight:700}.checkbox-group input[type=checkbox]{height:18px;margin-right:8px;width:18px}.save-button{border-radius:var(--radius-sm);cursor:pointer;font-size:15px;font-weight:800;padding:12px;width:100%}.save-button:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.65}.info-box ul{margin:0;padding-left:20px}.info-box li{margin-bottom:8px}.info-box li:last-child{margin-bottom:0}@media (max-width:720px){.settings-container{padding:18px}.setting-item{align-items:flex-start;flex-direction:column;gap:4px}}.stat-card{background:linear-gradient(180deg,#ffffff08,#fff0),var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);min-height:116px;padding:18px;transition:border-color .2s ease,transform .2s ease}.stat-card:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.stat-label{font-weight:700;margin-bottom:8px}.stat-value{font-size:24px;line-height:1.22;overflow-wrap:anywhere}.stat-card.positive .stat-value{color:var(--color-profit)}.stat-card.negative .stat-value{color:var(--color-loss)}.account-summary{width:100%}.account-summary h3,.order-form-container h3,.positions-list h3,.trade-history h3{align-items:center;color:var(--color-text);display:flex;font-size:16px;font-weight:800;justify-content:space-between;margin:0 0 14px}.refresh-btn{background:var(--color-accent-bg);border:1px solid #2dd4bf47;border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;font-size:13px;font-weight:700;padding:8px 12px;transition:background .2s ease,border-color .2s ease}.refresh-btn:hover:not(:disabled){background:#2dd4bf2e;border-color:#2dd4bf7a}.refresh-btn:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.65}.stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(5,minmax(0,1fr))}.empty,.error,.loading{padding:34px}.empty p,.error p{margin-bottom:14px}.empty button,.error button{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;padding:9px 14px}@media (max-width:1320px){.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.stats-grid{grid-template-columns:1fr}}.positions-list{background:var(--color-surface);box-shadow:var(--shadow-panel);padding:18px}.positions-list,.table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md)}.table-wrapper{background:#07101870;overflow-x:auto}.positions-table{border-collapse:collapse;font-size:13px;width:100%}.positions-table thead{background:#ffffff08;border-bottom:1px solid var(--color-border)}.positions-table td,.positions-table th{padding:13px 14px;white-space:nowrap}.positions-table th{color:var(--color-text-muted);font-weight:800}.positions-table td{border-bottom:1px solid #233548b3;color:var(--color-text-soft)}.positions-table tbody tr:hover{background:#ffffff08}.positions-table tbody tr:last-child td{border-bottom:none}.align-left{text-align:left}.align-center{text-align:center}.align-right,.positions-table .price,.positions-table .qty,.positions-table .value{text-align:right}.positions-table .symbol{color:var(--color-accent-blue);font-weight:800}.positions-table .loss,.positions-table .price,.positions-table .profit,.positions-table .qty,.positions-table .value{font-family:var(--font-mono)}.asset-badge{border-radius:999px;display:inline-block;font-size:11px;font-weight:800;padding:4px 8px}.asset-badge.crypto{background:#f59e0b21}.positions-table .profit{color:var(--color-profit);font-weight:800;text-align:right}.positions-table .loss{color:var(--color-loss);font-weight:800;text-align:right}.auto-refresh-note,.auto-refresh-toggle,.refreshing-indicator,.toast{border-radius:var(--radius-sm)}@media (max-width:768px){.positions-list{padding:14px}.positions-table{font-size:12px}.positions-table td,.positions-table th{padding:10px 9px}}.order-form-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:18px}.order-form{gap:16px}.form-group,.order-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label,.positions-select label{color:var(--color-text-soft);font-size:13px;font-weight:800}.form-input{background:#071018b8;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:14px;padding:11px 12px;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #2dd4bf1f;outline:none}.form-input:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.7}.form-input::placeholder{color:#5f7285}.radio-group{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.radio-label{align-items:center;background:#0710189e;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-soft);cursor:pointer;display:flex;gap:8px;padding:10px}.radio-label input{accent-color:var(--color-accent)}.form-hint{color:var(--color-text-muted);font-size:12px;line-height:1.5}.estimated-amount,.positions-select{background:#0710187a;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px}.positions-list-select{display:flex;flex-direction:column;gap:8px;margin-top:10px;max-height:260px;overflow-y:auto}.position-item{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;padding:11px;text-align:left}.position-item.selected,.position-item:hover{border-color:#2dd4bf80}.position-item.selected{background:var(--color-accent-bg)}.position-details,.position-header{align-items:center;display:flex;justify-content:space-between}.position-symbol{color:var(--color-accent-blue);font-weight:800}.position-badge{border-radius:999px;font-size:11px;font-weight:800;padding:3px 8px}.position-badge.stock{background:#38bdf81f;color:var(--color-accent-blue)}.position-badge.crypto{background:#f59e0b21;color:var(--color-warning)}.position-details{margin-top:8px}.amount-info,.amount-label,.position-details{color:var(--color-text-muted);font-size:12px}.amount-value{font-family:var(--font-mono);font-size:22px;font-weight:900;margin-top:6px}.amount-value.sufficient,.position-pl.profit{color:var(--color-profit)}.amount-value.insufficient,.position-pl.loss{color:var(--color-loss)}.form-error{background:var(--color-danger-bg);border:1px solid #ef444447;border-radius:var(--radius-sm);color:#fecaca;font-size:13px;padding:11px}.submit-btn{border:0;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:15px;font-weight:800;padding:12px 16px}.submit-btn.buy{background:linear-gradient(135deg,#16a34a,#22c55e)}.submit-btn.sell{background:linear-gradient(135deg,#dc2626,#ef4444)}.submit-btn:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.58}.positions-empty,.positions-loading{color:var(--color-text-muted);padding:14px 0 0;text-align:center}.order-toast{border-radius:var(--radius-md);box-shadow:var(--shadow-panel);color:#fff;font-size:14px;font-weight:800;padding:12px 16px;position:fixed;right:20px;top:88px;z-index:1000}.order-toast.success{background:var(--color-profit)}.order-toast.error{background:var(--color-loss)}.trade-history{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:18px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.filter-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.filter-buttons button{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-size:13px;font-weight:700;padding:8px 12px;transition:background .2s,border-color .2s,color .2s}.filter-buttons button.active,.filter-buttons button:hover{background:var(--color-accent-bg);border-color:#2dd4bf5c;color:var(--color-accent)}.trades-table{font-size:13px}.trades-table thead{border-bottom:1px solid var(--color-border)}.trades-table td,.trades-table th{padding:12px 10px;white-space:nowrap}.trades-table th{font-weight:800}.trades-table td{border-bottom:1px solid #233548b3}.trades-table tbody tr:hover{background:#ffffff08}.trades-table tbody tr:last-child td{border-bottom:none}.time{color:var(--color-text-muted);font-size:12px;white-space:nowrap}.symbol{color:var(--color-accent-blue);font-weight:800}.trade-type{border-radius:999px;font-weight:800;padding:4px 8px;white-space:nowrap}.amount,.percent,.quantity{font-family:var(--font-mono);font-weight:800}.profit{color:var(--color-profit)}.loss{color:var(--color-loss)}@media (max-width:768px){.trade-history{padding:14px}.trades-table{font-size:12px}.trades-table td,.trades-table th{padding:9px 6px}}.time-display{border-bottom:1px dotted #999;cursor:help;display:inline-block;position:relative}.time-display:after{background-color:#333;border-radius:4px;color:#fff;content:attr(data-tooltip);font-size:12px;margin-bottom:8px;padding:6px 10px;white-space:nowrap}.time-display:after,.time-display:before{bottom:100%;left:50%;opacity:0;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s ease-in-out,visibility .2s ease-in-out;visibility:hidden;z-index:1000}.time-display:before{border:6px solid #0000;border-top-color:#333;content:"";margin-bottom:2px}.time-display:hover:after,.time-display:hover:before{opacity:1;visibility:visible}.market-scope-tabs{background:#07101875;border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;flex-wrap:wrap;gap:6px;padding:6px}.market-scope-tabs button{background:#0000;border:1px solid #0000;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;min-width:112px;padding:8px 14px;text-align:left}.market-scope-tabs button.active{background:var(--color-accent-bg);border-color:#2dd4bf57;color:var(--color-accent)}.market-scope-tabs span,.market-scope-tabs strong{display:block}.market-scope-tabs strong{font-size:14px}.market-scope-tabs span{color:var(--color-text-muted);font-size:11px;margin-top:2px}.market-snapshot{background:linear-gradient(145deg,#141f2df5,#0c1621f5);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:18px}.market-snapshot header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.market-snapshot h3{color:var(--color-text);font-size:16px;margin:3px 0 0}.market-kicker{color:var(--color-accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.live-chip{border:1px solid #22c55e52;border-radius:999px;color:var(--color-positive);font-size:12px;font-weight:800;padding:6px 10px;white-space:nowrap}.live-chip.danger{border-color:#ef44445c;color:var(--color-loss)}.market-snapshot-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.market-snapshot-card{background:hsla(0,0%,100%,.025);border:1px solid var(--color-border);border-radius:10px;border-top:3px solid var(--color-accent-blue);padding:14px}.market-snapshot-card.kr{border-top-color:var(--color-accent)}.market-card-head{align-items:center;display:flex;gap:10px;margin-bottom:12px}.market-card-head>span{align-items:center;background:#38bdf81f;border-radius:9px;color:var(--color-accent-blue);display:flex;font-weight:900;height:36px;justify-content:center;width:36px}.kr .market-card-head>span{background:#2dd4bf1f;color:var(--color-accent)}.market-card-head small,.market-card-head strong{display:block}.market-card-head strong{color:var(--color-text)}.market-card-head small,.market-metric-row small,.market-warning{color:var(--color-text-muted)}.market-metric-row{border-top:1px solid #233548b8;display:flex;gap:12px;justify-content:space-between;padding:9px 0}.market-metric-row span{color:var(--color-text-soft);font-family:var(--font-mono);overflow-wrap:anywhere;text-align:right}.market-warning{font-size:12px;margin:12px 0 0}.kr-replay-panel{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:18px}.kr-replay-panel header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.kr-replay-panel h3{color:var(--color-text);font-size:16px;margin:3px 0 0}.kr-replay-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.kr-replay-grid span{background:hsla(0,0%,100%,.025);border:1px solid var(--color-border);border-radius:8px;padding:10px}.kr-replay-grid small,.kr-replay-grid strong{display:block}.kr-replay-grid small,.kr-replay-panel p{color:var(--color-text-muted)}.kr-replay-grid strong{color:var(--color-text);font-family:var(--font-mono);margin-top:5px}.kr-replay-panel p{font-size:13px;line-height:1.6;margin:0}@media (max-width:860px){.market-snapshot-grid{grid-template-columns:1fr}.kr-replay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard{margin:0 auto;max-width:1480px;padding:28px}.dashboard-header{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.dashboard-kicker{color:var(--color-accent);display:block;font-size:13px;font-weight:800;margin-bottom:8px;text-transform:uppercase}.dashboard-header h1{color:var(--color-text);font-size:36px;line-height:1.1;margin:0 0 8px}.dashboard-section-title{color:var(--color-text-soft);font-size:17px;font-weight:800;margin:0 0 6px}.subtitle{color:var(--color-text-muted);font-size:16px;margin:0}.dashboard-mode{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:150px;padding:12px 14px;text-align:right}.mode-label{color:var(--color-text-muted);display:block;font-size:12px;margin-bottom:4px}.dashboard-mode strong{color:var(--color-accent-blue);font-family:var(--font-mono);font-size:17px}.dashboard-content{display:flex;flex-direction:column;gap:20px}.dashboard-hero,.dashboard-history-panel,.dashboard-main-panel,.dashboard-side-panel{min-width:0}.dashboard-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.6fr) minmax(320px,.74fr)}.dashboard-section-note{align-items:center;background:#38bdf817;border:1px solid #38bdf83d;border-radius:var(--radius-md);color:var(--color-text-soft);display:flex;font-size:14px;gap:10px;padding:13px 16px}.dashboard-section-note span{color:var(--color-accent-blue);font-family:var(--font-mono);font-size:11px;font-weight:800}.dashboard-section-note.kr-only{background:#2dd4bf14;border-color:#2dd4bf40}.dashboard-section-note.kr-only span{color:var(--color-accent)}.dashboard .empty button,.dashboard .error button{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text)}@media (max-width:1120px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width:720px){.dashboard{padding:18px}.dashboard-header{align-items:flex-start;flex-direction:column}.dashboard-mode{text-align:left;width:100%}}.strategy-settings{margin:0 auto;max-width:760px;padding:28px}.strategy-settings h2{color:var(--color-text);font-size:32px;line-height:1.1;margin:0 0 22px}.strategy-settings h3{color:var(--color-text);font-size:18px;margin:0 0 15px}.loading{color:var(--color-text-muted);padding:40px;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #ffffff1f;border-radius:50%;border-top:3px solid var(--color-accent);height:32px;margin:0 auto 14px;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message,.success-message{border-radius:var(--radius-md);margin-bottom:18px;padding:12px 14px}.error-message{background:var(--color-danger-bg);border:1px solid #ef444447;color:#fecaca}.success-message{background:var(--color-profit-bg);border:1px solid #22c55e47;color:#bbf7d0}.settings-form,.settings-info{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);margin-bottom:20px;padding:20px}.form-group{margin-bottom:18px}.divider{border:0;border-top:1px solid var(--color-border);margin:20px 0}.form-group label{color:var(--color-text-soft);display:block;font-weight:800;margin-bottom:8px}.form-group input[type=number]{background:#071018b8;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:14px;padding:11px 12px;width:100%}.form-group input[type=number]:focus{border-color:var(--color-accent);outline:none}.form-group small{color:var(--color-text-muted);display:block;font-size:12px;margin-top:5px}.threshold-help{line-height:1.5}.threshold-help strong{color:var(--color-text-soft)}.checkbox-group label{align-items:center;cursor:pointer;display:flex}.checkbox-group input[type=checkbox]{accent-color:var(--color-accent);cursor:pointer;margin-right:10px}.checkbox-group span{color:var(--color-text-soft);font-weight:800}.button-group{display:flex;gap:10px;margin-top:24px}.cancel-button,.save-button{border-radius:var(--radius-sm);cursor:pointer;flex:1 1;font-size:15px;font-weight:800;padding:12px 18px}.save-button{background:var(--color-accent-bg);border:1px solid #2dd4bf57;color:var(--color-accent)}.cancel-button{background:var(--color-surface-soft);border:1px solid var(--color-border);color:var(--color-text-soft)}.save-button:hover:not(:disabled){background:#2dd4bf2e}.cancel-button:hover:not(:disabled){border-color:var(--color-border-strong)}.cancel-button:disabled,.save-button:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.65}.settings-info ul{list-style:none;margin:0;padding:0}.settings-info li{border-bottom:1px solid #233548b8;color:var(--color-text-muted);padding:10px 0}.settings-info li:last-child{border-bottom:none}.settings-info strong{color:var(--color-text-soft);margin-right:8px}@media (max-width:720px){.strategy-settings{padding:18px}.button-group{flex-direction:column}}.stock-card{background:#fff;border-left:4px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:16px;transition:all .3s ease}.stock-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.stock-card.buy{border-left-color:#4caf50}.stock-card.sell{border-left-color:#f44336}.stock-card.hold{border-left-color:#ff9800}.stock-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.stock-ticker{color:#1976d2;font-size:20px;font-weight:700}.stock-sector{background:#f5f5f5;border-radius:4px;color:#666;font-size:12px;padding:4px 8px}.action-badge{border-radius:16px;font-size:12px;font-weight:700;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.action-badge.buy{background:#e8f5e9;border:1px solid #a5d6a7;color:#2e7d32}.action-badge.sell{background:#ffebee;border:1px solid #ef9a9a;color:#c62828}.action-badge.hold{background:#fff3e0;border:1px solid #ffcc80;color:#e65100}.ai-metrics{display:flex;gap:16px;margin-bottom:8px}.verification-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.badge{align-items:center;border-radius:12px;cursor:help;display:inline-flex;font-size:11px;font-weight:600;padding:4px 8px;transition:all .2s}.badge:hover{transform:scale(1.05)}.badge-success{background:#e8f5e9;border:1px solid #a5d6a7;color:#2e7d32}.badge-warning{background:#fff3e0;border:1px solid #ffcc80;color:#e65100}.badge-error{background:#ffebee;border:1px solid #ef9a9a;color:#c62828}.badge-neutral{background:#f5f5f5;border:1px solid #e0e0e0;color:#616161}.badge-detail{font-size:10px;opacity:.8}.metric{display:flex;flex:1 1;flex-direction:column;gap:4px}.metric .label{color:#999;font-size:11px;text-transform:uppercase}.metric .value{font-size:16px;font-weight:700}.value.confidence{color:#1976d2}.value.risk{font-size:14px}.catalyst{background:#fff3e0;border-radius:8px;margin-bottom:12px;padding:10px}.catalyst-label{color:#e65100;font-size:11px;font-weight:700;margin-bottom:4px}.catalyst-text{color:#333;font-size:12px;line-height:1.3}.market-summary{background:#e3f2fd;border-radius:8px;margin-bottom:12px;padding:10px}.summary-label{color:#0d47a1;font-size:11px;font-weight:700;margin-bottom:4px}.summary-text{color:#1565c0;font-size:12px;line-height:1.3}.why-now{background:#f3e5f5;border-radius:8px;margin-bottom:12px;padding:10px}.why-now-label{color:#6a1b9a;font-size:11px;font-weight:700;margin-bottom:4px}.why-now-text{color:#7b1fa2;font-size:12px;line-height:1.3}.source-hint{background:#fafafa;border-left:3px solid #9e9e9e;border-radius:6px;margin-bottom:12px;padding:8px}.source-label{color:#616161;font-size:10px;font-weight:700;margin-bottom:4px}.source-text{color:#757575;font-size:11px;font-style:italic}.strategy-signals-compact{align-items:center;background:#f5f5f5;border-radius:6px;border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:10px}.strategy-signals-compact .signals-label{font-size:16px}.strategy-signals-compact .signal-item{align-items:center;display:flex;gap:4px}.strategy-signals-compact .signal-name{color:#666;font-size:11px;font-weight:700}.strategy-signals-compact .signal-icon{font-size:16px}.strategy-signals-compact .signal-strength{color:#999;font-size:12px}.strategy-signals-compact .signal-divider{color:#ccc;font-weight:400;padding:0 4px}.strategy-signals-compact .signal-arrow{color:#999;font-size:16px;font-weight:700;padding:0 4px}.strategy-signals-compact .combined-action-inline{border-radius:6px;font-size:14px;font-weight:700;padding:4px 12px}.strategy-signals-compact .combined-action-inline.buy{background:#e8f5e9;color:#2e7d32}.strategy-signals-compact .combined-action-inline.sell{background:#ffebee;color:#c62828}.strategy-signals-compact .combined-action-inline.hold{background:#fff3e0;color:#e65100}.signal-state{border-radius:6px;font-size:12px;font-weight:700;margin-top:12px;padding:10px}.signal-loading{background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3}.signal-error{background:#ffebee;border:1px solid #ef9a9a;color:#c62828}@media (max-width:768px){.strategy-signals-compact .signal-arrow{text-align:center;width:100%}}.execute-btn{background:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;margin-top:12px;padding:10px;transition:background .2s;width:100%}.execute-btn:hover:not(:disabled){background:#1565c0}.execute-btn:disabled{background:#bdbdbd;cursor:not-allowed}.stock-card{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:var(--radius-md);box-shadow:var(--shadow-panel)}.stock-card:hover{border-color:var(--color-border-strong)}.stock-header{border-bottom-color:var(--color-border)}.stock-ticker{color:var(--color-accent-blue)}.badge-neutral,.signal-state,.source-hint,.stock-sector,.strategy-signals-compact{background:#0710187a;border-color:var(--color-border);color:var(--color-text-muted)}.action-badge.buy,.badge-success,.strategy-signals-compact .combined-action-inline.buy{background:var(--color-profit-bg);border-color:#22c55e57;color:var(--color-profit)}.action-badge.sell,.badge-error,.signal-error,.strategy-signals-compact .combined-action-inline.sell{background:var(--color-danger-bg);border-color:#ef444457;color:var(--color-loss)}.signal-loading{background:#3b82f61f;border-color:#3b82f657;color:var(--color-accent-blue)}.action-badge.hold,.badge-warning,.strategy-signals-compact .combined-action-inline.hold{background:#f59e0b1f;border-color:#f59e0b57;color:var(--color-warning)}.metric .label,.source-label,.source-text,.strategy-signals-compact .signal-name,.strategy-signals-compact .signal-strength{color:var(--color-text-muted)}.catalyst-text,.metric .value,.summary-text,.why-now-text{color:var(--color-text-soft)}.summary-label,.value.confidence{color:var(--color-accent-blue)}.catalyst,.market-summary,.why-now{background:#0710187a;border:1px solid var(--color-border)}.catalyst-label,.why-now-label{color:var(--color-warning)}.execute-btn{background:var(--color-accent-bg);border:1px solid #2dd4bf57;color:var(--color-accent)}.execute-btn:hover:not(:disabled){background:#2dd4bf2e}.execute-btn:disabled{background:var(--color-surface-soft);color:var(--color-text-muted)}.holdings-panel{background:#fafafa;border:2px solid #e0e0e0;border-radius:12px;margin-bottom:24px;padding:20px}.holdings-panel .panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px}.holdings-panel h3{color:#333;flex-shrink:0;font-size:20px;font-weight:700;margin:0;white-space:nowrap}.holdings-panel .account-summary{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-shrink:1;font-size:14px;gap:8px;min-width:0;padding:8px 12px}.account-label{color:#666;font-weight:500}.account-value{color:#333;font-size:16px;font-weight:700}.account-divider{color:#ccc}.account-return{font-size:16px;font-weight:700}.account-return.positive{color:#4caf50}.account-return.negative{color:#f44336}.holdings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.holdings-panel .empty,.holdings-panel .error,.holdings-panel .loading{color:#666;font-size:14px;padding:40px 20px;text-align:center}.holdings-panel .error{color:#f44336}.holdings-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel)}.account-value,.holdings-panel h3{color:var(--color-text)}.holdings-panel .account-summary{background:#0710187a;border:1px solid var(--color-border)}.account-divider,.account-label{color:var(--color-text-muted)}.account-return.positive{color:var(--color-profit)}.account-return.negative{color:var(--color-loss)}.holdings-panel .empty,.holdings-panel .loading{color:var(--color-text-muted)}.holdings-panel .error{background:var(--color-danger-bg);border:1px solid #ef444447;border-radius:var(--radius-md);color:#fecaca}@media (max-width:768px){.holdings-panel{padding:16px}.holdings-panel .panel-header{align-items:flex-start;flex-direction:column;gap:12px}.holdings-panel .account-summary{justify-content:space-between;width:100%}.holdings-grid{grid-template-columns:1fr}}.market-status-badge{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000026;cursor:help;display:flex;gap:10px;padding:12px 16px;position:fixed;right:20px;top:80px;transition:all .3s ease;z-index:100}.market-status-badge:hover{box-shadow:0 4px 16px #00000040;transform:translateY(-2px)}.market-status-badge.open{border-left:4px solid #4caf50}.market-status-badge.closed{border-left:4px solid #f44336}.market-status-badge.error,.market-status-badge.loading{border-left:4px solid #ff9800}.market-status-badge .status-icon{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:800;line-height:1}.market-status-badge.open .status-icon{animation:pulse 2s ease-in-out infinite}.market-status-badge .status-content{display:flex;flex-direction:column;gap:4px}.market-status-badge .status-text{color:#333;font-size:14px;font-weight:700}.market-status-badge .status-detail{color:#666;font-size:12px}.market-status-badge .hours-remaining{color:#999;font-style:italic}.market-status-badge{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;box-shadow:var(--shadow-panel)}.market-status-badge.open{border-left-color:var(--color-profit)}.market-status-badge.closed{border-left-color:var(--color-loss)}.market-status-badge.error,.market-status-badge.loading{border-left-color:var(--color-warning)}.market-status-badge .status-text{color:var(--color-text)}.market-status-badge .hours-remaining,.market-status-badge .status-detail{color:var(--color-text-muted)}@media (max-width:768px){.market-status-badge{padding:8px 12px;right:10px;top:10px}.market-status-badge .status-icon{font-size:10px}.market-status-badge .status-text{font-size:12px}.market-status-badge .status-detail{font-size:10px}}.strategy-execution{max-width:1400px;padding:20px}.strategy-execution h2{color:#333;margin-bottom:20px}.strategy-market-note{color:#64748b;color:var(--color-text-muted,#64748b);margin:-8px 0 16px}.strategy-market-tabs{background:#0f172a14;border:1px solid #e2e8f0;border-radius:10px;display:inline-flex;gap:.5rem;margin-bottom:20px;padding:6px}.strategy-market-tabs button{background:#0000;border:1px solid #0000;border-radius:8px;color:#475569;cursor:pointer;font-weight:600;padding:.7rem 1rem}.strategy-market-tabs button.active{background:#fff;border-color:#94a3b8;color:#0f172a}.execution-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:24px}.execution-summary div{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.summary-label{color:#64748b;display:block;font-size:12px;margin-bottom:6px}.execution-summary strong{color:#0f172a;font-size:18px}.error,.loading{font-size:18px;padding:40px;text-align:center}.error{color:#d32f2f}.scheduler-status{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;margin-bottom:30px;padding:15px 20px}.status-item{align-items:center;display:flex;font-size:16px;font-weight:600;gap:10px;margin-bottom:10px}.status-indicator{border-radius:50%;display:inline-block;height:12px;width:12px}.status-indicator.running{animation:pulse 2s infinite;background:#4caf50}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-info{color:#555;font-size:14px;margin-top:8px}.status-info p{margin:4px 0}.kr-execution-card,.kr-execution-warning{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #f59e0b;border-radius:8px;margin-bottom:20px;padding:16px 18px}.kr-execution-card li,.kr-execution-warning p{color:#475569;line-height:1.6}.kr-execution-card h3{margin-top:0}.kr-readiness-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.kr-readiness-head button{background:#f8fafc;border:1px solid #cbd5e1;border-radius:7px;color:#0f172a;cursor:pointer;font-weight:700;padding:8px 10px}.kr-readiness-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:12px 0}.kr-readiness-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:11px 12px}.kr-readiness-error,.kr-readiness-item span{color:#64748b;display:block;font-size:12px}.kr-readiness-item strong{color:#0f172a;display:block;margin-top:6px}.kr-readiness-blockers{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;margin-top:12px;padding:12px 14px}.kr-readiness-blockers ul{margin:8px 0 0;padding-left:18px}.kr-readiness-ok{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;color:#047857;padding:12px 14px}.kr-execution-link{color:#0f766e;display:inline-block;font-weight:700;margin-top:.75rem}.ai-watchlist-panel{background:#fff;border-left:4px solid #673ab7;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.ai-watchlist-panel.fallback{border-left-color:#ff9800}.fallback-warning{align-items:flex-start;background:#fff3e0;border:2px solid #ff9800;border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:15px 20px}.fallback-warning .warning-icon{font-size:32px;line-height:1}.fallback-warning .warning-content h4{color:#e65100;font-size:16px;margin:0 0 8px}.fallback-warning .warning-content p{color:#666;font-size:14px;margin:0}.rate-limit-warning{background:#fff3e0;border:2px solid #ff9800;border-radius:8px;margin-bottom:20px;padding:15px 20px}.rate-limit-warning .warning-header{color:#e65100;font-size:18px;font-weight:600;margin-bottom:12px}.rate-limit-warning .warning-content{color:#666;font-size:14px}.rate-limit-warning .warning-content p{line-height:1.6;margin:6px 0}.ai-watchlist-panel .panel-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:20px}.ai-watchlist-panel .panel-header,.panel-actions{align-items:center;display:flex;gap:15px}.countdown{background:#f5f5f5;border-radius:4px;color:#666;font-size:14px;font-weight:600;padding:8px 12px}.ai-stocks-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.signals-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.panel-header h3{color:#333;margin:0}.panel-header button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.panel-header button:hover:not(:disabled){background:#1976d2}.panel-header button:disabled{background:#ccc;cursor:not-allowed}.category-title{border-bottom:2px solid #e0e0e0;color:#555;font-size:16px;margin:20px 0 15px;padding-bottom:8px}.signals-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.signal-card{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:15px;text-align:center}.signal-card.crypto{background:#fff8e1;border-color:#ffc107}.signal-card h5{color:#333;font-size:18px;margin:0 0 10px}.signal-card .action{border-radius:4px;font-size:24px;font-weight:700;margin:10px 0;padding:10px}.signal-card .action.buy{background:#e8f5e9;color:#4caf50}.signal-card .action.sell{background:#ffebee;color:#f44336}.signal-card .action.hold{background:#f5f5f5;color:#757575}.signal-card .action.loading{background:#fafafa;color:#9e9e9e;font-size:14px}.signal-card .strength{color:#666;font-size:14px;margin:10px 0}.signal-card .details{color:#666;display:flex;font-size:12px;justify-content:space-around;margin:10px 0}.signal-card .execute-btn{background:#ff9800;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:10px;width:100%}.signal-card .execute-btn:hover:not(:disabled){background:#f57c00}.signal-card .execute-btn:disabled{background:#ccc;cursor:not-allowed}.execution-logs{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.execution-logs h3{color:#333;margin-bottom:20px;margin-top:0}.execution-logs .empty{color:#999;font-size:16px;padding:40px;text-align:center}.table-container{overflow-x:auto}.execution-logs table{border-collapse:collapse;font-size:14px;width:100%}.execution-logs thead{background:#f5f5f5}.execution-logs th{border-bottom:2px solid #ddd;color:#555;font-weight:600;padding:12px;text-align:left}.execution-logs td{border-bottom:1px solid #eee;padding:12px}.execution-logs tbody tr:hover{background:#fafafa}.execution-logs td.action{font-weight:600}.execution-logs td.action.buy{color:#4caf50}.execution-logs td.action.sell{color:#f44336}.execution-logs td.action.hold{color:#757575}.execution-logs td.executed{color:#4caf50;font-weight:600}.execution-logs td.not-executed{color:#999}.execution-logs td.reason{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.signals-grid{grid-template-columns:1fr}.panel-header{align-items:stretch;flex-direction:column;gap:15px}.table-container{overflow-x:scroll}.execution-logs table{font-size:12px}.execution-logs td,.execution-logs th{padding:8px}}.strategy-execution{margin:0 auto;max-width:1480px;padding:28px}.strategy-execution h2{color:var(--color-text);font-size:32px;line-height:1.1;margin:0 0 22px}.ai-watchlist-panel,.execution-logs,.execution-summary div,.scheduler-status,.signals-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel)}.execution-summary div{padding:14px 16px}.category-title,.countdown,.signal-card .details,.signal-card .strength,.status-info,.summary-label{color:var(--color-text-muted)}.execution-logs h3,.execution-summary strong,.panel-header h3,.signal-card h5,.status-item{color:var(--color-text)}.ai-watchlist-panel,.execution-logs,.signals-panel{padding:18px}.ai-watchlist-panel{border-left:1px solid var(--color-border)}.ai-watchlist-panel.fallback,.scheduler-status{border-left:3px solid var(--color-warning)}.fallback-warning,.rate-limit-warning{background:#f59e0b1f;border:1px solid #f59e0b57;border-radius:var(--radius-md)}.fallback-warning .warning-content h4,.rate-limit-warning .warning-header{color:var(--color-warning)}.fallback-warning .warning-content p,.rate-limit-warning .warning-content{color:var(--color-text-soft)}.panel-header button,.signal-card .execute-btn{background:var(--color-accent-bg);border:1px solid #2dd4bf57;border-radius:var(--radius-sm);color:var(--color-accent);font-weight:800}.panel-header button:hover:not(:disabled),.signal-card .execute-btn:hover:not(:disabled){background:#2dd4bf2e}.panel-header button:disabled,.signal-card .execute-btn:disabled{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-muted)}.signal-card{background:#0710187a;border:1px solid var(--color-border)}.signal-card.crypto{background:#f59e0b14;border-color:#f59e0b47}.signal-card .action.buy{background:var(--color-profit-bg);color:var(--color-profit)}.signal-card .action.sell{background:var(--color-danger-bg);color:var(--color-loss)}.signal-card .action.hold,.signal-card .action.loading{background:#8ea1b41f;color:var(--color-text-muted)}.execution-logs thead{background:#ffffff08}.execution-logs td,.execution-logs th{border-bottom-color:#233548b8;color:var(--color-text-soft)}.execution-logs th{color:var(--color-text-muted)}.execution-logs tbody tr:hover{background:#ffffff08}.execution-logs td.action.buy,.execution-logs td.executed{color:var(--color-profit)}.execution-logs td.action.sell{color:var(--color-loss)}.execution-logs td.action.hold,.execution-logs td.not-executed{color:var(--color-text-muted)}.system-overview-page{color:var(--color-text);display:flex;flex-direction:column;gap:20px;padding:28px 32px 40px}.system-header{align-items:flex-end;display:flex;gap:20px;justify-content:space-between}.system-header h1{font-size:30px;margin:4px 0 8px}.system-header p,.system-section-head p{color:var(--color-text-muted);margin:0}.system-kicker{color:var(--color-accent);font-size:11px;font-weight:800;letter-spacing:.12em}.system-refresh{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;padding:10px 14px}.system-refresh:disabled{cursor:wait;opacity:.55}.system-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.system-secondary-button{background:#0f172a7a;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;padding:9px 12px}.system-secondary-button:disabled{cursor:wait;opacity:.6}.safety-banner{align-items:center;background:#22c55e12;border:1px solid #22c55e47;border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:14px 18px}.safety-banner div{align-items:center;display:flex;gap:9px}.safety-banner p{color:var(--color-text-muted);font-size:13px;margin:0}.safety-dot{background:var(--color-positive);border-radius:50%;box-shadow:0 0 12px #22c55ebf;height:9px;width:9px}.safety-banner.unlocked{background:#ef444414;border-color:#ef444459}.safety-banner.unlocked .safety-dot{background:var(--color-loss)}.market-tabs{align-self:flex-start;background:#ffffff08;border:1px solid var(--color-border);border-radius:999px;display:flex;gap:4px;padding:4px}.market-tabs button{background:#0000;border:0;border-radius:999px;color:var(--color-text-muted);cursor:pointer;font-weight:700;min-width:66px;padding:8px 16px}.market-tabs button.active{background:var(--color-accent-bg);color:var(--color-accent)}.market-card-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.market-card,.system-panel{background:linear-gradient(145deg,#141f2df5,#0c1621f5);border:1px solid var(--color-border);border-radius:14px;box-shadow:var(--shadow-panel);padding:20px}.market-card{border-top:3px solid var(--color-accent-blue)}.market-card.kr-market{border-top-color:var(--color-accent)}.market-head{gap:12px}.market-head,.market-head>span{align-items:center;display:flex}.market-head>span{background:#38bdf81f;border-radius:10px;color:var(--color-accent-blue);font-weight:800;height:42px;justify-content:center;width:42px}.kr-market .market-head>span{background:#2dd4bf1f;color:var(--color-accent)}.market-head h2{font-size:19px;margin:0 0 3px}.market-description,.market-head small{color:var(--color-text-muted)}.market-description{font-size:13px;margin:14px 0 18px}.market-metrics{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.market-metrics>span{background:hsla(0,0%,100%,.025);border:1px solid var(--color-border);border-radius:8px;padding:10px}.market-metrics small,.market-metrics strong{display:block}.market-evidence small,.market-metrics small{color:var(--color-text-muted);font-size:11px}.market-metrics strong{font-size:16px;margin-top:5px}.market-evidence{border-bottom:1px solid var(--color-border);display:flex;font-size:13px;justify-content:space-between;padding:9px 2px}.market-evidence span{font-family:var(--font-mono);overflow-wrap:anywhere;text-align:right}.market-stage{background:#38bdf814;border-radius:8px;display:flex;flex-direction:column;gap:3px;margin-top:16px;padding:12px}.market-stage strong{color:var(--color-accent-blue);font-size:13px}.market-stage span{color:var(--color-text-muted);font-size:12px}.market-stage.warn{background:#f59e0b14}.market-stage.warn strong{color:var(--color-warning)}.watchlist-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.watchlist-card{background:hsla(0,0%,100%,.025);border:1px solid var(--color-border);border-radius:10px;padding:14px}.watchlist-card.kr{border-color:#2dd4bf40}.watchlist-card div{align-items:center;display:flex;justify-content:space-between}.watchlist-card strong{font-size:16px}.watchlist-card small,.watchlist-card span{color:var(--color-text-muted);font-size:12px}.watchlist-card p{font-family:var(--font-mono);font-size:13px;line-height:1.6;margin:12px 0 0;overflow-wrap:anywhere}.watchlist-symbol-list{grid-gap:6px;display:grid;gap:6px;list-style:none;margin:12px 0 0;padding:0}.watchlist-symbol-list li{align-items:center;background:hsla(0,0%,100%,.025);border:1px solid #94a3b81f;border-radius:7px;display:flex;justify-content:space-between;padding:7px 9px}.watchlist-symbol-list strong{font-size:13px}.watchlist-symbol-list span{font-family:var(--font-mono)}.system-section-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.system-section-head h2{font-size:18px;margin:4px 0 0}.system-section-head p{font-size:12px;max-width:390px;text-align:right}.system-chip{border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-muted);font-size:11px;padding:6px 10px}.system-chip.safe{border-color:#22c55e4d;color:var(--color-positive)}.gate-rail{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr))}.gate-item{border:1px solid var(--color-border);border-radius:9px;display:flex;flex-direction:column;min-height:100px;padding:11px}.gate-item>span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.gate-item strong{font-size:13px;line-height:1.35;margin:10px 0 auto}.gate-item small{color:var(--color-text-muted);font-size:11px}.gate-item.complete,.gate-item.technical_complete{border-color:#22c55e59}.gate-item.complete small,.gate-item.technical_complete small{color:var(--color-positive)}.gate-item.in_progress{border-color:#38bdf873}.gate-item.in_progress small{color:var(--color-accent-blue)}.gate-item.locked{opacity:.55}.architecture-flow{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr}.flow-step{background:hsla(0,0%,100%,.025);border:1px solid var(--color-border);border-radius:9px;display:flex;flex-direction:column;gap:5px;padding:14px}.flow-step.accent{border-color:#2dd4bf66}.flow-step span{font-size:11px}.flow-arrow,.flow-step span{color:var(--color-text-muted)}.flow-arrow{align-self:center}.shadow-note{background:#a855f712;border-left:3px solid #a855f7;display:flex;gap:12px;margin-top:12px;padding:11px 14px}.shadow-note span{color:var(--color-text-muted);font-size:12px}.system-generated{color:var(--color-text-muted);font-size:11px;margin:-8px 0 0;text-align:right}.system-state{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px}.system-state.error-state{color:#fecaca}@media (max-width:1100px){.market-card-grid{grid-template-columns:1fr}.gate-rail{grid-template-columns:repeat(4,1fr)}.market-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.system-overview-page{padding:20px 16px 32px}.safety-banner,.system-header,.system-section-head{align-items:flex-start;flex-direction:column}.gate-rail,.watchlist-grid{grid-template-columns:repeat(2,1fr)}.architecture-flow{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg)}.system-section-head p{text-align:left}}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.section-card header h2{color:var(--color-text);font-size:1.25rem;margin:0}.section-card header p{color:var(--color-text-muted);font-size:.95rem;margin:.25rem 0 0}.section-card .section-content{display:flex;flex-direction:column;gap:1rem}.comparison-table-wrapper{overflow-x:auto}.comparison-table{border-collapse:collapse;width:100%}.comparison-table thead tr{border-bottom:1px solid var(--color-border)}.comparison-table th{color:var(--color-text-muted);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.75rem .5rem;text-transform:uppercase}.comparison-table .align-left{text-align:left}.comparison-table .align-right{text-align:right}.comparison-table tbody tr{border-bottom:1px solid #233548b8;transition:background-color .2s}.comparison-table tbody tr:hover{background-color:#ffffff08}.comparison-table tbody tr:last-child{border-bottom:none}.comparison-table td{color:var(--color-text-soft);font-size:.95rem;padding:.875rem .5rem}.comparison-table td.positive{color:var(--color-profit);font-weight:600}.comparison-table td.negative{color:var(--color-loss);font-weight:600}.comparison-table td.warning-text{color:var(--color-warning)}.comparison-table td.font-medium{font-weight:500}.trades-table-container{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.trades-table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.trades-table-header h3{color:var(--color-text);font-size:1.125rem;font-weight:600;margin:0}.trades-count{background:#0710187a;border-radius:999px;color:var(--color-text-muted);font-size:.875rem;font-weight:500;padding:.25rem .75rem}.trades-empty{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:.5rem;flex-direction:column;gap:.75rem;padding:3rem 2rem;text-align:center}.trades-empty,.trades-empty-icon{align-items:center;display:flex;justify-content:center}.trades-empty-icon{background:var(--color-accent-bg);border-radius:50%;height:3rem;width:3rem}.trades-empty-svg{color:var(--color-accent);height:1.5rem;width:1.5rem}.trades-empty-text{color:var(--color-text-soft);font-size:.95rem;font-weight:600;margin:0}.trades-empty-hint{color:var(--color-text-muted);font-size:.8125rem;line-height:1.5;margin:0}.trades-table-wrapper{border:1px solid var(--color-border);border-radius:.5rem;overflow-x:auto}.trades-table{border-collapse:collapse;width:100%}.trades-table thead{background:#ffffff08}.trades-table thead tr{border-bottom:1px solid var(--color-border)}.trades-table th{color:var(--color-text-muted);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;text-transform:uppercase}.trades-table .align-left{text-align:left}.trades-table .align-right{text-align:right}.trades-table tbody tr{border-bottom:1px solid #233548b8;transition:background-color .15s}.trades-table tbody tr:hover{background-color:#ffffff08}.trades-table tbody tr:last-child{border-bottom:none}.trades-table td{color:var(--color-text-soft);font-size:.9rem;padding:.875rem 1rem}.date-cell{color:var(--color-text-muted);font-size:.875rem}.symbol-cell{color:var(--color-accent-blue);font-size:.9rem;font-weight:600}.price-cell{color:var(--color-text);font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-weight:500}.trade-badge{border-radius:.375rem;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.trade-badge-buy{background:var(--color-profit-bg);color:var(--color-profit)}.trade-badge-sell{background:var(--color-danger-bg);color:var(--color-loss)}.profit-cell{border-radius:.375rem;display:inline-block;font-weight:600;padding:.25rem .625rem}.profit-positive{background:var(--color-profit-bg);color:var(--color-profit)}.profit-negative{background:var(--color-danger-bg);color:var(--color-loss)}.profit-muted{color:var(--color-text-muted)}.performance-stack{display:flex;flex-direction:column;gap:1.5rem}.performance-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr)}.performance-chart-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.performance-trades-scroll{max-height:560px;overflow-y:auto}.performance-chart-shell{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;height:20rem;overflow:hidden}.performance-chart-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:12px;justify-content:space-between;padding:1rem 1.25rem}.performance-chart-header h3{color:var(--color-text);font-size:1.125rem;margin:0}.performance-chart-header p,.performance-chart-meta{color:var(--color-text-muted);font-size:.75rem;margin:0}.performance-chart-meta.negative{color:var(--color-loss)}.performance-chart-empty{align-items:center;background:#07101873;color:var(--color-text-muted);display:flex;flex:1 1;font-size:.875rem;justify-content:center}.trading-view-chart{height:500px}.trading-view-body{background:#07101873;flex:1 1;position:relative}.trading-view-error,.trading-view-loading{align-items:center;color:var(--color-text-muted);display:flex;font-size:.875rem;inset:0;justify-content:center;padding:1.5rem;position:absolute;text-align:center}.trading-view-loading{background:#07101873;flex-direction:column;gap:.5rem;z-index:1}.spinner-dot{animation:spin 1s linear infinite;border:2px solid #ffffff1f;border-radius:50%;border-top:2px solid var(--color-accent);height:2rem;width:2rem}.tv-container{height:100%;opacity:1;transition:opacity .3s;width:100%}.tv-container.loading{opacity:0}@media (max-width:1100px){.performance-chart-grid,.performance-grid{grid-template-columns:1fr}}.backtest-section-stack{display:flex;flex-direction:column;gap:1.5rem}.backtest-chart-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.backtest-chart-grid>:first-child{grid-column:1/-1}.backtest-form{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.backtest-form label{color:var(--color-text-soft);display:flex;flex-direction:column;font-size:.85rem;font-weight:500;gap:.3rem}.backtest-form input,.backtest-form select{background:#071018b8;border:1px solid var(--color-border);border-radius:.5rem;color:var(--color-text);font-size:.95rem;padding:.65rem .85rem;transition:border-color .2s}.backtest-form input:focus,.backtest-form select:focus{border-color:var(--color-accent);outline:none}.backtest-run-btn{background:var(--color-accent-bg);border:1px solid #2dd4bf57;border-radius:.5rem;color:var(--color-accent);cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:background .2s}.backtest-run-btn:hover:not(:disabled){background:#2dd4bf2e}.backtest-run-btn:disabled{cursor:not-allowed;opacity:.6}.backtest-error{background:var(--color-danger-bg);border:1px solid #ef444447;border-radius:.5rem;color:#fecaca;font-size:.9rem;margin-top:.75rem;padding:.75rem 1rem}.backtest-metrics{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.backtest-metric{background:#0710187a;border:1px solid var(--color-border);border-radius:.75rem;padding:1rem}.best-strategy-metric{max-width:300px}.backtest-metric-label{color:var(--color-text-muted);font-size:.75rem;font-weight:600;letter-spacing:.05em;margin:0;text-transform:uppercase}.backtest-metric-value{color:var(--color-text);display:block;font-size:1.5rem;font-weight:700;margin-top:.5rem}.backtest-metric.positive{background:var(--color-profit-bg);border-color:#22c55e57}.backtest-metric.positive .backtest-metric-value{color:var(--color-profit)}.backtest-metric.warning{background:#f59e0b1f;border-color:#f59e0b57}.backtest-metric.warning .backtest-metric-value{color:var(--color-warning)}.backtest-metric.negative{background:var(--color-danger-bg);border-color:#ef444457}.backtest-metric.negative .backtest-metric-value{color:var(--color-loss)}.backtest-interpretation{background:#38bdf817;border:1px solid #38bdf83d;border-radius:8px;color:var(--color-text-soft);margin-top:1rem;padding:.9rem 1rem}@media (max-width:900px){.backtest-chart-grid{grid-template-columns:1fr}}.metric-card{border-radius:8px;box-shadow:var(--shadow-panel);color:#fff;padding:1rem}.metric-card-title{font-size:.875rem;margin:0;opacity:.85}.metric-card-value{font-size:1.5rem;font-weight:700;margin:.25rem 0 0}.metric-card-blue{background:var(--color-accent-bg);color:var(--color-accent)}.metric-card-green{background:var(--color-profit-bg);color:var(--color-profit)}.metric-card-red{background:var(--color-danger-bg);color:var(--color-loss)}.metric-card-orange{background:#f59e0b1f;color:var(--color-warning)}.backtest-page-container{margin:0 auto;max-width:1200px;padding:28px}@media (max-width:768px){.backtest-page-container{padding:1rem 1.5rem}}.backtest-tabs{background:#07101875;border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:.5rem;margin-bottom:1.5rem;padding:6px}.backtest-tab{background:none;border:1px solid #0000;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;position:relative;transition:all .2s ease}.backtest-tab:hover:not(.backtest-tab-active){background:#ffffff0a;color:var(--color-text)}.backtest-tab-active{background:var(--color-accent-bg);border-color:#2dd4bf57;color:var(--color-accent);font-weight:600}.backtest-tab-active:after{content:none}.backtest-header{margin-bottom:1.5rem}.backtest-title{color:var(--color-text);font-size:1.875rem;font-weight:700;margin:0 0 .5rem}.backtest-market-note{color:var(--color-text-muted);margin:0}.market-tabs{margin-bottom:1rem}.backtest-error-banner{background:var(--color-danger-bg);border:1px solid #ef444447;border-radius:.5rem;color:#fecaca;font-size:.9rem;margin-bottom:1.5rem;padding:.75rem 1rem}.kr-backtest-note{color:var(--color-text-muted);margin:0}.kr-backtest-card,.kr-backtest-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1rem;padding:1.25rem}.kr-backtest-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.kr-backtest-field{color:var(--color-text-muted);display:flex;flex-direction:column;font-size:.9rem;gap:.45rem}.kr-backtest-field input,.kr-backtest-field select{background:#0f172ab8;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:.7rem .8rem}.kr-backtest-profile-note{color:var(--color-warning);font-size:.86rem;margin:.7rem 0 0}.kr-backtest-run{margin-top:1rem}.kr-backtest-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.kr-backtest-run,.kr-backtest-secondary{background:var(--color-accent-bg);border:1px solid #2dd4bf66;border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;padding:.75rem 1.1rem}.kr-backtest-secondary{background:#0f172a7a;border-color:var(--color-border);color:var(--color-text)}.kr-backtest-run:disabled,.kr-backtest-secondary:disabled{cursor:wait;opacity:.6}.kr-backtest-notice{background:#2dd4bf1a;border:1px solid #2dd4bf59;border-radius:var(--radius-md);color:var(--color-accent);margin-bottom:1rem;padding:.85rem 1rem}.kr-backtest-metrics{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:1rem}.kr-backtest-metric{background:#0f172a7a;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.85rem}.kr-backtest-details dt,.kr-backtest-metric span{color:var(--color-text-muted);font-size:.85rem}.kr-backtest-metric strong{display:block;font-size:1.35rem;margin-top:.3rem}.kr-backtest-details{grid-gap:.5rem 1rem;display:grid;gap:.5rem 1rem;grid-template-columns:140px 1fr;margin:0}.kr-backtest-details dd{margin:0;word-break:break-all}.kr-backtest-empty{color:var(--color-text-muted)}.trading-history-page{margin:0 auto;max-width:1360px;padding:28px}.page-header{margin-bottom:22px}.page-header h1{color:var(--color-text);font-size:32px;line-height:1.1;margin:0 0 8px}.page-header p{color:var(--color-text-muted);margin:0}.history-tabs{background:#07101875;border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;gap:6px;margin-bottom:16px;padding:6px}.history-tabs button{background:#0000;border:1px solid #0000;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-weight:800;min-height:36px;padding:8px 14px}.history-tabs button.active{background:var(--color-accent-bg);border-color:#2dd4bf57;color:var(--color-accent)}.history-filters{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:14px}.history-filters input,.history-filters select{background:#071018b8;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);min-height:38px;padding:8px 10px}.history-filters input:focus,.history-filters select:focus{border-color:var(--color-accent);outline:none}.history-filters button,.pagination-controls button{background:var(--color-accent-bg);border:1px solid #2dd4bf57;border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;font-weight:800;min-height:38px;padding:8px 14px}.history-filters button:hover,.pagination-controls button:hover{background:#2dd4bf2e}.pagination-controls button:disabled{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.state-box{border-radius:var(--radius-md);color:var(--color-text-muted);padding:28px;text-align:center}.error-state{background:var(--color-danger-bg);border-color:#ef444447}.history-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.history-table{border-collapse:collapse;font-size:13px;width:100%}.history-table td,.history-table th{border-bottom:1px solid #233548b8;color:var(--color-text-soft);padding:12px 10px;text-align:left;vertical-align:top}.history-table th{color:var(--color-text-muted);font-weight:800;white-space:nowrap}.history-table tbody tr:hover,.history-table th{background:#ffffff08}.history-reason{min-width:260px}.trading-history-page .market-scope-tabs,.trading-history-page .market-snapshot{margin-bottom:16px}.history-kr-empty{text-align:left}.history-kr-empty strong{color:var(--color-text);display:block;margin-bottom:6px}.history-kr-empty p{margin:0}.pagination-controls{align-items:center;color:var(--color-text-muted);display:flex;gap:14px;justify-content:flex-end;margin-top:14px}@media (max-width:768px){.trading-history-page{padding:18px}.history-filters{align-items:stretch;flex-direction:column}.history-filters button,.history-filters input,.history-filters select{width:100%}.pagination-controls{justify-content:space-between}}.reports-container{margin:0 auto;max-width:1320px;padding:28px}.reports-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:22px}.reports-header h1{color:var(--color-text);font-size:32px;line-height:1.1;margin:0}.error button,.refresh-button,.reports-filters button,.view-button{background:var(--color-accent-bg);border:1px solid #2dd4bf57;border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;font-size:14px;font-weight:800;min-height:38px;padding:8px 14px;text-decoration:none}.error button:hover,.refresh-button:hover,.reports-filters button:hover,.view-button:hover{background:#2dd4bf2e}.empty,.error,.loading{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);padding:38px}.reports-list{display:flex;flex-direction:column;gap:16px}.reports-filters{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;padding:14px}.reports-filters input{background:#071018b8;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);min-height:38px;padding:8px 10px}.reports-filters input:focus{border-color:var(--color-accent);outline:none}.report-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:18px;transition:border-color .2s,transform .2s}.report-card:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.report-card-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.report-date{align-items:center;color:var(--color-text);display:flex;font-size:18px;font-weight:800;gap:8px}.today-badge{background:var(--color-profit-bg);border:1px solid #22c55e57;border-radius:999px;color:var(--color-profit);font-size:12px;font-weight:800;padding:3px 8px}.report-card-body{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.report-stat{background:#07101873;border:1px solid #233548b8;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px;padding:12px}.stat-label{color:var(--color-text-muted);font-size:13px}.stat-value{color:var(--color-text);font-family:var(--font-mono);font-size:17px;font-weight:800}.stat-value.positive{color:var(--color-profit)}.stat-value.negative{color:var(--color-loss)}.hint{color:var(--color-text-muted);font-size:13px}@media (max-width:720px){.reports-container{padding:18px}.reports-header{align-items:flex-start;flex-direction:column;gap:12px}.reports-filters{align-items:stretch;flex-direction:column}.refresh-button,.reports-filters button,.reports-filters input{width:100%}}.report-detail-container{margin:0 auto;max-width:1200px;padding:20px}.report-header{margin-bottom:24px}.back-link{color:#007bff;display:inline-block;font-size:14px;margin-bottom:16px;text-decoration:none}.back-link:hover{text-decoration:underline}.report-header h1{color:#333;font-size:24px;font-weight:700;margin:0}.empty,.error,.loading{color:#666;font-size:16px;padding:40px;text-align:center}.error p{color:#dc3545;margin-bottom:16px}.error a{color:#007bff;text-decoration:none}.error a:hover{text-decoration:underline}.section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:24px;padding:24px}.section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.account-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.account-stat{display:flex;flex-direction:column;gap:8px}.account-stat .label{color:#666;font-size:14px}.account-stat .value{color:#333;font-size:20px;font-weight:600}.account-stat .value.positive{color:#28a745}.account-stat .value.negative{color:#dc3545}.account-stat.daily-return .value{font-size:24px;font-weight:700}.account-stat .amount{color:#666;font-size:16px;font-weight:500;margin-left:8px}.account-stat.daily-return .value.positive .amount{color:#28a745;opacity:.8}.account-stat.daily-return .value.negative .amount{color:#dc3545;opacity:.8}.positions-table,.trades-table{overflow-x:auto}.positions-table table,.trades-table table{border-collapse:collapse;width:100%}.positions-table td,.positions-table th,.trades-table td,.trades-table th{border-bottom:1px solid #f0f0f0;padding:12px;text-align:left}.positions-table th,.trades-table th{background-color:#f8f9fa;color:#333;font-size:14px;font-weight:600}.positions-table td,.trades-table td{color:#666;font-size:14px}.positions-table td.symbol,.trades-table td.symbol{color:#333;font-weight:600}.positions-table td.positive,.trades-table td.positive{color:#28a745;font-weight:600}.positions-table td.negative,.trades-table td.negative{color:#dc3545;font-weight:600}.asset-badge,.trade-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.asset-badge.stock{background-color:#e3f2fd;color:#1976d2}.asset-badge.crypto{background-color:#fff3e0;color:#f57c00}.trade-badge.buy{background-color:#e8f5e9;color:#388e3c}.trade-badge.sell{background-color:#ffebee;color:#d32f2f}.report-detail-container{max-width:1320px;padding:28px}.back-link,.error a{color:var(--color-accent)}.report-header h1{color:var(--color-text);font-size:32px;line-height:1.1}.empty,.error,.loading,.section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted)}.section{box-shadow:var(--shadow-panel)}.error{background:var(--color-danger-bg);border-color:#ef444447}.error p{color:#fecaca}.account-stat .value,.positions-table td.symbol,.section h2,.trades-table td.symbol{color:var(--color-text)}.account-stat .amount,.account-stat .label,.positions-table td,.trades-table td{color:var(--color-text-muted)}.account-stat .value.positive,.positions-table td.positive,.trades-table td.positive{color:var(--color-profit)}.account-stat .value.negative,.positions-table td.negative,.trades-table td.negative{color:var(--color-loss)}.positions-table th,.trades-table th{background:#ffffff08;color:var(--color-text-muted)}.positions-table td,.positions-table th,.trades-table td,.trades-table th{border-bottom-color:#233548b8}.asset-badge.stock{background:#38bdf81f;color:var(--color-accent-blue)}.asset-badge.crypto{background:#f59e0b1f;color:var(--color-warning)}.trade-badge.buy{background:var(--color-profit-bg);color:var(--color-profit)}.trade-badge.sell{background:var(--color-danger-bg);color:var(--color-loss)}.operating-page{display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:1280px;padding:28px}.op-header{align-items:center}.op-scope-note{color:var(--color-text-muted);margin:0 0 1rem}.op-header h1{font-size:1.875rem;margin:0 0 .35rem}.op-header p{color:var(--color-text-muted);margin:0}.op-refresh{background:var(--color-accent-bg);border:1px solid #2dd4bf57;border-radius:var(--radius-sm);color:var(--color-accent);font-weight:700;padding:.7rem 1rem}.op-chart-grid,.op-grid,.op-metrics-grid{grid-gap:1rem;display:grid;gap:1rem}.op-metrics-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.op-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-chart-grid>:first-child{grid-column:1/-1}.op-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr)}.op-metric{background:#07101894;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem}.op-metric span{color:var(--color-text-muted);display:block;font-size:.75rem;font-weight:700;text-transform:uppercase}.op-metric strong{color:var(--color-text);display:block;font-size:1.25rem;margin-top:.45rem}.good-text,.op-metric.good strong{color:var(--color-profit)}.bad-text,.op-metric.bad strong{color:var(--color-loss)}.op-metric.warn strong{color:var(--color-warning)}.op-table-wrap{overflow-x:auto}.op-table{border-collapse:collapse;width:100%}.op-table td,.op-table th{border-bottom:1px solid #233548b8;color:var(--color-text-soft);padding:.75rem;text-align:left;white-space:nowrap}.op-table th{color:var(--color-text-muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.op-empty,.state-box{background:#07101894;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);padding:1rem}.error-state{color:#fecaca}@media (max-width:1100px){.op-chart-grid,.op-grid,.op-metrics-grid{grid-template-columns:1fr}}.operations-page{display:flex;flex-direction:column;gap:1.25rem;min-width:0;padding:1.5rem 2rem 2.5rem}.op-header{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between}.op-header h1{color:var(--color-text);font-size:1.5rem;margin:0}.op-header p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.85rem;margin:.25rem 0 0}.op-refresh{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);color:var(--color-text);cursor:pointer;font-size:.85rem;padding:.5rem .9rem;transition:background .15s ease}.op-refresh:hover:not(:disabled){background:#2dd4bf14}.op-refresh:disabled{cursor:wait;opacity:.5}.op-banner{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.operations-page .market-scope-tabs{align-self:flex-start}.op-kr-readonly{text-align:left}.op-kr-readonly strong{color:var(--color-text);display:block;margin-bottom:.35rem}.op-kr-readonly p{margin:0}.op-status-cards-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.op-status-card{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:8px;border-radius:var(--radius-md,8px);box-shadow:0 2px 6px #00000040;box-shadow:var(--shadow-panel,0 2px 6px #00000040);display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:.85rem 1rem}.op-status-card-title{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem;letter-spacing:.02em;text-transform:uppercase}.op-status-card-value{color:var(--color-text);font-size:1.05rem;font-weight:600;line-height:1.25;overflow-wrap:anywhere}.op-status-card-sub{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;line-height:1.3;overflow-wrap:anywhere}.op-tone-ok{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.op-tone-warn{border-left-color:#f59e0b;border-left-color:var(--color-warning,#f59e0b)}.op-tone-bad{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.op-tone-pending{border-left-color:#64748b;border-left-color:var(--color-text-muted,#64748b)}.op-tone-muted{border-left-color:var(--color-border)}.op-live-guards-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.85rem;min-width:0;padding:1rem}.op-live-guards-head{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.op-live-guards-head h3{color:var(--color-text);font-size:.95rem;margin:0}.op-live-guards-head p{font-size:.8rem;margin:.25rem 0 0}.op-live-guards-head p,.op-live-mode{color:#94a3b8;color:var(--color-text-muted,#94a3b8)}.op-live-mode{border:1px solid var(--color-border);border-radius:999px;font-size:.75rem;padding:.2rem .55rem;text-transform:uppercase}.op-live-mode.active{border-color:#f59e0b;border-color:var(--color-warning,#f59e0b);color:#f59e0b;color:var(--color-warning,#f59e0b)}.op-live-badges{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.op-profile-split{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.op-profile-card{background:#ffffff05;border-left:1px solid var(--color-border);border:1px solid var(--color-border);border-left-width:3px;border-radius:6px;display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:.8rem}.op-profile-card.active{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.op-profile-card.standby{border-left-color:#64748b;border-left-color:var(--color-text-muted,#64748b)}.op-profile-card small,.op-profile-card span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem}.op-profile-card strong{color:var(--color-text);font-size:1rem}.op-profile-card p{color:var(--color-text);font-size:.84rem;margin:0;overflow-wrap:anywhere}.op-live-guards-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.op-live-guard{grid-gap:.35rem .75rem;background:#ffffff05;border-left:3px solid #64748b;border:1px solid var(--color-border);border-left:3px solid var(--color-text-muted,#64748b);border-radius:6px;display:grid;gap:.35rem .75rem;grid-template-columns:minmax(0,1fr) auto;min-width:0;padding:.75rem}.op-live-guard div{display:flex;flex-direction:column;gap:.15rem;min-width:0}.op-live-guard p,.op-live-guard span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem}.op-live-guard strong{color:var(--color-text);font-size:1rem}.op-live-guard p{grid-column:1/-1;margin:0;overflow-wrap:anywhere}.op-live-guard small{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.72rem}.op-live-pass{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.op-live-fail{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.op-live-standby{border-left-color:var(--color-border)}.op-live-unknown{border-left-color:#64748b}.op-watchlist-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.85rem;min-width:0;padding:1rem}.op-watchlist-head{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr)}.op-watchlist-head h3{color:var(--color-text);font-size:.95rem;margin:0}.op-watchlist-head p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.8rem;margin:.25rem 0 0}.op-watchlist-summary{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,minmax(0,1fr))}.op-sector-strip span,.op-watchlist-card,.op-watchlist-summary span{background:#ffffff05;border:1px solid var(--color-border)}.op-watchlist-summary span{border-radius:6px;display:flex;flex-direction:column;gap:.15rem;padding:.5rem .65rem}.op-sector-strip,.op-watchlist-card-foot,.op-watchlist-card-meta,.op-watchlist-summary small{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem}.op-watchlist-summary strong{color:var(--color-text);font-size:1rem}.op-sector-strip{display:flex;flex-wrap:wrap;gap:.4rem}.op-sector-strip span{border-radius:999px;padding:.2rem .55rem}.op-freshness-strip{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.op-freshness-strip span{border:1px solid var(--color-border);border-radius:6px;color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem;overflow-wrap:anywhere;padding:.35rem .55rem}.op-evidence-panel{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr)}.op-evidence-metrics{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(5,minmax(0,1fr))}.op-evidence-flags span,.op-evidence-metrics span{background:#ffffff05;border:1px solid var(--color-border);border-radius:6px}.op-evidence-metrics span{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .6rem}.op-evidence-metrics small{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.72rem}.op-evidence-metrics strong{color:var(--color-text);font-size:.95rem}.op-evidence-metrics .tone-warn{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.op-evidence-metrics .tone-bad{border-left:3px solid #ef4444;border-left:3px solid var(--color-loss,#ef4444)}.op-evidence-flags{align-content:start;display:flex;flex-wrap:wrap;gap:.45rem}.op-evidence-flags span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.74rem;overflow-wrap:anywhere;padding:.28rem .5rem}.op-evidence-flags strong{color:var(--color-text);margin-right:.3rem}.op-evidence-flags .severity-medium{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.op-evidence-flags .severity-high{border-left:3px solid #ef4444;border-left:3px solid var(--color-loss,#ef4444)}.op-watchlist-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.op-watchlist-card{border-left:3px solid #2dd4bf;border-left:3px solid var(--color-accent,#2dd4bf);border-radius:6px;display:flex;flex-direction:column;gap:.45rem;min-width:0;padding:.75rem}.op-watchlist-card.recent-loss{border-left-color:#f59e0b;border-left-color:var(--color-warning,#f59e0b)}.op-watchlist-card-foot,.op-watchlist-card-meta,.op-watchlist-card-top{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.op-watchlist-card-top{justify-content:space-between}.op-watchlist-card-top span,.op-watchlist-card-top strong{color:var(--color-text)}.op-watchlist-card-top span{border:1px solid var(--color-border);border-radius:999px;font-size:.8rem;padding:.1rem .45rem}.op-watchlist-card p{color:var(--color-text);font-size:.82rem;line-height:1.35;margin:0;overflow-wrap:anywhere}.op-watchlist-card-foot span{border:1px solid var(--color-border);border-radius:999px;padding:.1rem .4rem}.op-analyst-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.85rem;min-width:0;padding:1rem}.op-analyst-head{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.op-analyst-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.op-analyst-controls select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.82rem;padding:.45rem .6rem}.op-analyst-controls select:disabled{opacity:.55}.op-analyst-head h3{color:var(--color-text);font-size:.95rem;margin:0}.op-analyst-head p,.op-analyst-message{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.8rem;margin:.25rem 0 0}.op-analyst-metrics{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(5,minmax(0,1fr))}.op-analyst-list span,.op-analyst-metrics span{background:#ffffff05;border:1px solid var(--color-border);border-radius:6px}.op-analyst-metrics span{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .6rem}.op-analyst-metrics small{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.72rem}.op-analyst-metrics strong{color:var(--color-text);font-size:.95rem}.op-analyst-metrics .tone-ok{border-left:3px solid #22c55e;border-left:3px solid var(--color-profit,#22c55e)}.op-analyst-metrics .tone-warn{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.op-analyst-auto{grid-gap:.45rem;display:grid;gap:.45rem;grid-template-columns:repeat(4,minmax(0,1fr))}.op-analyst-auto span{background:#3b82f614;border:1px solid var(--color-border);border-radius:6px;color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;overflow-wrap:anywhere;padding:.35rem .5rem}.op-analyst-list{display:flex;flex-wrap:wrap;gap:.45rem}.op-analyst-list span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;overflow-wrap:anywhere;padding:.3rem .5rem}.op-analyst-list strong{color:var(--color-text)}.op-activity-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.op-activity-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.75rem;min-width:0;padding:1rem}.op-activity-card h3{color:var(--color-text);font-size:.9rem;margin:0}.op-action-dist ul,.op-activity-stats,.op-event-list{list-style:none;margin:0;padding:0}.op-action-dist li,.op-activity-stats li{border-bottom:1px solid var(--color-border);display:flex;font-size:.85rem;justify-content:space-between;padding:.35rem 0}.op-action-dist li:last-child,.op-activity-stats li:last-child{border-bottom:none}.op-action-dist span,.op-activity-stats span{color:#94a3b8;color:var(--color-text-muted,#94a3b8)}.op-action-dist strong,.op-activity-stats strong{color:var(--color-text)}.op-section-label{color:#94a3b8;color:var(--color-text-muted,#94a3b8);display:block;font-size:.75rem;letter-spacing:.02em;margin-bottom:.25rem;text-transform:uppercase}.op-event-list li{border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:.15rem;padding:.5rem 0}.op-event-list li:last-child{border-bottom:none}.op-event-meta{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem}.op-event-reason{color:var(--color-text);font-size:.85rem}.op-empty{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.85rem;margin:0}@media (max-width:960px){.operations-page{padding:1.25rem 1rem 2rem}.op-header{align-items:stretch;flex-direction:column}.op-refresh{align-self:flex-start}.op-analyst-head,.op-live-guards-head{flex-direction:column}.op-analyst-controls{justify-content:flex-start}.op-activity-grid,.op-analyst-auto,.op-analyst-metrics,.op-evidence-metrics,.op-evidence-panel,.op-freshness-strip,.op-live-guards-grid,.op-profile-split,.op-status-cards-grid,.op-watchlist-grid,.op-watchlist-head,.op-watchlist-summary{grid-template-columns:1fr}}.loss-page{display:flex;flex-direction:column;gap:1.25rem;min-width:0;padding:1.5rem 2rem 2.5rem}.loss-header{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between}.loss-header h1{color:var(--color-text);font-size:1.5rem;margin:0}.loss-header p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.85rem;margin:.25rem 0 0}.loss-refresh{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);color:var(--color-text);cursor:pointer;font-size:.85rem;padding:.5rem .9rem}.loss-refresh:hover:not(:disabled){background:#2dd4bf14}.loss-refresh:disabled{cursor:wait;opacity:.5}.loss-banner{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.loss-kpi-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.loss-kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.3rem;min-width:0;padding:1rem}.loss-kpi-title{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem;text-transform:uppercase}.loss-kpi-value{color:var(--color-text);font-size:1.3rem;font-weight:600}.loss-kpi-sub{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem}.loss-tone-good{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.loss-tone-bad{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.loss-tone-neutral{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.loss-verify-badge{justify-content:center}.loss-verify-badge.verified{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.loss-verify-badge.pending{border-left-color:#f59e0b;border-left-color:var(--color-warning,#f59e0b)}.loss-verify-label{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;text-transform:uppercase}.loss-verify-status{color:var(--color-text);font-size:.95rem;font-weight:600}.loss-verify-note{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem}.loss-breakdown-grid,.loss-secondary-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.loss-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.6rem;min-width:0;overflow-x:auto;padding:1rem}.loss-section-wide{grid-column:1/-1}.loss-section h3{color:var(--color-text);font-size:.95rem;margin:0}.loss-section h4{color:var(--color-text);font-size:.82rem;margin:0 0 .45rem}.loss-section-heading{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.loss-subnote{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;margin:0}.loss-subnote code{background:#2dd4bf1a;border-radius:4px;font-size:.75rem;padding:.1rem .35rem}.loss-table{border-collapse:collapse;font-size:.83rem;table-layout:fixed;width:100%}.loss-table td,.loss-table th{border-bottom:1px solid var(--color-border);line-height:1.35;overflow-wrap:break-word;padding:.5rem;text-align:left;vertical-align:top}.loss-table th{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.72rem;font-weight:500;text-transform:uppercase}.loss-table td{color:var(--color-text)}.loss-table td:first-child,.loss-table th:first-child{white-space:nowrap;width:8rem}.loss-table td:not(:first-child),.loss-table th:not(:first-child){white-space:nowrap}.loss-section:not(.loss-section-wide) .loss-table{font-size:.78rem;table-layout:auto}.loss-section:not(.loss-section-wide) .loss-table td,.loss-section:not(.loss-section-wide) .loss-table th{padding:.48rem .34rem}.loss-section:not(.loss-section-wide) .loss-table td:first-child,.loss-section:not(.loss-section-wide) .loss-table th:first-child{max-width:7.5rem;width:auto}.loss-cell-good{color:#22c55e;color:var(--color-profit,#22c55e)}.loss-cell-bad{color:#ef4444;color:var(--color-loss,#ef4444)}.loss-cell-muted{color:#64748b;color:var(--color-text-muted,#64748b)}.loss-empty{color:#94a3b8;color:var(--color-text-muted,#94a3b8);padding:.85rem 0;text-align:center}.loss-sample-flag{color:#f59e0b;color:var(--color-warning,#f59e0b);font-size:.72rem}.loss-pill{background:#2dd4bf14;border:1px solid #2dd4bf59;border-radius:999px;color:#2dd4bf;color:var(--color-accent,#2dd4bf);font-size:.74rem;padding:.22rem .55rem;white-space:nowrap}.loss-pill-danger{background:#ef44441a;border-color:#ef444473;color:#ef4444;color:var(--color-loss,#ef4444)}.loss-sell-grid,.loss-sell-summary{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.loss-sell-summary div{background:#0f172a47;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);padding:.75rem}.loss-sell-summary span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);display:block;font-size:.72rem}.loss-sell-summary strong{color:var(--color-text);display:block;font-size:1.05rem;margin-top:.2rem}.loss-sell-grid{grid-template-columns:1.15fr 1fr 1.25fr}.loss-row-active{background:#2dd4bf14}.loss-row-muted{opacity:.72}.loss-notes{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.76rem;line-height:1.45;margin:0;padding-left:1.1rem}.loss-layer1-summary{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.loss-layer1-panel,.loss-layer1-summary div{background:#0f172a47;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px)}.loss-layer1-summary div{padding:.75rem}.loss-layer1-summary span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);display:block;font-size:.72rem}.loss-layer1-summary strong{color:var(--color-text);display:block;font-size:1.02rem;margin-top:.2rem}.loss-layer1-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.loss-layer1-panel{min-width:0;overflow-x:auto;padding:.75rem}.loss-layer1-shadow{background:#0f172a33;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.75rem;padding:.75rem}.loss-shadow-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.loss-shadow-card{background:#0206173d;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);min-width:0;padding:.75rem}.loss-shadow-topline{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.loss-shadow-topline strong{color:var(--color-text);font-size:.83rem}.loss-shadow-status{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.7rem;white-space:nowrap}.loss-shadow-status.measurable{color:#22c55e;color:var(--color-profit,#22c55e)}.loss-shadow-status.partial{color:#f59e0b;color:var(--color-warning,#f59e0b)}.loss-shadow-impact,.loss-shadow-status.insufficient{color:#94a3b8;color:var(--color-text-muted,#94a3b8)}.loss-shadow-impact{display:flex;font-size:.75rem;gap:.5rem;justify-content:space-between;margin-top:.55rem}.loss-shadow-impact strong{color:var(--color-text)}.loss-shadow-card p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem;line-height:1.4;margin:.55rem 0}.loss-shadow-symbols{color:var(--color-text);font-size:.75rem;overflow-wrap:anywhere}@media (max-width:960px){.loss-page{padding:1.25rem 1rem 2rem}.loss-header{align-items:stretch;flex-direction:column}.loss-refresh{align-self:flex-start}.loss-breakdown-grid,.loss-kpi-grid,.loss-layer1-grid,.loss-layer1-summary,.loss-secondary-grid,.loss-sell-grid,.loss-sell-summary,.loss-shadow-grid{grid-template-columns:1fr}}.ck-page{display:flex;flex-direction:column;gap:1.25rem;min-width:0;padding:1.5rem 2rem 2.5rem}.ck-header{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between}.ck-header h1{color:var(--color-text);font-size:1.5rem;margin:0}.ck-header p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.85rem;margin:.25rem 0 0}.ck-refresh{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);color:var(--color-text);cursor:pointer;font-size:.85rem;padding:.5rem .9rem}.ck-refresh:hover:not(:disabled){background:#2dd4bf14}.ck-refresh:disabled{cursor:wait;opacity:.5}.ck-banner{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.ck-summary{grid-gap:.75rem;align-items:stretch;display:grid;gap:.75rem;grid-template-columns:minmax(260px,1.25fr) minmax(0,2fr)}.ck-summary-headline{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.35rem;justify-content:center;min-width:0;padding:1rem}.ck-summary-headline.clear{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.ck-summary-headline.blocking{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.ck-summary-label{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem;text-transform:uppercase}.ck-summary-headline strong{color:var(--color-text);font-size:1.15rem}.ck-summary-meta{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.78rem}.ck-summary-counts{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.ck-summary-chip{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex-direction:column;gap:.2rem;min-width:0;padding:.75rem .85rem}.ck-summary-chip span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.72rem;text-transform:uppercase}.ck-summary-chip strong{color:var(--color-text);font-size:1.1rem}.ck-chip-pass{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.ck-chip-ready{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.ck-chip-warn{border-left-color:#f59e0b;border-left-color:var(--color-warning,#f59e0b)}.ck-chip-fail{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.ck-chip-unknown{border-left-color:#64748b}.ck-chip-manual{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.ck-chip-skip{border-left-color:var(--color-border)}.ck-sections{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.ck-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);min-width:0;padding:1rem}.ck-section:last-child:nth-child(odd){grid-column:1/-1}.ck-section-header{align-items:baseline;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.ck-section h3{color:var(--color-text);font-size:.95rem;margin:0}.ck-section-header span{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem;white-space:nowrap}.ck-item-list{display:flex;flex-direction:column;gap:.5rem}.ck-item{grid-gap:.75rem;align-items:center;background:#ffffff05;border:1px solid var(--color-border);border-left-width:3px;border-radius:6px;display:grid;gap:.75rem;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);min-width:0;padding:.65rem .75rem}.ck-item-detail,.ck-item-main{display:flex;flex-direction:column;gap:.25rem;min-width:0}.ck-item-main strong{color:var(--color-text);font-size:.85rem;line-height:1.35;overflow-wrap:anywhere}.ck-status-pill{align-self:flex-start;border:1px solid var(--color-border);border-radius:999px;font-size:.7rem;line-height:1.25;padding:.15rem .5rem;white-space:nowrap}.ck-cell-actual{color:#c4cdd6;color:var(--color-text-muted,#c4cdd6);font-family:monospace}.ck-cell-actual,.ck-cell-note{font-size:.78rem;overflow-wrap:anywhere}.ck-cell-note{color:#94a3b8;color:var(--color-text-muted,#94a3b8);line-height:1.35}.ck-row-pass{border-left-color:#22c55e;border-left-color:var(--color-profit,#22c55e)}.ck-row-ready{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.ck-row-warn{border-left-color:#f59e0b;border-left-color:var(--color-warning,#f59e0b)}.ck-row-fail{border-left-color:#ef4444;border-left-color:var(--color-loss,#ef4444)}.ck-row-unknown{border-left-color:#64748b}.ck-row-manual{border-left-color:#2dd4bf;border-left-color:var(--color-accent,#2dd4bf)}.ck-row-skip{border-left-color:var(--color-border)}.ck-pill-pass{color:#22c55e;color:var(--color-profit,#22c55e)}.ck-pill-ready{color:#2dd4bf;color:var(--color-accent,#2dd4bf)}.ck-pill-warn{color:#f59e0b;color:var(--color-warning,#f59e0b)}.ck-pill-fail{color:#ef4444;color:var(--color-loss,#ef4444)}.ck-pill-unknown{color:#94a3b8}.ck-pill-manual{color:#2dd4bf;color:var(--color-accent,#2dd4bf)}.ck-pill-skip{color:#64748b}.ck-footer{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.8rem;padding:.85rem 1rem}.ck-footer strong{color:var(--color-text)}.ck-footer p{margin:0}.state-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);color:var(--color-text);padding:1.25rem}@media (max-width:1100px){.ck-sections,.ck-summary{grid-template-columns:1fr}}@media (max-width:960px){.ck-page{padding:1.25rem 1rem 2rem}.ck-header{align-items:stretch;flex-direction:column}.ck-refresh{align-self:flex-start}.ck-item,.ck-summary-counts{grid-template-columns:1fr}}.learning-page{color:var(--color-text);display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.learning-header,.learning-tools{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.learning-header h1,.learning-section h2,.learning-tools h2{color:var(--color-text);margin:0}.learning-header p,.learning-tools p{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.9rem;margin:.25rem 0 0}.learning-header select,.learning-tools button{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);padding:.55rem .75rem}.learning-banner,.learning-section,.learning-state,.learning-tools{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md,8px);padding:1rem}.learning-banner{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b);display:flex;flex-wrap:wrap;gap:.5rem}.learning-banner span,.learning-empty,.learning-state{color:#94a3b8;color:var(--color-text-muted,#94a3b8)}.learning-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(5,minmax(0,1fr))}.learning-bars span,.learning-flag,.learning-list span,.learning-metric,.learning-pairs article{background:#ffffff05;border:1px solid var(--color-border);border-radius:6px}.learning-metric{display:flex;flex-direction:column;gap:.25rem;padding:.75rem}.learning-bars small,.learning-flag small,.learning-metric small,.learning-pairs small{color:#94a3b8;color:var(--color-text-muted,#94a3b8);font-size:.75rem}.learning-bars strong,.learning-flag strong,.learning-list strong,.learning-metric strong,.learning-pairs strong{color:var(--color-text)}.learning-bars,.learning-flags,.learning-list,.learning-pairs{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:.75rem}.learning-bars{grid-template-columns:repeat(4,minmax(0,1fr))}.learning-list,.learning-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-flags{grid-template-columns:repeat(3,minmax(0,1fr))}.learning-bars span,.learning-flag,.learning-list span,.learning-pairs article{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:.65rem}.learning-flag span,.learning-list span,.learning-pairs small{overflow-wrap:anywhere}.learning-flag.caution{border-left:3px solid #f59e0b;border-left:3px solid var(--color-warning,#f59e0b)}.learning-flag.observation{border-left:3px solid #3b82f6;border-left:3px solid var(--color-info,#3b82f6)}.learning-flag.deferred{opacity:.72}.learning-tools{align-items:center}.learning-tools button{cursor:pointer;white-space:nowrap}.error-state{border-left:3px solid #ef4444;border-left:3px solid var(--color-loss,#ef4444)}@media (max-width:960px){.learning-page{padding:1rem}.learning-header,.learning-tools{flex-direction:column}.learning-bars,.learning-flags,.learning-grid,.learning-list,.learning-pairs{grid-template-columns:1fr}}.App{background:radial-gradient(circle at top right,#38bdf81f,#0000 30%),linear-gradient(145deg,#071018,#0b121d 48%,#08121b);display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.app-sidebar{background:#0a121ceb;border-right:1px solid var(--color-border);min-height:100vh;padding:24px 16px;position:-webkit-sticky;position:sticky;top:0}.logo{color:var(--color-text);display:flex;gap:12px;margin-bottom:28px;text-decoration:none}.logo,.logo-mark{align-items:center}.logo-mark{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-blue));border-radius:var(--radius-md);color:#041018;display:inline-flex;font-weight:800;height:38px;justify-content:center;width:38px}.logo small,.logo strong{display:block}.logo strong{font-size:18px;line-height:1.1}.logo small{color:var(--color-text-muted);font-size:12px;margin-top:3px}.nav-items{gap:14px}.nav-items,.nav-section{display:flex;flex-direction:column}.nav-section{gap:6px}.nav-section-label{color:var(--color-text-muted);font-size:11px;font-weight:800;letter-spacing:.08em;padding:0 8px;text-transform:uppercase}.nav-item{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);color:var(--color-text-soft);display:flex;gap:10px;min-height:42px;padding:10px 12px;text-decoration:none;transition:background .2s,border-color .2s,color .2s}.nav-item:hover{background:#ffffff0a;border-color:var(--color-border);color:var(--color-text)}.nav-item.active{background:var(--color-accent-bg);border-color:#2dd4bf5c;color:var(--color-text)}.nav-marker{align-items:center;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);display:inline-flex;font-family:var(--font-mono);font-size:11px;height:22px;justify-content:center;width:22px}.nav-marker.us{border-color:#38bdf857;color:var(--color-accent-blue)}.nav-marker.kr{border-color:#2dd4bf57;color:var(--color-accent)}.nav-item.active .nav-marker{background:#2dd4bf2e;border-color:#2dd4bf80;color:var(--color-accent)}.app-shell{min-width:0}.app-topbar{align-items:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#071018bd;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;min-height:72px;padding:16px 28px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.eyebrow{color:var(--color-accent);font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.app-topbar p{color:var(--color-text-muted);font-size:14px;margin:4px 0 0}.topbar-status{align-items:center;background:#38bdf81a;border:1px solid #38bdf847;border-radius:999px;color:var(--color-accent-blue);display:inline-flex;font-size:13px;gap:8px;padding:8px 12px;white-space:nowrap}.trading-mode-badge.live:not(.locked){background:#22c55e1a;border-color:#22c55e59;color:var(--color-positive)}.trading-mode-badge.locked{background:#f59e0b1a;border-color:#f59e0b59;color:var(--color-warning)}.status-dot{background:var(--color-accent-blue);border-radius:50%;box-shadow:0 0 12px #38bdf8a6;height:8px;width:8px}.trading-mode-badge.live:not(.locked) .status-dot{background:var(--color-positive);box-shadow:0 0 12px #22c55ea6}.trading-mode-badge.locked .status-dot{background:var(--color-warning);box-shadow:0 0 12px #f59e0ba6}.home,.main-content{min-height:calc(100vh - 72px)}.home{color:var(--color-text);padding:64px 32px}.home h1{font-size:42px;margin-bottom:8px}.home p{color:var(--color-text-muted);font-size:16px;margin:8px 0}.navigation,.status{margin-top:28px}.status{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:460px;padding:20px}.navigation{display:flex;flex-wrap:wrap;gap:10px}.nav-link{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:12px 16px;text-decoration:none}.error{color:#fecaca}@media (max-width:960px){.App{display:block}.app-sidebar{border-bottom:1px solid var(--color-border);border-right:0;min-height:auto;padding:16px;position:static}.nav-items{flex-direction:row;overflow-x:auto;padding-bottom:4px}.nav-item{flex:0 0 auto}.app-topbar{align-items:flex-start;flex-direction:column;gap:12px;padding:14px 18px;position:static}}
/*# sourceMappingURL=main.f1a8cb6c.css.map*/