:root{font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#182033;background:#f5f7fb;font-synthesis:none;text-rendering:geometricPrecision;--bg: #f5f7fb;--surface: #ffffff;--surface-soft: #fbfcff;--line: #e4e9f2;--line-strong: #d6deeb;--text: #182033;--muted: #697386;--faint: #98a2b3;--primary: #3b35e8;--primary-strong: #2f2ac7;--primary-soft: #f0f1ff;--green: #16a66a;--green-soft: #eaf8f0;--red: #e14b5a;--red-soft: #fff0f2;--amber: #d78b12;--shadow: 0 10px 32px rgba(30, 41, 59, .06);--radius: 8px}*{box-sizing:border-box}body{margin:0;min-width:1120px;background:var(--bg)}button,input,select{font:inherit;letter-spacing:0}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}input,select{width:100%;height:36px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:0 11px;outline:none;font-size:13px}input:focus,select:focus{border-color:#9aa8ff;box-shadow:0 0 0 3px #3b35e81a}.app{display:grid;justify-items:center;min-height:100vh}.shell{display:grid;grid-template-columns:188px minmax(0,1fr);width:100%;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#ffffffe6,#f5f7fbf5 240px),var(--bg)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:18px;height:100vh;border-right:1px solid var(--line);background:#ffffffeb;padding:18px 14px}.brand{display:flex;align-items:center;gap:9px;height:40px;color:#111827;font-size:15px;font-weight:800}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--primary);color:#fff;box-shadow:0 8px 18px #3b35e838}.nav{display:grid;gap:5px}.nav-item,.settings-button{position:relative;display:flex;align-items:center;gap:9px;width:100%;min-height:38px;border-radius:7px;background:transparent;color:#5d6679;padding:0 10px;text-align:left;font-size:13px;font-weight:650;transition:background .14s ease,color .14s ease}.nav-item:hover,.settings-button:hover{background:#f3f5fa;color:var(--text)}.nav-item.active{background:var(--primary-soft);color:var(--primary)}.nav-item.active:before{content:"";position:absolute;left:-14px;width:3px;height:22px;border-radius:99px;background:var(--primary)}.sidebar-account{margin-top:auto;display:grid;gap:6px}.sidebar-account>span{overflow:hidden;color:var(--muted);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.main{min-width:0;display:grid;justify-items:stretch;padding:20px 22px 28px}.page{display:grid;gap:14px;width:100%}.strategy-page{align-content:start}.dashboard-page{align-content:start;gap:12px}.dashboard-page .page-header{min-height:auto;margin-bottom:0}.signals-page{align-content:start;gap:12px}.signals-page .page-header{min-height:auto;margin-bottom:0}.signals-page .toolbar{min-height:auto}.watchlist-page{align-content:start;gap:12px}.watchlist-page .page-header{min-height:auto;margin-bottom:0}.watchlist-table-panel{overflow:hidden}.watchlist-table-panel .table{table-layout:fixed}.watchlist-table-panel .table th:nth-child(1),.watchlist-table-panel .table td:nth-child(1){width:150px}.watchlist-table-panel .table th:nth-child(3),.watchlist-table-panel .table td:nth-child(3),.watchlist-table-panel .table th:nth-child(4),.watchlist-table-panel .table td:nth-child(4),.watchlist-table-panel .table th:nth-child(7),.watchlist-table-panel .table td:nth-child(7){width:96px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;min-height:56px;margin-bottom:2px}.header-meta{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;white-space:nowrap}.page h1{margin:0;color:#111827;font-size:22px;line-height:1.18;font-weight:800}.page p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.muted{color:var(--muted);font-size:12px}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.card,.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card{padding:14px}.panel{padding:16px}.kpi-card{position:relative;min-height:74px;overflow:hidden}.kpi-card:after{content:"";position:absolute;right:14px;bottom:13px;width:40px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--primary),rgba(59,53,232,.12))}.kpi-card span,.metric-panel span,.stat-block span{color:var(--muted);font-size:12px;font-weight:700}.kpi-card strong{display:block;margin-top:8px;color:var(--primary);font-size:24px;line-height:1;font-weight:850}.split-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:14px;align-items:start}.dashboard-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.42fr);gap:14px;align-items:stretch}.latest-panel{min-height:280px}.latest-panel .table{table-layout:fixed}.latest-panel .table th:nth-child(1),.latest-panel .table td:nth-child(1){width:76px}.latest-panel .table th:nth-child(2),.latest-panel .table td:nth-child(2){width:96px}.latest-panel .table th:nth-child(4),.latest-panel .table td:nth-child(4){width:96px}.latest-panel .table th:nth-child(5),.latest-panel .table td:nth-child(5),.latest-panel .table th:nth-child(6),.latest-panel .table td:nth-child(6),.latest-panel .table th:nth-child(7),.latest-panel .table td:nth-child(7){width:72px}.latest-panel .table td:nth-child(3){overflow:hidden;text-overflow:ellipsis}.latest-panel .panel-title{padding:16px 16px 0}.trend-panel{min-height:280px}.detail-layout,.case-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title h2,.panel-title h3{display:inline-flex;align-items:center;gap:7px;margin:0;color:#111827;font-size:15px;font-weight:800}.panel-title h3{font-size:14px}.table-panel{overflow-x:auto;padding:0}.strategy-controls{display:grid;grid-template-columns:auto minmax(320px,1fr) auto;align-items:center;gap:14px;padding:10px 14px}.strategy-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}.strategy-main-column{display:grid;gap:14px;min-width:0}.recent-scan-panel{position:sticky;top:14px;align-self:start;padding:0;overflow:hidden}.recent-scan-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:14px 14px 12px}.recent-scan-panel h2{margin:0;color:#111827;font-size:15px;font-weight:850}.strategy-table-panel .table{table-layout:fixed}.strategy-table-panel .table th:nth-child(1),.strategy-table-panel .table td:nth-child(1){width:320px;white-space:normal}.strategy-table-panel .table th:nth-child(2),.strategy-table-panel .table td:nth-child(2),.strategy-table-panel .table th:nth-child(3),.strategy-table-panel .table td:nth-child(3),.strategy-table-panel .table th:nth-child(4),.strategy-table-panel .table td:nth-child(4),.strategy-table-panel .table th:nth-child(5),.strategy-table-panel .table td:nth-child(5){width:76px}.strategy-table-panel .table th:nth-child(6),.strategy-table-panel .table td:nth-child(6){width:132px}.strategy-table-panel .table th:nth-child(7),.strategy-table-panel .table td:nth-child(7),.strategy-table-panel .table th:nth-child(8),.strategy-table-panel .table td:nth-child(8){width:112px}.strategy-table-panel .table th:nth-child(9),.strategy-table-panel .table td:nth-child(9){width:100px}.strategy-table-panel .table td:first-child strong{display:block;overflow:hidden;color:#111827;font-size:13px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.strategy-table-panel .table-note{display:-webkit-box;overflow:hidden;margin:3px 0 0;color:#7c8798;font-size:10.5px;line-height:1.35;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.link-button{border:0;background:transparent;color:var(--primary);cursor:pointer;padding:0;font-size:12px;font-weight:800}.recent-scan-list{display:grid}.recent-scan-item{display:grid;gap:7px;border-bottom:1px solid #eef2f7;padding:13px 14px}.recent-scan-item:last-child{border-bottom:0}.recent-scan-item-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.recent-scan-item strong{color:#111827;font-size:13px;line-height:1.35}.recent-scan-item-head span{flex:0 0 auto;border:1px solid #bbf7d0;border-radius:6px;background:#f0fdf4;color:#16a34a;padding:3px 7px;font-size:12px;font-weight:850}.recent-scan-item-head span.danger{border-color:#fecdd3;background:#fff1f2;color:var(--red)}.recent-scan-item-head span.muted{border-color:#e2e8f0;background:#f8fafc;color:#64748b}.recent-scan-item p,.recent-scan-item div:last-child{display:flex;flex-wrap:wrap;gap:8px;margin:0;color:#64748b;font-size:12px}.recent-scan-item p b{color:#475569}.recent-scan-item em{font-style:normal;font-weight:850}.recent-scan-empty{padding:28px 14px;color:#64748b;text-align:center;font-size:13px}.strategy-run-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid #c7ead7;border-radius:8px;background:#f3fbf7;color:#145c3e;padding:9px 12px;font-size:13px}.strategy-run-summary.warning{border-color:#f4deb8;background:#fffaf0;color:#8a5a10}.strategy-run-summary.error{border-color:#fecdd3;background:#fff1f2;color:#9f1239}.strategy-run-summary span{color:#16a66a;font-weight:850}.strategy-run-summary.warning span{color:#d78b12}.strategy-run-summary.error span{color:#e14b5a}.strategy-run-summary strong,.strategy-run-summary em{border-left:1px solid #c7ead7;padding-left:8px;font-style:normal;font-weight:760}.strategy-run-summary.warning strong,.strategy-run-summary.warning em{border-left-color:#f4deb8}.strategy-run-summary.error strong,.strategy-run-summary.error em{border-left-color:#fecdd3}.strategy-scan-panel{position:sticky;top:14px;z-index:12;display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:18px}.strategy-scan-donut{display:grid;place-items:center;align-self:start;width:128px;height:128px;border-radius:999px;background:radial-gradient(circle at center,#ffffff 0 55%,transparent 56%),conic-gradient(var(--primary) var(--value),#e8ecf5 0);box-shadow:inset 0 0 0 1px #eef2f7}.strategy-scan-donut strong,.strategy-scan-donut span{grid-area:1 / 1}.strategy-scan-donut strong{margin-top:-12px;color:#111827;font-size:28px;font-weight:900}.strategy-scan-donut span{margin-top:44px;color:#526071;font-size:13px;font-weight:800}.strategy-scan-main{display:grid;gap:14px;min-width:0}.strategy-scan-heading{display:flex;justify-content:space-between;gap:12px}.strategy-scan-heading h2{margin:0;color:#111827;font-size:18px}.strategy-scan-heading p,.strategy-scan-heading span{margin:4px 0 0;color:#64748b;font-size:13px;font-weight:760}.strategy-scan-bar{height:10px;overflow:hidden;border-radius:999px;background:#e8ecf5}.strategy-scan-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5145ff,#6d5cff)}.strategy-scan-stats{display:grid;grid-template-columns:repeat(8,minmax(72px,1fr));gap:10px}.strategy-scan-stats span{display:grid;gap:4px;border-left:1px solid var(--line);padding-left:12px;color:#111827;font-size:18px;font-weight:850}.strategy-scan-stats span:first-child{border-left:0;padding-left:0}.strategy-scan-stats b{color:#738096;font-size:12px;font-weight:700}.strategy-scan-current{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #edf1f6;border-radius:7px;background:#fbfcff;padding:9px 10px;color:#526071;font-size:13px}.strategy-run-errors{grid-column:1 / -1;overflow:hidden;border:1px solid #fee2e2;border-radius:8px}.strategy-run-errors h3{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;border-bottom:1px solid #fee2e2;background:#fff7f7;color:var(--red);padding:10px 14px;font-size:14px}.strategy-run-errors table{width:100%;border-collapse:collapse}.strategy-run-errors td{border-bottom:1px solid #f2f4f8;padding:10px 12px;color:#334155;font-size:13px}.strategy-run-errors tr:last-child td{border-bottom:0}.strategy-run-errors td span{border-radius:6px;background:#fff1f2;color:var(--red);padding:4px 7px;font-size:12px;font-weight:800}.strategy-run-errors.skipped{border-color:#fed7aa}.strategy-run-errors.skipped h3{border-bottom-color:#fed7aa;background:#fff7ed;color:#b45309}.strategy-run-errors.skipped.collapsed h3{border-bottom:0}.strategy-run-errors.skipped h3 .link-button{color:#b45309;font-size:13px}.strategy-run-errors.skipped td span{background:#fff7ed;color:#b45309}.strategy-controls .filters{justify-content:end}.strategy-table-panel{min-height:calc(100vh - 188px)}.strategy-detail-editor{align-content:start}.strategy-edit-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;align-items:start}.strategy-edit-panel{display:grid;gap:14px}.stacked-field{display:grid;gap:8px}.stacked-field span{color:#475569;font-size:12px;font-weight:760}.stacked-field textarea,.strategy-analysis-editor{width:100%;min-height:96px;resize:vertical;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--text);padding:10px 11px;font:inherit;font-size:13px;line-height:1.6;outline:none}.strategy-runtime-status{display:grid;gap:8px;border:1px solid #edf1f6;border-radius:8px;background:#fbfcff;padding:12px;color:#526071;font-size:13px}.strategy-code-editor{width:100%;min-height:420px;resize:vertical;overflow:auto;border:1px solid #182235;border-radius:8px;background:#101828;color:#e6edf7;padding:16px;font-family:Cascadia Code,Consolas,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.7;white-space:pre;outline:none}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #edf1f6;padding:11px 10px;text-align:left;white-space:nowrap;font-size:13px;line-height:1.35}.table th{height:38px;background:#fbfcff;color:#778196;font-size:12px;font-weight:750}.table td strong{color:#111827;font-weight:800}.table tr:hover td{background:#fbfcff}.table-actions{display:inline-flex;align-items:center;gap:7px}.table-panel .table th:first-child,.table-panel .table td:first-child{padding-left:16px}.table-panel .table th:last-child,.table-panel .table td:last-child{padding-right:16px}.table-note,.watch-condition p,.watch-condition small{margin:3px 0 0;color:var(--muted);font-size:12px}.primary,.secondary,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border-radius:7px;padding:0 12px;font-size:13px;font-weight:750;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.primary{background:var(--primary);color:#fff;box-shadow:0 8px 18px #3b35e82e}.primary:hover{background:var(--primary-strong);transform:translateY(-1px)}.secondary{border:1px solid var(--line-strong);background:var(--surface);color:#334155}.secondary:hover{border-color:#c8d1df;background:#f8fafc}.secondary.compact,.primary.compact{min-height:30px;padding:0 9px;font-size:12px}.icon-button{width:34px;min-height:34px;padding:0;background:#f3f6fb;color:#526071}.icon-button.compact{width:30px;min-height:30px;padding:0}.chip,.status{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:0 8px;font-size:12px;font-weight:760}.chip{background:#f1f4f9;color:#546074}.status,.status-on{color:var(--green);font-weight:800}.status-off{color:var(--faint);font-weight:800}.positive{color:var(--green);font-weight:800}.negative{color:var(--red);font-weight:800}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar-actions,.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}.filter-toolbar{justify-content:flex-end;margin-top:-4px}.filters{flex-wrap:wrap}.filters input,.filters select{width:auto;min-width:146px}.score-filter{display:grid;grid-template-columns:auto 74px;align-items:center;gap:8px}.score-filter span{color:#475569;font-size:12px;font-weight:750;white-space:nowrap}.signal-filter-panel{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px}.signal-filter-grid{display:grid;grid-template-columns:minmax(180px,1.2fr) repeat(4,minmax(126px,.82fr)) minmax(120px,.75fr) auto auto;gap:8px;align-items:center}.signal-filter-grid input,.signal-filter-grid select,.signal-filter-grid button{min-height:34px}.signal-filter-grid input,.signal-filter-grid select{width:100%;min-width:0}.signal-filter-grid .secondary{white-space:nowrap}.signal-score-filter{grid-template-columns:auto minmax(64px,1fr);margin:0}.signal-table-panel{overflow:hidden;padding-bottom:0}.empty-table-cell{height:72px;color:var(--muted);text-align:center}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);background:#fbfcff;padding:10px 12px}.table-pagination>span{color:#64748b;font-size:13px}.table-pagination>div{display:inline-flex;align-items:center;gap:8px}.table-pagination strong{color:#111827;font-size:13px;min-width:48px;text-align:center}.table-pagination .icon-button{width:30px;min-height:30px;border:1px solid var(--line);background:#fff}.table-pagination .icon-button:disabled{cursor:not-allowed;opacity:.45}.table-pagination select{min-width:104px;height:30px;font-size:12px}.tabs{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:3px}.tabs button{min-height:30px;border-radius:6px;background:transparent;color:#5f6b7a;padding:0 11px;font-size:13px;font-weight:750}.tabs button.active,.tabs button:hover{background:var(--surface);color:var(--primary);box-shadow:0 2px 8px #1e293b12}.sparkline{display:block;width:100%;height:124px;overflow:visible}.sparkline polyline{fill:none;stroke:var(--primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.sparkline-area{fill:#3b35e814}.sparkline-dot{fill:#fff;stroke:var(--primary);stroke-width:1.8}.trend-labels{display:flex;justify-content:space-between;gap:8px;margin-top:8px;color:#8791a3;font-size:11px}.chart-empty{display:grid;place-items:center;min-height:90px;border:1px dashed #ccd5e2;border-radius:8px;background:#f8fafc;color:#64748b;font-size:13px}.kline{display:block;width:100%;min-height:280px;border:1px solid #edf1f6;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.kline-grid{stroke:#e7ecf4;stroke-width:1}.candle.up .wick,.candle.up .body{fill:#16a34a;stroke:#15803d}.candle.down .wick,.candle.down .body{fill:#ef4444;stroke:#dc2626}.candle .wick{stroke-width:1.9;stroke-linecap:round}.candle .body{stroke-width:1.1}.candle .volume{opacity:.34}.candle.up .volume{fill:var(--green)}.candle.down .volume{fill:#ef4444}.signal-marker path{fill:#4f46e5;stroke:#fff;stroke-width:2;filter:drop-shadow(0 3px 5px rgba(79,70,229,.35))}.signal-marker circle{fill:#fff;stroke:#4f46e5;stroke-width:2}.compact-list{display:grid;gap:7px}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;border:1px solid #edf1f6;border-radius:8px;background:#fff;color:var(--text);padding:10px 11px;text-align:left}.list-row:hover{border-color:#cbd5ff;background:#fbfcff}.list-row.static{cursor:default}.list-row span:first-child{display:grid;gap:2px;min-width:0}.list-row strong{overflow:hidden;color:#111827;font-size:13px;text-overflow:ellipsis}.list-row small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis}.row-value{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-weight:850}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label,.condition-list{display:grid;gap:8px}.form-grid label span{color:#475569;font-size:12px;font-weight:760}.condition-list{border-top:1px solid var(--line);padding-top:14px}.condition-editor,.watch-form-row{display:grid;gap:9px;align-items:center}.condition-editor{grid-template-columns:minmax(0,1fr) 34px}.watch-form-row{grid-template-columns:96px minmax(0,1fr) 34px}.analysis-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.analysis-list li{position:relative;border:1px solid #edf1f6;border-left:3px solid var(--primary);border-radius:7px;background:#fbfcff;color:#334155;padding:10px 12px;font-size:13px;line-height:1.55}.watch-condition-list{display:grid;gap:9px}.watch-condition{display:grid;grid-template-columns:minmax(0,1fr) 84px 132px;gap:12px;align-items:center;border:1px solid #edf1f6;border-radius:8px;background:#fff;padding:12px}.watch-condition span{justify-self:start;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.watch-condition.pending span{background:#f1f4f9;color:#526071}.watch-condition.matched span{background:var(--green-soft);color:var(--green)}.watch-condition.unmatched span{background:var(--red-soft);color:var(--red)}.switch{display:inline-flex;align-items:center;gap:7px;color:#475569;font-size:12px;font-weight:800}.switch input{width:32px;height:18px;accent-color:var(--primary);cursor:pointer}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#0f172a5c;padding:20px}.modal{width:min(760px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 28px 80px #0f172a3d}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:16px 18px}.modal-header h2{margin:0;color:#111827;font-size:18px}.modal-body{display:grid;gap:16px;padding:18px}.modal-actions{padding-top:4px}.generated-preview{display:grid;gap:10px;border:1px solid #dfe4ff;border-radius:8px;background:#fbfbff;padding:14px}.generated-preview h3,.generated-preview p,.generated-preview ul{margin:0}.generated-preview ul{display:grid;gap:6px;padding-left:18px;color:#334155;font-size:13px}.ai-workspace{min-height:calc(100vh - 48px)}.ai-workspace-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;height:calc(100vh - 48px);min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:0 14px 40px #1e293b0f}.ai-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px 6px}.ai-title-row{display:inline-flex;align-items:center;gap:10px}.ai-title-row h1{font-size:20px}.ai-guide-link,.ghost-button{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:13px;font-weight:750;text-decoration:none}.ghost-button{min-height:32px;background:transparent;color:#314061;padding:0 6px}.ghost-button:disabled,.ai-preview-tabs button:disabled,.ai-dashed-button:disabled,.ai-example-box button:disabled,.icon-button:disabled{opacity:.45;cursor:not-allowed}.danger-text{color:var(--red)}.ai-stepper{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1fr) minmax(160px,1fr);gap:14px;align-items:center;width:min(820px,62vw);margin:6px auto 14px}.ai-step{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#526071}.ai-step:not(:last-child):after{content:"";position:absolute;left:calc(50% + 82px);right:calc(-50% + 62px);height:1px;background:var(--line)}.ai-step span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#40506c;font-size:13px;font-weight:850}.ai-step.active span{border-color:transparent;background:linear-gradient(180deg,#5966ff,#3929e8);color:#fff;box-shadow:0 8px 18px #3b35e83d}.ai-step strong{color:#182033;font-size:14px}.ai-workspace-grid{display:grid;grid-template-columns:minmax(430px,.82fr) minmax(620px,1.18fr);gap:12px;min-height:0;overflow:hidden;padding:0 20px 14px}.ai-input-panel,.ai-preview-workbench{min-height:0;border:1px solid var(--line);border-radius:8px;background:#fff}.ai-input-panel{display:grid;align-content:start;gap:11px;overflow:auto;padding:14px}.ai-code-builder .ai-workspace-grid{grid-template-columns:minmax(560px,1.05fr) minmax(520px,.95fr)}.ai-code-builder .ai-input-panel{display:flex;flex-direction:column;align-content:stretch}.ai-paste-code-editor{width:100%;flex:1 1 420px;height:auto;min-height:360px;margin:0;resize:vertical}.ai-section-title{display:inline-flex;align-items:center;gap:8px;color:#111827;font-size:15px;font-weight:850}.ai-section-title span{display:grid;place-items:center;width:20px;height:20px;border-radius:999px;background:linear-gradient(180deg,#5966ff,#3929e8);color:#fff;font-size:12px;font-weight:900}.ai-field select{height:38px;font-size:14px;font-weight:760}.ai-field-note{margin-top:-6px;color:var(--muted);font-size:12px}.ai-inline-tip{display:inline-flex;align-items:center;gap:8px;border-radius:7px;background:linear-gradient(180deg,#edf4ff,#f7faff);color:#526071;padding:8px 10px;font-size:12px;font-weight:650}.ai-condition-list{display:grid;gap:8px}.ai-condition-item{display:grid;grid-template-columns:18px 28px minmax(0,1fr) 32px;align-items:center;gap:8px}.ai-condition-item>svg{color:#62708c}.ai-condition-item strong{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#eaf8f0;color:#24764f;font-size:13px;font-weight:850}.ai-condition-item input{height:42px;border-radius:7px;color:#111827;font-size:14px}.ai-dashed-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px dashed #cfd8e8;border-radius:8px;background:#fff;color:#354461;font-weight:760}.ai-example-box{display:grid;gap:9px;border:1px solid #edf1f7;border-radius:8px;background:#f8fafd;padding:11px}.ai-example-box>span{color:#3d4862;font-size:13px;font-weight:760}.ai-example-box div{display:flex;flex-wrap:wrap;gap:9px}.ai-example-box button{min-height:28px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#44516a;padding:0 12px;font-size:13px;font-weight:700}.ai-input-actions,.ai-workspace-footer div,.ai-result-header,.ai-result-header div,.ai-strategy-identity{display:flex;align-items:center}.ai-input-actions{grid-template-columns:minmax(0,1fr) 110px;display:grid;gap:9px}.ai-preview-workbench{overflow:hidden;height:100%}.ai-empty-preview{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:100%;min-height:420px;padding:24px;text-align:center}.ai-empty-preview h2{position:absolute;top:18px;left:20px;margin:0;color:#111827;font-size:16px;text-align:left}.empty-illustration{position:relative;display:grid;place-items:center;width:144px;height:144px;color:#6a61ff}.empty-illustration div{width:76px;height:100px;border:8px solid #d9dcff;border-radius:8px;background:linear-gradient(#c7cbff,#c7cbff) 18px 28px / 46px 5px no-repeat,linear-gradient(#c7cbff,#c7cbff) 18px 46px / 52px 5px no-repeat,linear-gradient(#c7cbff,#c7cbff) 18px 64px / 44px 5px no-repeat,#fff;box-shadow:0 14px 34px #4f46e529}.empty-illustration svg{position:absolute;right:16px;bottom:18px;filter:drop-shadow(0 10px 14px rgba(79,70,229,.2))}.ai-empty-preview strong{color:#24324b;font-size:19px}.ai-empty-preview p{margin:0;color:#66738b;font-size:14px}.ai-result-preview{display:grid;grid-template-rows:auto auto minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.ai-result-header{justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:10px 14px}.ai-result-header div{gap:8px}.ai-result-header h2{margin:0;color:#111827;font-size:16px}.ai-result-header span{color:var(--muted);font-size:13px}.generation-badge{display:inline-flex;align-items:center;gap:6px;min-height:30px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:0 10px;font-size:12px;font-weight:800;white-space:nowrap}.generation-badge.llm{border-color:#bfead3;background:#f2fbf6;color:var(--green)}.generation-badge.fallback{border-color:#f4deb8;background:#fffaf0;color:var(--amber)}.ai-result-actions{display:inline-flex;align-items:center;gap:8px}.generation-error{border-bottom:1px solid #f4deb8;background:#fffaf0;color:#8a5a10;padding:8px 14px;font-size:12px;font-weight:700;line-height:1.5}.ai-preview-tabs{display:flex;gap:18px;border-bottom:1px solid var(--line);padding:0 14px}.ai-preview-tabs button{display:inline-flex;align-items:center;gap:7px;min-height:40px;border-bottom:2px solid transparent;background:transparent;color:#314061;font-size:15px;font-weight:760}.ai-preview-tabs button.active{border-color:var(--primary);color:var(--primary)}.ai-summary-preview,.ai-editor-preview{display:grid;align-content:start;gap:10px;height:100%;overflow:auto;min-height:0;padding:12px 14px}.ai-strategy-identity{gap:12px;border:1px solid #edf1f6;border-radius:8px;background:#fff;padding:12px 14px}.ai-strategy-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid #bfead3;border-radius:8px;background:#eaf8f0;color:var(--green)}.ai-strategy-identity h3{display:inline-flex;align-items:center;gap:8px;margin:0;color:#111827;font-size:19px}.ai-strategy-identity p{margin-top:4px}.ai-strategy-identity>span{margin-left:auto;border-radius:999px;background:var(--primary-soft);color:var(--primary);padding:6px 12px;font-size:12px;font-weight:800}.ai-kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #edf1f6;border-radius:8px;background:#fff;padding:16px 0}.ai-kpi{display:grid;justify-items:center;gap:8px;border-right:1px solid var(--line)}.ai-kpi:last-child{border-right:0}.ai-kpi span{color:#62708c;font-size:13px;font-weight:700}.ai-kpi strong{color:#111827;font-size:17px}.ai-kpi strong.green{color:var(--green)}.ai-kpi strong.amber{color:var(--amber)}.ai-summary-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:14px}.ai-summary-text,.ai-editable-conditions,.ai-history-card,.ai-market-card,.ai-flow-card,.ai-generated-conditions,.ai-code-preview{border:1px solid #edf1f6;border-radius:8px;background:#fff;padding:12px}.ai-summary-text h4,.ai-editable-conditions h4,.ai-history-card h4,.ai-market-card h4,.ai-flow-card h4{display:inline-flex;align-items:center;gap:7px;margin:0 0 8px;color:#111827;font-size:15px}.ai-editable-conditions{display:grid;gap:0;padding:0}.ai-editable-conditions h4{justify-content:space-between;min-height:42px;border-bottom:1px solid var(--line);background:#fbfcff;padding:0 16px}.ai-editable-conditions h4 span{color:var(--muted);font-size:12px;font-weight:650}.ai-editable-condition{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(220px,.62fr);gap:12px;align-items:start;border-bottom:1px solid var(--line);padding:12px 14px}.ai-editable-condition:last-child{border-bottom:0}.ai-editable-condition>span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#ecfdf3;color:var(--green);font-size:12px;font-weight:900}.ai-editable-condition strong{color:#111827;font-size:14px}.ai-editable-condition p{margin:4px 0 0;color:#334155}.ai-param-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ai-param-editor label{display:grid;gap:6px}.ai-param-editor label span{color:#526071;font-size:12px;font-weight:800}.ai-param-editor input{height:34px;font-size:13px}.ai-number-param{display:flex;align-items:center;min-height:36px;overflow:hidden;border:1px solid #dbe3ef;border-radius:7px;background:#fbfcff}.ai-number-param:focus-within{border-color:#9aa8ff;box-shadow:0 0 0 3px #3b35e81a}.ai-number-param input{flex:0 1 58px;width:58px;height:34px;border:0;border-radius:0;box-shadow:none;background:transparent;padding:0 6px;text-align:center;font-weight:800}.ai-number-param input:focus{box-shadow:none}.ai-number-param span{flex:0 0 auto;color:#64748b;font-size:13px;font-weight:760;white-space:nowrap}.ai-param-editor em{color:var(--muted);font-size:13px;font-style:normal}.strategy-edit-workspace-grid{display:grid;grid-template-columns:minmax(360px,.72fr) minmax(680px,1.28fr);gap:12px;height:100%;min-height:0;overflow:hidden;padding:0 20px 14px}.strategy-edit-shell{grid-template-rows:auto minmax(0,1fr) auto}.strategy-maintenance-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto}.strategy-edit-shell .ai-workspace-header{padding-bottom:8px}.strategy-edit-shell .ai-input-panel,.strategy-edit-shell .ai-preview-workbench{height:100%}.strategy-maintenance-summary{display:grid;grid-template-columns:minmax(360px,1fr) minmax(520px,auto);gap:16px;align-items:center;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbfcff);padding:12px 20px}.strategy-readonly-notice{border-bottom:1px solid #f4deb8;background:#fffaf0;color:#8a5a10;padding:8px 20px;font-size:13px;font-weight:760}.strategy-maintenance-title{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;align-items:center;min-width:0}.strategy-maintenance-title h2{overflow:hidden;margin:0;color:#111827;font-size:18px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.strategy-maintenance-title p{grid-column:1 / -1;overflow:hidden;margin:0;color:#475569;font-size:13px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.strategy-maintenance-meta{display:grid;grid-template-columns:repeat(5,auto);gap:8px;justify-content:end}.strategy-maintenance-meta span{display:grid;gap:3px;min-width:82px;border-left:1px solid #edf1f6;color:#111827;padding-left:10px;font-size:13px;font-weight:800}.strategy-maintenance-meta span:first-child{border-left:0;padding-left:0}.strategy-maintenance-meta b{color:#738096;font-size:11px;font-weight:700}.strategy-maintenance-grid{display:grid;grid-template-columns:minmax(640px,1.05fr) minmax(520px,.95fr);gap:12px;min-height:0;overflow:hidden;padding:14px 20px 16px}.strategy-maintenance-left,.strategy-code-panel{min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 30px #1e293b0a}.strategy-maintenance-left{display:grid;grid-template-rows:minmax(0,1fr) auto auto}.strategy-code-panel{display:grid;grid-template-rows:auto minmax(0,1fr)}.strategy-code-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #1f2937;background:#111827;padding:11px 14px}.strategy-code-panel header div{display:inline-flex;align-items:center;gap:7px;color:#e5edf8}.strategy-code-panel header span{color:#96a3b8;font-size:12px}.strategy-code-panel .ai-code-editor{width:100%;height:100%;margin:0;border:0;border-radius:0;background:linear-gradient(90deg,rgba(148,163,184,.08) 0 44px,transparent 44px),#101828;padding:16px 18px 16px 58px;font-size:12.5px}.strategy-code-panel .ai-code-editor::-webkit-scrollbar,.strategy-edit-preview::-webkit-scrollbar,.strategy-analysis-body::-webkit-scrollbar{width:10px;height:10px}.strategy-code-panel .ai-code-editor::-webkit-scrollbar-thumb,.strategy-edit-preview::-webkit-scrollbar-thumb,.strategy-analysis-body::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#64748b73;background-clip:content-box}.strategy-edit-preview::-webkit-scrollbar-thumb,.strategy-analysis-body::-webkit-scrollbar-thumb{background:#94a3b880;background-clip:content-box}.strategy-analysis-compact{border-top:1px solid var(--line);background:#f8fafc}.strategy-analysis-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:38px;background:transparent;color:#24324b;padding:0 12px;font-size:13px;font-weight:800}.strategy-analysis-toggle:hover{background:#f1f5f9}.strategy-analysis-toggle span{margin-left:auto;color:var(--primary);font-size:12px}.strategy-analysis-body{display:grid;gap:8px;max-height:160px;overflow:auto;border-top:1px solid var(--line);padding:10px 12px}.strategy-analysis-body p{margin:0;color:#334155;font-size:13px;line-height:1.65}.strategy-blacklist-editor{display:grid;gap:0;border-top:1px solid var(--line);background:#fbfcff}.strategy-blacklist-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;width:100%;min-height:34px;background:transparent;padding:6px 12px;text-align:left}.strategy-blacklist-summary:hover{background:#f8fafc}.strategy-blacklist-summary div:first-child{display:flex;align-items:baseline;gap:8px;min-width:0}.strategy-blacklist-summary strong{color:#111827;font-size:13px;font-weight:850;white-space:nowrap}.strategy-blacklist-summary div:first-child span{overflow:hidden;color:#64748b;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.strategy-blacklist-summary b{color:var(--primary);font-size:12px;font-weight:850}.strategy-blacklist-chips{display:flex;flex-wrap:nowrap;gap:6px;justify-content:flex-end;overflow:hidden;min-width:0}.strategy-blacklist-chips span,.strategy-blacklist-chips em{flex:0 0 auto;border-radius:999px;padding:4px 8px;font-size:12px;line-height:1}.strategy-blacklist-chips span{border:1px solid #dbeafe;background:#eff6ff;color:#34f;font-weight:800}.strategy-blacklist-chips em{background:#eef2f7;color:#64748b;font-style:normal;font-weight:800}.strategy-blacklist-body{display:grid;border-top:1px solid #edf1f6;padding:7px 12px 8px}.strategy-blacklist-editor textarea{width:100%;height:86px;min-height:86px;max-height:130px;resize:vertical;border:1px solid #dbe3ef;border-radius:8px;background:#fff;color:#111827;padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.5;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.strategy-blacklist-editor textarea:focus{border-color:#635bff;box-shadow:0 0 0 3px #635bff1f}.strategy-blacklist-editor textarea:disabled{cursor:not-allowed;background:#f8fafc;color:#94a3b8}.strategy-blacklist-body p{margin:0;color:#738096;font-size:12px;line-height:1.45}.strategy-edit-preview{height:100%;min-height:0;overflow:auto;padding:0}.strategy-condition-editor-card{min-height:100%;border:0;border-radius:0}.strategy-condition-editor-card h4{min-height:36px;padding:0 14px;font-size:14px}.strategy-editable-condition{grid-template-columns:26px minmax(170px,.62fr) minmax(380px,1.38fr) 30px;gap:12px;align-items:start;padding:9px 12px}.strategy-editable-condition>span{width:22px;height:22px;font-size:11px}.strategy-condition-fields{display:grid;gap:3px;min-width:0}.strategy-condition-fields strong{color:#111827;font-size:13.5px;line-height:1.25;white-space:normal}.strategy-condition-fields p{display:-webkit-box;overflow:hidden;margin:0;color:#526071;font-size:12.5px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.readonly-detail-block,.readonly-meta-item{display:grid;gap:6px;border:1px solid #edf1f6;border-radius:8px;background:#fbfcff;padding:10px 12px}.readonly-detail-block span,.readonly-meta-item span{color:#657088;font-size:12px;font-weight:760}.readonly-detail-block strong,.readonly-meta-item strong{color:#111827;font-size:14px;font-weight:850}.readonly-detail-block p{margin:0;color:#334155;font-size:13px;line-height:1.6}.readonly-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.condition-title-input{height:36px;color:#111827;font-size:14px;font-weight:850}.condition-description-input{width:100%;min-height:70px;resize:vertical;color:#334155;font-size:13px;line-height:1.55}.strategy-param-editor{align-content:start;gap:6px 8px}.strategy-param-editor label{grid-template-columns:minmax(76px,.78fr) minmax(86px,1fr);gap:6px;align-items:start}.strategy-param-editor label>span{display:-webkit-box;overflow:hidden;font-size:11.5px;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.strategy-param-editor input{height:30px;min-width:0;padding:0 8px;font-size:12.5px}.strategy-param-editor .ai-number-param{min-height:30px;border-radius:6px}.strategy-param-editor .ai-number-param input{width:48px;height:28px;padding:0 4px}.strategy-param-editor .ai-number-param span{font-size:12px}.strategy-condition-delete{align-self:start;width:30px;height:30px;border:1px solid transparent}.strategy-condition-delete:hover{border-color:#fecdd3;background:#fff1f2}.strategy-condition-footer{border-top:1px solid var(--line);padding:12px 14px}.strategy-condition-footer .secondary{width:100%;min-height:38px}.strategy-analysis-tab-editor{display:block;width:calc(100% - 24px);height:calc(100% - 24px);min-height:0;margin:12px;overflow:auto;resize:none;border:1px solid var(--line);border-radius:8px;background:#fff;color:#24324b;padding:14px;font-size:13px;line-height:1.75}.strategy-runtime-status{display:grid;gap:7px;border:1px solid #edf1f6;border-radius:8px;background:#fbfcff;padding:10px;color:#526071;font-size:12px}.ai-history-card{display:grid;gap:12px}.ai-history-card h4 span{color:var(--muted);font-weight:600}.ai-donut{position:relative;display:grid;place-items:center;justify-self:center;width:128px;height:128px;border-radius:999px;background:radial-gradient(circle at center,#ffffff 0 54%,transparent 55%),conic-gradient(var(--primary) var(--value),#eef1f7 0)}.ai-donut strong,.ai-donut span{grid-area:1 / 1}.ai-donut strong{margin-top:18px;color:#111827;font-size:26px}.ai-donut span{margin-top:-26px;color:#526071;font-size:13px;font-weight:800}.ai-history-card ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ai-history-card li{display:flex;justify-content:space-between;color:#526071;font-size:13px}.ai-history-card li strong{color:#24324b}.ai-market-card div{display:flex;flex-wrap:wrap;gap:8px}.ai-flow-card div{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:center}.ai-flow-card span{position:relative;display:grid;place-items:center;min-height:46px;border:1px solid var(--line);border-radius:7px;background:linear-gradient(180deg,#fff,#fbfcff);color:#334155;font-size:13px;font-weight:750}.ai-flow-card span:not(:last-child):after{content:"→";position:absolute;right:-18px;color:#8a96aa}.ai-flow-card span:last-child{border-color:#c9ead8;background:#f2fbf6;color:var(--green)}.ai-generated-conditions{display:grid;gap:12px;margin:18px}.ai-generated-condition{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(180px,auto);gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.ai-generated-condition:last-child{border-bottom:0;padding-bottom:0}.ai-generated-condition>span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--green);color:#fff;font-size:12px;font-weight:900}.ai-generated-condition strong{color:#111827}.ai-generated-condition p{margin:5px 0 0}.ai-generated-condition div:last-child{display:flex;flex-wrap:wrap;gap:6px}.ai-generated-condition em{border:1px solid var(--line);border-radius:6px;background:#fbfcff;padding:5px 9px;color:#334155;font-size:12px;font-style:normal}.ai-code-preview{overflow:auto;margin:18px;background:#101828;color:#e6edf7;font-size:13px;line-height:1.7}.ai-code-editor{display:block;width:calc(100% - 24px);height:calc(100% - 24px);min-height:0;margin:12px;overflow:auto;resize:none;border:1px solid #182235;border-radius:8px;background:#101828;color:#e6edf7;padding:16px;font-family:Cascadia Code,Consolas,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.7;white-space:pre}.ai-code-editor:focus{border-color:#5966ff;box-shadow:0 0 0 3px #5966ff2e}.ai-analysis-preview{display:grid;align-content:start;gap:10px;height:calc(100% - 24px);margin:12px;overflow:auto;min-height:0}.ai-analysis-card{border:1px solid #edf1f6;border-radius:8px;background:#fff;color:#24324b;padding:12px}.ai-analysis-card h4{margin:0 0 10px;color:#111827;font-size:15px}.ai-analysis-card p{margin:0;color:#334155;font-size:13px;line-height:1.7}.ai-analysis-list{display:grid;gap:10px}.ai-analysis-list p{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px}.ai-analysis-list p svg{flex:0 0 auto;color:var(--green);margin-top:2px}.ai-analysis-condition-list{display:grid;gap:12px}.ai-analysis-condition-list>div{display:grid;gap:7px;border-bottom:1px solid var(--line);padding-bottom:12px}.ai-analysis-condition-list>div:last-child{border-bottom:0;padding-bottom:0}.ai-analysis-condition-list strong{color:#111827;font-size:13px}.ai-analysis-condition-list div div,.ai-analysis-tags{display:flex;flex-wrap:wrap;gap:7px}.ai-analysis-condition-list span,.ai-analysis-tags span{border:1px solid var(--line);border-radius:999px;background:#fbfcff;color:#44516a;padding:5px 9px;font-size:12px;font-weight:700}.ai-workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:10px 20px}.ai-workspace-footer>span{display:inline-flex;align-items:center;gap:8px;color:#526071;font-size:13px}.ai-workspace-footer div{gap:12px}.ai-page-error{margin:0 26px 12px}.ai-strategy-modal{width:min(1500px,calc(100vw - 32px));max-height:calc(100vh - 36px)}.ai-strategy-modal .modal-header{border-bottom:0;padding:22px 28px 2px}.ai-strategy-modal .modal-header h2{position:relative;padding-left:48px;font-size:22px}.ai-strategy-modal .modal-header h2:before{content:"AI";position:absolute;left:0;top:50%;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--primary);color:#fff;font-size:14px;font-weight:900;transform:translateY(-50%);box-shadow:0 10px 24px #3b35e833}.ai-modal-subtitle{padding:0 28px 20px 76px;color:var(--muted);font-size:14px}.ai-strategy-body{display:grid;grid-template-columns:minmax(430px,.67fr) minmax(640px,1fr);gap:10px;padding:0 16px}.ai-builder-panel,.ai-preview-panel{border:1px solid var(--line);border-radius:8px;background:#fff}.ai-builder-panel{display:grid;align-content:start;gap:16px;padding:20px}.ai-step-title{display:inline-flex;align-items:center;gap:10px;color:#111827;font-size:16px;font-weight:850}.ai-step-title span,.ai-structured-row>span{display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:linear-gradient(180deg,#4f63ff,#2f4df0);color:#fff;font-size:12px;font-weight:900}.ai-field select{height:50px;font-size:15px;font-weight:750}.ai-help,.ai-tip{display:flex;align-items:center;gap:7px;margin:0;color:var(--muted);font-size:13px}.ai-tip{border:1px solid #dbe6fb;border-radius:7px;background:#f4f8ff;padding:12px}.ai-divider{height:1px;background:var(--line)}.ai-condition-stack{display:grid;gap:11px}.ai-condition-row{display:grid;grid-template-columns:18px 32px minmax(0,1fr) 34px;align-items:center;gap:10px}.ai-condition-row>svg{color:#657088}.ai-condition-row strong{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f4f7e8;color:#2c3a1f;font-size:15px}.ai-condition-row input{height:52px;font-size:14px}.icon-button.danger{background:#fff5f6;color:var(--red)}.ai-add-condition{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border:1px dashed #cfd8e8;border-radius:8px;background:#fff;color:#3f4a62;font-weight:750}.ai-examples{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafd;padding:15px}.ai-examples>span{color:#3f4a62;font-size:14px;font-weight:760}.ai-examples div{display:flex;flex-wrap:wrap;gap:9px}.ai-examples button{min-height:32px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#44516a;padding:0 13px;font-size:13px;font-weight:700}.ai-preview-panel{display:grid;align-content:start;gap:12px;padding:20px}.ai-preview-heading,.ai-modal-footer,.ai-modal-footer div{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-preview-heading h3{display:inline-flex;align-items:center;gap:10px;margin:0;color:#111827;font-size:18px}.ai-preview-heading h3 span{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--primary);color:#fff;font-size:12px}.ai-preview-heading strong{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:14px}.ai-preview-heading em{color:var(--muted);font-size:13px;font-style:normal}.ai-preview-top{display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:16px}.ai-summary-card,.ai-strength-card,.ai-structured-card,.ai-risk-card,.ai-next-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.ai-summary-card{border-color:#d6e2ff;background:linear-gradient(180deg,#f7faff,#fff)}.ai-summary-card h4,.ai-structured-card h4,.ai-risk-card h4,.ai-next-card h4{margin:0 0 10px;color:var(--primary);font-size:16px}.ai-summary-card p,.ai-next-card p{margin:0 0 7px;color:#334155;font-size:14px;line-height:1.65}.ai-strength-card{display:grid;justify-items:center;gap:10px;border-color:#f0dfb7;background:linear-gradient(135deg,#fffaf0,#fff)}.ai-strength-card>span{justify-self:start;color:#c47a13;font-size:15px;font-weight:850}.ai-strength-card strong{color:var(--green);font-size:34px;line-height:1}.ai-strength-card p{margin:0;color:#172033;font-size:15px;font-weight:760}.ai-strength-track{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;width:100%}.ai-strength-track i{height:8px;border-radius:999px;background:#e5eaf3}.ai-strength-track i.active{background:var(--green)}.ai-strength-labels{display:grid;grid-template-columns:repeat(4,1fr);width:100%;color:#697386;font-size:13px;text-align:center}.ai-structured-card{padding:0}.ai-structured-card h4{border-bottom:1px solid var(--line);padding:16px}.ai-structured-card h4 span{color:var(--muted);font-weight:600}.ai-structured-row{display:grid;grid-template-columns:28px 96px minmax(0,1fr) minmax(190px,auto) 34px 34px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:14px 16px}.ai-structured-row:last-child{border-bottom:0}.ai-structured-row>span{background:var(--green)}.ai-structured-row strong{color:#111827;font-size:14px}.ai-structured-row p{margin:0;color:#334155;font-size:14px;line-height:1.55}.ai-preview-empty{border-bottom:0;padding:28px 16px;color:var(--muted);font-size:14px}.ai-param-tags{display:flex;flex-wrap:wrap;gap:6px}.ai-param-tags em{border:1px solid var(--line);border-radius:6px;background:#fbfcff;color:#334155;padding:5px 10px;font-size:13px;font-style:normal;white-space:nowrap}.ai-risk-card{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;background:#fbfbff}.ai-risk-card h4,.ai-next-card h4{grid-column:1 / -1}.ai-risk-card span{color:#334155;font-size:14px}.ai-next-card{border-color:#f4deb8;background:#fffaf0}.ai-next-card h4{color:#d08112}.ai-modal-error{margin:12px 28px 0}.ai-modal-footer{border-top:1px solid var(--line);margin-top:16px;padding:18px 28px 22px}.ai-modal-footer>span{color:#526071;font-size:14px}.preview-meta{display:flex;flex-wrap:wrap;gap:7px}.strength{display:grid;grid-template-columns:auto minmax(84px,1fr);align-items:center;gap:10px;border:1px solid #edf1f6;border-radius:8px;background:#fbfcff;padding:12px;color:#111827}.strength strong{min-width:24px;color:var(--green);font-size:22px;font-weight:900}.strength-track{height:7px;overflow:hidden;border-radius:999px;background:#e7ecf4}.strength-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#6edb98)}.detail-side{display:grid;gap:12px}.stat-block,.metric-panel{display:grid;gap:6px}.stat-block strong,.metric-panel strong{color:#111827;font-size:18px;line-height:1.2}.metric-panel strong{font-size:26px}.chart-panel{min-width:0}.inline-error,.app-alert{border:1px solid #ffd0cc;border-radius:8px;background:#fff7f6;color:#b42318;padding:10px 12px;font-size:13px}.app-alert,.app-busy{width:min(1280px,100%);margin:0 auto 12px}.app-busy{border:1px solid #cbd5ff;border-radius:8px;background:var(--primary-soft);color:var(--primary);padding:10px 12px;font-size:13px;font-weight:760}.empty-state{display:grid;place-items:center;gap:12px;min-height:220px;text-align:center}.empty-state h1,.empty-state p{margin:0}.auth-screen{display:grid;min-height:100vh;place-items:center;background:linear-gradient(180deg,#ffffffeb,#f5f7fbf5 260px),var(--bg);padding:24px}.auth-panel{display:grid;gap:22px;width:min(420px,100%);border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 24px 72px #1e293b1f;padding:28px}.auth-brand{display:flex;align-items:center;gap:10px;color:#111827;font-size:16px;font-weight:850}.auth-heading{display:grid;gap:6px}.auth-heading h1{margin:0;color:#111827;font-size:24px;line-height:1.2}.auth-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:7px}.auth-form label span{color:#475569;font-size:12px;font-weight:760}.auth-submit{width:100%;min-height:38px}.auth-switch{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:13px}.auth-switch button{background:transparent;color:var(--primary);font-weight:800;padding:0}.settings-page{align-content:start}.settings-grid,.settings-panel{display:grid;gap:14px}.toggle-row{display:inline-flex;align-items:center;gap:8px;color:#334155;font-size:13px;font-weight:750}.toggle-row input{width:18px;height:18px;accent-color:var(--primary)}.settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}@media(max-width:980px){body{min-width:0}.app{padding:0}.shell{grid-template-columns:1fr;width:100%;min-height:100vh;border:0;border-radius:0}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-item,.settings-button{justify-content:center;padding:0 8px}.nav-item span,.settings-button span{display:none}.settings-button,.sidebar-account{margin-top:0}.sidebar-account>span{display:none}.main{padding:16px}.page-header,.toolbar{align-items:stretch;flex-direction:column}.grid.two,.grid.three,.kpis,.dashboard-workspace,.split-layout,.strategy-content-grid,.detail-layout,.case-layout,.signal-filter-grid,.form-grid{grid-template-columns:1fr}.tabs{width:100%}.tabs button{flex:1}.table-pagination{align-items:stretch;flex-direction:column}.table-pagination>div{justify-content:flex-end}.recent-scan-panel{position:static}.watch-condition{grid-template-columns:1fr}.watch-form-row{grid-template-columns:88px minmax(0,1fr) 34px}.ai-strategy-modal{width:calc(100vw - 20px)}.ai-strategy-body,.strategy-edit-workspace-grid,.strategy-maintenance-summary,.strategy-maintenance-grid,.strategy-blacklist-editor,.ai-preview-top,.ai-structured-row,.ai-risk-card,.strategy-editable-condition{grid-template-columns:1fr}.ai-condition-row{grid-template-columns:18px 30px minmax(0,1fr) 34px}.ai-modal-footer{align-items:stretch;flex-direction:column}}
