#software-operations-overview { background:var(--surface); border:1px solid var(--line); padding:24px; }
#software-operations-overview > h2 { margin:0 0 6px; color:var(--text); font-size:var(--text-title); }
#software-operations-overview > p { margin:0 0 8px; color:var(--muted); }
#software-operations-overview > small { display:block; color:var(--muted); margin-bottom:20px; }
#software-operations-overview details { --op-accent:var(--muted); border:1px solid var(--line); border-left:5px solid var(--op-accent); border-radius:14px; background:var(--surface); margin:14px 0; overflow:hidden; }
#software-operations-overview details[data-tone=running] { --op-accent:var(--teal); }
#software-operations-overview details[data-tone=ready] { --op-accent:var(--success); }
#software-operations-overview details[data-tone=attention] { --op-accent:var(--amber); }
#software-operations-overview summary { display:block; padding:20px; cursor:pointer; list-style:none; }
#software-operations-overview summary::-webkit-details-marker { display:none; }
#software-operations-overview summary:focus-visible { outline:3px solid var(--focus); outline-offset:-3px; }
#software-operations-overview .op-heading { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:12px; }
#software-operations-overview .op-name { color:var(--text); font-size:17px; font-weight:700; overflow-wrap:anywhere; flex:1 1 320px; }
#software-operations-overview .op-badge { display:inline-flex; align-items:center; gap:8px; background:var(--raised); color:var(--text); border:1px solid currentColor; border-radius:24px; padding:6px 12px; font-size:13px; font-weight:700; }
#software-operations-overview .op-badge::before { content:''; width:8px; height:8px; border-radius:50%; background:currentColor; flex:none; }
#software-operations-overview .op-meta { display:block; color:var(--muted); margin:8px 0 20px; font-size:13px; }
#software-operations-overview .op-progress-label { display:block; font-size:14px; font-weight:600; color:var(--text); margin-bottom:8px; }
#software-operations-overview progress { display:block; appearance:none; width:100%; height:10px; border:0; border-radius:8px; overflow:hidden; background:var(--raised); accent-color:var(--op-accent); }
#software-operations-overview progress::-webkit-progress-bar { background:var(--raised); border-radius:8px; }
#software-operations-overview progress::-webkit-progress-value { background:var(--surface); border-radius:8px; }
#software-operations-overview progress::-moz-progress-bar { background:var(--surface); }
#software-operations-overview .op-counters { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0 18px; }
#software-operations-overview .op-counters > span { background:var(--raised); border-radius:7px; padding:8px 12px; font-size:14px; color:var(--text); font-weight:600; }
#software-operations-overview .op-counters [data-op=done] { background:var(--success-soft); color:var(--success); }
#software-operations-overview .op-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid var(--line); padding-top:14px; font-size:13px; }
#software-operations-overview .op-hint { color:var(--muted); }
#software-operations-overview .op-expand { color:var(--link); font-weight:700; }
#software-operations-overview .op-campaign-controls { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
#software-operations-overview .op-campaign-controls button { min-height:40px; padding:9px 14px; background:var(--surface); color:var(--danger); border:1px solid var(--line); border-radius:8px; font-weight:600; cursor:pointer; }
#software-operations-overview .op-campaign-controls button:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
#software-operations-overview .op-campaign-controls button:disabled { opacity:.6; cursor:wait; }
#software-operations-overview .op-next-actions { display:grid; gap:10px; margin-top:14px; }
#software-operations-overview .op-next-action { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px; border:1px solid var(--line); border-radius:11px; background:var(--warning-soft); }
#software-operations-overview .op-next-copy { display:grid; gap:3px; color:var(--amber); }
#software-operations-overview .op-next-copy small { color:var(--amber); line-height:1.45; }
#software-operations-overview .op-next-action button { flex:none; min-height:42px; padding:10px 16px; border:0; border-radius:9px; background:var(--surface); color:var(--on-accent); font-weight:700; cursor:pointer; }
#software-operations-overview .op-next-action button:disabled { opacity:.6; cursor:wait; }
#software-operations-overview details[open] > summary .op-next-actions { display:none; }
#software-operations-overview details[open] .op-expand { color:var(--muted); }
#software-operations-overview .software-item { margin:0 20px; padding:16px 0; border-top:1px solid var(--line); }
#software-operations-overview .software-item > span { color:var(--link); font-weight:600; }
#software-operations-overview .op-schedule { display:block; margin:14px 0; padding:14px; background:var(--surface); border:1px solid var(--line); border-radius:10px; color:var(--text); font-size:17px; font-weight:700; line-height:1.6; overflow-wrap:anywhere; }
#software-operations-overview .op-lot-schedule { color:var(--text); line-height:1.6; flex-basis:100%; }
#software-operations-overview [hidden] { display:none!important; }
#software-operations-overview .op-stage-detail { display:block; flex-basis:100%; margin:12px 0; color:var(--text); font-size:14px; }
#software-operations-overview .op-stage-counters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
#software-operations-overview .op-stage-counters > span { padding:8px 10px; background:var(--raised); border-radius:8px; font-weight:600; }
#software-operations-overview [data-stage=executing] { background:var(--accent-soft); color:var(--link); }
#software-operations-overview [data-stage=done] { background:var(--success-soft); color:var(--success); }
#software-operations-overview [data-stage=attention] { background:var(--warning-soft); color:var(--amber); }
#software-operations-overview .op-live-target { display:block; border-left:3px solid var(--line); padding:8px 12px; margin:6px 0; line-height:1.5; overflow-wrap:anywhere; }
#software-operations-overview .op-review-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
#software-operations-overview .op-review-actions button { min-height:38px; }
#software-operations-overview .op-dismiss-actions { display:flex; justify-content:flex-end; margin-top:14px; }
#software-operations-overview .op-dismiss-actions button { min-height:40px; padding:9px 14px; border-radius:8px; font-weight:700; cursor:pointer; }
#software-operations-overview .op-dismiss-actions button:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
#software-operations-overview .op-dismiss-actions button:disabled { opacity:.6; cursor:wait; }
@media(max-width:600px) { #software-operations-overview { padding:14px; } #software-operations-overview summary { padding:14px; } #software-operations-overview .op-heading { flex-direction:column; } #software-operations-overview .op-name { flex:auto; font-size:16px; } #software-operations-overview .op-counters { gap:6px; } #software-operations-overview .op-next-action { align-items:stretch; flex-direction:column; } #software-operations-overview .op-next-action button { width:100%; } }
