.gift-heading{padding:26px 0 28px;max-width:780px}
.gift-heading .eyebrow{margin-bottom:14px}
.gift-heading h1{font-size:clamp(42px,5vw,65px);letter-spacing:-2px;line-height:1.03;margin-bottom:18px}
.gift-heading h1 br{display:none}
.gift-heading>p{font-size:17px;color:var(--muted);margin-top:14px}
.gift-workspace{padding-bottom:80px}
.gift-notice{border-left:3px solid var(--plum);padding:13px 18px;background:var(--soft);margin-bottom:32px;display:flex;align-items:baseline;gap:8px 18px;flex-wrap:wrap;font-size:14px;line-height:1.65}
.gift-notice strong{font-weight:600}
.gift-notice span{flex:1 1 500px;color:var(--muted)}
.gift-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);align-items:start;gap:48px}
.gift-editor,.gift-editor fieldset{min-width:0}
.gift-editor{background:var(--white);border:1px solid var(--line);padding:28px;border-radius:4px}
.gift-editor fieldset{padding:0;margin:0;border:0}
.gift-form-part+.gift-form-part{border-top:1px solid var(--line);margin-top:27px;padding-top:26px}
.gift-form-part h2{font-size:28px;letter-spacing:-.6px;margin-bottom:20px}
.gift-two-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gift-editor label:not(.gift-options label){display:block;font-size:14px;margin:16px 0 7px;font-weight:600}
.gift-editor label>span:not(.gift-options span){font-size:12px;font-weight:400;color:var(--muted);display:inline;margin-left:4px}
.gift-two-fields label{margin-top:0!important}
.gift-editor input:not([type=radio]),.gift-editor select,.gift-editor textarea{display:block;width:100%;min-width:0;min-height:47px;background:var(--paper);border:1px solid #bfa7af;border-radius:3px;padding:11px 12px;font:16px/1.5 var(--sans)}
.gift-editor textarea{resize:vertical;min-height:100px;max-height:260px}
.gift-editor input::placeholder,.gift-editor textarea::placeholder{color:#8b7580;opacity:1}
.gift-editor input[aria-invalid=true]{border-color:#a02b46;outline-color:#a02b46}
.gift-field-note{font-size:12px;line-height:1.7;color:var(--muted);margin-top:8px}
#gift-message-count{text-align:right}
.gift-editor .gift-options{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}
.gift-options label{display:flex;align-items:center;gap:9px;min-height:45px;padding:9px 12px;border:1px solid #c9b5ba;border-radius:3px;font-size:14px;cursor:pointer}
.gift-options label:has(input:checked){background:#f2e1e3;border-color:var(--plum);box-shadow:inset 0 0 0 1px var(--plum)}
.gift-options input{margin:0;width:17px;height:17px;accent-color:var(--plum);flex-shrink:0}
.gift-options span{display:flex;gap:8px;align-items:center}
.gift-swatch{display:inline-block;width:17px;height:17px;border:1px solid #9c7686;border-radius:50%;flex-shrink:0}
.gift-swatch.plum{background:#563447}.gift-swatch.cream{background:#faf6f0}
.gift-amount-input{display:flex;align-items:center;position:relative}
.gift-amount-input input{padding-right:42px!important}
.gift-amount-input>span{position:absolute;right:14px;font-size:20px;pointer-events:none}
.gift-error{color:#8e1d37;font-size:14px;line-height:1.6;margin-top:8px}
.gift-privacy{font-size:12px;line-height:1.75;color:var(--muted);padding-top:22px;margin-top:22px;border-top:1px solid var(--line)}
.gift-reset{border:0;background:transparent;padding:0;margin-top:10px}
.gift-preview-panel{position:sticky;top:114px;min-width:0}
.gift-preview-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:15px}
.gift-preview-heading h2{font-size:28px;letter-spacing:-.5px}
.gift-preview-heading span{font-size:12px;color:var(--muted)}
.gift-card-stage{padding:22px;background:#e9ded8;border:1px solid var(--line);border-radius:4px}
#gift-canvas{display:block;width:100%;height:auto;aspect-ratio:8/5;box-shadow:0 12px 32px #48233326}
.gift-preview-summary{font-size:13px;color:var(--muted);margin-top:13px;line-height:1.6}
.gift-export-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:22px}
.gift-export-actions .button:disabled{opacity:.45;transform:none}
.gift-export-help{font-size:12px;color:var(--muted);line-height:1.75;margin-top:12px;max-width:560px}
.gift-export-status{font-size:14px;line-height:1.65;color:var(--plum);margin-top:13px;min-height:23px}
.gift-next{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}
.gift-next h3{font-size:25px;letter-spacing:-.5px}
.gift-next p{font-size:15px;line-height:1.75;color:var(--muted);margin-top:12px}
.gift-next .text-link{margin-top:10px}
@media(max-width:1120px){.gift-layout{gap:28px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr)}.gift-editor{padding:22px}.gift-two-fields{grid-template-columns:minmax(0,1fr);gap:15px}.gift-preview-heading{display:block}.gift-preview-heading span{display:block;margin-top:8px}.gift-card-stage{padding:16px}}
@media(max-width:880px){.gift-layout{grid-template-columns:minmax(0,1fr);gap:35px}.gift-preview-panel{position:static;grid-row:1}.gift-preview-heading{display:flex}.gift-preview-heading span{margin-top:0}.gift-card-stage{padding:20px}.gift-next{display:none}.gift-two-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-editor .gift-options{gap:12px}.gift-heading{padding-top:22px}.gift-heading h1{font-size:48px}}
@media(max-width:680px){.gift-heading h1{font-size:43px}.gift-heading h1 br{display:block}.gift-heading>p{font-size:16px}.gift-notice{font-size:13px;margin-bottom:25px}.gift-layout{gap:28px}.gift-preview-heading{display:block}.gift-preview-heading span{margin-top:7px}.gift-card-stage{padding:10px}.gift-export-actions{gap:10px;margin-top:17px}.gift-export-actions .button{flex:1 1 145px;padding:12px}.gift-editor{padding:21px 18px}.gift-two-fields{grid-template-columns:minmax(0,1fr)}.gift-options label{padding:10px;font-size:14px}.gift-workspace{padding-bottom:50px}.gift-preview-panel{grid-row:auto}.gift-form-part h2{font-size:27px}}
@media print{
  @page{size:A5 landscape;margin:10mm}
  body.printing-gift{background:white!important;margin:0!important;padding:0!important}
  body.printing-gift>*,body.printing-gift #main>*{display:none!important}
  body.printing-gift #main,body.printing-gift #gift-print-sheet{display:block!important;margin:0!important;padding:0!important;width:auto!important}
  body.printing-gift #gift-print-image{display:block!important;width:180mm!important;height:112.5mm!important;max-width:100%!important;object-fit:contain;break-inside:avoid}
}
