.opc-panel{--opc-ok:var(--color-success);--opc-warn:var(--color-warning);--opc-error:var(--color-danger);--opc-muted:var(--color-text-muted)}.opc-ip-panel{gap:8px;display:grid}.opc-ip-panel__row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.opc-ip-panel__value{font-family:var(--wc-font-mono);word-break:break-all;font-size:20px;font-weight:600}.opc-ip-panel__note{color:var(--color-text-muted);margin:0;font-size:13px}.opc-inline-link{appearance:none;font:inherit;font-size:inherit;color:var(--color-link);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.opc-ip-panel__cgnat{border-radius:var(--wc-radius-sm);background:var(--color-surface-alt);border:1px solid var(--color-border);color:var(--color-text-secondary);margin:0;padding:10px 12px;font-size:13px}.opc-ip-panel__cgnat[hidden]{display:none}.opc-mode-toggle{border:1px solid var(--color-border);border-radius:var(--wc-radius-sm);width:fit-content;margin-bottom:20px;display:inline-flex;overflow:hidden}.opc-mode-toggle__btn{appearance:none;border:none;border-right:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;padding:8px 18px;font-size:13px;font-weight:600}.opc-mode-toggle__btn:last-child{border-right:none}.opc-mode-toggle__btn:hover{background:var(--color-surface-alt)}.opc-mode-toggle__btn[aria-pressed=true]{background:var(--ink);color:var(--bg)}[data-opc-manual][hidden],[data-opc-scan][hidden]{display:none}.opc-manual-form{gap:14px;max-width:420px;display:grid}.opc-chips{gap:8px;display:grid}.opc-chips__row{flex-wrap:wrap;gap:8px;display:flex}.opc-chip{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;font-size:12px;font-weight:600;font-family:var(--wc-font-mono);padding:5px 12px}.opc-chip:hover{background:var(--color-surface-alt);border-color:var(--color-border-strong)}.opc-manual-form__validation{color:var(--opc-error);margin:0;font-size:13px;font-weight:650}.opc-manual-form__validation:empty{display:none}.opc-scan-disclaimer{margin:0 0 16px}.opc-tiers{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:4px;display:grid}.opc-tier-btn{appearance:none;border:1px solid var(--color-border);border-radius:var(--wc-radius-md);background:var(--color-surface);color:var(--color-text);text-align:left;cursor:pointer;font:inherit;gap:4px;padding:14px 16px;display:grid}.opc-tier-btn:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-surface-alt)}.opc-tier-btn:disabled{opacity:.6;cursor:not-allowed}.opc-tier-btn__name{font-size:15px;font-weight:600}.opc-tier-btn__meta{color:var(--color-text-muted);font-size:12px}.opc-progress{gap:6px;margin:12px 0 0;display:grid}.opc-progress[hidden]{display:none}.opc-progress-track{border-radius:var(--radius);background:var(--color-border);height:8px;position:relative;overflow:hidden}.opc-progress-fill{border-radius:var(--radius);background:var(--color-primary);width:0%;height:100%;transition:width .3s;position:absolute;top:0;left:0}.opc-progress-meta{color:var(--color-text-muted);font-size:.82rem}.opc-results{margin-top:24px}.opc-results[hidden]{display:none}.opc-results__title{margin:0 0 6px;font-size:18px}.opc-results__summary,.opc-results__empty{color:var(--color-text-secondary);margin:0 0 14px;font-size:14px}.opc-results__empty[hidden],[data-opc-open-table-wrap][hidden]{display:none}.opc-results__other{margin-top:14px}.opc-results__table-wrap{overflow-x:auto}.opc-results__table{border-collapse:collapse;width:100%;font-size:14px}.opc-results__table th,.opc-results__table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:8px 12px}.opc-results__table tr:last-child td{border-bottom:none}.opc-results__table th{color:var(--color-text-muted);background:var(--color-surface-alt);font-size:12px}.opc-results__port{font-family:var(--wc-font-mono);white-space:nowrap;font-weight:600}.opc-results__message{color:var(--color-text-secondary);max-width:480px}
