.postcard-upload.container{--postcard-ink:#3e2a27;--postcard-muted:#6e534e;--postcard-berry:#853d46;--postcard-berry-dark:#692d37;--postcard-border:#d9beb2;--postcard-paper:#fffbf1;--postcard-blush:#f6e7da;width:min(1080px,calc(100% - 64px));margin-inline:auto;padding-block:clamp(18px,3vw,38px) 54px;color:var(--postcard-ink)}.postcard-event-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 18px;margin-bottom:12px}.postcard-event-heading .back-link{color:var(--postcard-muted);min-height:44px;margin:0;font-size:13px}.postcard-event-heading .back-link:hover{color:var(--postcard-berry)}.postcard-event-heading p{margin:0;color:var(--postcard-muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.postcard-event-heading p span{margin-inline:8px}.postcard-intake{isolation:isolate;padding:clamp(24px,4.2vw,52px);border:1px solid var(--postcard-border);border-radius:18px;background:radial-gradient(ellipse at 86% 2%,#fff6ea 0,transparent 52%),var(--postcard-blush);box-shadow:0 14px 35px #58322d16;transition:border-color .16s ease,box-shadow .16s ease}.postcard-intake.is-dragging{border-color:var(--postcard-berry);box-shadow:0 0 0 3px #853d4640,0 14px 35px #58322d16}.postcard-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(24px,5.5vw,68px);align-items:center}.postcard-print{position:relative;display:grid;grid-area:1/1;grid-template-rows:minmax(0,1fr) auto;place-items:stretch;min-width:0;aspect-ratio:1.12;padding:clamp(6px,1vw,11px) clamp(6px,1vw,11px) clamp(16px,2vw,28px);margin:0;border:1px solid #e0c9ba;background:var(--postcard-paper);box-shadow:0 13px 27px #4e2b2830,0 3px 5px #4e2b281c;transform:rotate(-2.5deg)}.postcard-print img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:50% 48%}.postcard-print.has-photo img{object-position:center}.postcard-print figcaption{margin:7px 2px -10px;color:var(--postcard-muted);font-size:11px;text-align:end}.postcard-intro{grid-area:1/2;min-width:0;padding:9px 0 9px clamp(16px,3vw,36px);border-left:1px solid var(--postcard-border)}.postcard-intro h1{max-width:13ch;margin:0;color:var(--postcard-ink);font:500 clamp(2.25rem,5.3vw,4.35rem) /.98 var(--serif,Fraunces,Georgia,serif);letter-spacing:-.06em;text-wrap:balance}.postcard-lede{max-width:34ch;margin:16px 0 0;color:var(--postcard-muted);font-size:15px;line-height:1.5}.postcard-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:min(100%,310px);margin-top:22px}.postcard-upload .postcard-camera,.postcard-upload .postcard-choose,.postcard-upload .postcard-submit-drafts>.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:50px;padding:11px 14px;font:700 14px/1.25 var(--sans,"DM Sans",sans-serif);text-align:center;white-space:normal;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.postcard-upload .postcard-choose{border-color:var(--postcard-berry);border-radius:999px;color:#fff9f0;background:var(--postcard-berry);box-shadow:inset 0 1px #ffffff28,0 4px 0 #692d37}.postcard-upload .postcard-choose:hover:not(:disabled){border-color:var(--postcard-berry-dark);background:var(--postcard-berry-dark)}.postcard-upload .postcard-camera{border:1px dashed var(--postcard-berry);border-radius:3px;outline:1px solid #cba99c;outline-offset:-5px;color:var(--postcard-berry-dark);background:var(--postcard-paper);box-shadow:0 3px 9px #58322d16;transform:rotate(1deg)}.postcard-upload .postcard-camera:hover:not(:disabled){background:#fff3e6;transform:rotate(0)}.postcard-upload .postcard-camera:focus-visible{outline:3px solid var(--postcard-berry);outline-offset:3px}.postcard-upload .postcard-actions button:active:not(:disabled){transform:translateY(1px)}.postcard-closed>svg,.postcard-reminder>svg,.postcard-status svg,.postcard-upload .postcard-actions button svg,.postcard-upload .postcard-submit-drafts svg{flex:0 0 auto}.postcard-help,.postcard-status{margin:14px 0 0;color:var(--postcard-muted);font-size:12px;line-height:1.55}.postcard-status{display:flex;align-items:center;gap:6px}.postcard-status.needs-attention{color:var(--postcard-berry-dark)}.postcard-help{margin-top:20px;text-align:center}.postcard-help>span{display:block;margin-top:4px}.postcard-closed{display:flex;align-items:flex-start;gap:10px;margin-top:22px;padding:15px 17px;border:1px dashed var(--postcard-border);border-radius:9px;color:var(--postcard-ink);background:var(--postcard-paper)}.postcard-upload .postcard-queue{max-width:none;margin:20px 0 0;padding:clamp(15px,3vw,28px);border:1px dashed #caa89c;border-radius:14px;background:var(--postcard-paper);box-shadow:0 6px 17px #58322d10}.postcard-queue .queue-heading{flex-wrap:wrap;gap:6px 14px}.postcard-queue .queue-heading h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;color:var(--postcard-ink);font-size:clamp(1.5rem,3.5vw,2rem);letter-spacing:-.035em}.postcard-empty,.postcard-queue .queue-heading h2>span,.postcard-queue .queue-summary{color:var(--postcard-muted);font-size:13px}.postcard-queue .queue-heading h2>span{margin:0}.postcard-empty,.postcard-queue .queue-summary{margin:8px 0 14px}.postcard-queue .upload-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;border:0}.postcard-queue .upload-row{display:grid;grid-template-columns:58px minmax(0,1fr) 44px;align-items:start;gap:10px;min-width:0;padding:12px;border:1px solid #ead5c9;border-radius:9px;background:#fbefe4}.postcard-queue .upload-preview{width:58px;height:62px;padding:3px 3px 9px;border:1px solid #e0c9ba;background:var(--postcard-paper);box-shadow:0 2px 4px #58322d20;transform:rotate(-2deg)}.postcard-preview-placeholder{display:grid;width:100%;height:100%;min-height:0;place-items:center;color:var(--postcard-berry);background:#f2ddd1}.postcard-queue .postcard-preview-placeholder>svg{width:20px;height:20px}.postcard-queue .postcard-preview-placeholder>span{display:none}.postcard-queue .upload-file-info{min-width:0}.postcard-queue .upload-filename{color:var(--postcard-ink);font-size:13px;font-weight:700}.postcard-queue .upload-file-size,.postcard-queue .upload-status{color:var(--postcard-muted);font-size:12px}.postcard-queue .upload-status{overflow-wrap:anywhere}.postcard-queue .upload-row.ready .upload-status{color:#455845}.postcard-queue .upload-row.failed .upload-status{color:var(--postcard-berry-dark)}.postcard-queue .upload-row progress{height:5px;border-radius:999px;background:#eed8ce}.postcard-queue .upload-row progress::-webkit-progress-bar{border-radius:999px;background:#eed8ce}.postcard-queue .upload-row progress::-webkit-progress-value{border-radius:999px;background:var(--postcard-berry)}.postcard-queue .upload-row progress::-moz-progress-bar{border-radius:999px;background:var(--postcard-berry)}.postcard-queue .upload-row-action{display:grid;place-items:center;min-height:44px;color:var(--postcard-berry-dark)}.postcard-queue .upload-row-action>.icon-button{width:44px;min-width:44px;height:44px}.postcard-queue .upload-row-action>.icon-button:hover:not(:disabled){background:#edd7ca}.postcard-queue .upload-item-message{margin:6px 0 0;color:var(--postcard-ink);font-size:13px;overflow-wrap:anywhere}.postcard-draft-message{grid-column:1/-1;min-width:0;padding-top:10px;border-top:1px solid #ead5c9}.postcard-draft-message label{color:var(--postcard-ink);font-weight:700}.postcard-draft-message label>span{margin-left:4px;color:var(--postcard-muted);font-size:11px;font-weight:500}.postcard-draft-message textarea{display:block;width:100%;min-width:0;min-height:56px;margin-top:5px;padding:8px 10px;border:1px solid var(--postcard-border);border-radius:6px;color:var(--postcard-ink);background:var(--postcard-paper);font-size:16px;line-height:1.35}.postcard-draft-message textarea::placeholder{color:var(--postcard-muted)}.postcard-message-help{display:flex;justify-content:space-between;gap:6px;margin-top:5px;color:var(--postcard-muted);font-size:11px;line-height:1.45}.postcard-message-help p{margin:0}.postcard-submit-drafts{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 14px;margin-top:16px}.postcard-upload .postcard-submit-drafts>.button{min-height:44px;border:0;border-radius:8px;color:#fff9f0;background:var(--postcard-ink)}.postcard-upload .postcard-submit-drafts>.button:hover:not(:disabled){background:var(--postcard-berry-dark)}.postcard-submit-drafts p{margin:0;color:var(--postcard-muted);font-size:12px}.postcard-queue .queue-end{flex-wrap:wrap;gap:4px 12px;margin-top:10px}.postcard-upload .text-link{min-height:44px;color:var(--postcard-berry-dark);font-size:13px}.postcard-reminder{display:flex;align-items:flex-start;gap:8px;margin:14px 2px 0;color:var(--postcard-muted);font-size:12px;line-height:1.5}@media (max-width:720px){.postcard-upload.container{width:calc(100% - 32px);padding-block:12px 32px}.postcard-event-heading{margin-bottom:8px}.postcard-intake{padding:16px;border-radius:14px}.postcard-spread{grid-template-columns:minmax(0,1fr);gap:17px}.postcard-intro{grid-area:1/1;padding:0;border:0}.postcard-intro h1{max-width:16ch;font-size:clamp(2.25rem,8.4vw,3.5rem)}.postcard-lede{margin-top:9px;font-size:14px}.postcard-actions{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px}.postcard-upload .postcard-actions button{min-height:48px;gap:6px;padding:8px;font-size:13px}.postcard-print{grid-area:2/1;aspect-ratio:auto;height:clamp(118px,35vw,205px);padding:5px 5px 11px;margin-inline:2px;transform:rotate(-1.5deg)}.postcard-print img{object-position:50% 43%}.postcard-print figcaption{margin:4px 1px -4px}.postcard-help,.postcard-status{margin-top:12px}.postcard-queue .upload-list{grid-template-columns:minmax(0,1fr)}.postcard-queue .upload-row{grid-template-columns:48px minmax(0,1fr) 44px;gap:8px;padding:9px}.postcard-queue .upload-preview{width:48px;height:54px}}@media (prefers-reduced-motion:reduce){.postcard-intake,.postcard-upload .postcard-actions button,.postcard-upload .postcard-submit-drafts>.button{transition:none}}