.simulator-section-title{margin-top:26px}.simulator-grid{display:grid;gap:20px}.simulator-port-group{min-width:0}.simulator-port-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.simulator-port-group-head>div{display:flex;align-items:baseline;gap:8px}.simulator-port-group-head h4{margin:0;color:var(--ink);font-size:14px}.simulator-port-group-head span,.simulator-port-group-head em{color:var(--muted);font-size:10px;font-style:normal}.simulator-port-group-head em{padding:4px 8px;border-radius:99px;background:#f0f2f6;font-weight:700}.simulator-port-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.simulator-card{min-width:0;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 3px 12px #29334a08;overflow:hidden}.simulator-card.booted{border-color:#cfe9df}.simulator-card.busy{opacity:.78}.simulator-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 17px 13px}.simulator-card-identity{display:flex;align-items:center;gap:11px;min-width:0}.simulator-device-icon{width:35px;height:47px;flex:0 0 auto;border:2px solid #7d76d9;border-radius:9px;display:grid;place-items:center;color:var(--accent);background:#f5f3ff;font:700 8px var(--mono);box-shadow:inset 0 -5px 0 #ebe8ff}.simulator-card-copy{min-width:0}.simulator-card-copy b,.simulator-card-copy code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulator-card-copy b{font-size:13px}.simulator-card-copy code{margin-top:2px;color:#9aa3b4;font:9px var(--mono)}.simulator-power-state{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;background:#f0f2f6;color:#788398;font-size:9px;font-weight:700}.simulator-power-state:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.simulator-power-state.up{background:#e7f8f1;color:var(--good)}.simulator-card-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#eef0f5;border-top:1px solid #eef0f5;border-bottom:1px solid #eef0f5}.simulator-card-details>div{min-width:0;padding:10px 13px;background:#fafbfc}.simulator-card-details span,.simulator-card-details b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulator-card-details span{color:#939cad;font-size:9px}.simulator-card-details b{margin-top:2px;font-size:10px}.simulator-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px}.simulator-card-footer>div{display:flex;align-items:center;gap:7px;min-width:0;color:#7e899d;font-size:9px}.simulator-card-footer>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulator-app-state{border-radius:99px;padding:3px 7px;background:#f1f2f6;color:#778197;font-weight:700}.simulator-app-state.up{background:#eceaff;color:#5c52d8}.simulator-power-button{min-width:68px;border:1px solid #d7d3ff;border-radius:8px;background:#f7f6ff;color:var(--accent);padding:7px 11px;font-weight:700}.simulator-power-button.pause{border-color:#efd6c3;background:#fff9f4;color:#b66a31}.simulator-power-button:disabled{cursor:not-allowed;opacity:.5}.simulator-empty{grid-column:1/-1;min-height:130px;border:1px dashed var(--line);border-radius:13px;background:#fafbfc;display:grid;place-items:center;color:var(--muted)}
.simulator-manager-dialog{width:min(1120px,calc(100vw - 40px));max-height:min(830px,calc(100vh - 36px));padding:0;border:0;border-radius:16px;background:#f7f8fb;color:var(--ink);box-shadow:0 28px 90px #080b1455;overflow:hidden}.simulator-manager-dialog::backdrop{background:#11172b88;backdrop-filter:blur(2px)}.simulator-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 23px;background:#fff;border-bottom:1px solid var(--line)}.simulator-manager-head h2{margin:6px 0 2px;font-size:22px}.simulator-manager-head p{font-size:11px}.simulator-manager-head>.ghost{width:34px;height:34px;padding:0;font-size:20px}.simulator-manager-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);min-height:570px;max-height:calc(100vh - 150px)}.simulator-manager-list-section{min-width:0;padding:19px;border-right:1px solid var(--line);overflow:auto}.simulator-manager-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.simulator-manager-section-head>div{display:flex;flex-direction:column}.simulator-manager-section-head span{color:var(--muted);font-size:10px}.simulator-manager-list{display:grid;gap:8px}.simulator-manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.simulator-manager-row.selected{border-color:#aaa3f7;background:#f9f8ff}.simulator-manager-row-main{min-width:0}.simulator-manager-row-main>div{display:flex;align-items:center;gap:7px}.simulator-manager-row-main b,.simulator-manager-row-main code,.simulator-manager-row-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulator-manager-row-main b{font-size:11px}.simulator-manager-row-main code{margin-top:4px;color:#9ba4b5;font:9px var(--mono)}.simulator-manager-row-main small{margin-top:3px;color:#788398;font-size:9px}.simulator-manager-row-actions{display:flex;gap:6px}.simulator-manager-row-actions button{border:1px solid var(--line);border-radius:7px;background:#fff;padding:6px 8px;color:#637087;font-size:10px;font-weight:700}.simulator-manager-row-actions .delete{border-color:#f0d3d3;color:#c65353}.simulator-manager-row-actions button:disabled{cursor:not-allowed;opacity:.45}.simulator-editor{display:flex;flex-direction:column;gap:12px;padding:22px;background:#fff;overflow:auto}.simulator-editor h3{margin:5px 0 2px}.simulator-editor>div:first-child p{font-size:10px}.simulator-editor-mode{display:inline-flex;border-radius:99px;padding:3px 7px;background:#eceaff;color:var(--accent);font-size:9px;font-weight:700}.simulator-editor label{margin:0}.simulator-editor input,.simulator-editor select{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px 10px;color:var(--ink)}.simulator-editor select:disabled{background:#f3f4f7;color:#8a93a4}.simulator-editor-detail{padding:11px;border-radius:9px;background:#f5f4ff;color:#7068b7;font-size:10px;line-height:1.6}.simulator-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.simulator-card-actions{flex:0 0 auto}.simulator-power-button.latest{min-width:112px;background:var(--accent);border-color:var(--accent);color:#fff}
@media(max-width:1100px){.simulator-port-grid{grid-template-columns:1fr}.simulator-manager-body{grid-template-columns:1fr;overflow:auto}.simulator-manager-list-section{border-right:0;border-bottom:1px solid var(--line);overflow:visible}.simulator-editor{overflow:visible}}
@media(max-width:720px){.simulator-card-details{grid-template-columns:1fr}.simulator-card-footer{align-items:flex-start;flex-direction:column}.simulator-manager-dialog{width:calc(100vw - 16px)}.simulator-manager-row{grid-template-columns:1fr}.simulator-manager-row-actions{justify-content:flex-end}}
.simulator-card.occupied{border-color:#efc98e}.simulator-card.occupied .simulator-card-footer{background:#fffbf3}.simulator-occupation{color:#9b620d;font-weight:700}.simulator-power-button.force{border-color:#e5aaaa;background:#fff4f4;color:#b83d3d}.simulator-power-button.force:hover:not(:disabled){background:#ffe7e7}
.simulator-card-progress{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid #e8e5ff;background:#f8f7ff;color:#6257c8}.simulator-card-progress>i{width:14px;height:14px;flex:0 0 auto;border:2px solid #cbc6ff;border-top-color:var(--accent);border-radius:50%;animation:simulator-progress-spin .8s linear infinite}.simulator-card-progress>div{min-width:0}.simulator-card-progress b,.simulator-card-progress small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulator-card-progress b{font-size:10px}.simulator-card-progress small{margin-top:1px;color:#827aa8;font-size:9px}.simulator-card-progress.running{background:#effaf5;border-color:#d9f1e7;color:#17845f}.simulator-card-progress.running>i{border:0;background:#27b785;animation:none}.simulator-card-progress.failed{background:#fff5f5;border-color:#f5dddd;color:#bd4141}.simulator-card-progress.failed>i{border:0;background:#d95c5c;animation:none}@keyframes simulator-progress-spin{to{transform:rotate(360deg)}}
.source-identity-card{margin:18px 0 22px;padding:18px 20px;border:1px solid #dde3ee;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(30,41,59,.05)}
.source-identity-card.current{border-color:#a7e3ca;background:#f3fcf8}.source-identity-card.mismatch{border-color:#f0a4a4;background:#fff5f5}.source-identity-card.unverifiable{border-color:#f0cf8f;background:#fffaf0}.source-identity-card.unknown{border-color:#d9dfeb;background:#f8fafc}
.source-identity-loading{color:#7a8498;font-size:13px}.source-identity-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.source-identity-head>div{display:flex;align-items:baseline;gap:10px}.source-identity-head span,.source-identity-grid span{color:#7a8498;font-size:12px}.source-identity-head b{font-size:16px;color:#172033}.source-identity-status{padding:5px 9px;border-radius:999px;font-size:12px}.source-identity-status.current{color:#087a55;background:#dff7ed}.source-identity-status.mismatch{color:#b42318;background:#fee4e2}.source-identity-status.unverifiable{color:#9a5b08;background:#fff0ce}.source-identity-status.unknown{color:#667085;background:#e9edf3}
.source-identity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.source-identity-grid>div{display:flex;min-width:0;flex-direction:column;gap:5px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.72)}.source-identity-grid b,.source-identity-grid code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-identity-grid b{color:#1d2939;font-size:13px}.source-identity-grid code{color:#667085;font-size:11px}.source-identity-card>p{margin:12px 0 0;color:#596579;font-size:12px}
.simulator-card.source-mismatch{border-color:#ef9a9a;box-shadow:0 8px 26px rgba(180,35,24,.08)}.simulator-source{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 2px;padding:10px 12px;border-radius:12px;background:#f5f7fa}.simulator-source>div{display:flex;min-width:0;flex-direction:column;gap:3px}.simulator-source span,.simulator-source small{color:#7a8498;font-size:10px}.simulator-source b{overflow:hidden;color:#273244;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.simulator-source em{flex:none;padding:4px 7px;border-radius:999px;color:#667085;background:#e9edf3;font-size:10px;font-style:normal}.simulator-source.current{background:#effaf5}.simulator-source.current em{color:#087a55;background:#d8f3e8}.simulator-source.mismatch{background:#fff0f0}.simulator-source.mismatch em{color:#b42318;background:#ffdcd9}.simulator-source.unverifiable{background:#fff8e9}.simulator-source.unverifiable em{color:#9a5b08;background:#ffe9ba}
@media(max-width:760px){.source-identity-grid{grid-template-columns:1fr}.source-identity-head{align-items:flex-start}.source-identity-head>div{align-items:flex-start;flex-direction:column;gap:3px}}

/* Simulator takeover actions keep the safe path primary and make the override explicit. */
.simulator-source{margin:12px 14px 0;padding:11px 12px}
.simulator-card-footer{gap:14px;padding:14px}
.simulator-card-footer>div{gap:8px;font-size:10px}
.simulator-card-status{flex:1}
.simulator-app-state{flex:0 0 auto;padding:4px 8px}
.simulator-card-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}
.simulator-power-button{min-width:72px;min-height:38px;padding:8px 12px;white-space:nowrap}
.simulator-power-button:hover:not(:disabled){border-color:#b8b1ff;background:#efedff}
.simulator-power-button:focus-visible{outline:3px solid #6157e833;outline-offset:2px}
.simulator-power-button:disabled{opacity:.46}
.simulator-power-button.latest{min-width:132px}
.simulator-power-button.latest:hover:not(:disabled){border-color:#5147d4;background:#5147d4}
.simulator-power-button.force-reinstall{border-color:#e8b1b1;background:#fff;color:#b42318}
.simulator-power-button.force-reinstall:hover:not(:disabled){border-color:#d97d7d;background:#fff1f0}
.simulator-power-button.force-reinstall:focus-visible{outline-color:#e5575740}
.simulator-card.occupied .simulator-card-footer{background:#fffcf7}
.simulator-occupation{color:#8a570a}
.simulator-protection{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-top:1px solid #f2dfbd;border-bottom:1px solid #f2dfbd;background:#fff8ea;color:#7a4c08}
.simulator-protection>span{width:8px;height:8px;flex:0 0 auto;margin-top:5px;border-radius:50%;background:#d98a18;box-shadow:0 0 0 4px #d98a1818}
.simulator-protection>div{display:flex;min-width:0;flex-direction:column;gap:1px}
.simulator-protection b{font-size:10px}
.simulator-protection small{color:#94631b;font-size:9px;line-height:1.5}
@media(max-width:720px){.simulator-card-footer{align-items:stretch}.simulator-card-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.simulator-card-actions .simulator-power-button{width:100%}.simulator-card-actions .simulator-power-button:only-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.simulator-card-progress>i{animation:none}}
