.pricing-search { width:320px; }
.generic-content:has(.pricing-workspace) { padding:18px 28px 30px; }
.pricing-workspace { display:grid; grid-template-columns:264px minmax(0,1fr); min-height:calc(100vh - 234px); border:1px solid #e3e4eb; border-radius:10px; background:#fff; box-shadow:var(--shadow); overflow:hidden; }
.pricing-plan-rail { min-width:0; display:flex; flex-direction:column; border-right:1px solid #e5e6ec; background:#fbfbfd; }
.pricing-plan-rail > header { min-height:65px; display:flex; align-items:center; justify-content:space-between; padding:12px 14px 11px 18px; border-bottom:1px solid #e8e9ee; background:#fff; }
.pricing-plan-rail > header > div { min-width:0; display:flex; align-items:baseline; gap:8px; }
.pricing-plan-rail h2 { margin:0; color:#292a33; font-size:16px; font-weight:720; }
.pricing-plan-rail > header span,.pricing-plan-rail > footer { color:#7f828d; font-size:12px; font-weight:500; }
.pricing-plan-add { width:30px; height:30px; flex:none; display:grid; place-items:center; padding:0; border:0; border-radius:7px; background:#7657f6; color:#fff; font-size:20px; font-weight:400; line-height:1; box-shadow:0 3px 8px #7657f633; }
.pricing-plan-add:hover { background:#6748ed; }
.pricing-plan-add:focus-visible { outline:3px solid #ded6ff; outline-offset:2px; }
.pricing-plan-list { flex:1; min-height:220px; max-height:calc(100vh - 352px); padding:8px; overflow:auto; }
.pricing-plan-item { width:100%; min-height:65px; display:flex; flex-direction:column; justify-content:center; gap:7px; padding:11px 12px; border:1px solid transparent; border-radius:7px; background:transparent; color:#555864; text-align:left; transition:background .15s,border-color .15s,color .15s; }
.pricing-plan-item + .pricing-plan-item { margin-top:3px; }
.pricing-plan-item:hover { background:#f3f1fa; }
.pricing-plan-item.selected { border-color:#ded6ff; background:#eeeaff; color:#6545ef; }
.pricing-plan-item:focus-visible { outline:2px solid #9e87fa; outline-offset:1px; }
.pricing-plan-item-main,.pricing-plan-item-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
.pricing-plan-item-main strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#343641; font-size:14px; font-weight:700; }
.pricing-plan-item.selected .pricing-plan-item-main strong { color:#6545ef; }
.pricing-plan-item-meta { color:#7f828d; font-size:12px; font-weight:500; }
.pricing-plan-item-meta span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pricing-plan-item-meta span:last-child { flex:none; }
.pricing-default-badge { display:inline-flex; align-items:center; flex:none; min-height:21px; padding:2px 7px; border:1px solid #c5eedf; border-radius:4px; color:#0b9069; background:#edf9f3; font-size:11px; font-weight:650; }
.pricing-plan-rail > footer { min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:8px 12px 8px 18px; border-top:1px solid #e8e9ee; background:#fff; }
.pricing-plan-rail > footer div { display:flex; gap:5px; }
.pricing-plan-rail > footer button { width:30px; height:30px; padding:0; border:1px solid #e0e1e8; border-radius:6px; background:#fff; color:#656873; font-size:20px; line-height:1; }
.pricing-plan-rail > footer button:hover:not(:disabled) { border-color:#bdb2f8; color:#6545ef; background:#faf9ff; }
.pricing-plan-rail > footer button:disabled { cursor:not-allowed; opacity:.4; }
.pricing-plan-list-empty { padding:48px 12px; color:#858894; font-size:13px; font-weight:500; text-align:center; }
.pricing-plan-detail { min-width:0; background:#fff; }
.pricing-detail-head { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 20px; border-bottom:1px solid #e8e9ee; }
.pricing-detail-title { min-width:0; }
.pricing-detail-title > div { display:flex; align-items:center; gap:9px; min-width:0; }
.pricing-detail-title h2 { max-width:520px; margin:0; overflow:hidden; color:#2c2e37; font-size:19px; font-weight:720; text-overflow:ellipsis; white-space:nowrap; }
.pricing-detail-title p { display:flex; flex-wrap:wrap; align-items:center; gap:7px 16px; margin:7px 0 0; color:#7f828d; font-size:12px; font-weight:500; line-height:1.5; }
.pricing-detail-title p > span { position:relative; display:inline-flex; align-items:center; min-width:0; }
.pricing-detail-title p > span + span::before { position:absolute; left:-9px; content:'·'; color:#c1c3ca; }
.pricing-detail-title .credential-copy-value { max-width:240px; }
.pricing-detail-head > .control { height:34px; flex:none; padding:0 12px; font-size:13px; font-weight:600; }
.pricing-sku-head { display:flex; align-items:center; justify-content:space-between; min-height:57px; padding:10px 20px 0; }
.pricing-sku-head h3 { margin:0; color:#343640; font-size:16px; font-weight:700; }
.pricing-sku-head p { margin:5px 0 0; color:#858894; font-size:12px; font-weight:500; }
.pricing-page-skus { padding:8px 20px 20px; }
.pricing-page-skus .sku-toolbar { align-items:center; margin:0 0 12px; }
.pricing-page-skus .sku-toolbar label { max-width:190px; color:#777a85; }
.pricing-page-skus .sku-toolbar label:first-child { max-width:260px; }
.pricing-page-skus .sku-toolbar .primary { height:36px; margin-left:auto; }
.pricing-page-skus > .pricing-hint { margin:0 0 11px; }
.pricing-page-skus .credential-panel { border-radius:7px; box-shadow:none; }
.pricing-page-skus .credential-panel table { min-width:820px; table-layout:fixed; }
.pricing-page-skus .credential-panel th,.pricing-page-skus .credential-panel td { padding:11px 12px; font-size:12px; }
.pricing-page-skus .credential-panel th { color:#5f626d; font-weight:700; }
.pricing-page-skus .credential-panel td { color:#4f525d; font-weight:500; }
.pricing-page-skus .credential-panel th { height:40px; }
.pricing-page-skus .credential-panel td { height:54px; }
.pricing-page-skus .credential-panel th:first-child { width:25%!important; }
.pricing-page-skus .credential-panel th:nth-child(2) { width:15%!important; }
.pricing-page-skus .credential-panel th:nth-child(3) { width:17%!important; }
.pricing-page-skus .credential-panel th:nth-child(4) { width:15%!important; }
.pricing-page-skus .credential-panel th:nth-child(5) { width:14%!important; }
.pricing-page-skus .credential-panel th:last-child { width:14%!important; }
.pricing-page-skus .credential-pagination { padding:15px 0 0; }
.pricing-page-skus .credential-pagination { color:#666a75; font-size:12px; font-weight:500; }
.pricing-page-skus .credential-pagination button { height:32px; padding:0 11px; font-weight:600; }
.pricing-empty { min-height:420px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#989aa5; text-align:center; }
.pricing-empty > span { display:grid; place-items:center; width:46px; height:46px; margin-bottom:12px; border-radius:12px; background:#f0edff; color:#7952ff; font-size:23px; }
.pricing-empty strong { color:#565965; font-size:14px; }
.pricing-empty p { margin:7px 0 0; font-size:12px; }
.pricing-modal .pricing-default { display:flex; align-items:center; gap:8px; margin:16px 0 8px; font-size:14px; }
.pricing-default input { accent-color:#7952ff; width:16px; height:16px; }
.pricing-modal .pricing-hint,.pricing-hint { color:#737783; font-size:13px; font-weight:500; line-height:1.5; }
.pricing-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.pricing-modal .credential-fields select { width:100%; min-width:0; border:1px solid #e1dfec; border-radius:6px; padding:10px; background:white; font:inherit; color:#30303d; }
#ruleReview ul,#ruleMatchResult ol { max-height:240px; overflow:auto; padding:12px 12px 12px 32px; border:1px solid #e8e4f2; border-radius:6px; background:#faf9ff; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
#ruleMatchResult h3 { margin:20px 0 12px; }
.sku-toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:end; margin-bottom:12px; }
.sku-toolbar label { display:grid; gap:6px; font-size:13px; font-weight:600; flex:1; min-width:120px; }
.sku-toolbar input,.sku-toolbar select { width:100%; padding:9px; border:1px solid #e1dfec; border-radius:6px; background:white; }
.sku-modal fieldset { border:1px solid #e7e3ef; border-radius:8px; padding:16px; margin:18px 0; }
.sku-modal legend { font-size:14px; padding:0 6px; }
.sku-modal [hidden] { display:none!important; }
.sku-modal [data-stripe] > label { display:grid; gap:8px; margin:14px 0; }
.sku-modal select { padding:10px; border:1px solid #e1dfec; border-radius:6px; width:100%; }
#skuRows td small { display:block; margin-top:5px; color:#777383; font-size:11px; font-weight:500; }
#skuRows td button { margin:3px; }
@media(max-width:1300px) {
  .pricing-workspace { grid-template-columns:230px minmax(0,1fr); }
  .pricing-detail-title p > span:last-child { display:none; }
  .pricing-page-skus { padding-right:14px; padding-left:14px; }
  .pricing-page-skus .credential-panel table { min-width:720px; }
}
@media(max-width:900px) {
  .sku-modal .credential-fields { grid-template-columns:1fr; }
  .sku-toolbar label { flex-basis:100%; }
}
