.ops-component-editor { margin:16px 0; padding:14px; border:1px solid #d7dfd7; border-radius:12px; background:#f8faf8; color:#252b27; }
.ops-component-editor label { display:grid; gap:6px; font-size:13px; font-weight:600; }
.ops-component-editor select,.ops-component-editor input { width:100%; min-width:0; min-height:42px; padding:8px; border:1px solid #cad3ca; border-radius:7px; background:#fff; color:#202820; font:inherit; }
.ops-component-editor p { font-size:12px; line-height:1.5; }
.ops-component-editor section { margin:12px 0; padding:12px; border:1px solid #dce3dc; border-radius:9px; background:#fff; }
.ops-component-editor .ops-component-heading { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; font-size:14px; }
.ops-component-person { display:grid; grid-template-columns:minmax(0,1fr) 80px auto; align-items:end; gap:8px; margin-top:12px; }
.ops-component-person output { padding-bottom:12px; font-size:13px; font-weight:600; }
.ops-component-editor [data-component-error] { color:#a62828; }
.ops-component-share-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ops-component-editor button[data-keratin-add],.ops-component-editor button[data-keratin-remove],.ops-component-editor button[data-keratin-equal] { min-height:36px; padding:7px 10px; border:1px solid #cad3ca; border-radius:7px; background:#fff; color:#252b27; font:inherit; font-size:13px; }
.ops-component-editor button:disabled { opacity:.5; cursor:default; }
.ops-keratin-person { grid-template-columns:minmax(0,1fr) 100px auto; }
.ops-keratin-person [data-keratin-remove] { grid-column:1/-1; justify-self:start; }
.ops-component-editor [data-keratin-share-total].invalid { color:#a62828; }
@media(max-width:480px){.ops-keratin-person{grid-template-columns:minmax(0,1fr) 90px;}.ops-keratin-person [data-keratin-remove]{grid-column:2;grid-row:2;justify-self:end}.ops-keratin-person output{grid-column:1;grid-row:2}}
@media(max-width:480px){.ops-component-person { grid-template-columns:minmax(0,1fr) 72px; }.ops-component-person output { grid-column:1/-1; padding:0; }}
.checkout-component-dialog { width:min(560px,calc(100vw - 24px)); max-height:calc(100dvh - 32px); padding:20px; border:1px solid #d7dfd7; border-radius:16px; color:#252b27; background:white; overflow:auto; }
.checkout-component-dialog::backdrop { background:rgb(0 0 0 / .2); }
.checkout-component-dialog h2 { margin:0; font-size:21px; }
.checkout-component-dialog p { font-size:13px; line-height:1.5; }
.checkout-component-title,.checkout-component-actions { display:flex; gap:12px; justify-content:space-between; align-items:center; }
.checkout-component-dialog button { padding:10px 14px; border:1px solid #d7dfd7; border-radius:8px; background:#f5f7f5; color:#252b27; font:inherit; }
.checkout-component-dialog button[type=submit] { background:#252b27; color:white; }
.checkout-component-price { display:grid; gap:6px; font-weight:600; }
.checkout-component-price input { width:100%; padding:10px; border:1px solid #cad3ca; border-radius:8px; font:inherit; }
.checkout-component-dialog [data-checkout-component-error] { color:#a62828; }
.ops-visible-allocation { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.ops-visible-allocation > span { display:flex; align-items:center; flex-wrap:wrap; gap:7px; padding:6px 9px; border:1px solid #dce5df; border-radius:8px; background:#f1f6f2; color:#284d38; font-size:13px; }
.ops-visible-allocation small { color:#5f6e64; font-size:11px; }
.ops-contributor-row [data-contributor-amount], .ops-component-person [data-component-amount], .ops-keratin-person [data-keratin-amount] { width:100%; min-width:0; min-height:44px; padding:9px 7px; font-size:15px; }
