/* EIGENTUM recurring expenses: restrained editorial cards, touch-first actions. */
.rec-panel{margin-top:22px;padding:24px 28px 26px;min-width:0;overflow:visible}
.rec-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.rec-heading>div{flex:1 1 330px;min-width:0}.rec-heading h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.03em;font-size:28px;line-height:1.13;margin:6px 0 10px;color:#282b28}.rec-heading p{color:#746e67;font-size:13px;line-height:1.65;max-width:620px;margin:0}.rec-heading>.button,.rec-heading>.rec-link{min-height:44px;align-self:center}.rec-eyebrow{font-size:10px;letter-spacing:.14em;font-weight:700;color:#748273}
.rec-filter-line{display:flex;gap:13px;margin:22px 0;flex-wrap:wrap;align-items:flex-end;padding-bottom:19px;border-bottom:1px solid #e5dfd5}.rec-filter-line label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#6b655d;font-weight:650;min-width:155px}.rec-filter-line input,.rec-filter-line select{min-height:45px;min-width:150px;max-width:100%;padding:10px 12px;background:#fffdfa;color:#332f2b;border:1px solid #dcd6cd;border-radius:9px;font:inherit;font-size:14px}.rec-filter-line select{min-width:230px}
.rec-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.rec-metric{padding:16px 18px 17px;border-radius:11px;background:#f6f3ee;border:1px solid #eee7dc;min-width:0;overflow-wrap:anywhere}.rec-metric span{font-size:11px;color:#746e66;display:block}.rec-metric strong{font-family:Georgia,serif;display:block;font-size:26px;line-height:1.2;letter-spacing:-.025em;margin:9px 0;color:#32362f;font-weight:400;font-variant-numeric:tabular-nums}.rec-metric small{font-size:10px;color:#7c756b;line-height:1.5;display:block}.rec-highlight{background:#ecf0e9;border-color:#dce4d8}.rec-highlight strong{color:#294c35}
.rec-subheading{margin:25px 0 13px;display:flex;justify-content:space-between;align-items:center;gap:12px}.rec-subheading strong{font-family:Georgia,serif;font-size:20px;font-weight:400;color:#2d302d}.rec-subheading span{font-size:11px;color:#797168}
.rec-due-list{display:grid;gap:9px}.rec-due{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(145px,.72fr);gap:12px 22px;padding:17px 18px;border:1px solid #ebe5de;border-radius:11px;background:#fffdfa;min-width:0}.rec-category{display:inline-block;text-transform:uppercase;letter-spacing:.09em;font-size:10px;color:#78907c;font-weight:650}.rec-due h3,.rec-rule h3{font:400 21px/1.2 Georgia,serif;margin:6px 0 7px;color:#30352e}.rec-due-main>small,.rec-rule small{display:block;margin:5px 0 0;font-size:11px;color:#6f6b63;line-height:1.5}.rec-meta{color:#736b64;font-size:11px}.rec-due-state{text-align:right}.rec-due-state strong{display:block;font:400 24px/1.25 Georgia,serif;color:#353a32}.rec-due-state>small{display:block;font-size:10px;color:#847c71;margin-top:7px;line-height:1.5}.rec-status{display:inline-block;border-radius:50px;background:#f3e9db;color:#916a30;padding:5px 8px;font-size:10px;margin-top:7px}.rec-status.rec-paid{background:#e9f2e8;color:#35583f}.rec-status.rec-part{background:#eef0e3;color:#68692b}
.rec-due-actions{grid-column:1/-1;display:flex;gap:7px;align-items:center;flex-wrap:wrap;border-top:1px solid #f0eae2;padding-top:10px}.rec-link,.rec-unlink{appearance:none;border:1px solid #d5dacd;color:#35563f;background:#f7faf5;border-radius:8px;padding:9px 11px;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:41px;font:600 11px/1.2 inherit;cursor:pointer;text-decoration:none}.rec-unlink{border:0;background:none;color:#8c7564;font-size:10px}.rec-link:hover,.rec-unlink:hover{background:#e8ede5}.rec-red{color:#9d5148;border-color:#ead3d0;background:#fcf4f2}.rec-link:focus-visible,.rec-unlink:focus-visible{outline:2px solid #5f8c72;outline-offset:2px}
.rec-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.rec-rule{border:1px solid #e8e2d8;border-radius:12px;background:#fdfaf5;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:18px 18px 14px;gap:8px}.rec-rule>div:first-child{min-height:68px}.rec-rule>strong{font:400 25px Georgia,serif;color:#34493a}.rec-rule-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:7px}.rec-rule-actions .rec-link{min-height:38px}.rec-empty{background:#f6f3ed;border:1px dashed #ded6cb;border-radius:12px;padding:25px;font-size:13px;color:#776f64;line-height:1.55}.rec-loading{padding:20px 0;color:#817b73;font-size:13px}.rec-error{padding:16px;border:1px solid #e4c9c2;background:#fff6f3;color:#923d30}.rec-fineprint{font-size:11px;color:#77736a;line-height:1.65;border-top:1px solid #eee7de;padding-top:15px;margin-top:22px}
.rec-actual{margin-top:12px}.rec-dash-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;padding-top:17px;margin-top:18px;border-top:1px solid #eee8de;color:#746f66;font-size:11px}.rec-dash-bottom .rec-link{flex:0 0 auto}
@media(max-width:860px){.rec-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.rec-metric:nth-child(3){grid-column:1/-1}.rec-rule-grid{grid-template-columns:1fr}.rec-panel{padding:19px 16px}}
@media(max-width:600px){.rec-panel{margin-top:15px;padding:17px 13px}.rec-heading h2{font-size:25px}.rec-heading>div{flex-basis:100%}.rec-heading>.button{width:100%;justify-content:center}.rec-filter-line{margin:15px 0}.rec-filter-line label{flex:1 1 100%;min-width:0}.rec-filter-line input,.rec-filter-line select{width:100%;min-width:0}.rec-metrics{grid-template-columns:1fr;gap:8px}.rec-metric:nth-child(3){grid-column:auto}.rec-metric{padding:12px 14px}.rec-metric strong{font-size:26px;margin:5px 0}.rec-due{grid-template-columns:1fr;padding:14px}.rec-due-state{text-align:left;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rec-due-state strong{font-size:24px}.rec-due-state>small{margin:0}.rec-due-actions{gap:7px}.rec-due-actions .rec-action{flex:1 1 140px}.rec-unlink{min-height:40px}.rec-rule{padding:15px}.rec-rule h3{font-size:19px}}

.rec-auto-explainer{font-size:13px;line-height:1.6;color:#3b644e;background:#edf5ef;border:1px solid #d7e9dc;border-radius:12px;padding:12px 14px;margin:12px 0 16px}
