.snapshot-home { display:flex; justify-content:flex-end; margin:0 0 12px; }
.snapshot-home button { min-height:44px; }
dialog.budget-snapshots { margin:auto; width:min(760px,calc(100% - 24px)); max-height:calc(100dvh - 32px); box-sizing:border-box; padding:24px; border:1px solid var(--border); border-radius:20px; background:var(--bg-elevated,#17372c); color:var(--text-primary,#fffef9); overflow:auto; box-shadow:0 12px 60px #0005; }
dialog.budget-snapshots::backdrop { background:#071b19b3; }
.snapshot-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.snapshot-heading h2 { margin:0; }
.snapshot-heading [data-close] { width:auto; flex:0 0 auto; }
.budget-snapshots p { line-height:1.5; margin:10px 0; }
.budget-snapshots form label { display:block; margin:12px 0 6px; }
.budget-snapshots form select { width:100%; min-height:44px; padding:10px 12px; border-radius:10px; border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); font:inherit; font-size:16px; }
.budget-snapshots button,.budget-snapshots a { min-height:44px; white-space:normal; text-align:left; overflow-wrap:anywhere; }
.snapshot-note { font-size:.875rem; opacity:.85; }
.snapshot-slot { padding:16px 0; border-bottom:1px solid var(--border-color,#d6ded9); display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.snapshot-choice { padding:16px; border:1px solid var(--border-color,#d6ded9); border-radius:12px; }
.snapshot-choice button { display:block; width:100%; margin-top:10px; }
.budget-snapshots [data-preview] a,.budget-snapshots [data-preview]>button { display:inline-flex; align-items:center; padding:10px 16px; margin:0 8px 12px 0; text-decoration:none; }
.budget-snapshots img { display:block; width:100%; height:auto; background:#fffef9; }
.acct-truth-cause { padding:12px 0; font-size:.8rem; line-height:1.5; }
.acct-truth-cause p { margin:6px 0; }
.acct-truth-cause button { min-height:44px; margin-top:6px; }
@media(max-width:480px) { dialog.budget-snapshots { padding:16px; } .snapshot-heading h2 { font-size:1.3rem; } }
