.xapp-fidelity-wrap,.xapp-manager,.xapp-fidelity-gate{--xf-bg:#f4f2ec;--xf-ink:#1c1d1b;--xf-muted:#686a65;--xf-card:#fbfaf7;--xf-accent:var(--xapp-user-accent,#245b4a);font-family:inherit;color:var(--xf-ink)}
.xapp-fidelity-kicker{margin:0 0 .45rem;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--xf-accent)}
.xapp-fidelity-user{display:flex;align-items:center;gap:1rem;margin:0 auto 1.3rem;max-width:760px}.xapp-fidelity-user h2{margin:0;font-size:clamp(1.7rem,5vw,2.4rem);letter-spacing:-.04em}.xapp-fidelity-sub{margin:.2rem 0 0;color:var(--xf-muted)}
.xapp-fidelity-user-avatar img,.xapp-fidelity-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover}.xapp-fidelity-empty,.xapp-fidelity-gate{max-width:760px;margin:1rem auto;padding:clamp(1.3rem,5vw,2.4rem);border:1px solid rgba(0,0,0,.08);border-radius:28px;background:var(--xf-card)}
.xapp-voucher-screen{position:relative;overflow:hidden;isolation:isolate;max-width:760px;margin:0 auto;padding:clamp(1.25rem,5vw,2.7rem);border-radius:34px;box-shadow:0 28px 80px rgba(0,0,0,.16);color:#f7f8f4;background:#12241f}.xapp-voucher-screen:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 48%)}.xapp-voucher-glow{position:absolute;z-index:-1;width:310px;height:310px;border-radius:50%;right:-90px;top:-120px;filter:blur(5px);background:radial-gradient(circle,rgba(115,255,207,.38),transparent 70%)}
.xapp-voucher-theme-glass{background:linear-gradient(135deg,#27302d,#171a19)}.xapp-voucher-theme-midnight{background:linear-gradient(140deg,#15161c,#272034)}.xapp-voucher-theme-warm{background:linear-gradient(140deg,#49352a,#231c18)}.xapp-voucher-theme-vivid{background:linear-gradient(135deg,#4b1d62,#102f59)}
.xapp-voucher-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.xapp-voucher-top h3{margin:.15rem 0;font-size:clamp(2rem,7vw,4.1rem);line-height:.96;letter-spacing:-.06em}.xapp-voucher-eyebrow{margin:0;font-size:.68rem;font-weight:850;letter-spacing:.15em;opacity:.75}.xapp-voucher-live{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .7rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);font-size:.66rem;font-weight:800}.xapp-voucher-live i{width:8px;height:8px;border-radius:50%;background:#6ff0a5;box-shadow:0 0 0 5px rgba(111,240,165,.12)}
.xapp-voucher-image{margin:1.4rem 0;border-radius:22px;overflow:hidden;max-height:290px}.xapp-voucher-image img{width:100%;height:100%;object-fit:cover}.xapp-voucher-copy{max-width:62ch;margin:1.4rem 0;color:rgba(255,255,255,.8)}.xapp-voucher-copy>*:last-child{margin-bottom:0}.xapp-voucher-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1.3rem 0}.xapp-voucher-meta span,.xapp-voucher-balance{padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.07)}.xapp-voucher-meta small,.xapp-voucher-balance span{display:block;font-size:.67rem;opacity:.68}.xapp-voucher-meta strong{display:block;margin-top:.25rem}.xapp-voucher-balance strong{display:block;font-size:clamp(2rem,8vw,3.8rem);letter-spacing:-.05em}.xapp-voucher-proof{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.2rem;padding:1rem 1.1rem;border-radius:21px;background:rgba(255,255,255,.93);color:#171917}.xapp-voucher-proof small{display:block;font-size:.61rem;font-weight:800;letter-spacing:.13em;color:#6c706b}.xapp-voucher-proof strong{font-size:1.42rem;letter-spacing:.08em}.xapp-live-ring{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--xf-accent) var(--xf-live,100%),#dfe2dd 0)}.xapp-live-ring:before{content:"";position:absolute}.xapp-live-ring span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;font-size:.72rem;font-weight:800}.xapp-voucher-note{margin:.85rem 0 0;font-size:.72rem;color:rgba(255,255,255,.6)}.xapp-fidelity-more{text-align:center;color:var(--xf-muted);font-size:.82rem}.xapp-fidelity-profile{max-width:760px;margin:1rem auto;padding:1rem 1.2rem;border:1px solid rgba(0,0,0,.09);border-radius:20px;background:#fff}.xapp-fidelity-profile summary{cursor:pointer;font-weight:750}.xapp-fidelity-profile input[type=date]{min-height:46px;padding:.6rem;border:1px solid #cfd2cc;border-radius:12px}.xapp-fidelity-privacy,.xapp-help{font-size:.78rem;color:var(--xf-muted)}
.xapp-fidelity-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1rem;border:0;border-radius:14px;background:var(--xf-accent);color:#fff!important;text-decoration:none;font-weight:760;cursor:pointer}.xapp-fidelity-btn-secondary{background:#eceee9!important;color:#222!important}.xapp-fidelity-btn-small{min-height:42px;font-size:.82rem}.xapp-check{display:flex;gap:.55rem;align-items:flex-start}
.xapp-manager{max-width:1180px;margin:0 auto;padding:1rem}.xapp-manager-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem}.xapp-manager-head h2,.xapp-voucher-form h2,.xapp-redeem-panel h2{margin:.1rem 0;font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.05em}.xapp-manager-head p{max-width:62ch;color:var(--xf-muted)}.xapp-manager-grid{display:grid;grid-template-columns:minmax(220px,.35fr) 1fr;gap:1rem}.xapp-manager-panel,.xapp-manager-row,.xapp-voucher-form,.xapp-redeem-panel{border:1px solid rgba(0,0,0,.08);border-radius:24px;background:#fff}.xapp-manager-panel{padding:1.1rem;align-self:start}.xapp-manager-panel label,.xapp-voucher-form label,.xapp-redeem-panel label{display:grid;gap:.35rem;font-weight:680}.xapp-manager-panel select,.xapp-voucher-form input,.xapp-voucher-form select,.xapp-voucher-form textarea,.xapp-redeem-panel input,.xapp-redeem-panel select{width:100%;min-height:48px;padding:.65rem .75rem;border:1px solid #d2d5cf;border-radius:13px;background:#fff;color:#171917;font:inherit}.xapp-manager-list{display:grid;gap:.65rem}.xapp-manager-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem}.xapp-manager-row h3{margin:.25rem 0 .1rem}.xapp-manager-row p{margin:0;color:var(--xf-muted);font-size:.8rem}.xapp-chip{font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .55rem;border-radius:999px;background:#eef1ec}.xapp-manager-actions{display:flex;align-items:center;gap:.6rem}.xapp-manager-actions a,.xapp-manager-actions button{border:0;background:none;color:var(--xf-accent);font-weight:750;cursor:pointer;text-decoration:none}.xapp-inline{display:inline;margin:0}.xapp-manager-empty{padding:2rem;text-align:center;border:1px dashed #cfd2cc;border-radius:20px;color:var(--xf-muted)}
.xapp-voucher-form,.xapp-redeem-panel{margin-top:1.3rem;padding:clamp(1rem,4vw,2rem)}.xapp-voucher-form>header{max-width:700px}.xapp-form-section{position:relative;margin-top:1rem;padding:1.3rem;border-radius:22px;background:#f7f7f3}.xapp-form-section h3{margin:.1rem 0 1rem;font-size:1.25rem}.xapp-form-step{position:absolute;right:1rem;top:1rem;color:#a2a59f;font-size:.72rem;font-weight:850}.xapp-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.xapp-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-bottom:.9rem}.xapp-choice{display:block!important}.xapp-choice input{position:absolute;opacity:0;pointer-events:none}.xapp-choice span{display:block;min-height:104px;padding:1rem;border:1px solid #d5d8d2;border-radius:16px;background:#fff}.xapp-choice input:checked+span{border-color:var(--xf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--xf-accent) 15%,transparent)}.xapp-choice strong,.xapp-choice small{display:block}.xapp-choice small{margin-top:.25rem;color:var(--xf-muted);font-weight:400}.xapp-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.xapp-weekdays{display:flex;flex-wrap:wrap;gap:.4rem}.xapp-weekdays label input{position:absolute;opacity:0}.xapp-weekdays span{display:grid;place-items:center;min-width:48px;min-height:44px;border:1px solid #d1d4ce;border-radius:12px;background:#fff}.xapp-weekdays input:checked+span{background:var(--xf-accent);color:#fff;border-color:var(--xf-accent)}.xapp-form-actions{position:sticky;bottom:12px;z-index:4;display:flex;gap:.7rem;margin-top:1rem;padding:.7rem;border-radius:18px;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);box-shadow:0 12px 38px rgba(0,0,0,.1)}
.xapp-redeem-panel>p{max-width:70ch;color:var(--xf-muted)}
@media(max-width:760px){.xapp-manager-head{align-items:flex-start;flex-direction:column}.xapp-manager-grid{grid-template-columns:1fr}.xapp-field-row,.xapp-choice-grid,.xapp-check-grid{grid-template-columns:1fr}.xapp-manager-row{align-items:flex-start;flex-direction:column}.xapp-voucher-meta{grid-template-columns:1fr}.xapp-voucher-proof strong{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.xapp-voucher-screen *{animation:none!important;transition:none!important}}
.xapp-user-tags-panel{margin-top:1rem;padding:1rem 1.2rem;border:1px solid rgba(0,0,0,.08);border-radius:20px;background:#fff}.xapp-user-tags-panel summary{cursor:pointer;font-weight:800}.xapp-user-tags-panel form{display:grid;grid-template-columns:1fr 1fr auto;gap:.7rem;align-items:end;margin-top:1rem}.xapp-user-tags-panel label{display:grid;gap:.35rem;font-weight:680}.xapp-user-tags-panel input,.xapp-user-tags-panel select{min-height:46px;padding:.6rem .7rem;border:1px solid #d2d5cf;border-radius:12px;background:#fff;font:inherit}.xapp-current-art{display:flex;gap:.8rem;align-items:center;margin:.7rem 0}.xapp-current-art img{width:110px;height:80px;object-fit:cover;border-radius:14px}@media(max-width:760px){.xapp-user-tags-panel form{grid-template-columns:1fr}}
.xapp-voucher-brand{margin:0 0 .25rem;font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;opacity:.9}.xapp-fidelity-challenge{max-width:760px;margin:1.2rem auto 0;padding:clamp(1.2rem,5vw,2rem);border:1px solid rgba(0,0,0,.08);border-radius:28px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.07)}.xapp-fidelity-challenge h3{margin:.15rem 0 .5rem;font-size:clamp(1.65rem,5vw,2.5rem);letter-spacing:-.04em}.xapp-fidelity-challenge>p:not(.xapp-fidelity-kicker){color:var(--xf-muted)}.xapp-challenge-question{margin:1rem 0;padding:0;border:0}.xapp-challenge-question legend{display:flex;gap:.6rem;align-items:flex-start;margin-bottom:.65rem;font-weight:800}.xapp-challenge-question legend span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#edf0eb;color:var(--xf-accent);font-size:.75rem}.xapp-challenge-options{display:grid;gap:.5rem}.xapp-challenge-options label{display:block}.xapp-challenge-options input{position:absolute;opacity:0}.xapp-challenge-options span{display:block;min-height:50px;padding:.75rem .9rem;border:1px solid #d5d8d2;border-radius:14px;background:#fafbf8}.xapp-challenge-options input:checked+span{border-color:var(--xf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--xf-accent) 13%,transparent);background:#fff}.xapp-question-builder{margin:.75rem 0;padding:.8rem 1rem;border:1px solid #d9dcd6;border-radius:16px;background:#fff}.xapp-question-builder summary{cursor:pointer;font-weight:800}.xapp-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:.7rem 0}@media(max-width:760px){.xapp-answer-grid{grid-template-columns:1fr}}
.xapp-fidelity-notice{max-width:760px;margin:0 auto 1rem;padding:.85rem 1rem;border-radius:15px;font-weight:700}.xapp-fidelity-notice.is-success{background:#e7f7ed;color:#1d6137}.xapp-fidelity-notice.is-error{background:#fff0e8;color:#8d3b17}

/* XApp Fidelity 6.0 — wallet-card visual language */
.xapp-wallet{position:relative;overflow:hidden;isolation:isolate;width:min(100%,760px);min-height:clamp(300px,48vw,470px);margin:0 auto;border-radius:clamp(24px,5vw,38px);padding:clamp(1.15rem,4vw,2.1rem);color:#f8faf7;background:linear-gradient(135deg,#11372f,#16241f);box-shadow:0 28px 85px rgba(10,18,15,.22);display:grid;grid-template-rows:auto 1fr auto;gap:1rem;aspect-ratio:1.586/1}
.xapp-wallet:after{content:"";position:absolute;inset:1px;z-index:-1;border:1px solid rgba(255,255,255,.17);border-radius:inherit;pointer-events:none}
.xapp-wallet-holo{position:absolute;z-index:-4;inset:-40%;background:conic-gradient(from 140deg at 50% 50%,rgba(88,255,209,.18),rgba(103,138,255,.14),rgba(255,138,211,.13),rgba(255,211,112,.13),rgba(88,255,209,.18));filter:blur(35px);transform:rotate(-8deg)}
.xapp-wallet-artwork{position:absolute;z-index:-5;inset:0}.xapp-wallet-artwork img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(.96)}.xapp-wallet-scrim{position:absolute;z-index:-3;inset:0;background:linear-gradient(115deg,rgba(8,17,14,.92) 0%,rgba(8,17,14,.72) 48%,rgba(8,17,14,.38) 100%)}
.xapp-voucher-theme-glass.xapp-wallet{background:linear-gradient(135deg,#25312e,#171a19)}.xapp-voucher-theme-midnight.xapp-wallet{background:linear-gradient(135deg,#0f1320,#281d39)}.xapp-voucher-theme-warm.xapp-wallet{background:linear-gradient(135deg,#543524,#241b17)}.xapp-voucher-theme-vivid.xapp-wallet{background:linear-gradient(135deg,#5c176f,#123966)}
.xapp-wallet-head,.xapp-wallet-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;position:relative;z-index:2}.xapp-wallet-brand{display:flex;align-items:center;gap:.65rem;min-width:0}.xapp-wallet-brand strong,.xapp-wallet-brand small{display:block}.xapp-wallet-brand strong{max-width:22ch;font-size:clamp(.95rem,2vw,1.15rem);line-height:1.1}.xapp-wallet-brand small{margin-top:.2rem;font-size:.58rem;font-weight:850;letter-spacing:.14em;opacity:.65}.xapp-wallet-logo{width:42px;height:42px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.92);padding:4px}
.xapp-wallet-screen{align-self:center;position:relative;z-index:2;max-width:82%;padding:clamp(.9rem,3vw,1.4rem);border:1px solid rgba(255,255,255,.15);border-radius:clamp(18px,3vw,26px);background:rgba(255,255,255,.08);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}.xapp-wallet-screen h3{margin:.18rem 0 .35rem;font-size:clamp(1.7rem,5.5vw,3.7rem);line-height:.95;letter-spacing:-.055em;text-wrap:balance}.xapp-wallet-screen>p:last-of-type{margin:.35rem 0 0;max-width:48ch;font-size:clamp(.74rem,1.5vw,.92rem);line-height:1.45;color:rgba(255,255,255,.76)}.xapp-wallet-balance{margin-top:.9rem}.xapp-wallet-balance span{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;opacity:.65}.xapp-wallet-balance strong{display:block;font-size:clamp(1.7rem,5vw,3rem);line-height:1;letter-spacing:-.045em}
.xapp-wallet-holder{display:flex;align-items:center;gap:.6rem;min-width:0}.xapp-wallet-avatar{width:44px!important;height:44px!important;flex:0 0 44px;border:2px solid rgba(255,255,255,.55);border-radius:50%;object-fit:cover}.xapp-wallet-holder small,.xapp-wallet-validity small{display:block;font-size:.55rem;font-weight:850;letter-spacing:.13em;opacity:.6}.xapp-wallet-holder strong,.xapp-wallet-validity strong{display:block;margin-top:.1rem;font-size:.78rem}.xapp-wallet-holder span{display:block;margin-top:.05rem;font-size:.56rem;letter-spacing:.12em;opacity:.55}.xapp-wallet-validity{text-align:right;align-self:center}.xapp-wallet-details{max-width:760px;margin:.8rem auto 0;padding:clamp(1rem,4vw,1.4rem);border:1px solid rgba(0,0,0,.08);border-radius:24px;background:var(--xf-card);box-shadow:0 16px 48px rgba(0,0,0,.06)}.xapp-wallet-details .xapp-voucher-copy{color:var(--xf-muted);margin:.2rem 0 1rem}
@media(max-width:560px){.xapp-wallet{aspect-ratio:auto;min-height:390px}.xapp-wallet-screen{max-width:100%}.xapp-wallet-head{align-items:center}.xapp-wallet-brand strong{max-width:16ch}.xapp-wallet-foot{align-items:flex-end}.xapp-wallet-validity strong{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.xapp-wallet-holo{transform:none!important}}

/* XApp Fidelity 6.1 — wallet deck, persistent Gift Card and graceful empty state */
.xapp-wallet-deck{max-width:760px;margin:0 auto}.xapp-wallet-panel[hidden]{display:none!important}.xapp-wallet-switcher{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.55rem;margin:.8rem 0 0}.xapp-wallet-switcher button{min-height:58px;padding:.65rem .8rem;border:1px solid rgba(0,0,0,.09);border-radius:16px;background:#fff;color:var(--xf-ink);text-align:left;font:inherit;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.xapp-wallet-switcher button:hover{transform:translateY(-1px)}.xapp-wallet-switcher button[aria-pressed="true"]{border-color:color-mix(in srgb,var(--xf-accent) 55%,#d4d7d1);box-shadow:0 0 0 3px color-mix(in srgb,var(--xf-accent) 10%,transparent)}.xapp-wallet-switcher span,.xapp-wallet-switcher strong{display:block}.xapp-wallet-switcher span{font-size:.61rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase;color:var(--xf-muted)}.xapp-wallet-switcher strong{margin-top:.12rem;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xapp-wallet-empty .xapp-wallet-screen{max-width:88%}.xapp-wallet-empty .xapp-voucher-live.is-idle i{background:#9edeb9;box-shadow:0 0 0 5px rgba(158,222,185,.12)}.xapp-fidelity-admin-hint{margin-top:1rem;padding:.8rem 1rem;border-radius:14px;background:#fff6d9;color:#5f4d13;font-size:.85rem}.xapp-wallet-type-gift{background:linear-gradient(135deg,#0d2320 0%,#142f2a 44%,#0d1715 100%)}.xapp-wallet-type-gift:before{content:"GIFT";position:absolute;right:clamp(1rem,4vw,2rem);bottom:clamp(4.6rem,8vw,6.4rem);font-size:clamp(3rem,12vw,7rem);font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.045);pointer-events:none}.xapp-wallet-type-gift .xapp-wallet-balance{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.10)}.xapp-wallet-type-gift .xapp-wallet-balance strong{font-variant-numeric:tabular-nums}.xapp-wallet-type-gift .xapp-wallet-screen{box-shadow:inset 0 1px rgba(255,255,255,.08)}
@media(max-width:560px){.xapp-wallet-switcher{grid-template-columns:1fr 1fr}.xapp-wallet-switcher button{min-width:0}.xapp-wallet-empty .xapp-wallet-screen{max-width:100%}}
@media(prefers-reduced-motion:reduce){.xapp-wallet-switcher button{transition:none!important}}
