.pn-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;border-bottom:1px solid #dbe3eb;padding-bottom:8px}
.pn-tabs button,.pn-button{font:inherit;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:7px;padding:9px 12px;cursor:pointer}
.pn-tabs button[aria-selected=true]{background:#e8f0ff;border-color:#2563eb;color:#1d4ed8;font-weight:600}
.pn-tabs button:focus-visible,.pn-button:focus-visible,.pn-icon:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.pn-section{display:grid;gap:12px;min-width:0}.pn-section[hidden],.pn-panel[hidden],.pn-tabs[hidden]{display:none!important}
.pn-section label{display:grid;gap:6px;font-size:13px}.pn-general{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pn-section .pn-increase{color:#166534;font-weight:700}.pn-section .pn-decrease{color:#991b1b;font-weight:700}
.pn-policy-editor td:first-child{overflow-wrap:anywhere;min-width:150px}
@media(max-width:600px){.pn-policy-editor thead{display:none}.pn-policy-editor tbody{display:block}.pn-policy-editor tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #e2e8f0;padding:8px 0}.pn-policy-editor td{display:block;border:0;min-width:0}.pn-policy-editor td:first-child{grid-column:1/-1}.pn-policy-editor td[data-label]::before{content:attr(data-label);display:block;margin-bottom:5px;color:#52637a}.pn-policy-editor input,.pn-policy-editor select,.pn-policy-editor button{min-height:44px}.pn-policy-editor td:last-child{align-self:end}}
.pn-section input:not([type=checkbox]),.pn-section select,.pn-section textarea{box-sizing:border-box;font:inherit;border:1px solid #cbd5e1;border-radius:6px;padding:9px;max-width:100%;background:white;color:#182b44}
.pn-section textarea{width:100%;min-height:150px;resize:vertical}.pn-section input[type=number]{width:135px}
.pn-section input[type=search]{width:100%}.pn-help{font-size:13px;color:#52637a;line-height:1.5;margin:4px 0}
.pn-scroll{overflow:auto;max-width:100%}.pn-table{border-collapse:collapse;width:100%;font-size:13px}.pn-table th,.pn-table td{padding:10px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:middle}.pn-table th{background:#f1f5f9;white-space:nowrap}
.pn-suggestions{display:grid;max-height:210px;overflow:auto;gap:3px}.pn-suggestions button{text-align:left}
.pn-file{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 0;overflow-wrap:anywhere}
.pn-icon{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;vertical-align:middle;border-radius:7px;border:0;cursor:pointer;margin-left:4px}
.pn-icon svg{width:17px;height:17px}.pn-price{background:#e2f5e9;color:#18733c}.pn-special{background:#fee8e7;color:#b42318}
.pn-detail>td{background:#f8fafc;padding:18px!important}.pn-detail .pn-section{max-width:960px;white-space:normal}
.pn-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:0}
.pn-dialog{box-sizing:border-box;width:min(900px,calc(100vw - 28px));max-height:90dvh;overflow:auto;border:1px solid #cbd5e1;border-radius:12px;padding:22px;color:#182b44;background:white}
.pn-dialog::backdrop{background:#172b4d80}.pn-dialog h3{margin-top:0}.pn-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;flex-wrap:wrap}.pn-dialog img{max-width:100%;height:auto}.pn-dialog iframe{width:100%;height:65dvh;border:0}
.pn-banner{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0;font-size:13px}.pn-banner:empty{display:none}.pn-error{color:#b42318;font-size:13px}
#partnerModalOverlay .modal{width:min(920px,calc(100vw - 28px))}#partnerModalOverlay [hidden]{display:none!important}
@media(max-width:600px){.pn-dialog{padding:14px}.pn-table th,.pn-table td{padding:8px}.pn-icon{width:32px;height:32px}.pn-tabs button,.pn-button{min-height:40px}.pn-general{align-items:flex-start}.pn-table input[type=number]{width:100px}}

/* Shared requirement editor and read view. Scoped to avoid shell/table style bleed. */
.rq-panel{--rq-ink:#18344e;--rq-muted:#587084;--rq-line:#dce6ee;--rq-accent:#0e6ba8;container:rq-panel / inline-size;color:var(--rq-ink);font:13px/1.55 "Segoe UI",Arial,sans-serif;min-width:0;text-align:left;white-space:normal}
.rq-panel *{box-sizing:border-box}.rq-panel [hidden]{display:none!important}
.rq-heading{display:flex;align-items:flex-start;gap:13px;padding:18px 20px;border:1px solid var(--rq-line);border-radius:14px 14px 0 0;background:linear-gradient(120deg,#f1f7fc,#fff);margin:0}
.rq-emblem{display:grid;place-items:center;flex:none;width:42px;height:46px;border:1px solid #cee1ef;border-radius:11px;background:#fff;color:var(--rq-accent);box-shadow:0 3px 10px #123b6010}.rq-emblem svg{width:25px;height:25px}
.rq-panel .rq-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.4px;color:var(--rq-accent);margin:0 0 4px}.rq-panel .rq-heading h3{font-size:18px;line-height:1.35;font-weight:650;color:var(--rq-ink);margin:0 0 6px;letter-spacing:-.3px}.rq-heading>div{flex:1;min-width:0}.rq-heading p:last-child{color:var(--rq-muted);font-size:12px;line-height:1.6;margin:0;max-width:580px}
.rq-count{flex:none;font-size:11px;font-weight:600;padding:4px 9px;border-radius:20px;background:white;border:1px solid var(--rq-line);white-space:nowrap;color:var(--rq-muted)}
.rq-tools{position:relative;background:#fff;border:1px solid var(--rq-line);border-top:0;padding:18px 20px 14px}.rq-search-label{display:grid;gap:7px;font-size:12px;font-weight:650;color:var(--rq-ink)}
.rq-panel input[type=search]{display:block;width:100%;min-height:44px;border:1px solid #bacddd;border-radius:9px;padding:11px 13px;background:#fff;color:var(--rq-ink);font:inherit;box-shadow:0 1px 3px #123b6005}
.rq-panel button{font:inherit;cursor:pointer;white-space:normal;transition:background .12s,border-color .12s}.rq-panel button:disabled{opacity:.6;cursor:default}.rq-panel button:focus-visible,.rq-panel textarea:focus-visible,.rq-panel input:focus-visible,.rq-error:focus-visible{outline:2px solid var(--rq-accent);outline-offset:3px}
.rq-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.rq-quick button{display:flex;gap:7px;align-items:center;border:1px solid var(--rq-line);border-radius:8px;padding:8px 11px;min-height:40px;color:#28516e;background:#f8fbfd;font-weight:600;font-size:12px}.rq-quick button:hover:not(:disabled){border-color:#8fb4d0;background:#edf6fc}.rq-quick button:disabled{background:#edf6f4;color:#286655;opacity:1;border-color:#d2e6df}.rq-quick button span{font-size:16px;line-height:1}
.rq-search-status{font-size:12px;color:var(--rq-muted);margin:9px 0 0;min-height:0}.rq-search-status:empty{display:none}
.rq-suggestions{position:absolute;z-index:30;left:20px;right:20px;top:89px;max-height:240px;overflow:auto;padding:5px;background:#fff;border:1px solid #b9d0e2;border-radius:9px;box-shadow:0 12px 32px #18344e26}.rq-suggestions button{display:flex;align-items:center;gap:14px;width:100%;border:0;background:white;padding:11px 12px;text-align:left;border-radius:6px;color:var(--rq-ink);min-height:44px}.rq-suggestions button:hover,.rq-suggestions button[aria-selected=true]{background:#edf5fc}.rq-suggestions span{color:var(--rq-accent);font-size:12px;min-width:85px}.rq-suggestions strong{font-weight:600;overflow-wrap:anywhere}
.rq-table-wrap{border:1px solid var(--rq-line);border-top:0;background:#fff;overflow:hidden;border-radius:0 0 12px 12px}.rq-panel .rq-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;margin:0;font-size:13px}.rq-panel .rq-table thead{display:table-header-group}.rq-panel .rq-table tbody{display:table-row-group}.rq-panel .rq-table tr{display:table-row;padding:0;border:0}
.rq-panel .rq-table th{background:#f4f7fa;color:#536b7e;font-size:11px;font-weight:700;padding:12px 14px;border-bottom:1px solid var(--rq-line);text-align:left;letter-spacing:.2px;white-space:normal}.rq-panel .rq-table th:nth-child(1){width:12%}.rq-panel .rq-table th:nth-child(2){width:24%}.rq-panel .rq-table th:nth-child(3){width:40%}.rq-panel .rq-table th:nth-child(4){width:24%}
.rq-panel .rq-table td{display:table-cell;vertical-align:top;padding:16px 14px;border:0;border-bottom:1px solid #e8eef3;background:#fff;text-align:left;line-height:1.55;overflow-wrap:anywhere;font-size:13px}.rq-panel .rq-table tr:last-child td{border-bottom:0}.rq-panel .rq-table .rq-scope-row td{background:#fbfdff}.rq-panel .rq-table .rq-code{font-size:12px;font-weight:650;color:#346482;padding-top:20px}.rq-product strong{display:block;font-weight:650}.rq-product small{display:block;font-size:11px;color:var(--rq-muted);line-height:1.5;margin-top:5px}.rq-scope-tag{display:inline-block;font-size:9px;letter-spacing:.7px;padding:3px 6px;border:1px solid #d8e6f0;border-radius:5px;color:#446e8d;background:#eff6fb}
.rq-panel .rq-remove{display:block;font-size:11px;border:0;background:transparent;color:#647589;padding:7px 0;min-height:32px;margin-top:5px}.rq-panel .rq-remove:hover{color:#a32f32;text-decoration:underline;background:transparent}.rq-panel textarea{display:block;width:100%;max-width:100%;min-height:88px;resize:vertical;border:1px solid #d2dfe9;border-radius:8px;padding:10px 11px;font:13px/1.6 "Segoe UI",Arial,sans-serif;color:var(--rq-ink);background:#fff}.rq-panel textarea:hover{border-color:#a6bed1}.rq-panel textarea[aria-invalid=true]{border-color:#bd4145}.rq-panel textarea::placeholder{color:#6c8091;font-size:12px}.rq-note p{white-space:pre-wrap;line-height:1.75;margin:0}.rq-mobile-label{display:none}
.rq-file-list{display:grid;gap:7px}.rq-file-item{display:flex;align-items:center;border:1px solid #dde6ec;border-radius:7px;overflow:hidden;background:#fff}.rq-panel .rq-file{display:flex;align-items:center;gap:7px;min-width:0;flex:1;text-align:left;padding:8px;min-height:38px;border:0;background:transparent;color:#285779;font-size:11px}.rq-file>span:last-child{overflow-wrap:anywhere;min-width:0}.rq-file-type{font-size:8px;font-weight:700;letter-spacing:.4px;background:#eaf2f8;color:#426783;padding:4px;border-radius:4px;flex:none}.rq-panel .rq-remove-file{border:0;background:transparent;color:#6a7783;font-size:18px;padding:4px;min-width:28px;min-height:38px}.rq-panel .rq-remove-file:hover{background:#fff1f1;color:#a32f32}.rq-pending{border-style:dashed}.rq-panel .rq-upload{display:block;min-height:36px;padding:7px 0;border:0;background:transparent;color:var(--rq-accent);font-size:11px;font-weight:600;text-align:left;margin-top:3px}.rq-panel .rq-upload:hover{color:#084f80;text-decoration:underline;background:transparent}.rq-no-files{color:#8494a1}
.rq-footnote{display:flex;gap:8px 20px;justify-content:space-between;flex-wrap:wrap;font-size:10px;color:var(--rq-muted);padding:12px 2px 2px}.rq-error{margin:12px 0;border:1px solid #efc4c4;border-radius:8px;padding:12px;color:#982f32;background:#fff4f3;font-size:13px}.rq-empty{display:grid;justify-items:center;text-align:center;padding:34px 20px 40px;color:var(--rq-muted)}.rq-empty svg{width:32px;height:32px;margin-bottom:12px;color:#7c9cb4}.rq-empty strong{color:var(--rq-ink);font-size:14px;font-weight:600}.rq-empty p{font-size:12px;max-width:360px;margin:7px 0 0}
#partnerModalOverlay:has(.rq-panel) .modal{width:min(1100px,calc(100vw - 28px))}.pn-detail .pn-section:has(.rq-panel){max-width:none}.pn-dialog:has(.rq-panel){width:min(1060px,calc(100vw - 28px))}#detailDrawer:has(.rq-panel){width:min(1020px,92vw)}
#partnerModalOverlay:has(.rq-panel) .modal-header{flex-shrink:0}#partnerModalOverlay:has(.rq-panel) .modal-body{padding-bottom:0}#partnerForm:has(.rq-panel)>.pn-tabs{position:sticky;top:-20px;z-index:35;background:#fff;padding:12px 0;margin-top:-12px}#partnerForm:has(.rq-panel)>.modal-footer{position:sticky;bottom:0;z-index:35;background:#fff;border-top:1px solid #dce6ee;padding:14px 0;margin-top:14px;box-shadow:0 -8px 12px #fff}#partnerForm .rq-panel textarea{scroll-margin-top:90px;scroll-margin-bottom:85px}
@container rq-panel (max-width:640px){
 .rq-heading{padding:15px;gap:10px}.rq-heading .rq-count{font-size:10px}.rq-heading .rq-emblem{display:none}.rq-panel .rq-heading h3{font-size:16px}.rq-tools{padding:15px}.rq-suggestions{left:15px;right:15px;top:86px}.rq-quick{gap:7px}.rq-quick button{min-height:44px;padding:8px 10px;font-size:11px}
 .rq-panel .rq-table thead{display:none}.rq-panel .rq-table tbody{display:block}.rq-panel .rq-table tr{display:grid;grid-template-columns:85px minmax(0,1fr);gap:10px;padding:16px;border-bottom:1px solid var(--rq-line)}.rq-panel .rq-table tr:last-child{border-bottom:0}.rq-panel .rq-table td{display:block;border:0;padding:0;background:transparent;grid-column:auto;grid-row:auto;text-align:left}.rq-panel .rq-table .rq-scope-row{background:#fbfdff}.rq-panel .rq-table .rq-code{padding:0}.rq-panel .rq-table .rq-note,.rq-panel .rq-table .rq-attachments{grid-column:1/-1}.rq-panel .rq-table .rq-remove{min-height:36px;margin:0}.rq-mobile-label{display:block;color:var(--rq-muted);font-size:11px;margin:2px 0 6px}.rq-panel textarea{min-height:90px;font-size:16px}.rq-panel .rq-remove-file{min-width:44px;min-height:44px}.rq-panel .rq-file,.rq-panel .rq-upload{min-height:44px;font-size:12px}.rq-file-list{grid-template-columns:repeat(2,minmax(0,1fr))}.rq-footnote{padding:12px 0;display:grid;gap:3px}.rq-suggestions button{gap:8px}.rq-suggestions span{min-width:65px}
}
@media(max-width:768px){#detailDrawer:has(.rq-panel){width:100%}}
@media(prefers-reduced-motion:reduce){.rq-panel button{transition:none}}
