.recurring-list { list-style:none; margin:0; padding:0; }
.recurring-row { display:flex; align-items:center; gap:12px; width:100%; background:transparent; border:0; border-bottom:1px solid var(--border); padding:16px 0; text-align:left; color:var(--text); font:inherit; }
.recurring-row>span { flex:1; min-width:0; }
.recurring-row b { font-weight:var(--weight-semibold); font-size:var(--type-label); overflow-wrap:anywhere; }
.recurring-row small { display:block; color:var(--text-sub); font-size:var(--type-caption); margin-top:6px; line-height:1.6; }
.recurring-row strong { flex-shrink:0; max-width:48%; text-align:right; font-size:var(--type-row-amount); font-weight:var(--weight-semibold); font-variant-numeric:tabular-nums; }
.recurring-detail>.section-total { margin:8px 0 20px; font-weight:var(--weight-bold); }
.recurring-detail .breakdown { align-items:baseline; }
.recurring-detail .breakdown>b { min-width:0; max-width:65%; text-align:end; overflow-wrap:anywhere; }
.recurring-row>.icon { flex-shrink:0; width:var(--icon-small); color:var(--text-sub);  height:var(--icon-small); }
.recurring-list li:last-child>.recurring-row { border-bottom:0; }
.recurring-empty { padding:24px 0; text-align:center; }
.recurring-empty>.icon { width:var(--icon-display); height:var(--icon-display); color:var(--primary-text); }
.recurring-empty h3 { font-size:var(--type-body); margin:12px 0 8px; }
.recurring-empty p { font-size:var(--type-note); color:var(--text-sub); line-height:1.7; }
.recurring-add { width:100%; margin:20px 0 8px; }
.recurring-editor .recurring-amount { font-size:1.5rem; font-weight:var(--weight-semibold); font-variant-numeric:tabular-nums; }
.recurring-editor .recurring-dates { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.recurring-payment { min-width:0; padding:16px 0; margin:8px 0; border:0; border-top:1px solid var(--border); }
.recurring-payment legend { padding:0 10px 0 0; font-weight:var(--weight-semibold); font-size:var(--type-label); }
.recurring-payment label[hidden],.recurring-payment div[hidden],.recurring-editor label[hidden] { display:none; }
.recurring-preview { background:var(--neutral-soft); border-radius:12px; padding:16px; }
.recurring-preview h3 { margin:0 0 8px; font-size:var(--type-label); }
.recurring-preview ol { list-style:none; margin:0; padding:0; }
.recurring-preview li { padding:5px 0; font-size:var(--type-note); font-variant-numeric:tabular-nums; line-height:1.6; }
.recurring-preview p { font-size:var(--type-caption); color:var(--text-sub); line-height:1.6; margin:10px 0 0; }
.recurring-tools { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; margin-top:16px; }
.recurring-editor .form-fields { container-type:inline-size; container-name:recurring-form; }
@container recurring-form (max-width:18rem){ .recurring-editor .recurring-dates { grid-template-columns:1fr; } }
