/* Res Opera Tools - utm. Scoped to .ro-t-utm so several tools can share a page. */
.ro-t-utm .ro-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;background:var(--ro-card);border:1px solid var(--ro-line);border-radius:14px;padding:6px}
.ro-t-utm .ro-tab{flex:1 1 auto;border:0;background:transparent;padding:10px 16px;border-radius:var(--ro-radius-s);font:inherit;font-weight:600;color:var(--ro-muted);cursor:pointer}
.ro-t-utm .ro-tab[aria-selected="true"]{background:var(--ro-primary);color:#fff}
.ro-t-utm .ro-tab:focus-visible,.ro-t-utm .ro-btn:focus-visible,.ro-t-utm .ro-chip:focus-visible,.ro-t-utm input:focus-visible,.ro-t-utm select:focus-visible{outline:3px solid #93c5fd;outline-offset:1px}
.ro-t-utm .ro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:16px;align-items:start}
.ro-t-utm .ro-card{background:var(--ro-card);border:1px solid var(--ro-line);border-radius:var(--ro-radius);padding:20px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.ro-t-utm .ro-card h2{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--ro-ink)}
.ro-t-utm .ro-sub{margin:0 0 14px;color:var(--ro-muted);font-size:14px}
.ro-t-utm .ro-field{margin-bottom:12px}
.ro-t-utm .ro-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ro-t-utm label.ro-l{display:block;font-size:13px;font-weight:700;margin-bottom:5px;color:var(--ro-ink)}
.ro-t-utm .ro-req{color:var(--ro-bad)}
.ro-t-utm .ro-hint{font-weight:400;color:var(--ro-muted)}
.ro-t-utm input[type=text],.ro-t-utm select{width:100%;padding:10px 12px;border:1.5px solid var(--ro-line);border-radius:var(--ro-radius-s);font:inherit;background:var(--ro-field);color:var(--ro-ink)}
.ro-t-utm input[type=text]:focus,.ro-t-utm select:focus{border-color:var(--ro-primary)}
.ro-t-utm .ro-chips{display:flex;flex-wrap:wrap;gap:6px}
.ro-t-utm .ro-chip{border:1.5px solid var(--ro-line);background:var(--ro-bg);color:var(--ro-ink);padding:6px 11px;border-radius:999px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.ro-t-utm .ro-chip:hover{border-color:var(--ro-primary)}
.ro-t-utm .ro-chip.on{background:var(--ro-primary);border-color:var(--ro-primary);color:#fff}
.ro-t-utm .ro-opts{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;margin:6px 0 14px;font-size:14px}
.ro-t-utm .ro-opts label{display:flex;gap:7px;align-items:center;cursor:pointer}
.ro-t-utm .ro-opts select{width:auto;padding:6px 10px}
.ro-t-utm .ro-actions{display:flex;flex-wrap:wrap;gap:8px}
.ro-t-utm .ro-btn{border:1.5px solid var(--ro-primary);background:var(--ro-primary);color:#fff;padding:10px 16px;border-radius:var(--ro-radius-s);font:inherit;font-weight:700;cursor:pointer}
.ro-t-utm .ro-btn:hover:not(:disabled){background:var(--ro-primary-dark)}
.ro-t-utm .ro-btn.ro-ghost{background:var(--ro-card);color:var(--ro-link)}
.ro-t-utm .ro-btn.ro-ghost:hover:not(:disabled){background:var(--ro-bg)}
.ro-t-utm .ro-btn.ro-accent{background:var(--ro-accent);border-color:var(--ro-accent);color:#1f1300}
.ro-t-utm .ro-btn.ro-sm{padding:6px 11px;font-size:13px;border-radius:8px}
.ro-t-utm .ro-btn:disabled{opacity:.45;cursor:not-allowed}
.ro-t-utm .ro-out{background:#0b1b33;color:#e2e8f0;border-radius:12px;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;word-break:break-all;min-height:64px;margin:10px 0 12px}
.ro-t-utm .ro-out.ro-empty{color:#94a3b8;font-family:inherit;font-style:italic}
.ro-t-utm .ro-status{font-size:14px;font-weight:600;padding:9px 12px;border-radius:var(--ro-radius-s);background:var(--ro-bg);color:var(--ro-muted)}
.ro-t-utm .ro-status.ok{background:var(--ro-ok-bg);color:var(--ro-ok)}
.ro-t-utm .ro-status.bad{background:var(--ro-bad-bg);color:var(--ro-bad)}
.ro-t-utm .ro-params{margin:14px 0 0;display:grid;gap:6px}
.ro-t-utm .ro-p{display:flex;gap:10px;font-size:13.5px;border-bottom:1px dashed var(--ro-line);padding-bottom:6px}
.ro-t-utm .ro-p b{flex:0 0 118px;color:var(--ro-link);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px}
.ro-t-utm .ro-p span{word-break:break-all}
.ro-t-utm .ro-notes{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.ro-t-utm .ro-notes li{font-size:13px;padding:8px 10px;border-radius:8px;background:var(--ro-warn-bg);color:var(--ro-warn)}
.ro-t-utm .ro-notes li.info{background:var(--ro-soft);color:var(--ro-ink-soft)}
.ro-t-utm .ro-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13.5px}
.ro-t-utm .ro-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ro-muted);padding:8px;border-bottom:2px solid var(--ro-line)}
.ro-t-utm .ro-table td{padding:9px 8px;border-bottom:1px solid var(--ro-line);vertical-align:top}
.ro-t-utm .ro-table td.u{word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px}
.ro-t-utm .ro-empty-msg{padding:18px;text-align:center;color:var(--ro-muted);background:var(--ro-bg);border-radius:12px;margin-top:12px}
@media (max-width:820px){.ro-t-utm .ro-grid{grid-template-columns:1fr}.ro-t-utm .ro-row{grid-template-columns:1fr}.ro-t-utm .ro-p{flex-direction:column;gap:2px}.ro-t-utm .ro-p b{flex:none}}
