.uk4u-stamp-duty { margin: 2rem 0; color: #162b3b; font-size: 1rem; }
.uk4u-stamp-duty [hidden] { display: none !important; }
.uk4u-stamp-duty .uk4u-sd-heading { padding: 1.5rem; background: #006e91; color: #fff; border-radius: .75rem .75rem 0 0; }
.uk4u-stamp-duty .uk4u-sd-heading h2 { margin: 0 0 .4rem; color: #fff; }
.uk4u-stamp-duty .uk4u-sd-heading p { margin: 0; }
.uk4u-stamp-duty form { padding: 1.5rem; background: #f5f8fa; border: 1px solid #dce5eb; border-radius: 0 0 .75rem .75rem; }
.uk4u-stamp-duty .uk4u-sd-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.uk4u-stamp-duty label { display: block; margin-bottom: .4rem; font-weight: 600; }
.uk4u-stamp-duty input[type="number"], .uk4u-stamp-duty select { box-sizing: border-box; width: 100%; padding: .65rem .75rem; border: 1px solid #a7b8c6; border-radius: .375rem; background: #fff; color: #162b3b; font: inherit; }
.uk4u-stamp-duty :focus-visible { outline: 3px solid #0086b1; outline-offset: 3px; }
.uk4u-stamp-duty .uk4u-sd-help { font-size: .875rem; line-height: 1.5; color: #485d6b; margin: .4rem 0 0; }
.uk4u-stamp-duty .uk4u-sd-check { display: flex; align-items: start; gap: .65rem; margin-top: 1.25rem; }
.uk4u-stamp-duty .uk4u-sd-check input { margin-top: .35rem; flex-shrink: 0; }
.uk4u-stamp-duty .uk4u-sd-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.uk4u-stamp-duty button { padding: .7rem 1rem; border: 1px solid #006e91; border-radius: .375rem; font: inherit; cursor: pointer; }
.uk4u-stamp-duty button[type="submit"] { background: #006e91; color: #fff; }
.uk4u-stamp-duty button[type="reset"] { background: #fff; color: #162b3b; }
.uk4u-stamp-duty [data-error] { padding: .75rem; background: #fce6e6; color: #802525; margin-top: 1rem; }
.uk4u-stamp-duty [data-results] { margin-top: 1.5rem; }
.uk4u-stamp-duty .uk4u-sd-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-bottom: 1.5rem; }
.uk4u-stamp-duty .uk4u-sd-stat { padding: 1rem; border-radius: .5rem; background: #edf5f7; overflow-wrap: anywhere; }
.uk4u-stamp-duty .uk4u-sd-stat span { display: block; font-size: .875rem; }
.uk4u-stamp-duty .uk4u-sd-stat strong { display: block; font-size: 1.5rem; margin-top: .4rem; }
.uk4u-stamp-duty .uk4u-sd-table { width: 100%; overflow-x: auto; }
.uk4u-stamp-duty table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.uk4u-stamp-duty th, .uk4u-stamp-duty td { padding: .65rem; border-bottom: 1px solid #dce5eb; text-align: left; }
.uk4u-stamp-duty td { white-space: nowrap; }
.uk4u-stamp-duty .text-end { text-align: right; }
.uk4u-stamp-duty thead, .uk4u-stamp-duty tfoot { background: #edf5f7; }
.uk4u-stamp-duty [data-notes], .uk4u-stamp-duty .uk4u-sd-disclaimer { font-size: .875rem; line-height: 1.6; margin-top: 1rem; }
.uk4u-stamp-duty [data-notes] p { margin: .3rem 0; }
.uk4u-stamp-duty .uk4u-sd-disclaimer { border-top: 1px solid #dce5eb; padding-top: 1rem; color: #485d6b; }
@media (max-width: 575px) {
    .uk4u-stamp-duty .uk4u-sd-fields, .uk4u-stamp-duty .uk4u-sd-summary { grid-template-columns: 1fr; }
    .uk4u-stamp-duty form, .uk4u-stamp-duty .uk4u-sd-heading { padding: 1rem; }
}
