/* Scoped to the receipt: the landing, form and existing 3D scene stay intact. */
#order-dialog.showing-confirmation .form-meta,
#order-dialog.showing-confirmation .progress { display:none; }
#finished { text-align:left; padding-bottom:8px; }
#finished h2 { font-size:clamp(38px,4.2vw,62px); max-width:14ch; line-height:1; }
#finished .eyebrow { margin:4px 0 14px; color:#d1ef75; font-size:11px; }
#finished>p:not(.eyebrow) { color:#d0dccb; line-height:1.65; }
#finished .confirmation-details { margin:24px 0 12px; padding:18px; background:#111c14; border:1px solid #62765a; border-radius:12px; }
#finished .confirmation-details dt { color:#c2cebc; letter-spacing:.04em; }
#finished .confirmation-details dd { color:#f4f8ef; }
#confirm-ref { font-variant-numeric:tabular-nums; letter-spacing:.035em; user-select:all; }
#finished #payment-message { padding-left:12px; border-left:2px solid #b3c5a5; font-size:12px; }
#finished .text-button { min-height:44px; color:#d1ef75; }
.confirmation-art { position:relative; width:190px; height:155px; margin:0 0 16px; perspective:650px; isolation:isolate; }
.confirmation-art::before { content:''; position:absolute; inset:12px -30px -12px; background:radial-gradient(ellipse,#8ade5730,transparent 65%); }
.confirmation-coin { position:absolute; left:35px; top:15px; width:114px; height:114px; display:grid; place-items:center; border-radius:32px; background:linear-gradient(140deg,#d8ffac,#67d75c 62%,#2d983e); border:2px solid #d4ffb7; box-shadow:1px 1px #4b8c31,2px 2px #4b8c31,3px 3px #387329,4px 4px #387329,5px 5px #275323,9px 18px 30px #0008,inset 0 2px 4px #ffffffe6; transform:rotateX(15deg) rotateY(-20deg) rotateZ(-9deg); animation:receipt-arrive .7s cubic-bezier(.16,1,.3,1) both; }
.confirmation-coin svg { width:74px; height:74px; fill:none; stroke:#103a1e; stroke-width:7; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 1px 0 #edffd8); }
.confirmation-ring { position:absolute; inset:4px 2px; border:1px solid #a7e77970; border-radius:50%; transform:rotateX(65deg) rotateZ(-28deg); }
.confirmation-ring.ring-two { inset:18px -10px; transform:rotateY(65deg) rotateZ(25deg); border-color:#a7e77933; }
.confirmation-spark { width:8px; height:8px; background:#d1ef75; position:absolute; box-shadow:0 0 18px #a7ed6580; transform:rotate(30deg); animation:receipt-spark .8s ease-out both; }
.spark-one { left:9px; top:42px; }.spark-two { right:5px; top:17px; width:5px; height:5px; }.spark-three { right:18px; bottom:17px; border-radius:50%; }
.confirmation-wait { width:60px; height:60px; display:grid; place-items:center; border:1px solid #94a483; border-radius:18px; color:#d1ef75; font-size:32px; margin-bottom:20px; box-shadow:4px 5px 0 #101910; }
.confirmation-next { margin:24px 0; padding:18px; border:1px solid #63764d; border-radius:12px; background:linear-gradient(125deg,#a9d66212,#0b160e); }
.confirmation-next>span { display:block; font-size:10px; color:#d1ef75; letter-spacing:.15em; margin-bottom:6px; }
.confirmation-next strong { font-size:16px; color:#eff8e8; }.confirmation-next p { font-size:13px; color:#c6d3c0; margin-top:8px; }
.confirmation-summary { margin-top:30px; }.confirmation-summary h3,.confirmation-contact h3 { font-family:var(--sans); font-weight:600; font-size:19px; letter-spacing:-.02em; color:#f0f5e9; }
.confirmation-summary>p,.confirmation-contact>p { font-size:12px; color:#bfcdb6; margin-top:8px; }
#submitted-details { margin:16px 0 0; display:grid; grid-template-columns:1fr 1fr; column-gap:24px; }
#submitted-details>div { padding:13px 0; border-top:1px solid #b0c4922e; min-width:0; }
#submitted-details>.receipt-wide { grid-column:1/-1; }
#submitted-details dt { color:#afc1a1; font-size:11px; margin-bottom:4px; }
#submitted-details dd { margin:0; color:#f0f5e9; font-size:14px; white-space:pre-wrap; overflow-wrap:anywhere; }
.confirmation-contact { border-top:1px solid #6c7e595e; margin:20px 0 12px; padding-top:22px; }
#confirmation-socials { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
#confirmation-socials a { border:1px solid #7b9469; border-radius:9px; padding:10px 15px; color:#e3f6c0; font-size:13px; min-height:44px; }
#confirmation-socials a:hover { background:#344b2c; }
.effects-paused .confirmation-coin,.effects-paused .confirmation-spark { animation:none; }
@keyframes receipt-arrive { from { opacity:0; transform:translateY(18px) rotateX(35deg) rotateY(-50deg) rotateZ(-16deg) scale(.8); } to { opacity:1; transform:rotateX(15deg) rotateY(-20deg) rotateZ(-9deg); } }
@keyframes receipt-spark { from { opacity:0; scale:.3; } to { opacity:1; scale:1; } }
@media(max-width:760px) { .showing-confirmation .composer-preview { min-height:0; } #finished h2 { font-size:40px; } .confirmation-art { height:140px; margin-bottom:10px; } #submitted-details { column-gap:16px; } #finished .confirmation-details>div { grid-template-columns:95px minmax(0,1fr); gap:10px; } }
@media(prefers-reduced-motion:reduce) { .confirmation-coin,.confirmation-spark { animation:none; } }
