/* SOP: section cards, rules, tables, live entry boxes */
/* ---------- cards ---------- */
.sop-g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:14px;align-items:start}
.sop-col{display:flex;flex-direction:column;gap:14px;min-width:0}
.sop-c{padding:14px 16px;border-radius:14px;background:#fff;border:1px solid color-mix(in srgb,var(--g) 18%,#dfe6f1);box-shadow:0 2px 6px rgba(15,40,90,.05);min-width:0}
.sop-c.wide{grid-column:1/-1}
.sop-ct{display:flex;align-items:baseline;gap:8px;margin-bottom:10px;font-size:12.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--g)}
.sop-ct span{font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--mut)}
.sop-r{margin:0;padding:0;list-style:none}
.sop-r li{position:relative;margin:0 0 10px;padding-left:22px;font-size:15px;line-height:1.45}
.sop-r li:last-child{margin-bottom:0}
.sop-r li:before{content:"";position:absolute;left:2px;top:.52em;width:9px;height:9px;border-radius:50%;background:var(--g)}
.sop-r b{color:var(--navy)}
.sop-c code,.sop-note code{padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--g) 10%,#fff);border:1px solid color-mix(in srgb,var(--g) 18%,#fff);font:700 .93em Consolas,"Courier New",monospace;color:var(--ink);white-space:nowrap}
.sop-x{display:flex;flex-direction:column;gap:10px}
.sop-x .xr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.sop-x code{padding:3px 9px;font-size:14.5px;white-space:normal;word-break:break-word}
.sop-x span{flex:1 1 150px;font-size:14px;line-height:1.35;color:#2a3d63}
.sop-note{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-radius:12px;background:#fff8e6;border:1px solid #f5d48a;color:#6b4204;font-size:14px;line-height:1.4;font-weight:600}
.sop-note .ic{width:20px;height:20px;margin-top:1px;color:#c2640a}
.sop-note.lk{background:#eef4ff;border-color:#c5d8fb;color:#17408f}
.sop-note.lk .ic{color:var(--acc)}
.sop-chs{display:flex;flex-wrap:wrap;gap:8px}
.sop-chs span{display:inline-flex;align-items:center;gap:7px;padding:4px 11px 4px 4px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13.5px;color:#2a3d63}
.sop-chs b{display:inline-grid;place-items:center;min-width:30px;height:24px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--g) 13%,#fff);color:var(--ink);font:800 13px Consolas,"Courier New",monospace}
.sop-tw{overflow-x:auto}
.sop-t{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.sop-t th{padding:8px 12px;text-align:left;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--g);background:color-mix(in srgb,var(--g) 9%,#fff);border-bottom:1px solid var(--line)}
.sop-t th:first-child{border-top-left-radius:8px}.sop-t th:last-child{border-top-right-radius:8px}
.sop-t td{padding:9px 12px;border-bottom:1px solid #e8eef6;vertical-align:top;line-height:1.4}
.sop-t td:first-child{width:21%;font-weight:800;color:var(--navy)}
.sop-t tr:last-child td{border-bottom:0}

/* ---------- synced entry boxes ---------- */
.sop-ef{display:flex;flex-direction:column;gap:12px}
.sop-ef.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sf{display:flex;flex-direction:column;gap:3px;min-width:0}
.sf label{font-size:12.5px;font-weight:800;letter-spacing:.03em;color:var(--g)}
.sfi{display:flex;align-items:center;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden;transition:border-color .12s,box-shadow .12s}
.sfi:focus-within{border-color:var(--g);box-shadow:0 0 0 3px color-mix(in srgb,var(--g) 22%,transparent)}
.sfi input,.sfi textarea{flex:1;min-width:0;height:42px;border:0;outline:0;background:transparent;padding:0 12px;font:700 18px var(--ff);color:var(--ink)}
.sfi textarea{height:auto;padding:8px 12px;resize:vertical;font-size:16px}
.sfi input::placeholder{color:#b4bfcf;font-weight:400}
.sfu{align-self:stretch;display:flex;align-items:center;padding:0 12px;background:#f1f5fa;border-left:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--mut)}
.sfi .now{margin:0 8px 0 0}
.sfm{min-height:17px;font-size:12.5px;font-weight:700;line-height:1.3;color:var(--mut)}
.sf[data-s=ok] .sfi{border-color:#7ccba4}.sf[data-s=ok] .sfm{color:var(--ok)}
.sf[data-s=warn] .sfi{border-color:#f2b25c;background:#fffaf0}.sf[data-s=warn] .sfm{color:#b45309}
.sf[data-s=bad] .sfi{border-color:var(--bad);background:#fff1f3}.sf[data-s=bad] .sfm{color:var(--bad)}
.sf[data-s=off] .sfi{background:repeating-linear-gradient(135deg,#eef1f6 0 7px,#e2e7ef 7px 14px);cursor:not-allowed}
.sf[data-s=off] .sfi input{cursor:not-allowed}
.sop-go{display:inline-flex;align-items:center;gap:8px;margin-top:12px;height:38px;padding:0 16px;border:1px solid var(--acc);border-radius:9px;background:#eef4ff;color:var(--acc);font:800 14px var(--ff);cursor:pointer}
.sop-go .ic{width:18px;height:18px}
.sop-go:hover{background:var(--acc);color:#fff}
.sop-seg{display:flex;gap:8px}
.sop-seg button{flex:1;height:46px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#1d3a6e;font:800 17px var(--ff);cursor:pointer}
.sop-seg button.on{color:#fff;border-color:#1560ec;background:linear-gradient(180deg,#2f7bff,#1560ec);box-shadow:0 3px 8px rgba(29,107,243,.4)}
.sop-seg button.on[data-ty=SPECI]{border-color:#d97706;background:linear-gradient(180deg,#f59e0b,#d97706);box-shadow:0 3px 8px rgba(217,119,6,.4)}
