.sats-budget{--budget-green:#4f6250;--budget-gold:#c9a876;--budget-red:#a95f51;margin:18px 0;padding:24px;border:1px solid #e4d7c3;border-radius:18px;background:linear-gradient(145deg,#fbf8f2,#f3ede3);box-shadow:0 12px 30px rgba(43,43,43,.06);color:#2b2b2b;font-family:'Raleway',sans-serif}
.sats-budget-loading{padding:18px;text-align:center;color:#777}.sats-budget-loading.is-error{color:var(--budget-red)}
.sats-budget-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.sats-budget-head h2{margin:4px 0 5px;font:400 25px/1.25 'DM Serif Display',serif;color:#2b2b2b}.sats-budget-head p{margin:0;color:#777;font-size:10px;line-height:1.55}
.sats-budget-state{flex:0 0 auto;padding:7px 11px;border-radius:999px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.7px}.sats-budget-state.is-ok{background:#e3e9e1;color:#40513f}.sats-budget-state.is-watch{background:#f3e7d1;color:#7a5a2e}.sats-budget-state.is-over{background:#f2ddda;color:#844b42}
.sats-budget-overview{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:9px;margin-top:19px}.sats-budget-overview>div,.sats-budget-month-summary>div{padding:13px;border:1px solid #e8ddcd;border-radius:12px;background:#fff}.sats-budget-overview span,.sats-budget-month-summary span{display:block;color:#8a847c;font-size:9px}.sats-budget-overview strong,.sats-budget-month-summary strong{display:block;margin-top:4px;font-size:15px;font-variant-numeric:tabular-nums}.sats-budget-overview .sats-budget-primary{background:#2b2b2b;color:#fff;border-color:#2b2b2b}.sats-budget-primary span,.sats-budget-primary small{color:#cfc8bd}.sats-budget-primary strong{font-size:22px}.sats-budget-primary strong.is-negative{color:#f0a497}.sats-budget-primary small{display:block;margin-top:3px;font-size:8px}
.sats-budget-dual{display:block!important;color:inherit!important;font-variant-numeric:tabular-nums}.sats-budget-dual b{display:block;color:inherit;font-size:1em;line-height:1.25}.sats-budget-dual small{display:block;margin-top:2px;color:#918a80!important;font-size:.66em!important;font-weight:600;line-height:1.2}.sats-budget-primary .sats-budget-dual small{color:#cfc8bd!important}
.sats-budget-total-track,.sats-budget-track{overflow:hidden;height:6px;border-radius:99px;background:#ddd7cd}.sats-budget-total-track{margin:11px 1px 18px;height:8px}.sats-budget-total-track span,.sats-budget-track span{display:block;height:100%;border-radius:inherit;background:var(--budget-green);transition:width .3s ease}.sats-budget-row.is-watch .sats-budget-track span{background:var(--budget-gold)}.sats-budget-row.is-over .sats-budget-track span{background:var(--budget-red)}
.sats-budget-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.sats-budget-months button{min-width:0;min-height:40px;padding:7px 9px;border:1px solid #ded4c5;border-radius:10px;background:#fff;color:#5f5a53;font:600 10px/1.3 'Raleway',sans-serif;cursor:pointer}.sats-budget-months button[aria-selected=true]{border-color:#2b2b2b;background:#2b2b2b;color:#fff}
.sats-budget-month-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:12px}.sats-budget-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0 0;padding:0;list-style:none}.sats-budget-row{padding:13px;border:1px solid #e8ddcd;border-radius:12px;background:#fff}.sats-budget-row-head,.sats-budget-row-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.sats-budget-row-head{margin-bottom:8px}.sats-budget-row-head strong{font-size:11px}.sats-budget-row-head>span{font-size:11px;font-weight:700;text-align:right}.sats-budget-row-head>span em{display:block;margin-top:2px;color:#8a847c;font-size:8px;font-style:normal;font-weight:500;white-space:nowrap}.sats-budget-row-foot{margin-top:6px;color:#858078;font-size:8px}.sats-budget-note{margin:11px 0 0;padding:9px 11px;border-radius:9px;background:#f3e7d1;color:#70542d;font-size:9px;line-height:1.55}.sats-budget-method{margin:8px 0 0;color:#858078;font-size:9px;line-height:1.55}.sats-budget-method summary{min-height:36px;padding:8px 0;cursor:pointer;color:#756c61;font-weight:600}.sats-budget-method p{margin:0 0 3px}
.sats-budget-daily{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:9px}.sats-budget-daily>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;align-items:center;padding:12px 14px;border-radius:12px;background:#2b2b2b;color:#fff}.sats-budget-daily>div>span{font-size:10px;font-weight:600}.sats-budget-daily>div>strong{grid-column:2;grid-row:1/3;margin:0;text-align:right;font-size:16px}.sats-budget-daily>div>small{grid-column:1;color:#bdb6aa;font-size:8px}.sats-budget-food-tempo{display:flex;align-items:flex-start;gap:7px;margin:9px 0 0;padding-top:8px;border-top:1px solid #eee6da;color:#6d593d;font-size:9px;font-weight:600;line-height:1.45}.sats-budget-food-tempo>span{flex:0 0 auto;color:#a47d46;font-size:13px;line-height:1.1}
@media(max-width:720px){.sats-budget{max-width:100%;margin:12px 0;padding:14px 11px;border-radius:14px}.sats-budget :is(.sats-budget-head,.sats-budget-overview,.sats-budget-month-summary,.sats-budget-daily,.sats-budget-list,.sats-budget-row,.sats-budget-row-head,.sats-budget-row-foot){min-width:0}.sats-budget-head{display:grid;gap:6px}.sats-budget-head h2{font-size:25px}.sats-budget-head p{font-size:10px}.sats-budget-state{justify-self:start;padding:7px 11px;font-size:9px}.sats-budget-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:11px}.sats-budget-overview>div,.sats-budget-month-summary>div{min-width:0;padding:8px}.sats-budget-overview .sats-budget-primary{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px}.sats-budget-overview>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.sats-budget-overview>div:last-child>strong{margin-top:0;text-align:right}.sats-budget-primary>span,.sats-budget-primary>small{grid-column:1}.sats-budget-primary>strong{grid-column:2;grid-row:1/3;text-align:right;font-size:22px}.sats-budget-overview>div>span,.sats-budget-month-summary>div>span{font-size:9px;line-height:1.3}.sats-budget-overview strong,.sats-budget-month-summary strong{font-size:15px}.sats-budget-total-track{margin:8px 1px 11px}.sats-budget-months{gap:4px}.sats-budget-months button{min-height:36px;padding:5px 2px;font-size:10px}.sats-budget-month-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px}.sats-budget-month-summary>div:last-child{grid-column:1/-1}.sats-budget-daily{grid-template-columns:1fr;gap:5px;margin-top:5px}.sats-budget-daily>div{padding:9px 10px}.sats-budget-daily>div>span{font-size:10px}.sats-budget-daily>div>strong{font-size:16px}.sats-budget-daily>div>small{font-size:8px}.sats-budget-list{grid-template-columns:1fr;gap:5px;margin-top:8px}.sats-budget-row{padding:9px 10px}.sats-budget-row-head{margin-bottom:6px}.sats-budget-row-head strong{font-size:11px}.sats-budget-row-head>span{font-size:11px}.sats-budget-row-foot{margin-top:4px;font-size:8px}.sats-budget-row-foot>*{min-width:0}.sats-budget-row-foot>:last-child{text-align:right}.sats-budget-food-tempo{font-size:9px}.sats-budget-note{margin-top:7px;padding:7px 9px;font-size:9px}.sats-budget-method{font-size:9px}.sats-budget-method summary{min-height:32px;padding:6px 0}}

/* v0.8.10: lesbare Typografie und eine zeitliche Messlatte je Kategorie. */
.sats-budget-head p{font-size:12px}
.sats-budget-state{font-size:11px}
.sats-budget-overview span,.sats-budget-month-summary span{font-size:12px}
.sats-budget-overview strong,.sats-budget-month-summary strong{font-size:18px}
.sats-budget-primary strong{font-size:26px}
.sats-budget-primary small{font-size:11px}
.sats-budget-dual small{font-size:11px!important}
.sats-budget-months button{font-size:12px}
.sats-budget-row-head strong,.sats-budget-row-head>span{font-size:13px}
.sats-budget-row-head>span em{font-size:10px;white-space:normal}
.sats-budget-row-foot{font-size:10px;line-height:1.4}
.sats-budget-note,.sats-budget-method{font-size:11px}
.sats-budget-daily>div>span{font-size:12px}
.sats-budget-daily>div>strong{font-size:18px}
.sats-budget-daily>div>small{font-size:10px}
.sats-budget-ruler{padding:20px 1px 0}
.sats-budget-ruler-rail{position:relative;height:7px;border-radius:99px;background:#ddd7cd}
.sats-budget-ruler-fill{display:block;height:100%;border-radius:inherit;background:var(--budget-green);transition:width .3s ease}
.sats-budget-ruler.is-watch .sats-budget-ruler-fill{background:var(--budget-gold)}
.sats-budget-ruler.is-over .sats-budget-ruler-fill{background:var(--budget-red)}
.sats-budget-ruler-marker{position:absolute;top:50%;z-index:2;width:0;height:17px;border-left:2px solid #2b2b2b;transform:translateY(-50%)}
.sats-budget-ruler-marker b{position:absolute;left:0;bottom:14px;padding:1px 4px;border-radius:5px;background:#2b2b2b;color:#fff;font-size:10px;font-weight:700;line-height:1.45;white-space:nowrap;transform:translateX(-50%)}
.sats-budget-ruler-marker.is-budget.is-left b{transform:none}
.sats-budget-ruler-marker.is-budget.is-right b{transform:translateX(-100%)}
.sats-budget-ruler-marker.is-today{z-index:1;height:13px;border-left:1px dashed #8f6b39}
.sats-budget-ruler-marker.is-today b{top:13px;bottom:auto;background:transparent;color:#8f6b39;font-size:10px;transform:translateX(-50%)}
.sats-budget-ruler-axis{display:flex;justify-content:space-between;margin-top:14px;color:#9a9389;font-size:10px;font-variant-numeric:tabular-nums}
.sats-budget-ruler p{margin:2px 0 0;color:#6d665d;font-size:11px;font-weight:600;line-height:1.4}

@media(max-width:720px){
  .sats-budget{padding:14px 11px}
  .sats-budget-head p{font-size:12px}
  .sats-budget-state{font-size:11px}
  .sats-budget-overview{gap:5px}
  .sats-budget-overview>div,.sats-budget-month-summary>div{padding:8px}
  .sats-budget-overview>div>span,.sats-budget-month-summary>div>span{font-size:12px}
  .sats-budget-overview strong,.sats-budget-month-summary strong{font-size:18px}
  .sats-budget-primary>strong{font-size:26px}
  .sats-budget-primary small{font-size:11px}
  .sats-budget-months button{font-size:12px}
  .sats-budget-daily>div{padding:9px 10px}
  .sats-budget-daily>div>span{font-size:12px}
  .sats-budget-daily>div>strong{font-size:18px}
  .sats-budget-daily>div>small{font-size:10px}
  .sats-budget-row{padding:10px}
  .sats-budget-row-head strong,.sats-budget-row-head>span{font-size:13px}
  .sats-budget-row-head>span em{font-size:10px}
  .sats-budget-row-foot{font-size:10px}
  .sats-budget-ruler p{font-size:11px}
  .sats-budget-note,.sats-budget-method{font-size:11px}
}

/* v0.8.14: Herkunft des dynamisch erhöhten Gesamtbudgets. */
.sats-budget-origin{display:block;margin-top:5px;color:#918a80;font-size:10px;line-height:1.35}
@media(max-width:720px){.sats-budget-origin{font-size:10px}}
