.money-heading:has(.money-embed-trigger) { max-width: none; }
.money-title-row { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 1rem; }
.money-embed-trigger, .money-embed-reset { border: 0; background: transparent; color: var(--sage-deep); font-size: .875rem; text-decoration: underline; text-underline-offset: 4px; min-height: 44px; padding: .5rem 0; cursor: pointer; }
.money-embed-trigger { border: 1px solid var(--stone); border-radius: 999px; padding: .65rem 1rem; text-decoration: none; }
.money-embed-dialog-layer { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 1.5rem; background: rgb(20 29 24 / 65%); }
.money-embed-dialog { width: min(1240px,100%); max-height: calc(100dvh - 3rem); overflow-y: auto; background: var(--ivory); color: var(--ink); border: 1px solid var(--stone); border-radius: 20px; padding: clamp(1.25rem,3vw,2rem); box-shadow: 0 24px 80px rgb(0 0 0 / 25%); }
.money-embed-dialog-header { display: flex; justify-content: space-between; gap: 1rem; align-items: start; margin-bottom: 1.5rem; }
.money-embed-dialog h2 { margin: 0; font-size: 2rem; line-height: 1.2; }
.money-embed-dialog p { font-size: 1rem; line-height: 1.6; }
.money-embed-dialog-header p { margin: .65rem 0 0; }
.money-embed-close { width: 44px; height: 44px; flex-shrink: 0; border: 1px solid var(--stone); border-radius: 50%; background: var(--cream); color: var(--ink); font-size: 1.75rem; cursor: pointer; }
.money-embed-dialog-grid { display: grid; grid-template-columns: minmax(240px,.75fr) minmax(0,1.65fr); gap: 2rem; }
.money-embed-settings { min-width: 0; }
.money-embed-settings fieldset { border: 0; padding: 0; margin: 0; }
.money-embed-settings legend { font-weight: 650; font-size: 1rem; margin-bottom: 1rem; }
.money-embed-color-field { margin-bottom: 1rem; }
.money-embed-color-field label, .money-embed-code-label { display: block; margin-bottom: .4rem; font-size: .875rem; font-weight: 600; }
.money-embed-color-field > div { display: flex; gap: .65rem; }
.money-embed-color-field input, .money-embed-settings textarea { min-height: 44px; border: 1px solid #a3998c; border-radius: 8px; background: var(--cream); color: var(--ink); font: inherit; }
.money-embed-color-field input[type="color"] { padding: 4px; width: 52px; height: 44px; cursor: pointer; flex-shrink: 0; }
.money-embed-color-field input[type="text"] { min-width: 0; width: 100%; padding: .6rem .8rem; font-family: ui-monospace,monospace; }
.money-embed-color-field [aria-invalid="true"] { border-color: var(--safety); }
.money-embed-dialog .money-embed-note { font-size: .875rem; }
.money-embed-code-label { margin-top: 1.5rem; }
.money-embed-settings textarea { width: 100%; min-height: 175px; padding: .8rem; font: .875rem/1.5 ui-monospace,monospace; resize: vertical; }
.money-embed-copy { margin-top: .8rem; width: 100%; cursor: pointer; }
.money-embed-copy-status { min-height: 1.4rem; margin: .5rem 0; }
.money-embed-dialog :is(input,textarea,button):focus-visible { outline: 3px solid var(--sage-deep); outline-offset: 3px; }
.money-embed-preview { min-width: 0; }
.money-embed-preview > p { margin: 0 0 .8rem; font-size: .875rem; font-weight: 650; }
.money-embed-preview iframe { display: block; width: 100%; height: 650px; border: 1px solid var(--stone); border-radius: 12px; background: var(--cream); }

.money-embed-surface { min-height: 100vh; background: var(--money-background); }
.money-embed { --ivory: var(--money-background); --cream: var(--money-card); --ink: var(--money-page-text); --charcoal: var(--money-page-text); --sage-deep: var(--money-page-text); --clay-ink: var(--money-page-text); --stone: color-mix(in srgb,var(--money-page-text) 30%,transparent); color: var(--money-page-text); background: var(--money-background); padding: 1.5rem 0 1rem; }
.money-embed > .page-shell { width: min(calc(100% - 40px),1180px); }
.money-embed .money-heading { max-width: 800px; margin-bottom: 1.25rem; }
.money-embed .money-heading h1 { font-size: clamp(1.8rem,3.5vw,2.4rem); }
.money-embed .money-heading > p { font-size: 1rem; }
.money-embed .money-heading .money-privacy { font-size: .875rem; }
.money-embed .money-result-column { position: static; }
.money-embed :is(.money-result,.money-agreement) { --ink: var(--money-card-text); --charcoal: var(--money-card-text); --sage-deep: var(--money-card-text); --stone: color-mix(in srgb,var(--money-card-text) 30%,transparent); color: var(--money-card-text); border-color: var(--stone); }
.money-embed .money-field :is(input,select,textarea) { background: var(--money-card); color: var(--money-card-text); border-color: var(--money-card-text); }
.money-embed .money-input-wrap > span { color: var(--money-card-text); }
.money-embed .button-primary { background: var(--money-button); color: var(--money-button-text); box-shadow: none; border: 1px solid var(--money-page-text); }
.money-embed .button-primary:hover { filter: brightness(1.05); }
.money-embed .button-secondary { background: var(--money-button); color: var(--money-button-text); border-color: var(--money-card-text); }
.money-embed .money-error { color: var(--ink); font-weight: 650; }
.money-embed .money-negative { color: var(--ink); font-weight: 750; text-decoration: underline; }
.money-embed .money-warning { color: #6e3b2c; }
.money-embed .money-boundary { margin-top: 1.5rem; }
.money-embed-attribution { display: flex; justify-content: flex-end; margin-top: 1rem; padding-top: .8rem; border-top: 1px solid var(--stone); font-size: .875rem; }
.money-embed-attribution a { min-height: 32px; display: inline-flex; align-items: center; gap: .4rem; text-decoration: underline; text-underline-offset: 3px; }
.money-embed a:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
@media (max-width: 760px) { .money-embed-dialog-layer { padding: .5rem; } .money-embed-dialog { max-height: calc(100dvh - 1rem); border-radius: 14px; } .money-embed-dialog-grid { grid-template-columns: 1fr; gap: 1rem; } .money-embed-preview iframe { height: 480px; } }
@media (max-width: 420px) { .money-embed > .page-shell { width: calc(100% - 28px); } }
@media print { .money-embed-attribution, .money-embed-dialog-layer { display: none !important; } .money-embed-surface, .money-embed { min-height: 0; background: white; color: #1f2421; } .money-embed .money-agreement { --ink: #1f2421; --charcoal: #1f2421; color: #1f2421; } }
