/* Universal Tool Studio — professional workbench layer */
.ucs-pro-workspace { align-items: start; }
.ucs-pro-card { min-width: 0; box-sizing: border-box; padding: clamp(16px,2.4vw,22px); border: 1px solid var(--ucs-line,#e2e8f0); border-radius: 17px; background: linear-gradient(145deg,#f8fafc,#fff); }
.ucs-pro-workspace > .ucs-pro-card { margin: 0; }
.ucs-pro-card > .ucs-panel-title:first-child { margin-top: 0; }
.ucs-pro-actions { margin: 4px 0 0; }
.ucs-pro-result { min-width: 0; margin-top: 0; }
.ucs-pro-result-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ucs-pro-result-status { color:#64748b; font-size:12px; font-weight:750; text-align:right; }
.ucs-pro-badge { display:inline-flex; align-items:center; min-height:26px; padding:4px 9px; border:1px solid #cbd5e1; border-radius:999px; background:#fff; color:#475569; font-size:11px; font-weight:850; line-height:1.15; }
.ucs-pro-badge.is-ok,.ucs-pro-badge.is-local { border-color:#bbf7d0; background:#f0fdf4; color:#166534; }
.ucs-pro-badge.is-danger { border-color:#fecdd3; background:#fff1f2; color:#be123c; }
.ucs-pro-local-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px; color:#64748b; font-size:12px; }
.ucs-pro-stats { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.ucs-pro-stats > span { display:inline-flex; align-items:baseline; gap:5px; padding:7px 9px; border:1px solid #e2e8f0; border-radius:10px; background:#fff; color:#64748b; font-size:11px; }
.ucs-pro-stats > span b { color:var(--ucs-ink,#0f172a); font-size:12px; }
.ucs-pro-details { margin:14px 0; padding:0; border:1px solid #dbe4f0; border-radius:13px; background:#fff; }
.ucs-pro-details > summary { padding:12px 14px; cursor:pointer; color:var(--ucs-brand-dark,#3730a3); font-size:13px; font-weight:850; }
.ucs-pro-details[open] > summary { border-bottom:1px solid #e2e8f0; }
.ucs-pro-details > :not(summary) { margin-left:14px; margin-right:14px; }
.ucs-pro-details > :last-child { margin-bottom:14px; }
.ucs-pro-check-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:8px; margin-bottom:14px; }
.ucs-pro-check-grid .ucs-check { margin:0; }
.ucs-pro-warnings { display:grid; gap:8px; margin-bottom:14px; }
.ucs-pro-warning { padding:10px 12px; border:1px solid #dbeafe; border-radius:11px; background:#eff6ff; color:#1e3a8a; font-size:12px; font-weight:650; }
.ucs-pro-warning.is-warn { border-color:#fde68a; background:#fffbeb; color:#92400e; }
.ucs-pro-warning.is-danger { border-color:#fecdd3; background:#fff1f2; color:#be123c; }
.ucs-pro-inline-row,.ucs-pro-kv-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.45fr) auto; gap:10px; align-items:end; margin-bottom:9px; }
.ucs-pro-inline-row > .ucs-field,.ucs-pro-kv-row > .ucs-field { margin:0; }
.ucs-pro-inline-row > .ucs-button,.ucs-pro-kv-row > .ucs-button { min-height:44px; padding:8px 11px; font-size:11px; }
.ucs-pro-kv-row.is-readonly { grid-template-columns:minmax(80px,.5fr) minmax(120px,1fr); align-items:center; padding:9px 11px; border-bottom:1px solid #eef2f7; }
.ucs-pro-kv-table { overflow:auto; margin:10px 0; border:1px solid #e2e8f0; border-radius:12px; background:#fff; }
.ucs-pro-kv-table > .ucs-button { margin:10px; }
.ucs-pro-test-result { min-height:44px; padding:12px; border:1px dashed #cbd5e1; border-radius:12px; background:#fff; }
.ucs-pro-test-result p { margin:8px 0 0; color:#475569; font-size:12px; }
.ucs-pro-pre { max-height:520px; overflow:auto; padding:14px; border:1px solid #e2e8f0; border-radius:12px; background:#0f172a; color:#e2e8f0; white-space:pre-wrap; font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.ucs-pro-formula { margin-top:12px; padding:12px; border:1px dashed #cbd5e1; border-radius:12px; background:#f8fafc; color:#475569; font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }

/* JSON */
.ucs-json-tree { max-height:620px; overflow:auto; padding:12px; border:1px solid #e2e8f0; border-radius:12px; background:#fff; font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.ucs-json-tree-node { margin-left:13px; }
.ucs-json-tree > .ucs-json-tree-node { margin-left:0; }
.ucs-json-branch > summary { cursor:pointer; color:#334155; font-weight:700; }
.ucs-json-key { color:var(--ucs-brand-dark,#3730a3); font-weight:800; }
.ucs-json-tree code { color:#0f766e; }
.ucs-pro-workspace .ucs-button-secondary.is-active { border-color:var(--ucs-brand,#4f46e5); background:#eef2ff; color:var(--ucs-brand-dark,#3730a3)!important; }

/* Robots */
.ucs-robots-groups,.ucs-robots-rules,.ucs-robots-sitemaps,.ucs-pro-repeat { display:grid; gap:10px; }
.ucs-robots-group,.ucs-pro-repeat-card { padding:13px; border:1px solid #dbe4f0; border-radius:13px; background:#fff; }
.ucs-pro-row-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.ucs-pro-row-head > .ucs-button { min-height:34px; padding:6px 9px; font-size:10.5px; }
.ucs-robots-rule { display:grid; grid-template-columns:minmax(120px,.55fr) minmax(160px,1.45fr) auto; gap:8px; align-items:end; margin:8px 0; }
.ucs-robots-rule > .ucs-field { margin:0; }
.ucs-robots-rule > .ucs-button { min-width:42px; min-height:44px; padding:7px; }
.ucs-pro-robots .ucs-pro-test-result .ucs-pro-badge { margin-right:8px; }

/* Meta previews */
.ucs-pro-serp { padding:16px; border:1px solid #e2e8f0; border-radius:14px; background:#fff; }
.ucs-pro-serp .ucs-serp-url { color:#202124; font-size:12px; }
.ucs-pro-serp .ucs-serp-title { margin-top:4px; color:#1a0dab; font-size:20px; line-height:1.25; }
.ucs-pro-serp .ucs-serp-description { margin-top:5px; color:#4d5156; font-size:13px; line-height:1.45; }
.ucs-pro-social { overflow:hidden; margin-top:14px; border:1px solid #dbe4f0; border-radius:14px; background:#fff; }
.ucs-pro-social .ucs-social-image { min-height:180px; background:#e2e8f0 center/cover no-repeat; }
.ucs-pro-social .ucs-social-body { display:grid; gap:4px; padding:12px 14px; }
.ucs-pro-social small { color:#64748b; text-transform:uppercase; }
.ucs-pro-social strong { color:#0f172a; font-size:15px; }
.ucs-pro-social span { color:#475569; font-size:12px; }

/* Schema */
.ucs-schema-graph-list { display:grid; gap:7px; margin-bottom:14px; }
.ucs-schema-graph-list .ucs-pro-row-head { margin:0; padding:8px 10px; border:1px solid #e2e8f0; border-radius:10px; background:#fff; }

/* Regex */
.ucs-pro-regex-highlight { min-height:145px; max-height:310px; overflow:auto; padding:14px; border:1px solid #dbe4f0; border-radius:12px; background:#fff; white-space:pre-wrap; overflow-wrap:anywhere; font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.ucs-pro-regex-highlight mark { padding:1px 2px; border-radius:3px; background:#fde68a; color:#78350f; }

/* Slug / generic preview list */
.ucs-pro-list { display:grid; gap:8px; }
.ucs-pro-preview-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:10px; align-items:center; padding:9px 10px; border:1px solid #e2e8f0; border-radius:10px; background:#fff; }
.ucs-pro-preview-row code { min-width:0; overflow:auto; color:#334155; white-space:nowrap; }
.ucs-pro-preview-row > .ucs-button { min-height:34px; padding:6px 9px; font-size:10.5px; }

/* Contrast */
.ucs-pro-contrast-preview { min-height:120px; display:flex; align-items:center; justify-content:center; padding:24px; border:1px solid #e2e8f0; border-radius:14px; text-align:center; transition:background-color .12s,color .12s; }
.ucs-pro-pass-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:12px 0; }
.ucs-pro-pass-card { display:grid; gap:3px; padding:10px; border:1px solid #fecdd3; border-radius:11px; background:#fff1f2; color:#9f1239; }
.ucs-pro-pass-card.is-pass { border-color:#bbf7d0; background:#f0fdf4; color:#166534; }
.ucs-pro-pass-card span { font-size:11px; }

/* Gradient + color */
.ucs-pro-gradient-preview { min-height:260px; border-radius:16px; box-shadow:inset 0 0 0 1px rgba(15,23,42,.08); }
.ucs-pro-color-preview { min-height:105px; margin-bottom:14px; border:1px solid #dbe4f0; border-radius:14px; background:#4f46e5; }

/* Unit */
.ucs-pro-unit-table { overflow:hidden; border:1px solid #e2e8f0; border-radius:12px; background:#fff; }
.ucs-pro-unit-row { display:grid; grid-template-columns:minmax(130px,1fr) minmax(100px,1fr) auto; gap:9px; align-items:center; padding:9px 11px; border-bottom:1px solid #eef2f7; }
.ucs-pro-unit-row:last-child { border-bottom:0; }
.ucs-pro-unit-row span { color:#475569; font-size:12px; font-weight:750; }
.ucs-pro-unit-row code { overflow:auto; color:#0f172a; font-weight:800; white-space:nowrap; }
.ucs-pro-unit-row .ucs-button { min-height:32px; padding:5px 8px; font-size:10px; }

/* BMI + amortization */
.ucs-bmi-scale { position:relative; height:28px; margin:16px 0 4px; border-radius:999px; background:linear-gradient(90deg,#60a5fa 0 28%,#4ade80 28% 50%,#facc15 50% 66%,#fb7185 66% 100%); }
.ucs-bmi-marker { position:absolute; top:-5px; width:4px; height:38px; border-radius:4px; background:#0f172a; box-shadow:0 0 0 2px #fff; transform:translateX(-2px); }
.ucs-amortization-panel { margin-top:14px; overflow:auto; }
.ucs-amortization-panel > .ucs-button { margin-bottom:10px; }
.ucs-amortization-table { min-width:720px; width:100%; }

@media (min-width:900px){
  .ucs-pro-workspace { grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); }
  .ucs-pro-meta,.ucs-pro-robots,.ucs-pro-schema,.ucs-pro-loan { grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); }
  .ucs-pro-workspace > .ucs-pro-card:nth-child(2) { position:sticky; top:24px; }
}
@media (max-width:760px){
  .ucs-pro-inline-row,.ucs-pro-kv-row,.ucs-robots-rule { grid-template-columns:1fr; }
  .ucs-pro-inline-row > .ucs-button,.ucs-pro-kv-row > .ucs-button,.ucs-robots-rule > .ucs-button { width:100%; }
  .ucs-pro-pass-grid { grid-template-columns:1fr; }
  .ucs-pro-preview-row { grid-template-columns:auto minmax(0,1fr); }
  .ucs-pro-preview-row > .ucs-button,.ucs-pro-preview-row > .ucs-pro-badge { grid-column:2; }
}
