.product-workspace-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.product-workspace-card{display:grid;gap:12px;align-content:start}
.product-workspace-card h2{margin:0;font-size:20px}
.product-workspace-card .button{justify-self:start}
.product-step-nav{display:flex;gap:10px;overflow:auto;margin:0 0 22px;padding:3px 2px 8px}
.product-step-nav a{flex:1;min-width:155px;padding:16px 13px;border:1px solid #d7e2e8;border-radius:12px;background:#fff;color:#314657;text-align:center;text-decoration:none;font-size:13px;font-weight:750}
.product-step-nav a.active,.product-step-nav a:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.product-two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:18px;align-items:start}
.product-two-col .panel{min-width:0}
.product-two-col textarea,.product-edit-grid textarea{width:100%;border:1px solid #cfd9df;border-radius:9px;padding:12px 13px;font:inherit;background:#fbfcfd;color:#17222d;resize:vertical}
.product-list{display:grid;gap:8px;max-height:620px;overflow:auto}
.product-list-item{display:grid;gap:5px;padding:13px 14px;border:1px solid #e1e8ed;border-radius:10px;text-decoration:none;color:#263642;background:#fff;overflow-wrap:anywhere}
.product-list-item:hover,.product-list-item:focus{border-color:var(--brand);background:#f6fafb}
.product-list-item small{color:#71808c}
.product-search{display:flex;align-items:end;gap:10px;margin:12px 0 16px}.product-search label{flex:1}
.product-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;font-size:12px;color:#687684}
.product-detail{margin-top:20px}
.product-detail code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}
.product-issues{margin:14px 0;padding:14px 17px;border:1px solid #efd592;background:#fff8e6;border-radius:10px;font-size:12px}
.product-issues p{margin:7px 0 0}
.product-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:18px}
.product-edit-grid label:has(textarea){grid-column:1/-1}
.product-edit-grid button{justify-self:start}
@media(max-width:900px){.product-two-col{grid-template-columns:1fr}.product-edit-grid{grid-template-columns:1fr}}
.mapping-row-choices { display: grid; gap: .6rem; }
.mapping-row-choice { display: grid; grid-template-columns: minmax(10rem, 2fr) minmax(8rem, 1fr) minmax(8rem, 1fr) auto; align-items: end; gap: .5rem; padding: .65rem; border: 1px solid var(--line, #d4dbe1); border-radius: .7rem; }
.mapping-row-choice > span { overflow-wrap: anywhere; }
@media (max-width: 720px) { .mapping-row-choice { grid-template-columns: 1fr; } }
