/* Pexlumi — Invitation Details: the custom song request form (with form.css; uses the Pexlumi Haldi colours when they are there). */
.pxs .pxs-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:30px;align-items:start}
.pxs-form{grid-template-columns:minmax(0,1fr);background:#fff;border:3px solid var(--pxo-haldi);border-radius:34px;padding:26px 28px 30px;box-shadow:0 24px 60px -30px rgba(43,16,53,.45);display:grid;gap:22px;min-width:0}
.pxs-l{display:block;font:800 15px var(--sans,system-ui);color:var(--pxo-ink);margin-bottom:8px}
.pxs-l small,.pxo-f label small{font-weight:600;color:var(--pxo-mute)}
.pxs-small{font:600 13.5px/1.45 var(--sans,system-ui);color:var(--pxo-mute);margin:6px 0 0}
.pxs-q{margin:4px 0 14px}
.pxs-g[hidden],.pxs-own[hidden],.pxs-rm[hidden],.pxs-which[hidden],.pxs-freeon[hidden],.pxs .err[hidden],.pxs-file[hidden]{display:none!important}
.pxs .pxo-card{margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
.pxs .pxo-f input,.pxs .pxo-f select{max-width:100%}
.pxs .pxo-f select{width:100%;border:2px solid #eadfc8;background:#fffcf4;border-radius:14px;padding:12px 14px;font:600 16px/1.3 var(--sans,system-ui);color:var(--pxo-ink)}
.pxs textarea[data-f="lyricsText"]{width:100%;border:2px solid #eadfc8;background:#fffcf4;border-radius:14px;padding:12px 14px;font:600 16px/1.4 var(--sans,system-ui);color:var(--pxo-ink)}

/* how many songs */
.pxs-step{display:inline-flex;align-items:center;gap:6px;background:#fffcf4;border:2px solid #eadfc8;border-radius:99px;padding:4px}
.pxs-step button{width:42px;height:42px;border-radius:50%;border:0;background:var(--pxo-ink);color:#fff;font:800 24px/1 var(--round,system-ui);cursor:pointer}
.pxs-step button:disabled{opacity:.25;cursor:default}
.pxs-count{min-width:40px;text-align:center;font:800 24px/1 var(--round,system-ui);color:var(--pxo-ink)}

/* one card per song */
.pxs-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.pxs-card{min-width:0;border:2px solid #f0e3c8;border-radius:26px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;background:#fffdf7}
.pxs-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pxs-n{font:800 28px/1 var(--round,system-ui);color:var(--pxo-rani);margin:0}

/* choices */
.pxs-pick{display:flex;flex-wrap:wrap;gap:8px}
.pxs-pick button{border:2px solid #eadfc8;background:#fffcf4;color:var(--pxo-ink);border-radius:99px;padding:8px 15px;font:800 14.5px/1.2 var(--sans,system-ui);cursor:pointer;text-align:left;transition:transform .2s}
.pxs-pick button:hover{transform:scale(1.04)}
.pxs-pick button small{display:block;font-weight:600;font-size:12.5px;opacity:.8;margin-top:2px}
.pxs-pick button[aria-pressed="true"]{background:var(--pxo-ink);border-color:var(--pxo-ink);color:#fff}
.pxs-pick.big button{border-radius:18px;padding:10px 16px}

/* lyrics */
.pxs-drop{border:2px dashed #e3d4b4;border-radius:18px;padding:14px 16px;background:#fffcf4;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pxs-drop>span{font-size:28px}
.pxs-drop input{flex:1 1 150px;min-width:0;max-width:100%;font:700 14.5px var(--sans,system-ui)}
.pxs-file{width:100%;color:var(--pxo-parrot);font:800 14.5px var(--sans,system-ui)}
.pxs-or{display:flex;align-items:center;gap:10px;color:var(--pxo-mute);font:800 13px var(--sans,system-ui);margin:14px 0 8px}
.pxs-or::before,.pxs-or::after{content:"";flex:1;height:2px;background:#f0e3c8}

/* offer and consent */
.pxs-free{background:#fff1f7;border:2px solid var(--pxo-rani);border-radius:18px;padding:14px 16px;display:grid;gap:12px}
.pxs-tag{font:700 22px/1 var(--hand,cursive);color:var(--pxo-rani)}
.pxs-tick{display:flex;gap:12px;align-items:flex-start;font:700 15px/1.45 var(--sans,system-ui);color:var(--pxo-ink);cursor:pointer}
.pxs-tick input{width:22px;height:22px;flex:none;accent-color:var(--pxo-rani);margin-top:1px}
.pxs-tick a{color:var(--pxo-rani)}
.pxs-choose{background:#f1f8ff;border-radius:16px;padding:12px 14px}
.pxs-choose small{display:block;font-weight:600;font-size:13.5px;color:var(--pxo-mute);margin-top:2px}
.pxs-feel[hidden]{display:none!important}
.pxs-acts{display:flex;justify-content:flex-end}

/* the summary beside the form */
.pxs-side{position:sticky;top:20px}
.pxs-sumbox{background:#fff8dc;border-radius:28px;padding:20px 22px}
.pxs-sumbox h4{font:800 20px/1.2 var(--round,system-ui);margin:0 0 10px;color:var(--pxo-ink)}
.pxs-sum{background:#fff;border-radius:18px;padding:14px 16px;font:500 14.5px/1.55 var(--sans,system-ui);color:var(--pxo-ink)}
.pxs-sum h5{font:800 17px/1.2 var(--round,system-ui);margin:12px 0 4px;color:var(--pxo-rani)}
.pxs-sum h5:first-child{margin-top:0}
.pxs-sum p{margin:12px 0 0}

@media(max-width:900px){.pxs .pxs-grid{grid-template-columns:minmax(0,1fr)}.pxs-side{position:static}}
@media(max-width:600px){.pxs-form{padding:18px 14px 22px;border-radius:26px}.pxs-card{padding:14px}.pxs-acts{justify-content:stretch}.pxs-acts .pxo-btn{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.pxs-pick button:hover{transform:none}}
