/* Compact envelopes keep a full card tap target and separate 44px action buttons. */
:root[data-design] .budget-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
:root[data-design] .budget-grid .envelope-card{padding:14px;border-radius:15px;min-width:0}
:root[data-design] .budget-grid .envelope-open .budget-card-head{margin-bottom:12px;gap:8px;align-items:center}
:root[data-design] .budget-grid .category-icon{width:30px;height:30px;border-radius:9px;flex-shrink:0}
:root[data-design] .budget-grid .category-icon svg{width:18px;height:18px}
:root[data-design] .budget-grid .category-icon .theme-emoji{font-size:22px;width:23px;height:23px}
:root[data-design] .budget-grid .envelope-name{font-size:.86rem;line-height:1.35;overflow-wrap:anywhere;min-width:0}
:root[data-design] .budget-grid .budget-remaining strong{font-size:1.6rem;line-height:1.2;overflow-wrap:anywhere;letter-spacing:-.04em}
:root[data-design] .budget-grid .budget-remaining>span{font-size:.65rem;margin-top:3px}
:root[data-design] .budget-grid .progress-track{margin:11px 0 9px;height:4px}
:root[data-design] .budget-grid .envelope-carry{margin-top:0;font-size:.61rem;line-height:1.4;min-height:18px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}
:root[data-design] .budget-grid .envelope-carry svg{width:13px;height:13px}
:root[data-design] .budget-grid .envelope-actions{display:grid;grid-template-columns:44px minmax(44px,1fr) 44px;gap:3px;margin-top:9px;padding-top:8px}
:root[data-design] .budget-grid .envelope-actions button{width:100%;min-width:44px;min-height:44px;height:44px;margin:0;padding:0;font-size:.67rem}
:root[data-design] .budget-grid .envelope-add{gap:3px}
:root[data-design] .budget-grid .envelope-add svg{width:15px;height:15px}
:root[data-design] .budget-grid .envelope-move{font-size:1.4rem}
.envelope-reorder-hint{font-size:.72rem;margin-bottom:12px}
.dashboard-tools{display:flex;align-items:center;gap:8px;flex-shrink:0}
.amount-toggle{color:var(--green);border:1px solid var(--line);background:var(--card);width:44px;height:44px;min-width:44px;min-height:44px}
.amount-toggle svg{width:21px;height:21px}
.hidden-money{display:inline-block;letter-spacing:.14em;white-space:nowrap;font-family:system-ui,sans-serif;font-variant-numeric:normal}
.hero-number .hidden-money{font-size:.83em;font-weight:500}
.hero-sub .hidden-money{font-size:1em}
.spending-periods{display:grid;gap:18px;padding-top:15px}
.spending-period>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.spending-period span{color:var(--muted);font-size:.77rem;flex-shrink:0}
.spending-period strong{color:var(--ink);font-size:.79rem;font-weight:650;overflow-wrap:anywhere;text-align:right;min-width:0}
.spending-period-track{height:8px;border-radius:5px;background:var(--soft);overflow:hidden}
.spending-period-track i{display:block;height:100%;background:var(--green);border-radius:5px}
.new-fund-fields{background:var(--soft);border-radius:14px;padding:15px;margin:0 0 18px}
.new-fund-fields[hidden]{display:none}
.new-fund-fields .form-hint{margin-bottom:0}
.envelope-detail-actions{margin-top:18px}.envelope-detail-balance+.detail-grid{margin-bottom:18px}.modal-body>.info-note+.info-note{margin-top:10px}
.envelope-options{display:none}
.envelope-detail-manage{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0 0}.envelope-detail-manage .delete-link{margin-top:0}
.dashboard-default-choice{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;cursor:pointer}.dashboard-default-choice>span{min-width:0}.dashboard-default-choice strong{font-size:.87rem;font-weight:650}.dashboard-default-choice small{display:block;font-size:.76rem;line-height:1.65;color:var(--muted);margin-top:6px}.dashboard-default-choice input{width:23px;height:23px;flex-shrink:0;accent-color:var(--green);cursor:pointer}
@media(max-width:800px){
 :root[data-design] .budget-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 :root[data-design] .budget-grid .envelope-card{padding:8px;border-radius:13px}
 :root[data-design] .budget-grid .envelope-open .budget-card-head{flex-direction:column;align-items:flex-start;gap:5px;margin-bottom:8px;min-height:52px}
 :root[data-design] .budget-grid .category-icon{width:25px;height:25px;border-radius:7px}
 :root[data-design] .budget-grid .category-icon .theme-emoji{font-size:20px;width:21px;height:21px}
 :root[data-design] .budget-grid .envelope-name{font-size:.72rem;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
 :root[data-design] .budget-grid .budget-remaining strong{font-size:clamp(.88rem,3.7vw,1.05rem);line-height:1.25}
 :root[data-design] .budget-grid .budget-remaining>span{font-size:.55rem;line-height:1.35;margin-top:3px}
 :root[data-design] .budget-grid .progress-track{margin:8px 0 0}
 :root[data-design] .budget-grid .envelope-carry,:root[data-design] .budget-grid .envelope-actions{display:none}
 :root[data-design] .budget-grid .envelope-options{display:flex;align-items:center;justify-content:center;width:100%;height:44px;min-height:44px;min-width:44px;margin-top:5px;background:transparent;color:var(--muted);border-top:1px solid var(--line);border-radius:0;letter-spacing:.13em;font-size:.95rem}
 .dashboard-toolbar{gap:8px}.dashboard-layout-label{font-size:.65rem;flex:1}.dashboard-tools{gap:6px}.dashboard-toolbar .secondary{padding:8px 9px;font-size:.67rem}.dashboard-layout-label .theme-emoji{font-size:18px;width:18px;flex-shrink:0}
}
@media(max-width:349px){:root[data-design] .budget-grid{gap:6px}:root[data-design] .budget-grid .envelope-card{padding:6px}:root[data-design] .budget-grid .envelope-name{font-size:.68rem}.dashboard-layout-label{max-width:none}.dashboard-tools{gap:4px}.dashboard-toolbar .secondary{font-size:.62rem;padding:8px 7px}.spending-periods{gap:16px}}
