/* Every selector is confined to prototype module content, never MDI window chrome. */
.strategy-module{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;background:var(--panel);color:var(--text);font:inherit;container-type:inline-size}
.strategy-module .strategy-module-heading{flex:none;padding:12px 15px 10px;border-bottom:1px solid var(--line);background:var(--panel-alt)}
.strategy-module .strategy-labels{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:8px}
.strategy-module .strategy-demo-badge{background:var(--primary-soft);color:var(--primary);border:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.3px;padding:3px 7px;border-radius:4px}
.strategy-module .strategy-area-label{font-size:10px;color:var(--muted)}
.strategy-module .strategy-module-heading p{font-size:12px;line-height:1.55;color:var(--muted);margin:0}
.strategy-module .strategy-body{flex:1;min-height:0;min-width:0;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:13px;overscroll-behavior:contain}
.strategy-module .strategy-body>*{flex-shrink:0}
.strategy-module .strategy-status{flex:none;min-height:30px;font-size:10px;line-height:1.5;color:var(--muted);margin:0;padding:7px 13px;background:var(--panel-alt);border-top:1px solid var(--line);overflow-wrap:anywhere}
.strategy-module .strategy-button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 10px;font:inherit;font-size:11px;line-height:1.3;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--text);cursor:pointer;text-align:center}
.strategy-module .strategy-button:hover{background:var(--hover);border-color:var(--primary)}
.strategy-module .strategy-button.is-primary{background:var(--primary);border-color:var(--primary);color:var(--panel)}
.strategy-module .strategy-button:disabled{opacity:.5;cursor:default}
.strategy-module .strategy-button:focus-visible,.strategy-module input:focus-visible,.strategy-module select:focus-visible,.strategy-module textarea:focus-visible,.strategy-module .strategy-table-wrap:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.strategy-module .strategy-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.strategy-module .strategy-note{font-size:11px;line-height:1.65;color:var(--muted);border-left:3px solid var(--primary);padding:4px 0 4px 10px;margin:0;overflow-wrap:anywhere}
.strategy-module .strategy-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.strategy-module .strategy-metric{padding:11px;border:1px solid var(--line);border-radius:6px;background:var(--panel-alt);min-width:0}
.strategy-module .strategy-metric span{font-size:10px;color:var(--muted);display:block;margin-bottom:7px}
.strategy-module .strategy-metric strong{font-size:17px;font-weight:600;overflow-wrap:anywhere}
.strategy-module .strategy-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:10px}
.strategy-module .strategy-card{padding:13px;border:1px solid var(--line);border-radius:7px;display:flex;flex-direction:column;align-items:start;gap:10px;background:var(--panel-alt)}
.strategy-module .strategy-card h3,.strategy-module .strategy-workflow h3,.strategy-module .strategy-section-title{font-size:13px;font-weight:600;line-height:1.4;margin:0}
.strategy-module .strategy-card p,.strategy-module .strategy-workflow p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}
.strategy-module .strategy-card .strategy-button{margin-top:auto}
.strategy-module .strategy-step{color:var(--primary);background:var(--primary-soft);border:1px solid var(--line);border-radius:5px;padding:5px 7px;min-width:28px;text-align:center;font-size:11px;font-weight:700}
.strategy-module .strategy-table-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.strategy-module .strategy-table-tools input{flex:1;min-width:130px}
.strategy-module .strategy-table-tools select{max-width:180px}
.strategy-module input,.strategy-module select,.strategy-module textarea{font:inherit;font-size:12px;line-height:1.4;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:5px;min-width:0;padding:7px 9px;min-height:32px}
.strategy-module .strategy-count{font-size:10px;white-space:nowrap;color:var(--muted)}
.strategy-module .strategy-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:6px}
.strategy-module table{width:100%;min-width:420px;border-collapse:collapse;font:inherit;white-space:nowrap}
.strategy-module th,.strategy-module td{font:inherit;font-size:11px;text-align:left;padding:9px 10px;border:0;border-bottom:1px solid var(--line-soft);color:var(--text)}
.strategy-module th{background:var(--panel-alt);color:var(--muted);font-weight:600;position:sticky;top:0;z-index:1}
.strategy-module th .strategy-button{border:0;background:transparent;color:inherit;padding:0;min-height:22px;justify-content:start;font-size:10px}
.strategy-module th[aria-sort=ascending] .strategy-button:after{content:' ↑';white-space:pre;color:var(--primary)}
.strategy-module th[aria-sort=descending] .strategy-button:after{content:' ↓';white-space:pre;color:var(--primary)}
.strategy-module tbody tr:nth-child(even){background:var(--panel-alt)}
.strategy-module tbody tr:hover{background:var(--hover)}
.strategy-module td .strategy-button{font-size:10px;min-height:25px;padding:4px 7px}
.strategy-module .strategy-cell-state{color:var(--primary);font-size:10px;font-weight:600}
.strategy-module .strategy-row-detail,.strategy-module .strategy-preview{padding:13px;background:var(--primary-soft);border:1px solid var(--line);border-radius:6px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.strategy-module .strategy-row-detail h4{font-size:13px;margin:0 0 10px}
.strategy-module .strategy-row-detail dl{display:grid;grid-template-columns:minmax(90px,.7fr) 1fr;gap:6px 12px;margin:0 0 12px}
.strategy-module .strategy-row-detail dt{color:var(--muted);font-size:11px}
.strategy-module .strategy-row-detail dd{margin:0;font-size:11px}
.strategy-module .strategy-row-detail .strategy-button{margin-top:10px}
.strategy-module .strategy-form{display:flex;flex-direction:column;gap:13px}
.strategy-module .strategy-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.strategy-module .strategy-field{display:flex;flex-direction:column;gap:6px;min-width:0;color:var(--text)}
.strategy-module .strategy-field>span{font-size:11px;font-weight:600}
.strategy-module .strategy-preview p{margin:5px 0}
.strategy-module .strategy-bars{margin:0;padding:13px;border:1px solid var(--line);border-radius:6px;background:var(--panel-alt)}
.strategy-module .strategy-bar-plot{height:80px;display:flex;align-items:end;gap:5px;border-bottom:1px solid var(--line)}
.strategy-module .strategy-bar-plot i{display:block;flex:1;max-width:45px;min-width:3px;background:var(--primary);opacity:.65;border-radius:3px 3px 0 0}
.strategy-module .strategy-bar-plot i:nth-child(3n){opacity:.35}
.strategy-module .strategy-bars figcaption{font-size:10px;color:var(--muted);line-height:1.5;margin-top:9px}
.strategy-module .strategy-check-list{padding:12px;border:1px solid var(--line);border-radius:6px;font-size:11px;line-height:1.7}
.strategy-module .strategy-check-list p{margin:3px 0}
.strategy-module .strategy-workflow{list-style:none;display:flex;flex-direction:column;gap:11px;margin:0;padding:0}
.strategy-module .strategy-workflow li{display:flex;align-items:start;gap:12px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--panel-alt)}
.strategy-module .strategy-workflow li>div{display:flex;flex-direction:column;align-items:start;gap:8px;min-width:0}
.strategy-module .strategy-editor{display:block;flex:1;min-height:240px;width:100%;resize:vertical;font-family:var(--mono);font-size:12px;line-height:1.7;white-space:pre;overflow:auto;tab-size:2;background:var(--panel-alt)}
.strategy-module .strategy-test-steps{padding:0;margin:0;list-style:none;counter-reset:test-step;display:flex;flex-direction:column;gap:8px}
.strategy-module .strategy-test-steps li{counter-increment:test-step;padding:9px 10px;background:var(--panel-alt);border:1px solid var(--line);border-radius:5px;font-size:11px;line-height:1.5}
.strategy-module .strategy-test-steps li:before{content:counter(test-step) '. ';color:var(--muted)}
.strategy-module .strategy-test-steps li.is-complete{color:var(--accent);border-color:var(--accent)}
.strategy-module .strategy-test-output{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.strategy-module .strategy-run-state{font-size:19px;font-weight:600;color:var(--primary)}
.strategy-module .strategy-console{font:11px/1.8 var(--mono);list-style:none;max-height:240px;min-height:95px;overflow:auto;background:var(--panel-alt);padding:12px;border:1px solid var(--line);border-radius:6px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.strategy-module .strategy-console li{padding:2px 0;border-bottom:1px solid var(--line-soft)}
.strategy-module .strategy-matrix td:not(:first-child){text-align:center}
@container(max-width:370px){.strategy-module .strategy-body{padding:10px;gap:11px}.strategy-module .strategy-module-heading{padding:10px}.strategy-module .strategy-fields,.strategy-module .strategy-card-grid{grid-template-columns:1fr}.strategy-module .strategy-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-module .strategy-metric{padding:9px}.strategy-module .strategy-metric strong{font-size:15px}.strategy-module .strategy-table-tools input{flex-basis:100%}.strategy-module .strategy-table-tools select{flex:1;max-width:none}.strategy-module .strategy-editor{font-size:11px;min-height:210px}}
