.fee-estimator{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px;margin:24px 0}.fee-estimator h2{margin:0 0 12px}.fee-estimator p{line-height:1.65;margin:12px 0}.fe-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.fee-estimator label{display:flex;flex-direction:column;gap:8px;font-size:.85rem;line-height:1.5}.fee-estimator input,.fee-estimator select{min-width:0;width:100%;min-height:46px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-main,var(--bg-card));color:var(--text-primary);font:inherit}.fee-estimator input:focus-visible,.fee-estimator select:focus-visible,.fee-estimator button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.fe-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.fe-actions button{min-height:44px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--accent,#386bbc);color:#fff;border:0;font:inherit;cursor:pointer}.fe-actions button:disabled{opacity:.5;cursor:default}.fe-actions span,.fe-note{font-size:.8rem;color:var(--text-secondary);overflow-wrap:anywhere}.fe-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.fe-results>div{padding:16px;background:var(--bg-secondary,var(--bg-card));border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:0}.fe-results span{display:block;font-size:.8rem;color:var(--text-secondary)}.fe-results strong{display:block;font-size:1.3rem;margin-top:8px;overflow-wrap:anywhere}.fee-estimator details{border-top:1px solid var(--border-color);margin-top:18px;padding-top:18px}.fee-estimator summary{cursor:pointer;font-weight:600;min-height:30px}.fe-table{overflow-x:auto;margin-top:18px}.fe-table table{border-collapse:collapse;width:100%;font-size:.85rem}.fe-table th,.fe-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}#feError{color:var(--text-primary);font-weight:600}#feError:empty{display:none}@media(max-width:720px){.fe-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-results{grid-template-columns:1fr}}@media(max-width:430px){.fee-estimator{padding:16px}.fe-fields{grid-template-columns:1fr}}
.fee-estimator [hidden]{display:none!important}.fe-mode{max-width:580px}.fe-rate-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.fe-presets{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:20px}.fe-presets span{font-size:.8rem;color:var(--text-secondary)}.fe-presets button{font:inherit;font-size:.8rem;min-height:40px;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary,var(--bg-card));color:var(--text-primary);cursor:pointer}.fe-presets button:hover{border-color:var(--accent)}.fee-estimator input[aria-invalid="true"]{border-color:#c35040}.fe-table:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#feSignedFields{max-width:680px;margin-top:20px}#feConsolidationError,#fbError{font-weight:600;overflow-wrap:anywhere}#feConsolidationError:empty,#fbError:empty{display:none}.fe-table td{overflow-wrap:anywhere;min-width:120px}.fe-table th{min-width:150px}#batchFeeEstimator{border-top:1px solid var(--border-color);margin-top:24px;padding-top:20px}@media(max-width:530px){.fe-rate-fields{grid-template-columns:1fr}.fe-presets{align-items:flex-start}.fe-presets span{flex-basis:100%}}
.fe-threshold{border-left:3px solid var(--accent);padding:4px 0 4px 18px;margin:22px 0;min-width:0}.fe-threshold h3{font-size:1.05rem;margin:10px 0}.fe-threshold-rate{font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fe-threshold .fe-table caption{text-align:left;color:var(--text-secondary);font-size:.8rem;line-height:1.6;padding:0 0 10px}.fe-threshold .fe-table th,.fe-threshold .fe-table td{min-width:135px}.fe-threshold .fe-table td{font-variant-numeric:tabular-nums;white-space:nowrap}.fe-threshold-method code{overflow-wrap:anywhere}.fe-threshold-method p{font-size:.85rem;color:var(--text-secondary)}@media(max-width:430px){.fe-threshold{padding-left:12px}}
