:root{--bg:#0d0b0b;--panel:#171313;--panel2:#21191a;--gold:#c9a76a;--text:#fffaf0;--muted:#b9ada4;--line:rgba(201,167,106,.24);--danger:#ff8b8b;--ok:#8bd6a7;--radius:22px;--shadow:0 20px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:radial-gradient(circle at top,#241516 0,#0d0b0b 42%);padding-bottom:calc(88px + env(safe-area-inset-bottom))}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{width:min(1180px,100%);margin:auto;padding:20px clamp(16px,4vw,42px) 40px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}.brand img{width:44px;height:44px;object-fit:contain}.brand strong{font-family:Georgia,serif;letter-spacing:.04em}.top-actions{display:flex;gap:10px}.icon-btn,.btn{border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--text);border-radius:14px;min-height:44px;padding:0 16px;cursor:pointer}.btn.primary{background:linear-gradient(135deg,#d4b476,#aa7f3e);color:#17110a;border:none;font-weight:750}.btn:disabled{opacity:.55;cursor:not-allowed}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-bottom:18px}.card{background:linear-gradient(160deg,rgba(38,28,29,.96),rgba(20,16,16,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(18px,3vw,28px);min-width:0}.eyebrow{color:var(--gold);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}.hero h1,.section-title{font-family:Georgia,serif;margin:.35rem 0 .5rem}.hero h1{font-size:clamp(2rem,6vw,4.4rem);line-height:.95}.muted{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat{padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}.stat strong{display:block;font-size:clamp(1.35rem,4vw,2.4rem);font-family:Georgia,serif}.stat span{color:var(--muted);font-size:.86rem}.member-card{display:flex;flex-direction:column;justify-content:space-between;min-height:240px;background:linear-gradient(135deg,#130f10,#43171c);overflow:hidden;position:relative}.member-card:after{content:"";position:absolute;inset:auto -60px -90px auto;width:220px;height:220px;border:1px solid rgba(201,167,106,.35);border-radius:50%}.member-code{font-size:clamp(1.4rem,4vw,2.4rem);letter-spacing:.08em}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product{display:flex;flex-direction:column;gap:12px}.product img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:16px;background:rgba(255,255,255,.03)}.product h3{margin:0}.product-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.price{font-family:Georgia,serif;font-size:1.2rem;color:var(--gold)}.status{display:none;margin:12px 0;padding:12px 14px;border-radius:14px}.status.show{display:block}.status.error{background:rgba(255,80,80,.1);color:var(--danger);border:1px solid rgba(255,80,80,.25)}.status.ok{background:rgba(80,255,140,.09);color:var(--ok);border:1px solid rgba(80,255,140,.2)}.skeleton{position:relative;overflow:hidden;background:rgba(255,255,255,.06)!important;color:transparent!important}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:shimmer 1.2s infinite}@keyframes shimmer{to{transform:translateX(100%)}}.bottom-nav{position:fixed;z-index:20;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(680px,calc(100% - 24px));display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:7px;background:rgba(18,14,14,.92);backdrop-filter:blur(22px);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 50px rgba(0,0,0,.4)}.bottom-nav a{min-width:0;text-align:center;color:var(--muted);text-decoration:none;padding:10px 4px;border-radius:15px;font-size:.72rem}.bottom-nav a.active{color:var(--text);background:rgba(201,167,106,.14)}.empty{text-align:center;padding:36px;color:var(--muted)}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(460px,100%)}.field{display:grid;gap:8px;margin:14px 0}.field input{width:100%;min-height:50px;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:0 14px}.login-card .btn{width:100%;margin-top:10px}.spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:820px){.hero{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.app-shell{padding:14px 12px 28px}.topbar{margin-bottom:14px}.brand strong{font-size:.92rem}.hero h1{font-size:2.45rem}.card{border-radius:18px;padding:17px}.grid{grid-template-columns:1fr}.stats{gap:8px}.stat{padding:13px}.bottom-nav{width:calc(100% - 16px);bottom:max(8px,env(safe-area-inset-bottom))}.bottom-nav a{font-size:.66rem}.top-actions .btn{padding:0 12px}}


/* TECH14JU · accesso Google V2 */
.google-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin-top:18px;background:#fff;color:#201b1b;border-color:rgba(255,255,255,.85);font-weight:750;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.google-btn:hover{background:#f8f8f8}
.google-btn:focus-visible,.btn:focus-visible,.field input:focus-visible{outline:3px solid rgba(201,167,106,.55);outline-offset:3px}
.google-icon{width:20px;height:20px;flex:0 0 20px}
.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0 4px;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}
.login-divider::before,.login-divider::after{content:"";height:1px;flex:1;background:var(--line)}
.login-divider span{white-space:nowrap}

/* TECH14JV · Cestino V2 */
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:4px 0 22px}.page-heading .section-title{font-size:clamp(2.2rem,6vw,4rem);margin-bottom:.25rem}.page-heading p{margin:.2rem 0 0}.cart-count-pill{display:flex;align-items:baseline;gap:7px;flex:0 0 auto;padding:13px 18px;border:1px solid var(--line);border-radius:999px;background:rgba(201,167,106,.09)}.cart-count-pill span{font:700 1.55rem Georgia,serif;color:var(--gold)}.cart-count-pill small{color:var(--muted)}.cart-loading{min-height:160px;display:grid;place-items:center}.cart-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);align-items:start;gap:18px}.cart-items{display:grid;gap:14px;min-width:0}.cart-item{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:18px;padding:17px}.cart-item-image{width:112px;height:112px;margin:0;border-radius:17px;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.035);color:var(--gold);font-size:2rem}.cart-item-image img{width:100%;height:100%;object-fit:contain}.cart-item-content{min-width:0}.cart-item-content h2{font:600 clamp(1.15rem,2.5vw,1.55rem) Georgia,serif;margin:.32rem 0;overflow-wrap:anywhere}.cart-item-option,.cart-item-points{margin:.25rem 0;color:var(--muted);font-size:.88rem}.cart-item-points{color:var(--gold)}.cart-item-actions{display:grid;justify-items:end;gap:9px;min-width:150px}.cart-unit-price{font-size:.78rem;color:var(--muted)}.quantity-control{display:grid;grid-template-columns:42px 42px 42px;align-items:center;border:1px solid var(--line);border-radius:14px;overflow:hidden}.quantity-control button{height:42px;border:0;background:rgba(255,255,255,.04);color:var(--text);font-size:1.2rem;cursor:pointer}.quantity-control output{text-align:center;font-weight:750}.cart-line-total{font:700 1.2rem Georgia,serif;color:var(--gold)}.cart-remove{border:0;background:transparent;color:#d8aaa7;padding:4px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.cart-item-mobile-price{display:none}.cart-summary{position:sticky;top:18px}.cart-summary h2{font:600 1.65rem Georgia,serif;margin:.4rem 0 1.25rem}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;color:var(--muted);border-bottom:1px solid rgba(201,167,106,.12)}.summary-row strong{color:var(--text)}.summary-total{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:22px 0}.summary-total strong{font:700 clamp(1.55rem,4vw,2.2rem) Georgia,serif;color:var(--gold)}.cart-checkout,.cart-continue{width:100%;display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:9px}.cart-helper{margin:15px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.cart-empty{text-align:center;padding:clamp(34px,8vw,76px);max-width:720px;margin:auto}.cart-empty h2{font:600 1.8rem Georgia,serif;margin:.5rem}.cart-empty .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin-top:12px}.cart-empty-icon{font-size:3.2rem;color:var(--gold)}.nav-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:3px;padding:0 4px;border-radius:999px;background:var(--gold);color:#17110a;font-size:.62rem;font-weight:800;vertical-align:middle}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.cart-item{grid-template-columns:92px minmax(0,1fr) auto}.cart-item-image{width:92px;height:92px}}
@media(max-width:620px){.page-heading{align-items:center}.cart-count-pill{padding:10px 13px}.cart-count-pill small{display:none}.cart-item{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:14px}.cart-item-image{width:72px;height:82px}.cart-item-actions{grid-column:1/-1;width:100%;grid-template-columns:auto 1fr auto;align-items:center;justify-items:stretch;gap:10px;padding-top:10px;border-top:1px solid rgba(201,167,106,.12)}.cart-unit-price{display:none}.quantity-control{grid-column:1;width:126px}.cart-line-total{grid-column:2;text-align:right}.cart-remove{grid-column:3;text-decoration:none;border:1px solid rgba(216,170,167,.25);border-radius:11px;padding:9px 10px}.cart-item-mobile-price{display:block;margin-top:7px;color:var(--gold);font:600 1rem Georgia,serif}.cart-summary{padding-bottom:22px}}
@media(max-width:380px){.page-heading .section-title{font-size:2rem}.cart-count-pill{padding:8px 11px}.cart-item{grid-template-columns:60px minmax(0,1fr)}.cart-item-image{width:60px;height:72px}.cart-remove{font-size:.72rem;padding:9px 7px}.quantity-control{width:114px;grid-template-columns:38px 38px 38px}}

/* TECH14JW · Catalogo e Prodotto V2 */
[hidden]{display:none!important}
.catalog-heading{align-items:center}.catalog-cart-link{text-decoration:none;color:inherit}.catalog-loading{grid-column:1/-1;min-height:180px;display:grid;place-items:center}.catalog-product-v2 h2{font:600 1.35rem Georgia,serif;margin:0}.catalog-product-image{display:block;text-decoration:none}.catalog-product-image img{transition:transform .25s ease}.catalog-product-image:hover img{transform:scale(1.02)}.catalog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.catalog-actions .btn{display:flex;align-items:center;justify-content:center;text-decoration:none}.catalog-actions .is-added{background:#31533c;color:#fff}
.product-back{display:inline-flex;margin:0 0 18px;color:var(--gold);text-decoration:none}.product-detail-v2{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:clamp(22px,5vw,54px);align-items:center}.product-detail-image-v2{min-width:0;border-radius:20px;background:rgba(255,255,255,.025);padding:18px}.product-detail-image-v2 img{width:100%;max-height:560px;object-fit:contain}.product-detail-content-v2 h1{font:600 clamp(2rem,5vw,4rem) Georgia,serif;margin:.35rem 0}.product-detail-price-v2{display:block;font:700 clamp(1.5rem,4vw,2.4rem) Georgia,serif;color:var(--gold);margin-bottom:16px}.product-options-v2{border:0;padding:0;margin:20px 0}.product-options-v2 legend{color:var(--gold);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}.option-buttons-v2{display:flex;flex-wrap:wrap;gap:8px}.option-button-v2.is-selected{background:rgba(201,167,106,.22);border-color:var(--gold);color:var(--gold)}.product-purchase-v2{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:end;margin-top:22px}.product-qty-v2{display:grid;gap:7px;color:var(--muted);font-size:.8rem}.product-qty-v2 input{width:100%;height:48px;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:0 14px;font-size:1rem}.product-purchase-v2 .btn{height:48px}.product-feedback-v2{margin-top:12px}.product-cart-link-v2{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin-top:12px}
@media(max-width:760px){.product-detail-v2{grid-template-columns:1fr}.product-detail-image-v2 img{max-height:360px}.catalog-actions{grid-template-columns:1fr 1.1fr}}
@media(max-width:420px){.catalog-heading{align-items:flex-start}.catalog-cart-link small{display:none}.product-purchase-v2{grid-template-columns:96px minmax(0,1fr)}.catalog-actions{grid-template-columns:1fr}}

/* TECH14JY · Punti V2 */
.points-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:16px}.points-hero h1{font:600 clamp(2.2rem,6vw,4.2rem) Georgia,serif;margin:.32rem 0}.points-hero p{margin:.35rem 0 0}.points-balance{min-width:190px;text-align:right;padding:14px 18px;border-left:1px solid var(--line)}.points-balance span,.points-balance small{display:block;color:var(--muted);font-size:.78rem}.points-balance strong{display:block;font:700 clamp(2.2rem,6vw,4rem) Georgia,serif;color:var(--gold);line-height:1}.points-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0}.points-filters{display:flex;gap:8px;overflow-x:auto;padding:3px 2px;scrollbar-width:none}.points-filters::-webkit-scrollbar{display:none}.points-filters .btn{white-space:nowrap}.points-filters .is-active{background:rgba(201,167,106,.18);border-color:var(--gold);color:var(--gold)}.points-refresh{flex:0 0 auto}.points-state{min-height:220px}.points-loading{min-height:220px;display:grid;place-items:center}.points-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.reward-card{display:flex;flex-direction:column;padding:0;overflow:hidden}.reward-image{margin:0;display:grid;place-items:center;aspect-ratio:1/.82;background:rgba(255,255,255,.025);padding:18px}.reward-image img{width:100%;height:100%;object-fit:contain}.reward-card-body{display:flex;flex:1;flex-direction:column;padding:20px}.reward-card h2{font:600 1.4rem Georgia,serif;margin:.45rem 0}.reward-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.reward-card-footer{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px}.reward-cost strong{display:block;font:700 1.45rem Georgia,serif;color:var(--gold)}.reward-cost span{color:var(--muted);font-size:.76rem}.reward-card .is-unavailable{background:rgba(255,255,255,.04);color:var(--muted);border:1px solid var(--line)}.points-empty{text-align:center;padding:clamp(38px,8vw,78px)}.reward-dialog{width:min(920px,calc(100% - 24px));max-height:min(820px,calc(100dvh - 24px));padding:0;border:1px solid var(--line);border-radius:24px;background:#171313;color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.65)}.reward-dialog::backdrop{background:rgba(5,4,4,.78);backdrop-filter:blur(9px)}.reward-dialog-card{position:relative;display:grid;grid-template-columns:minmax(240px,.82fr) minmax(0,1.18fr);margin:0;min-width:0}.reward-dialog-close{position:absolute;z-index:2;top:12px;right:12px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(13,11,11,.85);color:var(--text);font-size:1.5rem;cursor:pointer}.reward-dialog-image{margin:0;min-height:430px;display:grid;place-items:center;background:linear-gradient(150deg,#201719,#100d0d);padding:28px}.reward-dialog-image img{width:100%;height:100%;max-height:480px;object-fit:contain}.reward-dialog-content{padding:clamp(24px,5vw,44px);overflow:auto}.reward-dialog-content h2{font:600 clamp(2rem,5vw,3.4rem) Georgia,serif;margin:.35rem 0}.reward-options{display:grid;gap:16px;margin:24px 0}.reward-option-group{border:0;padding:0;margin:0}.reward-option-group legend{color:var(--gold);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px}.reward-option-group>div{display:flex;flex-wrap:wrap;gap:8px}.reward-option.is-selected{background:rgba(201,167,106,.2);border-color:var(--gold);color:var(--gold)}.reward-dialog-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.reward-dialog-summary>div{padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.reward-dialog-summary span{display:block;color:var(--muted);font-size:.76rem}.reward-dialog-summary strong{display:block;margin-top:4px;color:var(--gold);font:600 1.15rem Georgia,serif}.reward-dialog-error{padding:11px 13px;border:1px solid rgba(255,80,80,.25);border-radius:12px;background:rgba(255,80,80,.1);color:var(--danger)}.reward-confirm{width:100%;min-height:50px}.reward-dialog[open]{animation:reward-dialog-in .18s ease-out}@keyframes reward-dialog-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:860px){.points-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reward-dialog-card{grid-template-columns:1fr}.reward-dialog-image{min-height:240px;max-height:310px}.reward-dialog-image img{max-height:260px}}
@media(max-width:560px){.points-hero{grid-template-columns:1fr;gap:14px}.points-balance{text-align:left;border-left:0;border-top:1px solid var(--line);padding:14px 0 0;min-width:0}.points-toolbar{align-items:flex-start}.points-refresh{padding:0 12px}.points-grid{grid-template-columns:1fr}.reward-card{display:grid;grid-template-columns:118px minmax(0,1fr)}.reward-image{aspect-ratio:auto;min-height:100%;padding:10px}.reward-card-body{padding:16px}.reward-card-footer{align-items:center}.reward-card-footer .btn{padding:0 12px}.reward-dialog{width:calc(100% - 14px);max-height:calc(100dvh - 14px);border-radius:20px}.reward-dialog-image{min-height:180px;max-height:220px;padding:14px}.reward-dialog-image img{max-height:190px}.reward-dialog-content{padding:22px 17px 24px}.reward-dialog-summary{grid-template-columns:1fr}.reward-dialog-close{top:8px;right:8px}}
@media(max-width:390px){.reward-card{grid-template-columns:96px minmax(0,1fr)}.reward-card h2{font-size:1.18rem}.reward-card p{font-size:.8rem;-webkit-line-clamp:2}.reward-cost strong{font-size:1.18rem}}

/* TECH14KA · Ticket V2 */
.ticket-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:16px}.ticket-hero h1{font:600 clamp(2.2rem,6vw,4.2rem) Georgia,serif;margin:.32rem 0}.ticket-cart-link{display:flex;align-items:center;gap:8px;text-decoration:none}.ticket-cart-link span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:var(--gold);color:#17110a;font-weight:800}.ticket-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0}.ticket-filters{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.ticket-filters::-webkit-scrollbar{display:none}.ticket-filters .btn{white-space:nowrap}.ticket-filters .is-active{background:rgba(201,167,106,.18);border-color:var(--gold);color:var(--gold)}.ticket-state{min-height:240px}.ticket-loading{min-height:220px;display:grid;place-items:center}.ticket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ticket-card{display:grid;grid-template-columns:180px minmax(0,1fr);padding:0;overflow:hidden}.ticket-card-image{margin:0;display:grid;place-items:center;min-height:260px;background:linear-gradient(150deg,#241719,#100d0d);overflow:hidden}.ticket-card-image img{width:100%;height:100%;object-fit:cover}.ticket-card-image span{font-size:3rem;color:var(--gold)}.ticket-card-body{display:flex;flex-direction:column;padding:22px;min-width:0}.ticket-card h2{font:600 1.55rem Georgia,serif;margin:.35rem 0}.ticket-card-body>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ticket-card-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.ticket-card-meta span{padding:7px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem}.ticket-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px}.ticket-card-footer strong{font:700 1.4rem Georgia,serif;color:var(--gold)}.ticket-dialog{width:min(920px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line);border-radius:24px;background:#171313;color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.65)}.ticket-dialog::backdrop{background:rgba(5,4,4,.8);backdrop-filter:blur(9px)}.ticket-dialog-card{position:relative;display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);margin:0}.ticket-dialog-close{position:absolute;z-index:2;top:12px;right:12px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(13,11,11,.85);color:var(--text);font-size:1.5rem;cursor:pointer}.ticket-dialog-image{margin:0;min-height:470px;background:linear-gradient(150deg,#241719,#100d0d)}.ticket-dialog-image img{width:100%;height:100%;object-fit:cover}.ticket-dialog-content{padding:clamp(24px,5vw,44px);overflow:auto}.ticket-dialog-content h2{font:600 clamp(2rem,5vw,3.4rem) Georgia,serif;margin:.35rem 0}.ticket-dialog-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.ticket-dialog-meta>div{padding:13px;border:1px solid var(--line);border-radius:14px}.ticket-dialog-meta span{display:block;color:var(--muted);font-size:.74rem}.ticket-dialog-meta strong{display:block;margin-top:4px}.ticket-qty{display:grid;gap:8px;color:var(--muted);font-size:.8rem;margin:18px 0}.ticket-qty input{height:48px;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:0 14px}.ticket-confirm{width:100%;min-height:50px}
@media(max-width:900px){.ticket-grid{grid-template-columns:1fr}.ticket-card{grid-template-columns:150px minmax(0,1fr)}}
@media(max-width:680px){.ticket-hero{grid-template-columns:1fr}.ticket-cart-link{justify-self:start}.ticket-card{grid-template-columns:118px minmax(0,1fr)}.ticket-card-image{min-height:230px}.ticket-card-body{padding:16px}.ticket-card h2{font-size:1.25rem}.ticket-card-footer{align-items:flex-end;flex-direction:column}.ticket-card-footer .btn{width:100%}.ticket-dialog-card{grid-template-columns:1fr}.ticket-dialog-image{min-height:200px;max-height:260px}.ticket-dialog-content{padding:22px 17px 24px}.ticket-dialog-meta{grid-template-columns:1fr}.ticket-dialog{width:calc(100% - 14px);max-height:calc(100dvh - 14px)}}
@media(max-width:400px){.ticket-card{grid-template-columns:96px minmax(0,1fr)}.ticket-card-image{min-height:210px}.ticket-card-meta span{font-size:.66rem}.ticket-card-body>p{-webkit-line-clamp:2;font-size:.82rem}}

/* TECH14KA · Ticket V2 rules, styled fallback and table booking */
.ticket-mood-art{width:100%;height:100%;min-height:inherit;display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 72% 20%,rgba(255,255,255,.18),transparent 28%),linear-gradient(145deg,#4a2b18,#17100d)}
.ticket-mood-art::before,.ticket-mood-art::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%;width:72%;aspect-ratio:1}.ticket-mood-art::after{width:42%;border-color:rgba(201,167,106,.5)}
.ticket-mood-art span{position:relative;z-index:1;font:700 clamp(2rem,6vw,4rem) Georgia,serif;letter-spacing:.12em;color:#f0d7a5;text-shadow:0 5px 24px rgba(0,0,0,.55)}
.td-ticket-mood-night{background:radial-gradient(circle at 75% 15%,rgba(160,180,255,.22),transparent 24%),linear-gradient(145deg,#171b38,#080913)}
.td-ticket-mood-vine{background:radial-gradient(circle at 68% 15%,rgba(207,220,125,.18),transparent 25%),linear-gradient(145deg,#27391d,#0d160b)}
.td-ticket-mood-music{background:radial-gradient(circle at 75% 15%,rgba(230,137,217,.23),transparent 25%),linear-gradient(145deg,#4a183d,#160a17)}
.td-ticket-mood-sun{background:radial-gradient(circle at 68% 15%,rgba(255,224,145,.32),transparent 25%),linear-gradient(145deg,#8a431f,#2b1410)}
.ticket-card-fallback[hidden],.ticket-dialog-image .ticket-mood-art[hidden]{display:none}
.ticket-dialog-image{display:grid;overflow:hidden}.ticket-dialog-image>img,.ticket-dialog-image>.ticket-mood-art{grid-area:1/1;width:100%;height:100%}
.ticket-qty select{height:48px;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:0 14px;width:100%}.ticket-qty small{line-height:1.45}.ticket-qty input:disabled{opacity:.7;cursor:not-allowed}


/* TECH14KD · Checkout V2 */
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}.checkout-main{display:grid;gap:18px}.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkout-fields label{display:grid;gap:7px;color:var(--muted);font-size:.8rem}.checkout-fields .is-wide{grid-column:1/-1}.checkout-fields input,.checkout-fields textarea,.coupon-row input{width:100%;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:13px 14px}.checkout-fields input{min-height:48px}.checkout-summary{position:sticky;top:18px}.checkout-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center}.checkout-item strong,.checkout-item small{display:block}.checkout-item small{color:var(--muted);margin-top:4px}.checkout-item b{color:var(--gold)}.payment-choices{display:grid;gap:10px}.payment-choices label{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:16px;cursor:pointer}.payment-choices strong,.payment-choices small{display:block}.payment-choices small{color:var(--muted);margin-top:4px}.coupon-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.checkout-confirm{width:100%;margin-top:18px}.order-success{width:min(520px,calc(100% - 24px));border:1px solid var(--line);border-radius:24px;background:#171313;color:var(--text);padding:0}.order-success::backdrop{background:rgba(5,4,4,.82);backdrop-filter:blur(8px)}.order-success>div{padding:34px;text-align:center}.order-success h2{font:600 2.5rem Georgia,serif}.order-success #successCode{display:block;font:700 1.8rem Georgia,serif;color:var(--gold);letter-spacing:.08em;margin:16px 0}.order-success .btn{display:inline-flex;align-items:center;text-decoration:none;margin-top:14px}.ticket-qty input[data-table-selected="true"]{border-color:var(--gold)}
@media(max-width:820px){.checkout-layout{grid-template-columns:1fr}.checkout-summary{position:static}.checkout-fields{grid-template-columns:1fr}.checkout-fields .is-wide{grid-column:auto}}
@media(max-width:520px){.checkout-item{grid-template-columns:minmax(0,1fr) auto}.checkout-item b{grid-column:2}.coupon-row{grid-template-columns:1fr}.coupon-row .btn{width:100%}}

/* TECH14KD - checkout integrato nel cestino */
.cart-inline-checkout{display:grid;gap:12px;margin-top:12px;padding-top:14px;border-top:1px solid var(--line)}.cart-payment-choices label{padding:12px}.cart-coupon-box{border:1px solid var(--line);border-radius:16px;padding:0 13px}.cart-coupon-box summary{cursor:pointer;padding:13px 0;color:var(--gold);font-weight:700}.cart-coupon-box .coupon-row{padding-bottom:10px}.cart-note-field{display:grid;gap:7px;color:var(--muted);font-size:.8rem}.cart-note-field textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:12px}.quantity-control button:disabled{opacity:.28;cursor:not-allowed}.cart-payment-notice:empty{display:none}

.ticket-qty{display:grid;gap:8px}.ticket-qty>span{font-size:.82rem;color:var(--muted)}.ticket-quantity-control{width:132px;grid-template-columns:44px 44px 44px}.ticket-quantity-control output{line-height:42px}.ticket-quantity-control button:disabled{opacity:.28;cursor:not-allowed}

/* TECH14KE · Profilo V2 essenziale, dati secondari solo su richiesta */
.profile-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.profile-action{appearance:none;text-align:left;color:var(--text);cursor:pointer;display:grid;gap:7px;min-height:142px}.profile-action span{color:var(--gold);font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.profile-action strong{font:600 1.25rem Georgia,serif}.profile-action small{color:var(--muted)}.profile-dialog{width:min(720px,calc(100% - 20px));max-height:calc(100dvh - 20px);padding:0;border:1px solid var(--line);border-radius:24px;background:#171313;color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.65)}.profile-dialog::backdrop{background:rgba(5,4,4,.82);backdrop-filter:blur(8px)}.profile-dialog-card{position:relative;padding:clamp(22px,5vw,38px)}.profile-dialog-close{position:absolute;right:12px;top:12px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#120f0f;color:var(--text);font-size:1.45rem;cursor:pointer}.profile-dialog-body{display:grid;gap:10px;max-height:60dvh;overflow:auto;padding-right:3px}.profile-inline-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:150px;color:var(--muted)}.profile-list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.profile-list-row strong,.profile-list-row small{display:block}.profile-list-row small{color:var(--muted);margin-top:5px}.profile-list-row>span{color:var(--gold);text-align:right}.profile-edit-form{display:grid;gap:14px}.profile-edit-form label{display:grid;gap:7px;color:var(--muted);font-size:.8rem}.profile-edit-form input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:#120f0f;color:var(--text);padding:0 14px}.profile-edit-form .btn{width:100%;margin-top:4px}@media(max-width:960px){.profile-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.profile-actions{grid-template-columns:1fr 1fr}.profile-action{min-height:120px}.profile-list-row{align-items:flex-start;flex-direction:column}.profile-list-row>span{text-align:left}}@media(max-width:390px){.profile-actions{grid-template-columns:1fr}}


/* TECH14KF · Profilo V2 completo funzionale */
.profile-hero-grid{align-items:stretch}.profile-summary-card{display:grid;gap:22px}.profile-summary-head{display:flex;align-items:center;gap:20px;min-width:0}.profile-summary-copy{min-width:0}.profile-summary-copy h1{margin:.25rem 0 .4rem;overflow-wrap:anywhere}.profile-meta-line{margin:.35rem 0 0;color:var(--muted);font-size:.86rem;overflow-wrap:anywhere}.profile-avatar-wrap{display:grid;justify-items:center;gap:8px;flex:0 0 auto}.profile-avatar{width:92px;height:92px;border-radius:50%;object-fit:cover;border:1px solid var(--line);background:#120f0f}.profile-avatar-button{cursor:pointer;color:var(--gold);font-size:.74rem;text-decoration:underline;text-underline-offset:3px}.profile-member-card{display:flex;flex-direction:column;justify-content:space-between;gap:18px}.member-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-member-since{font-size:.78rem;color:var(--muted)}.profile-member-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.profile-member-actions .btn{width:100%}.profile-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-section-error{text-align:center;padding:28px 8px}.profile-section-error p{color:var(--muted)}.profile-progress-bar{height:10px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.06);margin:8px 0}.profile-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8f652a,#d8b774)}.profile-edit-form input[readonly]{opacity:.65;cursor:not-allowed}
@media(max-width:960px){.profile-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.profile-summary-head{align-items:flex-start}.profile-avatar{width:78px;height:78px}.profile-member-actions{grid-template-columns:1fr}}
@media(max-width:620px){.profile-actions{grid-template-columns:1fr 1fr}.profile-action{min-height:120px}.profile-list-row{align-items:flex-start;flex-direction:column}.profile-list-row>span{text-align:left}.profile-summary-head{flex-direction:column;align-items:flex-start}.profile-avatar-wrap{justify-items:start}}
@media(max-width:390px){.profile-actions{grid-template-columns:1fr}}


/* TECH14KH · Tessera vino, livelli verticali e foto HEIC */
.profile-dashboard-grid{grid-template-columns:minmax(290px,380px) minmax(0,1fr);align-items:stretch}
.profile-member-card-vertical{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;text-align:center;gap:15px;min-height:580px;background:radial-gradient(circle at 25% 8%,rgba(255,255,255,.09),transparent 26%),radial-gradient(circle at 85% 80%,rgba(201,167,106,.12),transparent 34%),linear-gradient(155deg,#351016 0%,#260b10 52%,#13080b 100%);border-color:rgba(201,167,106,.32);box-shadow:0 24px 70px rgba(24,5,10,.42)}
.profile-member-card-vertical .member-card-top{width:100%}.profile-member-card-vertical .profile-avatar-wrap{justify-items:center}.profile-member-card-vertical .profile-avatar{width:126px;height:126px;box-shadow:0 16px 42px rgba(0,0,0,.35);border-color:rgba(255,255,255,.18)}
.profile-card-identity h1{font:600 clamp(1.65rem,3vw,2.25rem) Georgia,serif;margin:0;overflow-wrap:anywhere}.profile-card-identity .profile-meta-line{margin:.4rem 0 0;color:rgba(255,255,255,.68)}
.profile-featured-badges{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:1px}
.profile-featured-badge{appearance:none;width:58px;height:58px;padding:5px;border:1px solid rgba(201,167,106,.42);border-radius:50%;background:rgba(255,255,255,.055);color:var(--text);cursor:pointer;display:grid;place-items:center;box-shadow:inset 0 0 0 3px rgba(53,16,22,.35)}
.profile-featured-badge:hover,.profile-featured-badge:focus-visible{border-color:var(--gold);outline:none;transform:translateY(-1px)}
.profile-featured-badge-visual{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(201,167,106,.13);font-size:1.25rem;overflow:hidden}
.profile-featured-badge-visual img{width:100%;height:100%;object-fit:cover}.profile-featured-badge small{display:none}
.profile-card-data{display:grid;gap:10px}.profile-card-data-inline{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9px}
.profile-card-data>div{display:grid;gap:5px;padding:12px 10px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(255,255,255,.045);min-width:0}
.profile-card-data span{color:rgba(255,255,255,.58);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}.profile-card-data strong{font-size:.95rem;color:#fff;overflow-wrap:anywhere}
.profile-card-wallet{width:100%;min-height:52px;margin-top:auto}
.profile-path-card{display:flex;flex-direction:column;gap:22px;min-width:0}.profile-path-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.profile-path-heading .section-title{margin:.3rem 0 0}.profile-path-liters{font:700 clamp(1.7rem,4vw,2.6rem) Georgia,serif;color:var(--gold);white-space:nowrap}.profile-path-progress-wrap{display:grid;gap:12px}.profile-path-progress-copy{display:flex;justify-content:space-between;align-items:flex-end;gap:15px}.profile-path-progress-copy span{color:var(--muted);font-size:.78rem}.profile-path-progress-copy strong{text-align:right}
.profile-path-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:12px;align-content:start}
.profile-path-level{position:relative;min-height:188px;padding:18px 12px 15px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);min-width:0;opacity:.48;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:10px}
.profile-path-level.is-reached{opacity:1;border-color:rgba(201,167,106,.38)}.profile-path-level.is-current{box-shadow:inset 0 0 0 1px var(--gold);background:rgba(201,167,106,.08)}
.profile-path-level-icon{width:70px;height:82px;display:grid;place-items:center;color:rgba(255,255,255,.52)}.profile-path-level-icon svg{width:62px;height:70px;display:block}
.profile-path-level.is-reached .profile-path-level-icon{color:var(--gold)}.profile-path-level.is-current .profile-path-level-icon{filter:drop-shadow(0 0 10px rgba(201,167,106,.28))}
.profile-path-level strong,.profile-path-level small{display:block}.profile-path-level strong{overflow-wrap:anywhere;font-family:Georgia,serif}.profile-path-level small{color:var(--muted);font-size:.72rem;margin-top:auto}
.profile-badge-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.profile-badge-option{appearance:none;text-align:center;padding:13px 8px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);color:var(--text);cursor:pointer;display:grid;place-items:center;gap:8px}.profile-badge-option.is-selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.profile-badge-option .profile-featured-badge-visual{width:48px;height:48px}.profile-badge-option small{color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.avatar-crop-dialog{width:min(600px,calc(100% - 20px))}.avatar-crop-card{display:grid;gap:16px}.avatar-crop-stage{--avatar-w:320px;--avatar-h:320px;--avatar-x:0px;--avatar-y:0px;position:relative;width:min(360px,100%);aspect-ratio:1;margin:auto;border-radius:50%;overflow:hidden;background:#0c0a0a;border:2px solid var(--gold);touch-action:none;cursor:grab}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage img{position:absolute;width:var(--avatar-w);height:var(--avatar-h);max-width:none;left:50%;top:50%;transform:translate(calc(-50% + var(--avatar-x)),calc(-50% + var(--avatar-y)));user-select:none;pointer-events:none}.avatar-crop-zoom{display:grid;gap:8px;color:var(--muted);font-size:.78rem}.avatar-crop-zoom input{width:100%}.avatar-crop-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.avatar-crop-actions .btn{width:100%}
@media(max-width:900px){.profile-dashboard-grid{grid-template-columns:1fr}.profile-member-card-vertical{min-height:auto}.profile-path-card{min-height:480px}}
@media(max-width:620px){.profile-path-heading,.profile-path-progress-copy{align-items:flex-start;flex-direction:column}.profile-path-progress-copy strong{text-align:left}.profile-path-levels{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-badge-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.profile-path-levels{grid-template-columns:1fr}.avatar-crop-actions{grid-template-columns:1fr}.profile-card-data-inline{grid-template-columns:.82fr 1.18fr}.profile-card-data>div{padding:11px 7px}.profile-card-data strong{font-size:.86rem}}



/* TECH14KJ - Foto tessera e selettore badge completo */
.profile-avatar-editor{position:relative;width:92px;height:92px;border-radius:50%;overflow:hidden;isolation:isolate}
.profile-avatar-editor .profile-avatar{display:block;width:100%;height:100%}
.profile-avatar-button{position:absolute;left:0;right:0;bottom:0;height:36%;display:flex;align-items:center;justify-content:center;padding:5px 7px;background:rgba(0,0,0,.67);color:#fff;font-size:.68rem;font-weight:750;text-decoration:none;letter-spacing:.02em;cursor:pointer;opacity:0;transform:translateY(100%);transition:opacity .2s ease,transform .2s ease;z-index:2}
.profile-avatar-editor:hover .profile-avatar-button,.profile-avatar-editor:focus-within .profile-avatar-button{opacity:1;transform:translateY(0)}
.profile-avatar-button:hover{background:rgba(0,0,0,.78);color:#fff}
.profile-avatar-button:focus-visible{opacity:1;transform:translateY(0);outline:2px solid var(--gold);outline-offset:-2px}
.profile-badge-remove{display:flex;margin:0 0 14px auto;border-color:rgba(218,145,141,.48);color:#f0c0bd;background:rgba(121,42,42,.18)}
.profile-badge-selector{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.profile-badge-option{position:relative;min-height:134px;align-content:center}
.profile-badge-option .profile-featured-badge-visual{width:56px;height:56px}
.profile-badge-option .profile-featured-badge-visual img{object-fit:contain}
.profile-badge-option em{display:block;max-width:100%;font-size:.64rem;font-style:normal;line-height:1.3;color:var(--gold)}
.profile-badge-option.is-locked{cursor:not-allowed;opacity:.48;filter:grayscale(1)}
.profile-badge-option.is-locked::after{content:'🔒';position:absolute;top:8px;right:8px;font-size:.76rem;filter:none}
.profile-badge-option.is-locked .profile-featured-badge-visual{background:rgba(255,255,255,.035)}
.profile-badge-option.is-unlocked:hover{border-color:var(--gold);transform:translateY(-1px)}
@media(max-width:700px){.profile-avatar-editor{width:78px;height:78px}.profile-avatar-button{opacity:1;transform:none;height:34%;font-size:.6rem;background:rgba(0,0,0,.58)}.profile-badge-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* TECH14KK · Avatar ripristinato, azione foto touch, percorso compatto */
.profile-avatar-editor{width:126px;height:126px}
.profile-avatar-button{border:0;text-decoration:none}
.profile-avatar-button svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 3px rgba(0,0,0,.55))}
.profile-avatar-button .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.profile-avatar-editor.is-action-visible .profile-avatar-button{opacity:1;transform:translateY(0)}
.profile-path-liters{display:grid;justify-items:end;gap:2px;line-height:1}
.profile-path-liters-value{font:700 clamp(1.85rem,4vw,2.75rem) Georgia,serif;color:var(--gold);white-space:nowrap}
.profile-path-liters small{font:700 clamp(.54rem,1.1vw,.68rem)/1.15 system-ui,sans-serif;letter-spacing:.12em;color:var(--muted);white-space:nowrap}
.profile-path-levels{grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:9px}
.profile-path-level{min-height:142px;padding:12px 8px 10px;border-radius:15px;gap:6px}
.profile-path-level-icon{width:48px;height:56px}
.profile-path-level-icon svg{width:43px;height:50px}
.profile-path-level strong{font-size:.88rem}
.profile-path-level small{font-size:.64rem}
@media(max-width:700px){
  .profile-member-card-vertical .profile-avatar,.profile-avatar-editor{width:126px;height:126px}
  .profile-avatar-button{opacity:0;transform:translateY(100%)}
  .profile-avatar-editor:hover .profile-avatar-button{opacity:0;transform:translateY(100%)}
  .profile-avatar-editor.is-action-visible .profile-avatar-button,.profile-avatar-editor:focus-within .profile-avatar-button{opacity:1;transform:translateY(0)}
  .profile-path-liters{justify-items:start}
}
@media(max-width:620px){.profile-path-levels{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:430px){.profile-path-levels{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* TECH14KL · Foto touch affidabile, percorso compatto, azioni ripulite */
.profile-path-progress-copy{display:block}
.profile-path-progress-copy span{display:block;color:var(--text);font-weight:750;line-height:1.35}
.profile-path-levels{grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:7px}
.profile-path-level{min-height:108px;padding:8px 5px 7px;border-radius:13px;gap:3px}
.profile-path-level-icon{width:36px;height:40px}
.profile-path-level-icon svg{width:32px;height:37px}
.profile-path-level strong{font-size:.74rem;line-height:1.1}
.profile-path-level small{font-size:.55rem;line-height:1.1}
@media(max-width:620px){.profile-path-levels{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:430px){.profile-path-levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.profile-path-level{min-height:102px;padding:7px 4px}.profile-path-level-icon{width:33px;height:36px}.profile-path-level-icon svg{width:30px;height:34px}.profile-path-level strong{font-size:.69rem}.profile-path-level small{font-size:.52rem}}

/* TECH14KM · Percorso Dioro: livelli più stretti, icone più leggibili */
.profile-path-progress-copy span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:400;
  line-height:1.35;
}
.profile-path-levels{
  grid-template-columns:repeat(auto-fit,minmax(66px,82px));
  justify-content:start;
  gap:8px;
}
.profile-path-level{
  width:100%;
  min-height:106px;
  padding:7px 4px 6px;
}
.profile-path-level-icon{
  width:44px;
  height:48px;
}
.profile-path-level-icon svg{
  width:40px;
  height:45px;
}
@media(max-width:620px){
  .profile-path-levels{
    grid-template-columns:repeat(3,minmax(62px,78px));
    justify-content:center;
  }
}
@media(max-width:430px){
  .profile-path-levels{
    grid-template-columns:repeat(3,minmax(58px,72px));
    gap:6px;
  }
  .profile-path-level{
    min-height:100px;
    padding:6px 3px;
  }
  .profile-path-level-icon{
    width:41px;
    height:45px;
  }
  .profile-path-level-icon svg{
    width:37px;
    height:42px;
  }
}


/* TECH14KN - Modifica profilo V2 completa */
.profile-edit-form-complete{display:grid;gap:18px}.profile-edit-intro{margin:0;color:var(--muted);line-height:1.55}.profile-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-edit-grid label,.profile-edit-phone{display:grid;gap:7px;min-width:0}.profile-edit-grid label>input,.profile-edit-grid label>select,.profile-phone-row input,.profile-phone-row select,.profile-password-fields input{width:100%;min-height:46px;border:1px solid rgba(53,16,22,.16);border-radius:14px;background:#fff;color:var(--ink);padding:0 14px;font:inherit;box-sizing:border-box}.profile-edit-grid label>small,.profile-edit-phone small,.profile-password-card small{font-size:.78rem;color:var(--muted);line-height:1.4}.profile-edit-span-2{grid-column:1/-1}.profile-edit-phone{grid-column:1/-1;border:0;margin:0;padding:0}.profile-edit-phone legend{margin-bottom:7px;font-weight:650}.profile-phone-row{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(0,1.25fr);gap:10px}.profile-password-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px;border:1px solid rgba(53,16,22,.12);border-radius:18px;background:rgba(53,16,22,.035)}.profile-password-card>div:first-child{display:grid;gap:4px}.profile-password-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:10px;align-items:end}.profile-password-fields[hidden]{display:none}.profile-password-fields label{display:grid;gap:6px}.profile-edit-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.profile-edit-form-complete select:focus,.profile-edit-form-complete input:focus{outline:2px solid rgba(53,16,22,.22);outline-offset:1px;border-color:#351016}.profile-edit-form-complete input[readonly]{background:rgba(0,0,0,.035);color:var(--muted)}
@media(max-width:680px){.profile-edit-grid{grid-template-columns:1fr}.profile-edit-span-2,.profile-edit-phone{grid-column:auto}.profile-phone-row{grid-template-columns:1fr}.profile-password-card{grid-template-columns:1fr}.profile-password-card>.btn{justify-self:start}.profile-password-fields{grid-template-columns:1fr}.profile-edit-actions{position:sticky;bottom:-1px;background:linear-gradient(to top,#fff 78%,rgba(255,255,255,0));padding-top:18px}.profile-edit-actions .btn{flex:1}}

/* TECH14KO · Modifica profilo stabile, selettori V1 e griglia livelli mobile */
.profile-dialog-card,
.profile-dialog-body,
.profile-edit-form-complete,
.profile-edit-grid,
.profile-edit-grid > *,
.profile-phone-row,
.profile-phone-row > *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.profile-dialog-card{overflow:hidden}
.profile-dialog-body{
  overflow-x:hidden;
  overscroll-behavior:contain;
  touch-action:pan-y;
}
.profile-edit-form-complete{
  width:100%;
  overflow-x:hidden;
  touch-action:pan-y;
}
.profile-edit-grid label,
.profile-edit-phone legend{
  color:var(--text);
  font:650 .86rem/1.25 system-ui,sans-serif;
  letter-spacing:.01em;
}
.profile-edit-grid label>input,
.profile-edit-grid label>select,
.profile-phone-row>input,
.profile-password-fields input,
.profile-choice-trigger{
  width:100%;
  min-width:0;
  min-height:48px;
  border:1px solid rgba(201,167,106,.22);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(53,16,22,.24),rgba(19,12,13,.76));
  color:var(--text);
  padding:0 14px;
  font:inherit;
  box-sizing:border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.profile-edit-grid label>select{
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%),linear-gradient(145deg,rgba(53,16,22,.24),rgba(19,12,13,.76));
  background-position:calc(100% - 19px) 21px,calc(100% - 14px) 21px,0 0;
  background-size:5px 5px,5px 5px,100% 100%;
  background-repeat:no-repeat;
  padding-right:38px;
}
.profile-edit-grid input::placeholder{color:rgba(232,220,206,.46)}
.profile-edit-form-complete input[readonly]{
  background:linear-gradient(145deg,rgba(53,16,22,.13),rgba(15,11,12,.62));
  color:rgba(232,220,206,.72);
}
.profile-edit-form-complete select:focus,
.profile-edit-form-complete input:focus,
.profile-choice-trigger:focus-visible{
  outline:2px solid rgba(201,167,106,.28);
  outline-offset:1px;
  border-color:rgba(201,167,106,.7);
}
.profile-account-box{
  padding:13px;
  border:1px solid rgba(201,167,106,.14);
  border-radius:17px;
  background:rgba(53,16,22,.08);
}
.profile-edit-phone{
  border:0;
  margin:0;
  padding:0;
}
.profile-edit-phone legend{margin-bottom:8px;padding:0}
.profile-password-card{
  border-color:rgba(201,167,106,.18);
  background:linear-gradient(145deg,rgba(53,16,22,.17),rgba(15,11,12,.62));
}
.profile-password-card.is-google{grid-template-columns:1fr}
.profile-password-card.is-google small{max-width:68ch}
.profile-country-picker{position:relative;min-width:0;width:100%}
.profile-choice-trigger{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  text-align:left;
  cursor:pointer;
}
.profile-choice-trigger img,
.profile-choice-row img{
  width:26px;
  height:18px;
  object-fit:cover;
  border-radius:4px;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
}
.profile-choice-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-choice-trigger b{color:var(--gold);font-size:1rem;transition:transform .18s ease}
.profile-country-picker.is-open .profile-choice-trigger b{transform:rotate(180deg)}
.profile-choice-panel{
  position:absolute;
  z-index:40;
  top:calc(100% + 8px);
  left:0;
  width:min(360px,calc(100vw - 44px));
  max-height:310px;
  overflow:auto;
  padding:9px;
  border:1px solid rgba(201,167,106,.24);
  border-radius:17px;
  background:rgba(19,12,13,.98);
  box-shadow:0 22px 60px rgba(0,0,0,.44);
  opacity:0;
  transform:translateY(-7px) scale(.985);
  transform-origin:top left;
  transition:opacity .18s ease,transform .18s ease;
  overscroll-behavior:contain;
}
.profile-country-picker.is-open .profile-choice-panel{opacity:1;transform:none}
.profile-choice-title{
  padding:7px 10px 9px;
  color:var(--gold);
  font-size:.72rem;
  font-weight:750;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.profile-choice-row,
.profile-choice-back{
  width:100%;
  min-height:44px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:var(--text);
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  text-align:left;
  cursor:pointer;
}
.profile-choice-continent{grid-template-columns:minmax(0,1fr) auto}
.profile-choice-back{grid-template-columns:1fr;color:var(--gold);font-weight:700}
.profile-choice-row:hover,
.profile-choice-row:focus-visible,
.profile-choice-back:hover,
.profile-choice-back:focus-visible{background:rgba(201,167,106,.1);outline:none}
.profile-choice-row small{color:var(--muted);font-size:.75rem}
.profile-path-levels{width:100%}
@media(max-width:680px){
  .profile-dialog-card{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}
  .profile-dialog-body{padding-inline:0;overflow-x:hidden;touch-action:pan-y}
  .profile-edit-form-complete{padding-inline:1px}
  .profile-edit-grid{grid-template-columns:minmax(0,1fr);width:100%}
  .profile-edit-grid>*{grid-column:auto!important}
  .profile-edit-grid .profile-account-box:first-of-type,
  .profile-edit-grid .profile-account-box:nth-of-type(2){grid-column:auto!important}
  .profile-phone-row{grid-template-columns:minmax(0,1fr);width:100%}
  .profile-choice-panel{
    position:fixed;
    top:auto;
    left:max(12px,env(safe-area-inset-left));
    right:max(12px,env(safe-area-inset-right));
    bottom:max(16px,env(safe-area-inset-bottom));
    width:auto;
    max-height:min(58vh,430px);
    transform:translateY(18px);
    transform-origin:bottom center;
  }
  .profile-country-picker.is-open .profile-choice-panel{transform:none}
  .profile-edit-actions{
    background:linear-gradient(to top,rgba(13,11,11,.98) 78%,rgba(13,11,11,0));
  }
  .profile-path-levels{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    justify-content:stretch!important;
    gap:7px!important;
  }
  .profile-path-level{width:auto!important;min-width:0}
}
@media(max-width:390px){
  .profile-path-levels{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}
}


/* TECH14KP · Livelli a dimensione fissa e selettori profilo coerenti */
.profile-path-levels{
  display:grid;
  grid-template-columns:repeat(auto-fill,82px)!important;
  justify-content:start!important;
  align-items:start;
  gap:8px!important;
}
.profile-path-level{
  width:82px!important;
  min-width:82px!important;
  max-width:82px!important;
  min-height:106px;
  box-sizing:border-box;
}

.profile-edit-grid label>input,
.profile-edit-grid label>select,
.profile-phone-row>input,
.profile-password-fields input,
.profile-choice-trigger{
  background:#1b1113!important;
  background-image:none!important;
  box-shadow:none!important;
}
.profile-edit-grid label>select{
  appearance:auto;
  padding-right:14px;
}
.profile-edit-form-complete input[readonly]{
  background:#181113!important;
  color:rgba(232,220,206,.72);
}
.profile-account-box{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.profile-password-card,
.profile-password-section{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.profile-password-section>div:first-child{display:grid;gap:4px}
.profile-password-section small{font-size:.78rem;color:var(--muted);line-height:1.4}
.profile-password-section.is-google{grid-template-columns:minmax(0,1fr) auto}
.profile-google-password-btn:disabled{opacity:.78;cursor:default}
.profile-password-fields{grid-column:1/-1}

.profile-phone-row{
  grid-template-columns:190px minmax(0,1fr);
}
.profile-residence-country{
  width:190px;
  max-width:190px;
  justify-self:start;
}
.profile-country-picker{
  width:190px;
  max-width:190px;
}
.profile-choice-trigger{
  width:190px;
  max-width:190px;
}
.profile-choice-panel{
  left:0;
  right:auto;
  width:190px;
  max-width:190px;
  min-width:190px;
  box-sizing:border-box;
}
.profile-choice-row,
.profile-choice-back{padding-inline:8px}
.profile-choice-row{grid-template-columns:26px minmax(0,1fr) auto;gap:8px}
.profile-choice-continent{grid-template-columns:minmax(0,1fr) auto}

@media(max-width:680px){
  .profile-path-levels{
    grid-template-columns:repeat(auto-fill,82px)!important;
    justify-content:center!important;
  }
  .profile-path-level{
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
  }
  .profile-phone-row{
    grid-template-columns:190px minmax(0,1fr);
    align-items:start;
  }
  .profile-residence-country{
    width:190px;
    max-width:190px;
  }
  .profile-choice-panel{
    position:absolute;
    top:calc(100% + 8px);
    bottom:auto;
    left:0;
    right:auto;
    width:190px;
    min-width:190px;
    max-width:190px;
    max-height:280px;
    transform:translateY(-7px) scale(.985);
    transform-origin:top left;
  }
  .profile-country-picker.is-open .profile-choice-panel{transform:none}
  .profile-password-section,
  .profile-password-section.is-google{grid-template-columns:1fr}
  .profile-password-section>.btn{justify-self:start}
}
@media(max-width:430px){
  .profile-path-levels{
    grid-template-columns:repeat(auto-fill,82px)!important;
    justify-content:center!important;
  }
  .profile-phone-row{
    grid-template-columns:190px minmax(0,1fr);
    overflow:visible;
  }
}

/* TECH14KQ · Modifica profilo rifinita e Percorso Dioro scorrevole */
.profile-edit-grid > label,
.profile-birth-field,
.profile-edit-phone,
.profile-residence-row{
  min-width:0;
}
.profile-birth-field{
  border:0;
  margin:0;
  padding:0;
  display:grid;
  gap:7px;
}
.profile-birth-field legend{
  padding:0;
  color:var(--text);
  font:650 .86rem/1.25 system-ui,sans-serif;
  letter-spacing:.01em;
}
.profile-birth-row{
  display:grid;
  grid-template-columns:72px 72px minmax(96px,1fr);
  gap:8px;
}
.profile-birth-row input{
  width:100%;
  min-width:0;
  min-height:48px;
  border:1px solid rgba(201,167,106,.22);
  border-radius:14px;
  background:#1b1113;
  color:var(--text);
  padding:0 10px;
  text-align:center;
  font:inherit;
  box-sizing:border-box;
}
.profile-residence-row{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:10px;
  align-items:end;
}
.profile-residence-country,
.profile-residence-city{
  width:auto!important;
  max-width:none!important;
  justify-self:stretch!important;
}
.profile-residence-country .profile-country-picker,
.profile-residence-country .profile-choice-trigger{
  width:190px;
  max-width:190px;
}
.profile-password-section{
  padding:14px 15px;
  border:1px solid rgba(201,167,106,.18);
  border-radius:16px;
  background:#171012;
}
.profile-edit-error{
  padding:11px 13px;
  border:1px solid rgba(230,110,110,.38);
  border-radius:13px;
  background:rgba(105,26,33,.28);
  color:#ffd7d7;
  font-size:.86rem;
  line-height:1.45;
}
.profile-edit-error[hidden]{display:none!important}

.profile-path-levels{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto;
  overflow-y:hidden;
  justify-content:flex-start!important;
  scroll-snap-type:x proximity;
  scroll-behavior:smooth;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  padding:2px 2px 9px;
  scrollbar-width:thin;
  scrollbar-color:rgba(201,167,106,.42) transparent;
}
.profile-path-levels::-webkit-scrollbar{height:5px}
.profile-path-levels::-webkit-scrollbar-thumb{background:rgba(201,167,106,.42);border-radius:999px}
.profile-path-levels::-webkit-scrollbar-track{background:transparent}
.profile-path-level{
  flex:0 0 82px!important;
  width:82px!important;
  min-width:82px!important;
  max-width:82px!important;
  scroll-snap-align:start;
}

@media(max-width:680px){
  .profile-birth-row{grid-template-columns:64px 64px minmax(92px,1fr)}
  .profile-residence-row{grid-template-columns:190px minmax(0,1fr);gap:8px}
  .profile-path-levels{justify-content:flex-start!important;padding-bottom:10px}
}
@media(max-width:430px){
  .profile-birth-row{grid-template-columns:58px 58px minmax(88px,1fr);gap:6px}
  .profile-residence-row{grid-template-columns:190px minmax(0,1fr);gap:7px}
  .profile-residence-city input{padding-inline:10px}
}

/* TECH14KR · Data nativa, città verificata e Percorso Dioro rifinito */
.profile-birth-row select{
  width:100%;
  min-width:0;
  min-height:48px;
  border:1px solid rgba(201,167,106,.22);
  border-radius:14px;
  background:#1b1113;
  color:var(--text);
  padding:0 10px;
  text-align:center;
  text-align-last:center;
  font:inherit;
  box-sizing:border-box;
}
.profile-birth-row select:focus{
  outline:2px solid rgba(201,167,106,.22);
  outline-offset:1px;
  border-color:var(--gold);
}
.profile-city-picker{
  position:relative;
  width:100%;
  min-width:0;
}
.profile-city-picker>input[type="text"],
.profile-city-picker>input:not([type]){
  width:100%;
}
.profile-city-dropdown{
  position:absolute;
  z-index:80;
  left:0;
  right:0;
  top:calc(100% + 6px);
  display:none;
  max-height:230px;
  overflow:auto;
  border:1px solid rgba(201,167,106,.28);
  border-radius:14px;
  background:#171012;
  box-shadow:0 18px 45px rgba(0,0,0,.52);
  padding:6px;
}
.profile-city-dropdown.is-open{display:block}
.profile-city-option{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:0;
  border-radius:10px;
  padding:9px 10px;
  background:transparent;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.profile-city-option:hover,
.profile-city-option:focus-visible{
  background:rgba(201,167,106,.12);
  outline:none;
}
.profile-city-option strong{font-size:.88rem}
.profile-city-option span{
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.06em;
}
.profile-city-empty{
  padding:13px 10px;
  color:var(--muted);
  font-size:.82rem;
  text-align:center;
}
.profile-path-level strong{
  font-family:Georgia,serif!important;
  font-weight:600;
  letter-spacing:.01em;
}
.profile-path-liters-value{
  font-variant-numeric:tabular-nums;
}
.profile-path-levels{
  padding:2px 2px 0!important;
  margin-bottom:0!important;
  scrollbar-width:none!important;
}
.profile-path-levels::-webkit-scrollbar{display:none!important}
.profile-path-card{padding-bottom:clamp(18px,3vw,28px)!important}
@media(max-width:680px){
  .profile-birth-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .profile-city-dropdown{position:fixed;left:12px;right:12px;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));max-height:min(48dvh,360px)}
}

/* TECH14KS · Popup profilo mobile centrato, select coerenti e Percorso Dioro visibile */
@media (max-width: 680px) {
  .profile-dialog {
    position: fixed;
    inset: 0;
    width: min(720px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    margin: auto !important;
    box-sizing: border-box;
    overflow: hidden;
  }
  .profile-dialog-card {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box;
    padding: 24px 20px 22px;
    overflow: hidden;
  }
  .profile-dialog-body {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden !important;
    overscroll-behavior-x: none;
    touch-action: pan-y;
  }
  .profile-edit-form-complete,
  .profile-edit-grid,
  .profile-edit-grid > *,
  .profile-birth-row,
  .profile-residence-row,
  .profile-phone-row {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  .profile-edit-grid select,
  .profile-birth-row select {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    border: 1px solid rgba(201,167,106,.24);
    border-radius: 14px;
    background-color: #1b1113;
    color: var(--text);
    padding: 0 42px 0 14px;
    font: inherit;
    line-height: 1.2;
    appearance: none;
    -webkit-appearance: none;
    background-image:
      linear-gradient(45deg, transparent 50%, rgba(232,220,206,.8) 50%),
      linear-gradient(135deg, rgba(232,220,206,.8) 50%, transparent 50%);
    background-position:
      calc(100% - 18px) 50%,
      calc(100% - 12px) 50%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    box-sizing: border-box;
  }
  .profile-birth-row select {
    padding-left: 8px;
    padding-right: 28px;
    text-align: center;
    text-align-last: center;
    background-position:
      calc(100% - 14px) 50%,
      calc(100% - 9px) 50%;
    background-size: 5px 5px, 5px 5px;
  }
}

/* Il titolo dei livelli riprende il linguaggio tipografico di “Il tuo Percorso Dioro”. */
.profile-path-level strong {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .67rem !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase;
}
.profile-path-levels {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.profile-path-card {
  align-content: start;
  padding-bottom: 18px !important;
}


/* TECH14KT · Percorso Dioro compatto, Modifica profilo mobile e badge sincronizzati */
.profile-dashboard-grid{
  align-items:start!important;
}
.profile-path-card{
  align-self:start!important;
  min-height:0!important;
  height:auto!important;
  padding-bottom:14px!important;
  gap:18px!important;
}
.profile-path-levels{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.profile-path-level strong{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:.66rem!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
@media(max-width:900px){
  .profile-path-card{min-height:0!important}
}
@media(max-width:680px){
  .profile-edit-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:10px!important;
  }
  .profile-edit-grid>*{
    grid-column:1/-1!important;
  }
  .profile-edit-grid .profile-name-field{
    grid-column:1!important;
  }
  .profile-edit-grid .profile-surname-field{
    grid-column:2!important;
  }
  .profile-edit-grid label>select[name="preferred_language"],
  .profile-edit-grid label>select[name="gender"]{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    min-height:52px!important;
    margin:0!important;
    border:1px solid rgba(201,167,106,.24)!important;
    border-radius:16px!important;
    background-color:#1b1113!important;
    color:var(--text)!important;
    padding:0 42px 0 14px!important;
    font:inherit!important;
    line-height:52px!important;
    box-sizing:border-box!important;
    appearance:none!important;
    -webkit-appearance:none!important;
  }
}
@media(max-width:390px){
  .profile-edit-grid{column-gap:7px!important}
  .profile-edit-grid .profile-name-field input,
  .profile-edit-grid .profile-surname-field input{padding-inline:10px!important}
}

/* TECH14KU · Tastiera mobile senza zoom e select senza flash iOS */
@media (max-width: 768px) {
  .profile-dialog input,
  .profile-dialog textarea,
  .profile-dialog select,
  .profile-dialog button[role="combobox"],
  .profile-dialog .profile-choice-trigger,
  .profile-dialog .profile-city-input {
    font-size: 16px !important;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
  }

  .profile-dialog input,
  .profile-dialog textarea,
  .profile-dialog select {
    background-color: #1b1113 !important;
    color: var(--text) !important;
    caret-color: var(--gold);
  }

  .profile-dialog input:focus,
  .profile-dialog input:active,
  .profile-dialog textarea:focus,
  .profile-dialog textarea:active,
  .profile-dialog select:focus,
  .profile-dialog select:active {
    background-color: #1b1113 !important;
    color: var(--text) !important;
    border-color: rgba(201,167,106,.58) !important;
    box-shadow: 0 0 0 2px rgba(201,167,106,.12) !important;
    outline: none !important;
  }

  .profile-dialog,
  .profile-dialog-card,
  .profile-dialog-body {
    max-width: 100vw;
    overscroll-behavior: contain;
  }

  .profile-dialog-body {
    scroll-padding-bottom: calc(110px + env(safe-area-inset-bottom));
  }
}

/* TECH14KV · selettori personalizzati mobile senza flash nativo iOS */
.profile-simple-picker{
  position:relative;
  width:100%;
  min-width:0;
}
.profile-simple-picker .profile-choice-trigger{
  width:100%;
  min-height:46px;
  border:1px solid rgba(201,167,106,.24);
  border-radius:14px;
  background:#1b1113;
  color:var(--text);
  padding:0 14px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  text-align:left;
  font:inherit;
  box-sizing:border-box;
  -webkit-tap-highlight-color:transparent;
}
.profile-simple-picker .profile-choice-trigger span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.profile-simple-picker.is-open .profile-choice-trigger b{transform:rotate(180deg)}
.profile-simple-picker.is-open .profile-choice-panel{
  opacity:1;
  transform:none;
}
.profile-simple-picker .profile-choice-panel{
  max-height:min(320px,50vh);
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.profile-simple-option{
  grid-template-columns:minmax(0,1fr) auto!important;
}
.profile-simple-option.is-selected{
  background:rgba(201,167,106,.12);
  color:var(--gold);
}
.profile-birth-row .profile-simple-picker .profile-choice-trigger{
  justify-items:center;
  text-align:center;
  padding-inline:10px;
}
.profile-birth-row .profile-simple-picker .profile-choice-trigger span{
  text-align:center;
  width:100%;
}
@media(max-width:768px){
  .profile-simple-picker .profile-choice-trigger{
    min-height:52px;
    border-radius:16px;
    font-size:16px!important;
    background:#1b1113!important;
    color:var(--text)!important;
    outline:none!important;
    box-shadow:none!important;
  }
  .profile-simple-picker .profile-choice-trigger:focus,
  .profile-simple-picker .profile-choice-trigger:active{
    background:#1b1113!important;
    color:var(--text)!important;
    border-color:rgba(201,167,106,.58)!important;
    box-shadow:0 0 0 2px rgba(201,167,106,.12)!important;
  }
  .profile-simple-picker .profile-choice-panel{
    width:100%;
    min-width:100%;
    max-width:100%;
  }
}


/* TECH14KW · selettori esclusivi, layout account e popup profilo più ampi */
#profileDialog{
  width:min(980px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  max-height:calc(100dvh - 24px);
}
#profileDialog .profile-dialog-card{
  padding:clamp(24px,4vw,42px);
}
#profileDialog .profile-dialog-body{
  max-height:72dvh;
}
.profile-account-row{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(150px,.78fr) minmax(150px,.78fr);
  gap:14px;
  align-items:start;
  min-width:0;
}
.profile-account-row>label{
  display:grid;
  gap:7px;
  min-width:0;
}
.profile-birth-field{
  row-gap:4px!important;
}
.profile-birth-field legend{
  margin:0 0 2px!important;
  line-height:1.1!important;
}
.profile-simple-picker .profile-choice-panel,
.profile-country-picker .profile-choice-panel{
  z-index:120;
}
@media(max-width:680px){
  #profileDialog{
    width:calc(100vw - 10px)!important;
    max-width:calc(100vw - 10px)!important;
    max-height:calc(100dvh - 10px)!important;
    border-radius:20px;
  }
  #profileDialog .profile-dialog-card{
    padding:22px 15px 18px!important;
  }
  #profileDialog .profile-dialog-body{
    max-height:calc(100dvh - 128px)!important;
  }
  .profile-account-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .profile-account-row .profile-email-field{
    grid-column:1/-1;
  }
  .profile-account-row .profile-language-field{
    grid-column:1;
  }
  .profile-account-row .profile-gender-field{
    grid-column:2;
  }
  .profile-language-field .profile-simple-picker,
  .profile-gender-field .profile-simple-picker{
    position:relative;
  }
  .profile-language-field .profile-choice-panel,
  .profile-gender-field .profile-choice-panel{
    position:absolute!important;
    top:calc(100% + 7px)!important;
    bottom:auto!important;
    left:0!important;
    right:auto!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    max-height:min(300px,46dvh)!important;
    transform:translateY(-7px) scale(.985)!important;
    transform-origin:top center!important;
  }
  .profile-language-field .profile-simple-picker.is-open .profile-choice-panel,
  .profile-gender-field .profile-simple-picker.is-open .profile-choice-panel{
    transform:none!important;
  }
  .profile-birth-field{
    gap:3px!important;
  }
  .profile-birth-field legend{
    margin-bottom:1px!important;
  }
}


/* TECH14KX · Header globale, profilo desktop e città mobile */
.td-site-header{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;min-height:64px}
.td-header-account{justify-self:start;display:flex;align-items:center;gap:10px;min-width:0;color:var(--text);text-decoration:none}
.td-header-account img{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid rgba(201,167,106,.36);background:#1b1113}
.td-header-account span{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:650}
.td-header-logo{justify-self:center;display:flex;align-items:center;justify-content:center;height:64px}
.td-header-logo img{width:auto;height:56px;max-width:min(190px,38vw);object-fit:contain;transform:scale(var(--td-logo-scale,1));transform-origin:center}
.td-header-logout{justify-self:end;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.045);color:var(--text);display:grid;place-items:center;cursor:pointer}
.td-header-logout svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.td-header-spacer{width:44px;height:1px}

@media(min-width:681px){
  #profileDialog{width:min(1120px,calc(100vw - 40px));}
  .profile-edit-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:12px;row-gap:14px}
  .profile-account-row{grid-column:1/-1;grid-template-columns:minmax(0,1fr) 176px 176px;gap:10px}
  .profile-name-field{grid-column:1/7}.profile-surname-field{grid-column:7/13}
  .profile-birth-field{grid-column:1/7!important}.profile-edit-phone{grid-column:7/13!important}
  .profile-residence-row{grid-column:1/-1!important;grid-template-columns:190px minmax(0,1fr);gap:0!important}
  .profile-residence-country{margin-right:10px}
  .profile-birth-field legend,.profile-edit-phone legend{min-height:20px;margin-bottom:7px!important}
}
@media(max-width:680px){
  .td-site-header{grid-template-columns:minmax(0,1fr) auto 44px;gap:8px;min-height:58px}
  .td-header-account span{max-width:110px;font-size:.76rem}.td-header-account img{width:34px;height:34px}
  .td-header-logo{height:58px}.td-header-logo img{height:50px;max-width:34vw}
  .td-header-logout{width:40px;height:40px;border-radius:12px}
  .profile-city-dropdown{z-index:9999!important;margin:0!important;border-radius:14px!important;box-sizing:border-box!important}
}

/* TECH14KY · Correzione dimensioni avatar header e centratura logo mobile */
.td-site-header{
  position:relative!important;
  isolation:isolate;
  overflow:visible!important;
}
.td-header-account{
  position:relative!important;
  z-index:2!important;
  min-width:0!important;
  max-width:min(42vw,240px)!important;
  overflow:hidden!important;
}
.td-header-account > img[data-header-user-avatar]{
  display:block!important;
  flex:0 0 38px!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  inset:auto!important;
}
.td-header-logo{
  position:absolute!important;
  z-index:1!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  max-width:42vw!important;
}
.td-header-logo > img[data-site-logo]{
  display:block!important;
  width:auto!important;
  max-width:min(190px,38vw)!important;
  height:56px!important;
  max-height:56px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
}
.td-header-logout{position:relative!important;z-index:2!important;}

@media(max-width:680px){
  .td-site-header{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:58px!important;
    gap:8px!important;
  }
  .td-header-account{max-width:38vw!important;}
  .td-header-account > img[data-header-user-avatar]{
    flex-basis:34px!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
  }
  .td-header-account span{max-width:calc(38vw - 44px)!important;}
  .td-header-logo{height:58px!important;max-width:38vw!important;}
  .td-header-logo > img[data-site-logo]{
    height:50px!important;
    max-height:50px!important;
    max-width:36vw!important;
  }
  .td-header-spacer{display:block!important;flex:0 0 40px!important;width:40px!important;}
}

/* TECH14KZ · Correzioni città, layout profilo desktop e header */
#profileDialog .profile-residence-row{
  position:relative;
}
#profileDialog .profile-residence-city input[name="residence_city"]{
  background:#1b1113!important;
  background-image:none!important;
  color:var(--text)!important;
  border-color:rgba(201,167,106,.24)!important;
  box-shadow:none!important;
}

@media(min-width:681px){
  #profileDialog .profile-residence-row{
    grid-template-columns:190px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:end!important;
  }
  #profileDialog .profile-residence-country{
    margin-right:0!important;
  }
  .td-site-header{
    display:grid!important;
    grid-template-columns:minmax(180px,1fr) minmax(130px,220px) minmax(72px,1fr)!important;
    align-items:center!important;
    gap:18px!important;
  }
  .td-header-logo{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    justify-self:center!important;
    max-width:220px!important;
  }
  .td-header-logo > img[data-site-logo]{
    max-width:210px!important;
    max-height:58px!important;
  }
  .td-header-logout{
    justify-self:end!important;
  }
}

.td-header-account img[data-header-user-avatar]{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  border-radius:12px!important;
  object-fit:cover!important;
}
.td-header-account span[data-header-user-name]{
  color:var(--gold)!important;
  font-family:Georgia,serif!important;
  font-weight:600!important;
}

@media(max-width:680px){
  #profileDialog .profile-residence-row{
    position:relative!important;
  }
  #profileDialog .profile-city-picker{
    position:static!important;
  }
  #profileDialog .profile-city-dropdown{
    position:absolute!important;
    z-index:9999!important;
    left:0!important;
    right:auto!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    width:100%!important;
    max-width:100%!important;
    max-height:min(300px,42dvh)!important;
    margin:0!important;
    transform:none!important;
  }
  .td-header-account img[data-header-user-avatar]{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
    border-radius:10px!important;
  }
}


/* TECH14LA · Profilo secondario stabile e header essenziale */
.td-header-account span[data-header-user-name]{display:none!important}
.td-header-account{width:max-content!important;max-width:none!important;overflow:visible!important}

@media(min-width:681px){
  #profileDialog:has(.profile-edit-form-complete){
    width:min(940px,calc(100vw - 48px))!important;
  }
  #profileDialog .profile-edit-grid{
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    column-gap:10px!important;
  }
  #profileDialog .profile-birth-field{
    grid-column:1/7!important;
    padding-right:2px!important;
  }
  #profileDialog .profile-edit-phone{
    grid-column:7/13!important;
    padding-left:2px!important;
  }
  #profileDialog .profile-birth-row{
    grid-template-columns:72px 72px minmax(108px,1fr)!important;
    gap:8px!important;
  }
  #profileDialog .profile-phone-row{
    grid-template-columns:155px minmax(0,1fr)!important;
    gap:8px!important;
  }
}

.profile-dialog-body .profile-list-row{
  min-width:0;
}
.profile-dialog-body .profile-list-row strong,
.profile-dialog-body .profile-list-row small{
  overflow-wrap:anywhere;
}


/* TECH14LB · stabilizzazione popup, scrollbar interna e layout telefono desktop */
.profile-dialog-body{
  scrollbar-width:thin;
  scrollbar-color:rgba(201,167,106,.66) transparent;
  scrollbar-gutter:stable;
  margin-right:-18px;
  padding-right:18px;
}
.profile-dialog-body::-webkit-scrollbar{width:7px}
.profile-dialog-body::-webkit-scrollbar-track{background:transparent;margin-block:12px}
.profile-dialog-body::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(225,195,132,.82),rgba(153,105,53,.78));
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}
.profile-dialog-body::-webkit-scrollbar-thumb:hover{background-color:rgba(225,195,132,.94)}
.profile-inline-loading{
  min-height:132px;
  gap:0;
}
.profile-inline-loading>span{display:none!important}

@media(min-width:681px){
  #profileDialog:has(.profile-edit-form-complete){
    width:min(900px,calc(100vw - 48px))!important;
  }
  #profileDialog .profile-birth-field,
  #profileDialog .profile-edit-phone{
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  #profileDialog .profile-birth-field{grid-column:1/6!important}
  #profileDialog .profile-edit-phone{grid-column:6/13!important}
  #profileDialog .profile-birth-row{
    grid-template-columns:70px 70px minmax(112px,148px)!important;
    gap:8px!important;
    justify-content:start!important;
  }
  #profileDialog .profile-phone-row{
    grid-template-columns:144px minmax(0,1fr)!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  #profileDialog .profile-phone-row .profile-country-picker,
  #profileDialog .profile-phone-row .profile-choice-trigger,
  #profileDialog .profile-phone-row input[name="phone_number"]{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  #profileDialog .profile-phone-row .profile-choice-trigger{
    padding-inline:12px!important;
    overflow:hidden!important;
  }
  #profileDialog .profile-phone-row .profile-choice-trigger span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

@media(max-width:680px){
  .profile-dialog-body{
    margin-right:-8px;
    padding-right:8px;
  }
  .profile-dialog-body::-webkit-scrollbar{width:5px}
  .profile-dialog-body::-webkit-scrollbar-track{margin-block:10px}
}

/* TECH14LC · scrollbar globale, popup con binario esterno e chiusura tecnica V2 */
:root{
  --td-scroll-thumb:rgba(201,167,106,.72);
  --td-scroll-thumb-hover:rgba(229,199,137,.92);
  --td-scroll-track:rgba(255,255,255,.025);
}

html{
  scrollbar-width:thin;
  scrollbar-color:var(--td-scroll-thumb) var(--td-scroll-track);
  scrollbar-gutter:stable;
}
body,
main,
.page-shell,
.app-shell,
.profile-dialog-body,
.reward-dialog-content,
.ticket-dialog-content,
.cart-items,
.points-filters,
.ticket-filters{
  scrollbar-width:thin;
  scrollbar-color:var(--td-scroll-thumb) var(--td-scroll-track);
}
html::-webkit-scrollbar,
body::-webkit-scrollbar,
main::-webkit-scrollbar,
.page-shell::-webkit-scrollbar,
.app-shell::-webkit-scrollbar,
.profile-dialog-body::-webkit-scrollbar,
.reward-dialog-content::-webkit-scrollbar,
.ticket-dialog-content::-webkit-scrollbar,
.cart-items::-webkit-scrollbar{
  width:7px;
  height:7px;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
main::-webkit-scrollbar-track,
.page-shell::-webkit-scrollbar-track,
.app-shell::-webkit-scrollbar-track,
.profile-dialog-body::-webkit-scrollbar-track,
.reward-dialog-content::-webkit-scrollbar-track,
.ticket-dialog-content::-webkit-scrollbar-track,
.cart-items::-webkit-scrollbar-track{
  background:var(--td-scroll-track);
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
main::-webkit-scrollbar-thumb,
.page-shell::-webkit-scrollbar-thumb,
.app-shell::-webkit-scrollbar-thumb,
.profile-dialog-body::-webkit-scrollbar-thumb,
.reward-dialog-content::-webkit-scrollbar-thumb,
.ticket-dialog-content::-webkit-scrollbar-thumb,
.cart-items::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(229,199,137,.86),rgba(153,105,53,.82));
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
main::-webkit-scrollbar-thumb:hover,
.page-shell::-webkit-scrollbar-thumb:hover,
.app-shell::-webkit-scrollbar-thumb:hover,
.profile-dialog-body::-webkit-scrollbar-thumb:hover,
.reward-dialog-content::-webkit-scrollbar-thumb:hover,
.ticket-dialog-content::-webkit-scrollbar-thumb:hover,
.cart-items::-webkit-scrollbar-thumb:hover{
  background:var(--td-scroll-thumb-hover);
  background-clip:padding-box;
}

/* Porta fisicamente il binario nel margine esterno del popup. */
#profileDialog .profile-dialog-body,
.profile-dialog-body{
  box-sizing:border-box!important;
  width:calc(100% + 30px)!important;
  max-width:none!important;
  margin-right:-30px!important;
  padding-right:34px!important;
  scrollbar-gutter:stable!important;
}
#profileDialog .profile-dialog-body::-webkit-scrollbar-track,
.profile-dialog-body::-webkit-scrollbar-track{
  margin-block:18px!important;
  background:transparent!important;
}
#profileDialog .profile-dialog-body::-webkit-scrollbar,
.profile-dialog-body::-webkit-scrollbar{
  width:7px!important;
}

/* Stesso trattamento ai dialog secondari. */
.reward-dialog-content,
.ticket-dialog-content{
  box-sizing:border-box;
  width:calc(100% + 18px);
  margin-right:-18px;
  padding-right:calc(clamp(24px,5vw,44px) + 20px);
  scrollbar-gutter:stable;
}
.reward-dialog-content::-webkit-scrollbar-track,
.ticket-dialog-content::-webkit-scrollbar-track{
  margin-block:18px;
  background:transparent;
}

/* Stati vuoti/errori coerenti nell'intera V2. */
.v2-state,
.profile-empty-state,
.points-empty,
.cart-empty{
  min-width:0;
  overflow-wrap:anywhere;
}
.v2-retry,
.profile-retry{
  min-height:44px;
}

@media(max-width:680px){
  html{scrollbar-gutter:auto}
  #profileDialog .profile-dialog-body,
  .profile-dialog-body{
    width:calc(100% + 18px)!important;
    margin-right:-18px!important;
    padding-right:20px!important;
  }
  #profileDialog .profile-dialog-body::-webkit-scrollbar,
  .profile-dialog-body::-webkit-scrollbar{width:5px!important}
  #profileDialog .profile-dialog-body::-webkit-scrollbar-track,
  .profile-dialog-body::-webkit-scrollbar-track{margin-block:14px!important}
}


/* TECH14LD · menu solo icone, badge globale e scrollbar popup discreta */
.bottom-nav.bottom-nav-icons{
  align-items:center;
  padding:6px;
}
.bottom-nav.bottom-nav-icons a{
  position:relative;
  min-height:54px;
  display:grid;
  place-items:center;
  padding:0;
  font-size:0;
  line-height:1;
}
.bottom-nav-icon{
  position:relative;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
}
.bottom-nav-icon svg{
  width:25px;
  height:25px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bottom-nav.bottom-nav-icons a.active .bottom-nav-icon svg{stroke-width:1.9}
.bottom-nav.bottom-nav-icons .nav-badge{
  position:absolute;
  top:-8px;
  right:-11px;
  min-width:19px;
  height:19px;
  margin:0;
  z-index:2;
  box-shadow:0 0 0 3px rgba(18,14,14,.94);
}

/* Nei popup la scrollbar resta leggibile ma non compete con quella della pagina. */
#profileDialog .profile-dialog-body,
.profile-dialog-body,
.reward-dialog-content,
.ticket-dialog-content{
  scrollbar-color:rgba(170,170,170,.24) transparent!important;
}
#profileDialog .profile-dialog-body::-webkit-scrollbar-track,
.profile-dialog-body::-webkit-scrollbar-track,
.reward-dialog-content::-webkit-scrollbar-track,
.ticket-dialog-content::-webkit-scrollbar-track{
  background:transparent!important;
}
#profileDialog .profile-dialog-body::-webkit-scrollbar-thumb,
.profile-dialog-body::-webkit-scrollbar-thumb,
.reward-dialog-content::-webkit-scrollbar-thumb,
.ticket-dialog-content::-webkit-scrollbar-thumb{
  background:rgba(170,170,170,.22)!important;
  border:2px solid transparent!important;
  background-clip:padding-box!important;
  box-shadow:none!important;
}
#profileDialog .profile-dialog-body::-webkit-scrollbar-thumb:hover,
.profile-dialog-body::-webkit-scrollbar-thumb:hover,
.reward-dialog-content::-webkit-scrollbar-thumb:hover,
.ticket-dialog-content::-webkit-scrollbar-thumb:hover{
  background:rgba(190,190,190,.34)!important;
  background-clip:padding-box!important;
}
@media(max-width:520px){
  .bottom-nav.bottom-nav-icons a{min-height:50px}
  .bottom-nav-icon{width:26px;height:26px}
  .bottom-nav-icon svg{width:23px;height:23px}
}


/* TECH14LE · rifiniture menu, catalogo, cestino, ticket e punti */
.icon-refresh{
  appearance:none;
  width:42px;
  height:42px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--gold);
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.icon-refresh svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-refresh:hover,.icon-refresh:focus-visible{background:rgba(201,167,106,.08);outline:none}
.summary-discount-row span{color:var(--gold)}
.summary-discount-row strong{color:var(--gold)}

/* Due prodotti per riga su smartphone; una colonna solo sui display molto stretti. */
@media(max-width:520px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .catalog-product-v2{padding:12px;gap:9px}
  .catalog-product-v2 h2{font-size:1rem;line-height:1.15}
  .catalog-actions{grid-template-columns:1fr;gap:7px}
  .catalog-actions .btn{min-height:40px;padding:0 9px;font-size:.78rem}
  .catalog-product-image img{border-radius:12px}
  .bottom-nav{
    box-shadow:none!important;
    background:#120e0e!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}
@media(max-width:350px){.grid{grid-template-columns:1fr}}

/* TECH14LF · Cestino operativo e Catalogo compatto */
.cart-summary>.eyebrow{display:block;margin-bottom:.35rem}
.cart-summary h2{margin-top:.2rem}
.cart-item-points{font-weight:700;letter-spacing:.01em}
.cart-remove{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,170,167,.24);
  border-radius:12px;
  padding:0;
  color:#d8aaa7;
  background:rgba(216,170,167,.04);
  text-decoration:none;
}
.cart-remove svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cart-remove:hover,.cart-remove:focus-visible{background:rgba(216,170,167,.12);border-color:rgba(216,170,167,.46);outline:none}
.cart-direct-payments{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cart-pay-button{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:15px;
  padding:10px 14px;
  cursor:pointer;
  font:750 .9rem Inter,ui-sans-serif,sans-serif;
  transition:transform .18s ease,opacity .18s ease,background .18s ease;
}
.cart-pay-button:hover:not(:disabled){transform:translateY(-1px)}
.cart-pay-button:disabled{opacity:.42;cursor:not-allowed}
.cart-pay-cash{border:0;background:linear-gradient(135deg,#d4b476,#aa7f3e);color:#17110a}
.cart-pay-online{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text)}
.cart-pay-icon{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px}
.cart-pay-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cart-pay-button.is-loading{pointer-events:none}
.cart-coupon-feedback{margin:0 0 12px;font-size:.8rem;line-height:1.45}
.cart-coupon-feedback.is-success{color:var(--ok)}
.cart-coupon-feedback.is-error{color:var(--danger)}
.catalog-product-image{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.catalog-product-image img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
  border-radius:inherit;
}
.catalog-actions{grid-template-columns:minmax(0,1fr) 46px;align-items:stretch}
.catalog-detail-button{min-width:0}
.catalog-add-button{width:46px;min-width:46px;padding:0;font-size:1.45rem;line-height:1}
.catalog-add-button.is-added{font-size:1.05rem}

@media(max-width:620px){
  .cart-direct-payments{grid-template-columns:1fr}
  .cart-remove{grid-column:3;width:38px;height:38px;padding:0}
}
@media(max-width:520px){
  .catalog-actions{grid-template-columns:minmax(0,1fr) 40px!important;gap:7px}
  .catalog-add-button{width:40px;min-width:40px!important;padding:0!important;font-size:1.3rem!important}
  .catalog-product-image{border-radius:12px}
  .catalog-product-image img{border-radius:inherit}
}


/* TECH14LG · Catalogo, prodotto, cestino, menu e logout */
.catalog-v2-filters{display:flex;gap:8px;overflow-x:auto;margin:0 0 18px;padding:2px;scrollbar-width:none}.catalog-v2-filters::-webkit-scrollbar{display:none}.catalog-v2-filters .btn{white-space:nowrap;min-height:40px}.catalog-v2-filters .is-active{background:rgba(201,167,106,.18);border-color:var(--gold);color:var(--gold)}
.catalog-actions{grid-template-columns:48px minmax(0,1fr)!important;align-items:stretch}.catalog-add-button{min-width:48px;padding:0!important;font-size:1.45rem!important}.catalog-detail-icon{min-width:0}.catalog-detail-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.catalog-product-image{aspect-ratio:1/1;overflow:hidden;padding:0!important}.catalog-product-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
.product-detail-image-v2{padding:0!important;overflow:hidden;aspect-ratio:1/1}.product-detail-image-v2 img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;display:block}.product-quantity-control{width:126px}.product-qty-v2>span{color:var(--muted);font-size:.8rem}
.cart-direct-payments{grid-template-columns:1fr!important}.cart-pay-cash{order:1}.cart-pay-online{order:2}.cart-continue{order:3}.cart-pay-online:disabled{opacity:.48}.cart-item-title-row{display:flex;align-items:center;gap:9px}.cart-item-title-row h2{flex:1}.cart-item-detail{flex:0 0 auto;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;color:var(--gold)}.cart-item-detail svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.td-header-logout{transition:width .18s ease,background .18s ease}.td-header-logout.is-confirming{width:auto!important;min-width:142px;padding:0 13px;grid-auto-flow:column;gap:8px;background:rgba(201,167,106,.13);color:var(--gold)}.td-header-logout.is-confirming span{font-size:.78rem;font-weight:750;white-space:nowrap}.td-header-logout.is-confirming svg{width:18px;height:18px}
@media(max-width:680px){.bottom-nav{position:fixed!important;left:max(10px,env(safe-area-inset-left))!important;right:max(10px,env(safe-area-inset-right))!important;bottom:max(10px,env(safe-area-inset-bottom))!important;top:auto!important;transform:none!important;margin:0!important;z-index:1000!important}.app-shell{padding-bottom:96px!important}.catalog-actions{grid-template-columns:42px minmax(0,1fr)!important}.catalog-add-button{min-width:42px}.td-header-logout.is-confirming{position:absolute!important;right:0!important;min-width:132px}}


/* TECH14LH · coupon omaggio, ticket, catalogo, prodotto e menu mobile stabile */
.catalog-actions{grid-template-columns:minmax(0,1fr) 48px!important}.catalog-add-button{width:auto!important;min-width:0!important}.catalog-detail-icon{width:48px;min-width:48px!important;padding:0!important}
.product-add-compact{justify-self:start;width:auto;min-width:150px;padding-inline:18px!important}.product-quantity-control button:disabled{opacity:.28;cursor:not-allowed}
.cart-item-action-row{display:flex;align-items:center;gap:8px}.cart-item-detail{width:42px;height:42px;border-radius:12px}.cart-item-detail svg{width:20px;height:20px}.cart-ticket-mood{width:100%;height:100%;min-height:100%;display:grid}.cart-ticket-mood span{font-size:1.7rem}.cart-item-image>img[hidden]+.cart-ticket-mood{display:grid!important}.cart-item-image>.cart-ticket-mood[hidden]{display:none}.td-admin-coupon-gift-picker{margin:12px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
@media(max-width:680px){body>.bottom-nav{position:fixed!important;inset:auto max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;width:auto!important;transform:none!important;contain:layout paint;will-change:transform}.catalog-actions{grid-template-columns:minmax(0,1fr) 42px!important}.catalog-detail-icon{width:42px;min-width:42px!important}.product-add-compact{min-width:132px}.cart-item-action-row{justify-content:flex-end}}

/* TECH14LI — rifiniture prodotto, coupon omaggio multiplo e dettagli cestino */
.product-purchase-v2{column-gap:18px!important;align-items:end!important}.product-purchase-v2 .product-add-compact{height:42px!important;min-height:42px!important;margin-left:2px}.product-quantity-control{height:42px!important}.product-quantity-control button,.product-quantity-control output{height:42px!important;line-height:42px!important}
.td-admin-coupon-gift-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.td-admin-coupon-gift-head p{margin:.35rem 0 0}.td-admin-coupon-gift-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 42px;gap:12px;align-items:end;margin-top:10px}.td-admin-coupon-gift-row label{margin:0}.td-admin-icon-button{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--gold);font-size:1.35rem;cursor:pointer}.td-admin-secondary-button{min-height:40px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--gold);padding:8px 12px;cursor:pointer;white-space:nowrap}
.cart-item-action-row{justify-content:flex-start}.cart-item-detail{order:0}.cart-item-action-row .quantity-control{order:1}
@media(max-width:680px){.product-purchase-v2{column-gap:14px!important}.td-admin-coupon-gift-head{display:grid}.td-admin-coupon-gift-row{grid-template-columns:minmax(0,1fr) 88px 40px}.cart-item{position:relative}.cart-item-actions .cart-item-detail{position:absolute;top:12px;right:12px;z-index:3;width:36px;height:36px;background:rgba(18,15,15,.88)}.cart-item-action-row{padding-right:0}.cart-item-action-row .quantity-control{margin-left:0}}

/* TECH14LJ · menu mobile compatto, scheda prodotto e varianti rapide */
.product-back-v1{display:inline-flex;align-items:center;gap:9px;width:max-content;margin:0 0 16px;color:var(--gold);text-decoration:none;font-size:.9rem}.product-back-v1>span{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:1.7rem;line-height:1}.product-back-v1 strong{font-weight:750}
.product-characteristics-v2{display:grid;gap:10px;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.product-characteristics-list-v2{display:grid;gap:8px}.product-characteristics-list-v2>div,.product-points-v2{display:flex;align-items:center;justify-content:space-between;gap:16px}.product-characteristics-list-v2 span,.product-points-v2 span{color:var(--muted);font-size:.82rem}.product-characteristics-list-v2 strong,.product-points-v2 strong{text-align:right}.product-points-v2{padding-top:10px;border-top:1px solid rgba(201,167,106,.15);color:var(--gold)}
.catalog-variant-dialog{width:min(480px,calc(100% - 24px));padding:0;border:1px solid var(--line);border-radius:22px;background:#171313;color:var(--text);box-shadow:var(--shadow)}.catalog-variant-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.catalog-variant-card{position:relative;display:grid;gap:14px;padding:24px}.catalog-variant-card h2{margin:0;font-family:Georgia,serif}.catalog-variant-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--text);font-size:1.3rem}.catalog-variant-groups{display:grid;gap:14px}.catalog-variant-groups fieldset{margin:0;padding:0;border:0}.catalog-variant-groups legend{margin-bottom:8px;color:var(--muted);font-size:.82rem}.catalog-variant-groups fieldset>div{display:flex;flex-wrap:wrap;gap:8px}.quick-variant-button{min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);color:var(--text)}.quick-variant-button.is-selected{border-color:var(--gold);background:rgba(201,167,106,.16);color:var(--gold)}.catalog-variant-full{text-align:center;color:var(--gold);font-size:.85rem}
@media(max-width:680px){
  body>.bottom-nav{left:4px!important;right:4px!important;bottom:max(2px,env(safe-area-inset-bottom,0px))!important;width:auto!important;border-radius:20px!important}
  .bottom-nav.bottom-nav-icons{padding:4px!important}
  .bottom-nav.bottom-nav-icons a{min-height:48px!important}
  .app-shell{padding-bottom:84px!important}
  .catalog-variant-dialog{margin:auto 12px max(4px,env(safe-area-inset-bottom,0px));width:calc(100% - 24px);max-width:none}
}


/* TECH14LK · varianti rapide quantità, omaggi bloccati, menu mobile pieno e scheda prodotto rifinita */
.catalog-quick-quantity{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:2px}.catalog-quick-quantity>span{color:var(--muted);font-size:.82rem}.catalog-quick-quantity .quantity-control{width:132px}.catalog-quick-quantity button:disabled{opacity:.28}
.quantity-control.is-locked{grid-template-columns:1fr!important;width:54px!important;min-width:54px!important}.quantity-control.is-locked output{width:100%;border:0!important;color:var(--gold)}
.product-back-wrap-v1{position:relative;z-index:2;height:0;margin-top:10px;padding-left:18px;pointer-events:none}.product-back-v1{pointer-events:auto;position:relative;display:inline-flex!important;align-items:center!important;gap:9px!important;margin:0!important;padding:12px 17px 13px!important;border:1px solid rgba(201,167,106,.34)!important;border-bottom:0!important;border-radius:18px 18px 0 0!important;background:#171313!important;color:var(--gold)!important;text-decoration:none!important;text-transform:uppercase;letter-spacing:.13em;font-size:10px!important;font-weight:900!important;box-shadow:0 -8px 22px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04)!important;transform:translateY(calc(-100% + 5px));transition:transform .25s ease,background .25s ease}.product-back-v1:hover{transform:translateY(calc(-100% + 2px));background:#201718!important}.product-back-arrow-v1{width:18px;height:18px;display:grid;place-items:center}.product-back-arrow-v1 svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.product-characteristics-v2{gap:0!important;padding:0!important;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(201,167,106,.035))!important}.product-characteristics-list-v2{gap:0!important}.product-characteristics-list-v2::before{content:"Caratteristiche";display:block;padding:13px 16px 10px;color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.product-characteristics-list-v2>div{padding:12px 16px;border-top:1px solid rgba(201,167,106,.12)}.product-characteristics-list-v2 span{font-size:.78rem!important}.product-characteristics-list-v2 strong{font-size:.9rem}.product-points-v2{position:relative;padding:15px 16px 15px 58px!important;border-top:1px solid rgba(201,167,106,.22)!important;background:rgba(201,167,106,.065)}.product-points-v2::before{content:"★";position:absolute;left:17px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(201,167,106,.35);border-radius:50%;color:var(--gold)}.product-points-v2 strong{font-family:Georgia,serif;font-size:1.05rem;color:var(--gold)}
@media(max-width:680px){
  body>.bottom-nav{left:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:none!important;border-radius:0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;padding:4px max(4px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))!important;margin:0!important;box-shadow:0 -10px 28px rgba(0,0,0,.34)!important}
  .bottom-nav.bottom-nav-icons a{border-radius:12px!important}
  .app-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom))!important}
  .cart-item-actions .cart-item-detail{display:grid!important}
  .product-back-wrap-v1{padding-left:12px}
  .product-characteristics-list-v2>div{align-items:flex-start}
}


/* TECH14LM · omaggi identificati, quantità bloccata coerente e menu mobile leggero */
.cart-item-coupon-note{margin:8px 0 0;color:var(--gold);font-size:.76rem;line-height:1.35}
.cart-item-coupon-note strong{font-weight:800}
.quantity-control.is-locked{grid-template-columns:40px minmax(42px,1fr) 40px!important;width:auto!important;min-width:122px!important;opacity:.62}
.quantity-control.is-locked button{display:grid!important;place-items:center!important;opacity:.38!important;cursor:not-allowed!important}
.quantity-control.is-locked output{width:auto!important;border-left:1px solid rgba(201,167,106,.12)!important;border-right:1px solid rgba(201,167,106,.12)!important;color:var(--text)!important}
@media(max-width:680px){
  body>.bottom-nav{
    left:6px!important;right:6px!important;bottom:max(2px,env(safe-area-inset-bottom,0px))!important;width:auto!important;max-width:none!important;
    border:1px solid rgba(201,167,106,.2)!important;border-radius:20px!important;
    padding:4px max(4px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))!important;
    background:rgba(18,14,14,.78)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
    box-shadow:0 10px 34px rgba(0,0,0,.24)!important;overflow:hidden!important;
  }
  .bottom-nav.bottom-nav-icons a{border-radius:14px!important}
  .app-shell{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}
  .cart-item-mobile-price{color:var(--gold)!important;font-family:Georgia,serif!important;font-size:1rem!important;font-weight:700!important}
}


/* TECH14LN · rifiniture mobile, coupon e scheda prodotto */
.catalog-quick-quantity .quantity-control button{
  appearance:none;-webkit-appearance:none;display:grid;place-items:center;
  min-width:42px;width:42px;padding:0!important;margin:0!important;
  line-height:1!important;transform:none!important;box-shadow:none!important;
}
.catalog-quick-quantity .quantity-control button:active{transform:none!important}
.product-points-v2{display:grid!important;grid-template-columns:1fr!important;justify-items:start!important;gap:5px!important}
.product-points-v2 span{display:block}
.product-points-v2 strong{display:block;text-align:left!important;font-size:1.22rem!important}
.product-points-note-v2{margin:3px 0 0;color:var(--muted);font-size:.73rem;line-height:1.4}
.product-detail-v2{position:relative;z-index:2;margin-top:24px}
.product-back-wrap-v1{z-index:1!important;margin-top:30px!important;padding-left:14px!important}
.product-back-v1{padding:8px 12px 9px!important;font-size:8.5px!important;gap:7px!important;border-radius:13px 13px 0 0!important;transform:translateY(calc(-100% + 14px))!important}
.product-back-arrow-v1,.product-back-arrow-v1 svg{width:15px!important;height:15px!important}
.product-add-compact.is-added{font-size:0!important;min-width:52px!important;width:52px!important;padding:0!important}
.product-add-compact.is-added::after{content:"✓";font-size:1.25rem;font-weight:900}
@media(max-width:680px){
  body>.bottom-nav{
    left:50%!important;right:auto!important;width:calc(100% - 28px)!important;max-width:520px!important;
    transform:translateX(-50%)!important;bottom:max(2px,env(safe-area-inset-bottom,0px))!important;
    padding:3px max(4px,env(safe-area-inset-right)) calc(3px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))!important;
    background:rgba(18,14,14,.62)!important;border-radius:18px!important;
    box-shadow:none!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
  }
  .bottom-nav.bottom-nav-icons a{min-height:44px!important;border-radius:12px!important}
  .app-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
  .cart-item{position:relative}
  .cart-item-mobile-price{
    display:block!important;position:absolute;top:18px;right:58px;margin:0!important;
    color:var(--muted)!important;font-family:inherit!important;font-size:.78rem!important;font-weight:400!important;line-height:34px!important;
  }
  .cart-item-actions .cart-item-detail{top:17px!important;right:14px!important}
  .product-detail-v2{margin-top:34px!important}
  .product-back-wrap-v1{margin-top:38px!important;padding-left:10px!important}
  .product-back-v1{padding:7px 10px 8px!important;font-size:8px!important;transform:translateY(calc(-100% + 16px))!important}
}


/* TECH14LO · interazioni mobile, riepilogo vuoto e rifiniture navigazione */
/* Stato di conferma identico al Catalogo, senza variazioni dimensionali. */
.product-add-compact.is-added{
  min-width:150px!important;
  padding-inline:18px!important;
  background:#31533c!important;
  color:#fff!important;
  border-color:#31533c!important;
  font-size:0!important;
}
.product-add-compact.is-added::after{
  content:"✓";
  display:block;
  font-size:1.05rem;
  font-weight:900;
  line-height:1;
}

/* Linguetta di ritorno aderente e dietro la scheda prodotto. */
.product-back-wrap-v1{
  position:relative!important;
  z-index:1!important;
  height:0!important;
  margin:0!important;
  padding-left:14px!important;
  pointer-events:none!important;
}
.product-back-v1{
  position:absolute!important;
  left:14px!important;
  bottom:-1px!important;
  transform:translateY(-100%)!important;
  padding:7px 11px 8px!important;
  gap:7px!important;
  border-radius:12px 12px 0 0!important;
}
.product-detail-v2{
  position:relative!important;
  z-index:2!important;
  margin-top:28px!important;
}
.product-back-arrow-v1{
  width:18px!important;
  height:18px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid currentColor!important;
  border-radius:50%!important;
}
.product-back-arrow-v1 svg{
  width:12px!important;
  height:12px!important;
  display:block!important;
  transform:translateX(-.5px)!important;
}

/* Il riepilogo resta disponibile anche con il cestino vuoto. */
.cart-empty-inline{max-width:none!important;margin:0!important;min-height:300px;display:grid;place-items:center;align-content:center}
.cart-empty-inline .btn{width:auto}
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-inline-checkout,
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-direct-payments{opacity:.58}

/* CTA secondaria più leggibile e coerente con la gerarchia del checkout. */
.cart-continue{
  min-height:48px!important;
  border-color:rgba(201,167,106,.38)!important;
  background:linear-gradient(135deg,rgba(201,167,106,.10),rgba(255,255,255,.025))!important;
  color:var(--gold)!important;
  font-weight:750!important;
  letter-spacing:.02em!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.cart-continue::before{content:"←";margin-right:9px;font-size:1.05em}
.cart-continue:hover,.cart-continue:focus-visible{background:rgba(201,167,106,.16)!important;outline:none}

/* Tutti i selettori quantità evitano il doppio tap zoom nativo. */
.quantity-control,
.quantity-control button,
.quantity-control output,
.catalog-quick-quantity,
.product-quantity-control,
.ticket-quantity-control{
  touch-action:manipulation!important;
  -ms-touch-action:manipulation!important;
}
.quantity-control button{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none!important;
  -webkit-tap-highlight-color:transparent!important;
}

/* Pulsante + della scelta rapida: riempimento stabile e completo. */
.catalog-quick-quantity .quantity-control{
  grid-template-columns:44px 44px 44px!important;
  width:132px!important;
  background:#171313!important;
}
.catalog-quick-quantity .quantity-control button{
  width:44px!important;
  min-width:44px!important;
  height:42px!important;
  min-height:42px!important;
  border:0!important;
  border-radius:0!important;
  background:#21191a!important;
  background-image:none!important;
  box-shadow:none!important;
  opacity:1!important;
}
.catalog-quick-quantity .quantity-control button:disabled{opacity:.35!important}
.catalog-quick-quantity .quantity-control output{height:42px!important;line-height:42px!important;background:#171313!important}

@media(max-width:680px){
  /* Rimuove la fascia nera sotto il menu: lo spazio è gestito solo dall'app-shell. */
  body{padding-bottom:0!important}
  .app-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
  body>.bottom-nav{
    left:50%!important;
    right:auto!important;
    width:calc(100% - 64px)!important;
    max-width:430px!important;
    transform:translateX(-50%)!important;
    bottom:max(2px,env(safe-area-inset-bottom,0px))!important;
    padding:3px!important;
    border-radius:17px!important;
    background:rgba(18,14,14,.60)!important;
    box-shadow:none!important;
    backdrop-filter:blur(11px)!important;
    -webkit-backdrop-filter:blur(11px)!important;
  }
  .bottom-nav.bottom-nav-icons{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:0!important}
  .bottom-nav.bottom-nav-icons a{min-height:42px!important;padding:0!important;border-radius:11px!important}
  .bottom-nav-icon{width:24px!important;height:24px!important}
  .bottom-nav-icon svg{width:22px!important;height:22px!important}

  .cart-item-mobile-price{font-size:.68rem!important;line-height:34px!important}
  .product-detail-v2{margin-top:26px!important}
  .product-back-v1{left:10px!important;padding:6px 9px 7px!important;font-size:7.5px!important}
  .product-back-arrow-v1{width:17px!important;height:17px!important}
}

/* TECH14LP · coupon vuoto, scheda prodotto e navigazione coerente */
/* Nel cestino vuoto il coupon resta pienamente leggibile e utilizzabile. */
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-inline-checkout{opacity:1!important}
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-note-field,
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-payment-notice,
.cart-layout:has(.cart-empty-inline) .cart-summary .cart-direct-payments{opacity:.48!important}
.cart-layout:has(.cart-empty-inline) .cart-coupon-box{opacity:1!important;pointer-events:auto!important}
.cart-layout:has(.cart-empty-inline) .cart-coupon-box summary,
.cart-layout:has(.cart-empty-inline) .cart-coupon-box input,
.cart-layout:has(.cart-empty-inline) .cart-coupon-box button{opacity:1!important}
.cart-empty-icon{display:grid;place-items:center}
.cart-empty-icon svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}

/* Il CTA prodotto mantiene sempre la stessa impronta e usa lo stato verde del Catalogo. */
.product-purchase-v2 .product-add-compact,
.product-purchase-v2 .product-add-compact.is-added{
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  min-height:48px!important;
  padding:0 18px!important;
  border-radius:14px!important;
}
.product-purchase-v2 .product-add-compact.is-added{
  background:#31533c!important;
  color:#fff!important;
  border-color:#31533c!important;
  font-size:0!important;
}
.product-purchase-v2 .product-add-compact.is-added::after{content:"✓";font-size:1.05rem;font-weight:900;line-height:1}

/* Linguetta aderente al box: nessun vuoto e freccia centrata. */
.product-back-wrap-v1{height:0!important;margin:0!important;padding-left:14px!important;z-index:1!important}
.product-back-v1{left:14px!important;bottom:0!important;transform:translateY(-100%)!important;margin:0!important}
.product-detail-v2{margin-top:0!important;z-index:2!important}
.product-back-arrow-v1{display:grid!important;place-items:center!important;padding:0!important}
.product-back-arrow-v1 svg{margin:0!important;transform:none!important;translate:-.35px 0}

/* Navigazione: stessa trasparenza su desktop e smartphone. */
body>.bottom-nav{
  background:rgba(18,14,14,.60)!important;
  box-shadow:none!important;
  backdrop-filter:blur(11px)!important;
  -webkit-backdrop-filter:blur(11px)!important;
}

/* Il doppio tap non ingrandisce gli elementi interattivi in nessuna pagina. */
button,a,summary,[role="button"],input[type="button"],input[type="submit"]{
  touch-action:manipulation!important;
  -ms-touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}

@media(max-width:680px){
  body{padding-bottom:0!important}
  body::after{content:none!important;display:none!important}
  body>.bottom-nav{
    min-height:52px!important;
    padding:4px!important;
    background:rgba(18,14,14,.60)!important;
    box-shadow:none!important;
  }
  .bottom-nav.bottom-nav-icons a{min-height:46px!important}
  .bottom-nav-icon{width:26px!important;height:26px!important}
  .bottom-nav-icon svg{width:24px!important;height:24px!important}
  .app-shell{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .product-back-wrap-v1{padding-left:10px!important}
  .product-back-v1{left:10px!important}
}


/* TECH14LQ · scheda prodotto aderente, coupon differito, QR ordine e touch globale */
html,body,body *{touch-action:manipulation}
.product-page-v2 .product-back-wrap-v1{
  position:relative!important;
  z-index:3!important;
  height:auto!important;
  margin:0 0 -1px 14px!important;
  padding:0!important;
  pointer-events:none!important;
}
.product-page-v2 .product-back-v1{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  pointer-events:auto!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.product-page-v2 #status:empty{display:none!important}
.product-page-v2 .product-detail-v2{position:relative!important;z-index:2!important}
.product-purchase-v2{
  grid-template-columns:120px minmax(180px,260px)!important;
  justify-content:start!important;
  align-items:end!important;
}
.product-purchase-v2 .product-add-compact,
.product-purchase-v2 .product-add-compact.is-added{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 14px!important;
  margin:0!important;
  font-size:.86rem!important;
  line-height:1!important;
  box-sizing:border-box!important;
}
.product-purchase-v2 .product-add-compact.is-added{
  color:#f7fff8!important;
  background:#237a45!important;
  border-color:#3ca166!important;
}
.product-purchase-v2 .product-add-compact.is-added::after{font-size:1.05rem!important}
.order-success-qr{display:grid;place-items:center;margin:16px 0 10px}
.order-success-qr img{width:min(232px,70vw);height:auto;aspect-ratio:1;background:#fff;padding:8px;border-radius:16px}
@media(max-width:680px){
  .product-page-v2 .product-back-wrap-v1{margin-left:10px!important}
  .product-purchase-v2{grid-template-columns:112px minmax(150px,220px)!important;gap:12px!important}
}


/* TECH14LR · feedback coupon, CTA prodotto e contenimento orizzontale */
html,body{max-width:100%!important;overflow-x:clip!important}
.app-shell,main,section,article,.card{max-width:100%}
.cart-coupon-feedback.is-success{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.cart-coupon-feedback.is-success>span{min-width:0}
.coupon-remove-button{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.05);color:currentColor;font-size:1.1rem;line-height:1;cursor:pointer;padding:0}
.coupon-remove-button:hover,.coupon-remove-button:focus-visible{background:rgba(255,255,255,.11);outline:none}

/* CTA: stessa impronta prima/dopo; nello stato confermato resta solo la spunta bianca. */
.product-purchase-v2 .product-add-compact.is-added{font-size:0!important;color:#fff!important}
.product-purchase-v2 .product-add-compact.is-added::after{content:"✓"!important;color:#fff!important;font-size:1.08rem!important;font-weight:900!important;line-height:1!important}

/* Linguetta spostata di circa 1 cm a destra e saldata al box. */
.product-page-v2 .product-back-wrap-v1{margin:0 0 -1px 52px!important;transform:translateY(-1px)!important}
.product-page-v2 .product-back-v1{margin:0!important;border-bottom:0!important}
.product-page-v2 .product-detail-v2{margin-top:0!important}
@media(max-width:680px){
  .product-page-v2 .product-back-wrap-v1{margin-left:48px!important}
}


/* TECH14LS · catalogo immersivo, CTA prodotto e trasparenza ordine */
/* La conferma della scheda prodotto replica il catalogo: dimensioni stabili, verde e spunta bianca. */
.product-purchase-v2 .product-add-compact.is-added,
.product-purchase-v2 .product-add-compact.is-added:disabled{
  color:transparent!important;
  background:#31533c!important;
  border-color:#31533c!important;
  opacity:1!important;
  box-shadow:none!important;
}
.product-purchase-v2 .product-add-compact.is-added::after{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
/* Linguetta di ritorno: mezzo centimetro a sinistra rispetto alla release precedente. */
.product-page-v2 .product-back-wrap-v1{
  margin-left:33px!important;
}
@media(max-width:680px){
  .product-page-v2 .product-back-wrap-v1{margin-left:29px!important}
}

/* Card catalogo: l'immagine occupa interamente la testata della card. */
.catalog-product-v2{
  overflow:hidden!important;
}
.catalog-product-v2 .catalog-product-image{
  margin:calc(-1 * clamp(18px,3vw,28px)) calc(-1 * clamp(18px,3vw,28px)) 4px!important;
  width:auto!important;
  border-radius:var(--radius) var(--radius) 0 0!important;
  aspect-ratio:1/1!important;
}
.catalog-product-v2 .catalog-product-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:inherit!important;
}
@media(max-width:520px){
  .catalog-product-v2 .catalog-product-image{margin:-17px -17px 3px!important;border-radius:18px 18px 0 0!important}
}
/* Densità catalogo progressiva: 5 colonne sui monitor ampi, 4 sui desktop standard. */
@media(min-width:1380px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(min-width:1050px) and (max-width:1379px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Note e coupon negli ordini admin. */
.td-order-customer-note-compact,.td-order-coupon-compact{
  margin:8px 0 0;padding:9px 11px;border:1px solid rgba(201,167,106,.18);border-radius:11px;background:rgba(255,255,255,.025);font-size:.78rem;line-height:1.4
}
.td-order-customer-note-compact strong,.td-order-coupon-compact strong{color:var(--gold)}
.td-order-coupon-compact small{display:block;color:var(--muted);margin-top:2px}


/* TECH14LT · catalogo proporzionato e ordine admin completo */
/* Il catalogo arriva a cinque colonne solo su monitor realmente ampi. */
@media(min-width:1500px) and (max-width:1799px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(min-width:1800px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(min-width:1100px) and (max-width:1499px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(min-width:760px) and (max-width:1099px){
  .catalog-page .grid,#catalogGrid.grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Card dalla geometria stabile: immagine più alta e titoli lunghi sfumati. */
.catalog-product-v2{
  min-height:430px!important;
  display:flex!important;
  flex-direction:column!important;
}
.catalog-product-v2 .catalog-product-image{
  aspect-ratio:4/5!important;
  min-height:250px!important;
  max-height:330px!important;
  flex:0 0 auto!important;
}
.catalog-product-v2 h2{
  position:relative!important;
  display:block!important;
  min-height:2.45em!important;
  max-height:2.45em!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
  padding-right:28px!important;
}
.catalog-product-v2 h2::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:42px;
  height:100%;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(24,17,17,0),rgba(24,17,17,.96) 72%);
}
@media(max-width:680px){
  .catalog-product-v2{min-height:350px!important}
  .catalog-product-v2 .catalog-product-image{min-height:190px!important;max-height:230px!important}
  .catalog-product-v2 h2{padding-right:22px!important}
  .catalog-product-v2 h2::after{width:34px!important}
}


/* TECH14LU · catalogo a due righe e profilo Club organizzato */
.catalog-product-v2 h2{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  white-space:normal!important;
  line-height:1.22!important;
  min-height:2.44em!important;
  max-height:2.44em!important;
  padding-right:0!important;
}
.catalog-product-v2 h2::after{
  top:auto!important;bottom:0!important;height:1.2em!important;width:46%!important;
  background:linear-gradient(90deg,rgba(24,17,17,0),rgba(24,17,17,.98) 82%)!important;
}
@media(max-width:680px){
  .catalog-product-v2{overflow:hidden!important;padding:17px!important}
  .catalog-product-v2 .catalog-product-image{
    width:calc(100% + 34px)!important;
    max-width:none!important;
    margin:-17px -17px 4px!important;
    align-self:stretch!important;
    min-height:205px!important;
    border-radius:18px 18px 0 0!important;
  }
  .catalog-product-v2 .catalog-product-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
}
.profile-path-column{display:grid;grid-template-rows:minmax(0,2fr) minmax(150px,1fr);gap:16px;min-width:0}
.profile-path-column .profile-path-card{min-height:0!important}
.profile-points-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:150px}
.profile-points-summary>div{display:grid;gap:8px}.profile-points-summary strong{font:700 clamp(2rem,4vw,3.2rem) Georgia,serif;color:var(--gold)}
.profile-points-history{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);color:var(--text);padding:12px 15px;cursor:pointer}
.profile-points-history svg{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.profile-points-history span{font:600 1rem Georgia,serif}
.profile-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important}.profile-action{min-height:118px!important;align-content:center;justify-items:start;gap:13px!important}.profile-action-icon{width:34px;height:34px;display:grid!important;place-items:center!important;color:var(--gold)!important}.profile-action-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.profile-action strong{font:600 1.25rem Georgia,serif!important}.profile-action small{display:none!important}
.profile-points-dialog-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;border:1px solid rgba(201,167,106,.3);border-radius:16px;background:linear-gradient(135deg,rgba(201,167,106,.1),rgba(255,255,255,.025));margin-bottom:5px}.profile-points-dialog-summary span{color:var(--muted)}.profile-points-dialog-summary strong{font:700 2rem Georgia,serif;color:var(--gold)}
.profile-points-list{display:grid;gap:10px}.profile-point-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.profile-point-sign{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800}.profile-point-row.is-positive .profile-point-sign{background:rgba(59,143,87,.16);color:#85d79e}.profile-point-row.is-negative{border-color:rgba(178,81,81,.28)}.profile-point-row.is-negative .profile-point-sign{background:rgba(178,81,81,.17);color:#ef9999}.profile-point-row strong,.profile-point-row small{display:block}.profile-point-row small,.profile-point-row p{color:var(--muted);margin:5px 0 0}.profile-point-row>b{color:var(--gold);white-space:nowrap}.profile-point-row.is-negative>b{color:#ef9999}
.profile-coupon-filters{display:flex;gap:8px;position:sticky;top:0;z-index:2;padding:0 0 10px;background:#171313}.profile-coupon-filters button{border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025);color:var(--muted);padding:9px 13px;cursor:pointer}.profile-coupon-filters button.is-active{background:rgba(201,167,106,.14);border-color:rgba(201,167,106,.45);color:var(--gold)}.profile-coupon-filters span{margin-left:5px}.profile-coupon-list{display:grid;gap:12px}.profile-coupon-card{padding:16px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.025)}.profile-coupon-card.is-used{opacity:.68}.profile-coupon-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.profile-coupon-card-head span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}.profile-coupon-card h3{margin:4px 0 0;font:600 1.25rem Georgia,serif}.profile-copy-coupon{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--gold);cursor:pointer}.profile-copy-coupon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.profile-coupon-card code{display:inline-block;margin:14px 0 9px;padding:8px 11px;border-radius:9px;background:#100d0d;color:#f4e5bc;letter-spacing:.12em}.profile-coupon-benefit{margin:0 0 12px;color:var(--text)}.profile-coupon-card dl{display:flex;flex-wrap:wrap;gap:12px 22px;margin:0}.profile-coupon-card dl div{display:grid;gap:2px}.profile-coupon-card dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.profile-coupon-card dd{margin:0;font-size:.82rem}
@media(max-width:900px){.profile-path-column{grid-template-rows:auto auto}.profile-points-summary{min-height:132px}}
@media(max-width:620px){.profile-actions{grid-template-columns:1fr 1fr!important}.profile-action{min-height:108px!important}.profile-points-summary{align-items:flex-start;flex-direction:column}.profile-points-history{width:100%;justify-content:center}.profile-point-row{grid-template-columns:34px minmax(0,1fr)}.profile-point-row>b{grid-column:2}.profile-coupon-card dl{display:grid;grid-template-columns:1fr 1fr}}

/* TECH14LV · Profilo Club: saldo compatto, coupon/prodotti e storico punti leggibile */
.profile-path-column{grid-template-rows:minmax(0,3fr) minmax(104px,1fr)!important}
.profile-points-summary{
  min-height:104px!important;padding:16px 18px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  background:linear-gradient(145deg,rgba(201,167,106,.10),rgba(255,255,255,.018))!important;
  border-color:rgba(201,167,106,.34)!important;overflow:hidden;position:relative
}
.profile-points-summary::after{content:"";position:absolute;right:-36px;bottom:-62px;width:150px;height:150px;border:1px solid rgba(201,167,106,.18);border-radius:50%;pointer-events:none}
.profile-points-summary>div{display:flex!important;align-items:baseline;gap:14px!important;min-width:0}
.profile-points-summary>div .eyebrow{font-size:.72rem}.profile-points-summary strong{font-size:clamp(1.8rem,3vw,2.6rem)!important;line-height:1}
.profile-points-history{min-height:46px;padding:10px 13px!important;position:relative;z-index:1}.profile-points-history span{font:700 .92rem Inter,ui-sans-serif,sans-serif!important}
.profile-action strong{font:750 1.05rem Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:-.015em}
.profile-points-dialog-summary{display:none!important}
.profile-point-row.is-positive{border-color:rgba(70,166,101,.38)!important}
.profile-point-row.is-positive strong,.profile-point-row.is-positive>b{color:#85d79e!important}
.profile-point-row.is-negative strong,.profile-point-row.is-negative>b{color:#ef9999!important}
.profile-coupon-toolbar{position:sticky;top:0;z-index:3;background:#171313;padding-bottom:10px;display:grid;gap:8px}
.profile-coupon-filters{position:static!important;padding:0!important;background:transparent!important}
.profile-coupon-kind-filters{display:flex;gap:8px}
.profile-coupon-kind-filters button{border:0;background:transparent;color:var(--muted);padding:7px 3px;cursor:pointer;border-bottom:2px solid transparent}
.profile-coupon-kind-filters button.is-active{color:var(--gold);border-bottom-color:var(--gold)}
.profile-coupon-savings{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid rgba(70,166,101,.34);border-radius:16px;background:rgba(70,166,101,.08)}
.profile-coupon-savings span{color:#a9d9b8}.profile-coupon-savings strong{font:700 1.8rem Georgia,serif;color:#85d79e}
.profile-coupon-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start}
.profile-coupon-card{min-width:0;height:100%}.profile-coupon-card.is-gift{border-color:rgba(201,167,106,.38);background:linear-gradient(150deg,rgba(201,167,106,.09),rgba(255,255,255,.018))}
.profile-coupon-card h3,.profile-coupon-benefit{overflow-wrap:anywhere}
.profile-coupon-card:has(h3:nth-child(n)){grid-column:auto}
@media(max-width:700px){
  .profile-path-column{grid-template-rows:auto auto!important}.profile-points-summary{grid-template-columns:1fr auto!important;min-height:96px!important}
  .profile-coupon-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-coupon-card{padding:13px!important}.profile-coupon-card h3{font-size:1.05rem!important}
}
@media(max-width:430px){.profile-coupon-list{grid-template-columns:1fr!important}.profile-points-summary{grid-template-columns:1fr!important}.profile-points-history{width:100%;justify-content:center}}
.profile-coupon-card.is-wide{grid-column:1/-1}
@media(max-width:430px){.profile-coupon-card.is-wide{grid-column:auto}}


/* TECH14LW · Profilo: saldo laterale, coupon completi e storico punti ordinato */
.profile-path-column{
  display:grid!important;
  grid-template-columns:minmax(0,2fr) minmax(220px,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  gap:16px!important;
  align-self:stretch!important;
  min-height:100%!important;
}
.profile-path-column>.profile-path-card,
.profile-path-column>.profile-points-summary{height:100%!important;min-height:0!important}
.profile-points-summary{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:space-between!important;
  padding:22px!important;min-width:0!important;
}
.profile-points-summary>div{display:grid!important;align-content:start!important;gap:14px!important}
.profile-points-summary strong{font-size:clamp(2.2rem,4vw,3.6rem)!important}
.profile-points-history{width:100%!important;justify-content:center!important}
.profile-points-history span{font-weight:700!important}
.profile-action{justify-items:center!important;text-align:center!important}
.profile-action-icon{margin-inline:auto!important}
.profile-action strong{
  font:700 .82rem/1.25 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  text-transform:uppercase!important;letter-spacing:.14em!important;color:var(--gold)!important;text-align:center!important
}
.profile-point-date{display:block!important;margin:0 0 5px!important;color:var(--muted)!important;font-size:.74rem!important}
.profile-point-row strong{margin-top:0!important}
.profile-coupon-saved{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px;padding:10px 12px;border:1px solid rgba(70,166,101,.32);border-radius:12px;background:rgba(70,166,101,.08)}
.profile-coupon-saved span{font-size:.78rem;color:#a9d9b8}.profile-coupon-saved strong{color:#85d79e;font:700 1.05rem Georgia,serif;white-space:nowrap}
@media(max-width:900px){
  .profile-path-column{grid-template-columns:1fr!important;grid-template-rows:auto auto!important}
  .profile-points-summary{min-height:150px!important}
}

/* TECH14LX · Profilo, coupon, storico punti e prodotti gratuiti account */
.profile-path-column{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  gap:14px!important;
  height:100%!important;
}
.profile-path-column>.profile-path-card{height:auto!important;min-height:0!important}
.profile-points-summary{
  min-height:132px!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:20px 22px!important;
}
.profile-points-summary::after{display:none!important;content:none!important}
.profile-points-summary>div{display:grid!important;gap:7px!important}
.profile-points-summary strong{font-size:clamp(2rem,3.5vw,3rem)!important}
.profile-points-history{width:auto!important;min-width:118px!important;justify-content:center!important}
.profile-action{justify-items:center!important;text-align:center!important}
.profile-action-icon{margin-inline:auto!important;justify-self:center!important}
.profile-action strong{
  font:400 .8rem/1.3 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.14em!important;
  color:#fff!important;
  text-align:center!important;
}
.profile-point-row{
  grid-template-columns:38px minmax(0,1fr) 1px auto!important;
  align-items:center!important;
}
.profile-point-copy{min-width:0}
.profile-point-divider{display:block;width:1px;height:42px;background:var(--line);align-self:center}
.profile-point-row.is-positive .profile-point-divider{background:rgba(70,166,101,.42)}
.profile-point-row.is-negative .profile-point-divider{background:rgba(178,81,81,.42)}
.profile-coupon-order svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.profile-list-row.is-highlighted{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(201,167,106,.14)!important}
@media(max-width:620px){
  .profile-points-summary{grid-template-columns:minmax(0,1fr) auto!important;min-height:116px!important;align-items:center!important}
  .profile-points-history{width:auto!important;min-width:96px!important}
  .profile-point-row{grid-template-columns:34px minmax(0,1fr) 1px auto!important;gap:9px!important}
  .profile-point-row>b{grid-column:4!important;justify-self:end!important;text-align:right!important;font-size:.9rem!important}
  .profile-point-divider{grid-column:3!important;height:38px!important}
}
@media(max-width:390px){
  .profile-points-summary{padding:17px!important;gap:10px!important}
  .profile-points-history{min-width:84px!important;padding-inline:10px!important}
  .profile-point-row{grid-template-columns:30px minmax(0,1fr) 1px auto!important;padding:12px 10px!important}
}


/* TECH14LY · storico lineare, saldo compatto, coupon/prodotti account */
.profile-point-row{
  grid-template-columns:38px minmax(0,1fr) 1px 94px!important;
}
.profile-point-row>b{width:94px;text-align:right;justify-self:end}
.profile-point-divider{justify-self:center!important}
.profile-points-summary{
  width:33.333%!important;
  min-width:250px!important;
  min-height:176px!important;
  justify-self:end!important;
  align-self:stretch!important;
}
.profile-gift-add svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
@media(max-width:900px){
  .profile-points-summary{width:100%!important;min-width:0!important;min-height:132px!important}
}
@media(max-width:620px){
  .profile-point-row{grid-template-columns:34px minmax(0,1fr) 1px 74px!important}
  .profile-point-row>b{width:74px!important;grid-column:4!important}
}
@media(max-width:390px){
  .profile-point-row{grid-template-columns:30px minmax(0,1fr) 1px 68px!important}
  .profile-point-row>b{width:68px!important}
}

/* TECH14LZ · prodotti gratuiti coerenti, coupon completi e saldo allineato */
.profile-point-row{
  grid-template-columns:38px minmax(0,1fr) 1px 78px!important;
  column-gap:8px!important;
}
.profile-point-row>b{width:78px!important;max-width:78px!important}
.profile-point-divider{margin-right:0!important}
.profile-path-column{
  grid-template-columns:1fr!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  height:100%!important;
  align-self:stretch!important;
}
.profile-path-column>.profile-points-summary{
  width:33.333%!important;
  min-width:250px!important;
  height:100%!important;
  min-height:150px!important;
  justify-self:end!important;
  align-self:stretch!important;
}
.profile-gift-add.is-copied{
  background:#2f8b4f!important;
  border-color:#53b675!important;
  color:#fff!important;
}
@media(max-width:900px){
  .profile-path-column{grid-template-rows:auto auto!important;height:auto!important}
  .profile-path-column>.profile-points-summary{width:100%!important;min-width:0!important;height:auto!important;min-height:132px!important}
}
@media(max-width:620px){
  .profile-point-row{grid-template-columns:34px minmax(0,1fr) 1px 72px!important}
  .profile-point-row>b{width:72px!important;max-width:72px!important}
}
@media(max-width:390px){
  .profile-point-row{grid-template-columns:30px minmax(0,1fr) 1px 68px!important}
  .profile-point-row>b{width:68px!important;max-width:68px!important}
}


/* TECH14MA · omaggi multipli, profilo punti e cronologie dettagliate */
.profile-point-row{grid-template-columns:38px minmax(0,1fr) 1px 66px!important;column-gap:6px!important}
.profile-point-row>b{width:66px!important;max-width:66px!important}
.profile-path-column{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;height:100%!important}
.profile-path-column>.profile-points-summary{width:33.333%!important;min-width:250px!important;justify-self:start!important;align-self:stretch!important;height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:space-between!important}
.profile-path-column>.profile-points-summary>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:7px!important}
.profile-path-column>.profile-points-summary .profile-points-history{align-self:stretch!important;width:100%!important}
.profile-order-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.profile-order-copy{display:grid;gap:5px;min-width:0}.profile-order-date{color:var(--muted);font-size:.75rem}.profile-order-copy>strong{font-family:Georgia,serif;color:#fff;font-size:1.05rem}.profile-order-meta{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem}.profile-order-benefit{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid rgba(201,167,106,.45);border-radius:50%;color:var(--gold);font-weight:800}.profile-order-open{width:40px;height:40px;border:1px solid rgba(201,167,106,.42);border-radius:50%;background:transparent;color:var(--gold);display:grid;place-items:center;cursor:pointer}.profile-order-open svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.profile-order-detail{display:grid;gap:15px}.profile-order-detail h3{margin:0;font-family:Georgia,serif}.profile-order-detail-items{display:grid;gap:8px}.profile-order-detail-items>div,.profile-order-detail footer{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}.profile-order-back{border:0;background:transparent;color:var(--gold);padding:0 0 14px;cursor:pointer}
@media(max-width:900px){.profile-path-column>.profile-points-summary{width:100%!important;min-width:0!important;height:auto!important;min-height:132px!important}.profile-point-row{grid-template-columns:34px minmax(0,1fr) 1px 64px!important}.profile-point-row>b{width:64px!important;max-width:64px!important}}

/* TECH14MC · scadenza coupon evidenziata e cronologie compatibili con schema ordini */
.profile-coupon-expiry{
  margin-top:2px;
  padding:9px 10px!important;
  border:1px solid rgba(201,167,106,.34)!important;
  border-radius:10px;
  background:rgba(201,167,106,.08);
}
.profile-coupon-expiry dt{color:var(--gold)!important;font-weight:700!important}
.profile-coupon-expiry dd{color:#fff!important;font-weight:700!important}
.profile-coupon-expiry.is-warning{border-color:rgba(221,166,69,.62)!important;background:rgba(221,166,69,.12)}
.profile-coupon-expiry.is-urgent{border-color:rgba(210,90,74,.72)!important;background:rgba(210,90,74,.13)}
.profile-coupon-expiry.is-urgent dt,.profile-coupon-expiry.is-urgent dd{color:#ffb6aa!important}
.profile-coupon-expiry.is-expired{border-color:rgba(160,160,160,.35)!important;background:rgba(255,255,255,.035)}

/* TECH14MD · scadenze coupon sorgente, legenda e dettagli ordine/ticket completi */
.profile-order-copy>strong{
  font:600 .9rem/1.35 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.02em!important;
}
.profile-order-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 10px;color:var(--muted);font-size:.76rem}
.profile-order-legend-button{width:28px;height:28px;border:1px solid rgba(201,167,106,.45);border-radius:50%;background:rgba(201,167,106,.08);color:var(--gold);font-weight:800;cursor:pointer}
.profile-order-legend-popover{position:sticky;top:0;z-index:12;width:min(330px,100%);margin:0 0 12px auto;padding:14px 42px 14px 15px;border:1px solid rgba(201,167,106,.45);border-radius:15px;background:rgba(20,16,16,.97);box-shadow:0 14px 34px rgba(0,0,0,.34)}
.profile-order-legend-popover>button{position:absolute;top:8px;right:9px;width:28px;height:28px;border:0;background:transparent;color:#fff;font-size:1.25rem;cursor:pointer}
.profile-order-legend-popover p{display:flex;align-items:center;gap:9px;margin:6px 0;color:#ddd;font-size:.82rem}
.profile-order-detail{gap:16px!important}
.profile-order-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.profile-order-detail-head h3{margin:5px 0 0!important;font:600 1.15rem/1.3 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.profile-order-payment{min-width:190px;padding:11px 13px;border:1px solid var(--line);border-radius:13px;text-align:right;background:rgba(255,255,255,.025)}
.profile-order-payment span,.profile-order-payment strong{display:block}.profile-order-payment span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.profile-order-payment strong{margin-top:4px;font-size:.82rem;color:#fff}
.profile-order-payment.is-paid{border-color:rgba(70,166,101,.52);background:rgba(70,166,101,.1)}.profile-order-payment.is-paid span{color:#84d39b}
.profile-order-payment.is-pending{border-color:rgba(221,166,69,.5);background:rgba(221,166,69,.1)}.profile-order-payment.is-pending span{color:#e5bd6d}
.profile-order-payment.is-cancelled{border-color:rgba(190,78,70,.56);background:rgba(190,78,70,.1)}.profile-order-payment.is-cancelled span{color:#ef988f}
.profile-order-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.profile-order-overview>div{padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02)}.profile-order-overview span,.profile-order-overview strong{display:block}.profile-order-overview span{color:var(--muted);font-size:.73rem}.profile-order-overview strong{margin-top:4px;color:#fff;font-size:.95rem}
.profile-order-detail-items{gap:0!important;border-top:1px solid var(--line)}
.profile-order-detail-item{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:13px 0!important;border-bottom:1px solid var(--line)}.profile-order-detail-item>div{display:grid;gap:3px;min-width:0}.profile-order-detail-item strong{color:#fff;font-size:.92rem}.profile-order-detail-item small,.profile-order-detail-item span{color:var(--muted);font-size:.75rem}.profile-order-detail-item>b{color:var(--gold);white-space:nowrap}
.profile-order-coupon,.profile-order-note{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.profile-order-coupon span,.profile-order-note>span{display:block;color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}.profile-order-coupon strong{display:block;margin-top:5px;color:var(--gold)}.profile-order-coupon small{display:block;margin-top:4px;color:#ddd}.profile-order-note p{margin:7px 0 0;color:#fff;line-height:1.5}
.profile-order-qr{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid rgba(201,167,106,.32);border-radius:15px;background:rgba(201,167,106,.055)}.profile-order-qr span,.profile-order-qr small{display:block}.profile-order-qr span{color:var(--gold);font-weight:700}.profile-order-qr small{margin-top:4px;color:var(--muted)}.profile-order-qr img{width:116px;height:116px;border-radius:10px;background:#fff;padding:5px}
.profile-ticket-passes{display:grid;gap:12px}.profile-order-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px}.profile-order-section-title span{color:#fff;font-weight:700}.profile-order-section-title small{color:var(--muted)}.profile-ticket-pass-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-ticket-pass{display:grid;justify-items:center;gap:8px;padding:16px;border:1px solid rgba(201,167,106,.32);border-radius:16px;background:linear-gradient(180deg,rgba(255,250,241,.98),rgba(241,222,192,.96));color:#351016;text-align:center}.profile-ticket-pass>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#9b7339}.profile-ticket-pass>strong{font-family:Georgia,serif}.profile-ticket-pass>small{color:#735f45}.profile-ticket-pass img{width:min(180px,80%);aspect-ratio:1;background:#fff;padding:6px;border-radius:12px}.profile-ticket-pass code{font-weight:800;color:#351016}.profile-ticket-pass button{min-height:38px;padding:0 15px;border:1px solid #9b7339;border-radius:999px;background:#351016;color:#fff;cursor:pointer}
@media(max-width:620px){.profile-order-detail-head{display:grid}.profile-order-payment{min-width:0;text-align:left}.profile-order-overview{grid-template-columns:1fr}.profile-order-qr{align-items:flex-start}.profile-order-qr img{width:96px;height:96px}.profile-ticket-pass-grid{grid-template-columns:1fr}.profile-order-copy>strong{font-size:.86rem!important}}


/* TECH14ME · utilizzi coupon, cronologie e riepilogo ordine/ticket */
.profile-coupon-card dl>div:has(.profile-coupon-usage){align-items:center}
.profile-coupon-usage{font-size:1.05rem!important;font-weight:800!important;color:#fff!important}
.profile-order-card{grid-template-columns:minmax(0,1fr) auto 40px!important;position:relative}
.profile-order-total{font-size:.9rem;color:#fff;white-space:nowrap}
.profile-order-benefit{appearance:none;padding:0;cursor:pointer;font:800 .78rem/1 Inter,ui-sans-serif,sans-serif}
.profile-benefit-popover{position:absolute;z-index:20;left:16px;right:16px;bottom:10px;padding:10px 12px;border:1px solid rgba(201,167,106,.48);border-radius:12px;background:rgba(15,12,12,.96);color:#eee;font-size:.78rem;box-shadow:0 12px 26px rgba(0,0,0,.3)}
.profile-order-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}
.profile-order-back{display:inline-flex!important;align-items:center;gap:8px;min-height:38px;padding:0 14px!important;border:1px solid rgba(201,167,106,.45)!important;border-radius:999px!important;background:rgba(201,167,106,.08)!important;color:var(--gold)!important;font-weight:700;cursor:pointer}
.profile-order-back span{font-size:1.08rem;line-height:1}
.profile-order-qr-top{width:104px;height:104px;object-fit:contain;padding:5px;border-radius:12px;background:#fff}
.profile-order-detail-head{display:block!important;padding-bottom:12px!important}
.profile-order-kicker{display:block;margin-bottom:6px;color:var(--gold);font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.profile-order-detail-head h3{font-size:1.35rem!important;color:#fff}.profile-order-detail-head small{display:block;margin-top:6px;color:var(--muted)}
.profile-order-payment{min-width:0!important;width:100%;text-align:left!important;margin-top:0}
.profile-order-overview{grid-template-columns:repeat(3,minmax(0,1fr))}
.profile-ticket-passes{overflow:hidden}
.profile-order-section-title{align-items:center!important}.profile-order-section-title>div{display:grid;gap:4px}
.profile-ticket-download-all{min-height:38px;padding:0 14px;border:1px solid rgba(201,167,106,.48);border-radius:999px;background:rgba(201,167,106,.1);color:var(--gold);font-weight:700;cursor:pointer}
.profile-ticket-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,78%);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px}
.profile-ticket-pass{scroll-snap-align:start}.profile-ticket-logo{width:150px!important;height:70px!important;object-fit:contain!important;background:transparent!important;padding:0!important;border-radius:0!important}.profile-ticket-qr{width:min(180px,80%)!important;aspect-ratio:1;background:#fff;padding:6px;border-radius:12px}
@media(max-width:620px){.profile-order-card{grid-template-columns:minmax(0,1fr) auto 40px!important;gap:9px!important}.profile-order-total{font-size:.78rem}.profile-order-qr-top{width:84px;height:84px}.profile-order-overview{grid-template-columns:1fr}.profile-ticket-carousel{grid-auto-columns:88%}}

/* TECH14MF · coupon uniformi, stato cronologie e riepilogo ordine compatto */
.profile-coupon-list{grid-auto-rows:1fr}
.profile-coupon-card,.profile-coupon-card.is-wide{grid-column:auto!important;display:flex;flex-direction:column;min-height:310px;height:100%}
.profile-coupon-card h3{min-height:2.55em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.profile-coupon-benefit{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:3.9em}
.profile-coupon-card dl{margin-top:auto}
.profile-coupon-card.is-gift .profile-coupon-card-head{margin-bottom:8px}
.profile-coupon-card.is-gift .profile-coupon-benefit{margin-top:8px}

.profile-order-card{grid-template-columns:minmax(0,1fr) minmax(96px,auto) 40px!important;align-items:center;overflow:visible}
.profile-order-side{display:grid;justify-items:end;gap:7px;min-width:0}
.profile-order-list-status{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;font-size:.67rem;font-weight:800;line-height:1.1;white-space:nowrap}
.profile-order-list-status.is-paid{color:#8fe0a7;border-color:rgba(70,166,101,.52);background:rgba(70,166,101,.11)}
.profile-order-list-status.is-pending{color:#e8c77f;border-color:rgba(221,166,69,.5);background:rgba(221,166,69,.11)}
.profile-order-list-status.is-cancelled{color:#f0a097;border-color:rgba(190,78,70,.56);background:rgba(190,78,70,.11)}
.profile-order-benefits{display:inline-flex;align-items:center;gap:6px;position:relative;overflow:visible}
.profile-benefit-popover{position:absolute;z-index:30;left:calc(100% + 8px);top:50%;bottom:auto;right:auto;transform:translateY(-50%);width:max-content;max-width:min(260px,52vw);padding:8px 10px;border:1px solid rgba(201,167,106,.48);border-radius:10px;background:rgba(15,12,12,.98);color:#eee;font-size:.75rem;line-height:1.35;box-shadow:0 10px 22px rgba(0,0,0,.28);white-space:normal;pointer-events:none}
.profile-benefit-popover::before{content:"";position:absolute;right:100%;top:50%;width:7px;height:7px;transform:translate(4px,-50%) rotate(45deg);background:rgba(15,12,12,.98);border-left:1px solid rgba(201,167,106,.48);border-bottom:1px solid rgba(201,167,106,.48)}

.profile-order-detail-head{padding-bottom:12px!important;border-bottom:1px solid var(--line)}
.profile-order-detail-head h3{margin:0!important}
.profile-order-kicker{display:none!important}
.profile-order-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch}
.profile-order-overview.is-ticket{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.profile-order-overview .profile-order-payment{width:auto!important;margin:0!important;padding:12px!important;text-align:left!important}
.profile-order-overview .profile-order-payment span,.profile-order-overview .profile-order-payment strong{display:block}

@media(max-width:620px){
  .profile-coupon-card,.profile-coupon-card.is-wide{min-height:292px}
  .profile-order-card{grid-template-columns:minmax(0,1fr) minmax(82px,auto) 40px!important}
  .profile-order-side{gap:5px}.profile-order-list-status{font-size:.61rem;padding-inline:6px}
  .profile-benefit-popover{left:0;top:calc(100% + 8px);transform:none;max-width:min(250px,72vw)}
  .profile-benefit-popover::before{right:auto;left:13px;top:auto;bottom:100%;transform:translateY(4px) rotate(135deg)}
  .profile-order-overview,.profile-order-overview.is-ticket{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:390px){.profile-coupon-list{grid-template-columns:1fr!important}.profile-coupon-card,.profile-coupon-card.is-wide{min-height:0}}

/* TECH14MG · ticket evidenziati, riepilogo compatto e coupon densi */
.profile-coupon-card,.profile-coupon-card.is-wide{min-height:282px;padding:15px!important;gap:8px!important}
.profile-coupon-card-head{gap:10px!important;margin-bottom:2px!important}
.profile-coupon-card h3{margin-top:3px!important;min-height:2.45em}
.profile-coupon-benefit{margin:4px 0 6px!important;min-height:3.65em}
.profile-coupon-card code{margin:2px 0!important}
.profile-coupon-card dl{gap:6px!important}
.profile-coupon-card dl>div{padding-top:7px!important}
.profile-coupon-usage{font-size:inherit!important;font-weight:inherit!important;color:inherit!important}

.profile-order-topbar{min-height:0;margin:0 0 -88px;justify-content:flex-end;pointer-events:none}
.profile-order-qr-top{pointer-events:auto}
.profile-order-detail{padding-top:0!important}
.profile-order-detail-head{padding:0 126px 11px 0!important;margin:0!important}
.profile-order-detail-head h3{margin:0!important}
.profile-ticket-event-name{font:700 clamp(1.35rem,2.4vw,1.9rem)/1.15 Georgia,serif!important;color:#fff!important}
.profile-ticket-order-code{display:block;margin-top:7px;color:var(--gold);font:700 .88rem/1.2 Inter,ui-sans-serif,sans-serif;letter-spacing:.04em}
.profile-order-overview{margin-top:0!important}

.profile-order-benefits{position:relative}
.profile-benefit-popover{left:0!important;right:auto!important;top:calc(100% + 9px)!important;bottom:auto!important;transform:none!important;min-width:190px;max-width:min(280px,72vw);z-index:50}
.profile-benefit-popover::before{right:auto!important;left:var(--benefit-arrow-x,14px)!important;top:auto!important;bottom:100%!important;transform:translate(-50%,4px) rotate(135deg)!important}

@media(max-width:620px){
  .profile-coupon-card,.profile-coupon-card.is-wide{min-height:270px;padding:13px!important}
  .profile-order-topbar{margin-bottom:-72px}
  .profile-order-detail-head{padding-right:98px!important}
  .profile-ticket-event-name{font-size:1.25rem!important}
  .profile-benefit-popover{max-width:min(250px,78vw)}
}

/* TECH14MH · ticket leggibili, coupon mobile e riepiloghi responsive */
.profile-ticket-list-event{
  display:-webkit-box!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  color:#fff!important;
  font:700 1rem/1.28 Georgia,serif!important;
}
.profile-ticket-list-code{
  color:var(--muted);
  font:600 .78rem/1.25 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.025em;
}
.profile-order-benefit{
  width:28px!important;
  height:28px!important;
  border-radius:9px!important;
  background:rgba(201,167,106,.08)!important;
}
.profile-order-benefit svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.profile-order-benefit.is-gift{color:#9de0ae!important;border-color:rgba(70,166,101,.5)!important;background:rgba(70,166,101,.1)!important}

.profile-coupon-card,.profile-coupon-card.is-wide{
  min-height:258px!important;
  padding:13px 14px!important;
  gap:5px!important;
}
.profile-coupon-card-head{margin-bottom:0!important}
.profile-coupon-card h3{margin:1px 0 0!important;min-height:2.35em!important}
.profile-coupon-card code{margin:0 0 3px!important}
.profile-coupon-benefit{
  margin:2px 0 0!important;
  padding-bottom:10px!important;
  min-height:3.25em!important;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.profile-coupon-card dl{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start!important;
  gap:6px 14px!important;
  margin-top:2px!important;
}
.profile-coupon-card dl>div{
  padding-top:5px!important;
  align-content:start!important;
  min-height:42px;
}
.profile-coupon-card dt,.profile-coupon-card dd{line-height:1.25!important}
.profile-coupon-card.is-gift .profile-coupon-card-head{margin-bottom:2px!important}
.profile-coupon-card.is-gift .profile-coupon-benefit{margin-top:3px!important}

#dialogBody{position:relative}
.profile-order-topbar{
  position:absolute!important;
  top:0!important;
  right:0!important;
  z-index:3!important;
  min-height:0!important;
  margin:0!important;
}
.profile-order-qr-top{width:104px!important;height:104px!important}
.profile-order-detail-head{
  min-height:104px!important;
  padding:2px 124px 12px 0!important;
  display:flex!important;
  align-items:flex-start!important;
}
.profile-order-detail-head h3:not(.profile-ticket-event-name){
  font-size:clamp(1.55rem,3vw,2rem)!important;
  line-height:1.1!important;
}
.profile-order-detail-head small{
  margin-top:8px!important;
  font-size:.93rem!important;
}
.profile-ticket-event-name{
  font-size:clamp(1.55rem,3vw,2.1rem)!important;
  line-height:1.12!important;
}
.profile-ticket-order-code{
  margin-top:8px!important;
  font-size:1.02rem!important;
}
.profile-order-overview{margin-top:0!important}
.profile-order-return-tab{
  position:sticky;
  bottom:0;
  z-index:8;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:max-content;
  min-width:176px;
  min-height:42px;
  margin:15px auto 0;
  padding:0 18px;
  border:1px solid rgba(201,167,106,.5);
  border-radius:999px 999px 10px 10px;
  background:linear-gradient(180deg,rgba(53,16,22,.98),rgba(27,13,15,.98));
  color:var(--gold);
  font-weight:800;
  box-shadow:0 -7px 22px rgba(0,0,0,.25);
  cursor:pointer;
}
.profile-order-return-tab span{display:grid;place-items:center;width:24px;height:24px;border:1px solid currentColor;border-radius:50%;line-height:1}

@media(max-width:620px){
  .profile-coupon-list{grid-template-columns:1fr!important}
  .profile-coupon-card,.profile-coupon-card.is-wide{min-height:0!important;height:auto!important}
  .profile-order-detail-head{min-height:84px!important;padding:1px 88px 10px 0!important}
  .profile-order-qr-top{width:76px!important;height:76px!important}
  .profile-order-detail-head h3:not(.profile-ticket-event-name){font-size:1.35rem!important}
  .profile-ticket-event-name{font-size:1.42rem!important}
  .profile-ticket-order-code{font-size:.92rem!important}
  .profile-order-detail-head small{font-size:.82rem!important;margin-top:5px!important}
  .profile-order-overview,.profile-order-overview.is-ticket{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .profile-order-overview .profile-order-payment{grid-column:1/-1!important}
  .profile-order-return-tab{min-width:160px;margin-top:12px}
}
@media(max-width:390px){
  .profile-order-detail-head{padding-right:78px!important}
  .profile-order-qr-top{width:68px!important;height:68px!important}
  .profile-ticket-event-name{font-size:1.25rem!important}
}

/* TECH14MI · icone profilo e riepiloghi ordine/ticket mobile */
.profile-order-qr-button{
  display:grid;
  place-items:center;
  width:max-content;
  padding:0;
  border:0;
  background:transparent;
  cursor:zoom-in;
}
.profile-order-qr-button.is-enlarged{
  position:fixed;
  inset:0;
  z-index:9999;
  width:100vw;
  height:100dvh;
  background:rgba(4,3,3,.88);
  cursor:zoom-out;
}
.profile-order-qr-button.is-enlarged .profile-order-qr-top{
  width:min(78vw,420px)!important;
  height:min(78vw,420px)!important;
  padding:12px;
  border-radius:20px;
  background:#fff;
  box-shadow:0 24px 80px rgba(0,0,0,.55);
}
.profile-order-return-wrap{
  width:100%;
  display:flex;
  justify-content:center;
  margin-top:-1px;
  position:relative;
  z-index:2;
}
.profile-order-return-tab{
  position:relative!important;
  bottom:auto!important;
  min-width:176px!important;
  min-height:42px!important;
  margin:0 auto!important;
  padding:9px 15px 10px!important;
  border:1px solid rgba(201,167,106,.34)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  background:#171313!important;
  color:var(--gold)!important;
  box-shadow:0 9px 22px rgba(0,0,0,.2)!important;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:9px!important;
  font-weight:900!important;
}
.profile-order-return-tab .product-back-arrow-v1,
.profile-order-return-tab .product-back-arrow-v1 svg{
  width:18px!important;
  height:18px!important;
}
.profile-ticket-carousel.is-single{
  display:flex!important;
  justify-content:center;
  overflow:visible;
}
.profile-ticket-carousel.is-single .profile-ticket-pass{
  width:min(100%,420px);
  flex:0 0 min(100%,420px);
}

@media(max-width:620px){
  #dialogTitle{
    width:100%;
    text-align:center;
  }
  .profile-order-topbar{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    display:flex!important;
    justify-content:center!important;
    margin:8px 0 12px!important;
  }
  .profile-order-detail-head{
    min-height:0!important;
    padding:0 0 12px!important;
    text-align:center!important;
    justify-content:center!important;
  }
  .profile-order-detail-head>div{
    width:100%;
    display:grid;
    justify-items:center;
  }
  .profile-order-detail-head h3,
  .profile-ticket-event-name,
  .profile-ticket-order-code,
  .profile-order-detail-head small{
    text-align:center!important;
  }
  .profile-order-qr-top{
    width:112px!important;
    height:112px!important;
  }
  .profile-order-return-tab{
    min-width:154px!important;
    padding:8px 12px 9px!important;
    border-radius:0 0 14px 14px!important;
    font-size:8px!important;
  }
  .profile-ticket-carousel.is-single{
    padding-left:0!important;
    padding-right:0!important;
  }
  .profile-ticket-carousel.is-single .profile-ticket-pass{
    width:min(92%,340px);
    flex-basis:min(92%,340px);
    margin-inline:auto;
  }
}

/* TECH14MJ · indicatori uniformi e riepiloghi ordine/ticket rifiniti */
.profile-order-benefit.is-gift{
  color:var(--gold)!important;
  border-color:rgba(201,167,106,.42)!important;
  background:rgba(201,167,106,.08)!important;
}

/* Desktop: QR a sinistra della X e contenuto allineato tra titolo e data. */
@media(min-width:621px){
  .profile-order-topbar{
    top:-2px!important;
    right:54px!important;
  }
  .profile-order-qr-top{
    width:88px!important;
    height:88px!important;
  }
  .profile-order-detail-head{
    min-height:92px!important;
    padding-right:156px!important;
  }
}

/* Il pulsante di ritorno resta esterno al box, centrato e aderente al bordo inferiore. */
.profile-order-detail{position:relative;z-index:2}
.profile-order-return-wrap{
  width:100%;
  display:flex;
  justify-content:center;
  margin-top:-1px!important;
  position:relative;
  z-index:1;
}
.profile-order-return-tab{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:max-content!important;
  min-width:0!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:8px 12px 9px!important;
  border:1px solid rgba(201,167,106,.34)!important;
  border-top:0!important;
  border-radius:0 0 13px 13px!important;
  background:#171313!important;
  color:var(--gold)!important;
  box-shadow:0 9px 22px rgba(0,0,0,.2)!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  font-size:8.5px!important;
  font-weight:900!important;
}
.profile-order-return-tab .product-back-arrow-v1{
  width:15px!important;
  height:15px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
}
.profile-order-return-tab .product-back-arrow-v1 svg{
  width:15px!important;
  height:15px!important;
  margin:0!important;
  transform:none!important;
  translate:0 0!important;
}

/* I ticket mantengono dimensioni identiche sia singoli sia multipli. */
.profile-ticket-carousel{
  grid-auto-columns:320px!important;
}
.profile-ticket-pass{
  width:320px!important;
  min-width:320px!important;
  height:500px!important;
  min-height:500px!important;
  box-sizing:border-box!important;
  align-content:start;
}
.profile-ticket-carousel.is-single{
  display:flex!important;
  justify-content:center!important;
  overflow:visible!important;
}
.profile-ticket-carousel.is-single .profile-ticket-pass{
  flex:0 0 320px!important;
  width:320px!important;
  min-width:320px!important;
  height:500px!important;
  min-height:500px!important;
  margin-inline:auto!important;
}

@media(max-width:620px){
  #dialogTitle{
    width:100%!important;
    text-align:center!important;
  }
  .profile-order-topbar{
    position:relative!important;
    display:flex!important;
    justify-content:center!important;
    margin:16px 0!important;
  }
  .profile-order-detail-head{
    padding:0!important;
    min-height:0!important;
    text-align:center!important;
    justify-content:center!important;
  }
  .profile-order-detail-head>div{
    width:100%!important;
    display:grid!important;
    justify-items:center!important;
  }
  .profile-order-detail-head h3,
  .profile-ticket-event-name,
  .profile-ticket-order-code,
  .profile-order-detail-head small{
    text-align:center!important;
  }
  .profile-order-qr-top{
    width:112px!important;
    height:112px!important;
  }
  .profile-ticket-carousel{
    grid-auto-columns:min(320px,88vw)!important;
  }
  .profile-ticket-pass,
  .profile-ticket-carousel.is-single .profile-ticket-pass{
    width:min(320px,88vw)!important;
    min-width:min(320px,88vw)!important;
    height:500px!important;
    min-height:500px!important;
    flex-basis:min(320px,88vw)!important;
    margin-inline:auto!important;
  }
  .profile-order-return-tab{
    padding:7px 10px 8px!important;
    font-size:8px!important;
  }
}


/* TECH14MK · rifiniture popup simboli, QR e ritorno coupon */
@media (min-width:621px){
  .profile-order-topbar{
    top:34px!important;
    right:54px!important;
  }
  .profile-order-qr-top{
    width:82px!important;
    height:82px!important;
  }
  .profile-order-detail-head{
    min-height:104px!important;
    padding-right:150px!important;
  }
}
.profile-order-qr-button.is-enlarged{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100dvh!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(4,3,3,.94)!important;
  backdrop-filter:blur(4px)!important;
  -webkit-backdrop-filter:blur(4px)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.profile-order-qr-button.is-enlarged .profile-order-qr-top{
  width:min(78vw,420px)!important;
  height:min(78vw,420px)!important;
  padding:12px!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html.td-qr-open,html.td-qr-open body{overflow:hidden!important}
.profile-order-return-wrap{
  margin:18px auto 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.profile-order-return-tab{
  border-top:1px solid rgba(201,167,106,.34)!important;
  border-radius:14px!important;
}
@media(max-width:620px){
  #profileDialog .profile-dialog-head,
  #profileDialog .dialog-head{position:relative!important}
  #profileDialog #dialogTitle{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0 48px!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }
  .profile-order-topbar{margin:18px 0 18px!important}
  .profile-order-detail-head{margin:0!important}
  .profile-order-return-wrap{margin-top:18px!important}
}


/* TECH14ML · posizionamento definitivo QR, ritorno esterno e titoli popup */
#profileDialog:not(.is-order-detail) #dialogTitle{
  text-align:left!important;
  padding-left:0!important;
  padding-right:52px!important;
}
#profileDialog.is-order-detail{
  overflow:visible!important;
}
#profileDialog.is-order-detail .profile-dialog-card{
  overflow:hidden!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap{
  position:absolute!important;
  left:50%!important;
  top:100%!important;
  bottom:auto!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  transform:translate(-50%,12px)!important;
  z-index:12!important;
  display:flex!important;
  justify-content:center!important;
  pointer-events:auto!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .profile-order-return-tab{
  margin:0!important;
  position:static!important;
}
@media(min-width:621px){
  #profileDialog.is-order-detail .profile-order-topbar{
    top:-50px!important;
    right:68px!important;
  }
  #profileDialog.is-order-detail .profile-order-qr-top{
    width:106px!important;
    height:106px!important;
  }
  #profileDialog.is-order-detail .profile-order-detail-head{
    min-height:104px!important;
    padding-right:150px!important;
  }
}
@media(max-width:620px){
  #profileDialog.is-order-detail #dialogTitle{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 48px!important;
    text-align:center!important;
    justify-self:center!important;
  }
  #profileDialog.is-order-detail .profile-order-topbar{
    position:relative!important;
    inset:auto!important;
    margin:18px auto!important;
    width:100%!important;
    justify-content:center!important;
  }
  #profileDialog.is-order-detail > .profile-order-return-wrap{
    transform:translate(-50%,10px)!important;
  }
}
.profile-order-qr-button.is-enlarged{
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(0,0,0,.86)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
.profile-order-qr-button.is-enlarged .profile-order-qr-top{
  width:min(78vw,430px)!important;
  height:min(78vw,430px)!important;
  padding:12px!important;
  background:#fff!important;
  border-radius:18px!important;
  box-shadow:0 18px 70px rgba(0,0,0,.46)!important;
}
\n\n/* TECH14MM · livello coupon preservato, QR completo e rifiniture popup */
#profileDialog:not(.is-order-detail) #dialogTitle{margin-bottom:22px!important}
#profileDialog:not(.is-order-detail) #dialogEyebrow + #dialogTitle{margin-top:5px!important}

@media(min-width:621px){
  #profileDialog.is-order-detail .profile-order-topbar{
    position:absolute!important;
    top:42px!important;
    right:78px!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    z-index:8!important;
  }
  #profileDialog.is-order-detail .profile-order-qr-top{
    width:92px!important;
    height:92px!important;
    display:block!important;
  }
  #profileDialog.is-order-detail .profile-order-detail-head{
    min-height:104px!important;
    padding-right:132px!important;
  }
}
@media(max-width:620px){
  #profileDialog.is-order-detail #dialogTitle{
    display:block!important;
    width:100%!important;
    margin:0 auto!important;
    padding:0 54px!important;
    text-align:center!important;
  }
}

#profileDialog.is-order-detail > .profile-order-return-wrap{
  top:100%!important;
  transform:translate(-50%,0)!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .profile-order-return-tab{
  min-width:0!important;
  height:42px!important;
  padding:0 15px!important;
  border-top:0!important;
  border-radius:0 0 14px 14px!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1{
  display:grid!important;
  place-items:center!important;
}

.profile-qr-modal{
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
.profile-qr-modal::backdrop{
  background:rgba(5,4,4,.82)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
.profile-qr-modal[open]{display:grid!important;place-items:center!important}
.profile-qr-modal img{
  width:min(76vw,520px)!important;
  height:min(76vw,520px)!important;
  max-height:76dvh!important;
  object-fit:contain!important;
  padding:14px!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 24px 90px rgba(0,0,0,.62)!important;
  cursor:zoom-out!important;
}
.profile-qr-modal-close{
  position:fixed!important;
  top:max(18px,env(safe-area-inset-top))!important;
  right:18px!important;
  width:44px!important;
  height:44px!important;
  border:1px solid rgba(201,167,106,.45)!important;
  border-radius:50%!important;
  background:#120f0f!important;
  color:#fff!important;
  font-size:1.5rem!important;
  z-index:2!important;
}
@media(max-width:620px){
  .profile-qr-modal img{width:min(84vw,430px)!important;height:min(84vw,430px)!important}
  #profileDialog:not(.is-order-detail) #dialogTitle{margin-bottom:20px!important}
}

/* TECH14MN · allineamento QR e pulsanti chiusura compatti */
@media (min-width:621px){
  #profileDialog.is-order-detail .profile-order-topbar{
    top:56px!important;
    right:84px!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  #profileDialog.is-order-detail .profile-order-qr-top{
    width:88px!important;
    height:88px!important;
    margin:0!important;
    transform:none!important;
  }
  #profileDialog.is-order-detail .profile-order-detail-head{
    min-height:128px!important;
    padding-right:142px!important;
  }
}

#profileDialog.is-order-detail > .profile-order-return-wrap .profile-order-return-tab{
  height:36px!important;
  min-height:36px!important;
  padding:0 12px!important;
  gap:7px!important;
  font-size:.67rem!important;
  letter-spacing:.11em!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  font-size:.78rem!important;
}

/* Tutti i comandi X: area utile compatta, senza cerchi sovradimensionati. */
.profile-dialog-close,
.reward-dialog-close,
.ticket-dialog-close,
.catalog-variant-close,
.profile-qr-modal-close,
.crop-dialog-close,
.modal-close,
.dialog-close{
  box-sizing:border-box!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  line-height:1!important;
  font-size:1.15rem!important;
  font-weight:400!important;
  border-radius:11px!important;
  border:1px solid rgba(201,167,106,.32)!important;
  background:rgba(18,15,15,.86)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.profile-dialog-close,
.reward-dialog-close,
.ticket-dialog-close{top:12px!important;right:12px!important}
.catalog-variant-close{top:10px!important;right:10px!important}

.profile-qr-modal{
  background:rgba(5,4,4,.82)!important;
  z-index:2147483647!important;
}
.profile-qr-modal::backdrop{
  background:rgba(5,4,4,.82)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
.profile-qr-modal-close{
  top:max(14px,env(safe-area-inset-top))!important;
  right:14px!important;
  z-index:2147483647!important;
}
html.td-qr-open #profileDialog > .profile-dialog-card > .profile-dialog-close{
  visibility:hidden!important;
  pointer-events:none!important;
}
@media(max-width:620px){
  .profile-dialog-close,
  .reward-dialog-close,
  .ticket-dialog-close,
  .catalog-variant-close,
  .profile-qr-modal-close,
  .crop-dialog-close,
  .modal-close,
  .dialog-close{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    border-radius:10px!important;
    font-size:1.08rem!important;
  }
}

/* TECH14MO · QR desktop, ritorno compatto, overlay mobile e coupon lineari */
@media (min-width:621px){
  /* Il QR resta nella fascia alta: tra intestazione e data, mai sul divisore. */
  #profileDialog.is-order-detail .profile-order-topbar{
    top:8px!important;
    right:84px!important;
    align-items:flex-start!important;
  }
  #profileDialog.is-order-detail .profile-order-qr-top{
    width:88px!important;
    height:88px!important;
    margin:0!important;
  }
  #profileDialog.is-order-detail .profile-order-detail-head{
    min-height:128px!important;
    padding-right:142px!important;
  }
}

/* Linguetta di ritorno più compatta, con freccia nuovamente nel cerchio. */
#profileDialog.is-order-detail > .profile-order-return-wrap .profile-order-return-tab{
  height:32px!important;
  min-height:32px!important;
  padding:0 10px!important;
  gap:6px!important;
  font-size:.61rem!important;
  letter-spacing:.10em!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  border:1px solid currentColor!important;
  border-radius:50%!important;
  background:transparent!important;
  line-height:1!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1 svg{
  display:block!important;
  width:10px!important;
  height:10px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Nessuna evidenziazione blu o selezione della X su dispositivi touch. */
.profile-dialog-close,
.reward-dialog-close,
.ticket-dialog-close,
.catalog-variant-close,
.profile-qr-modal-close,
.crop-dialog-close,
.modal-close,
.dialog-close{
  -webkit-tap-highlight-color:transparent!important;
  -webkit-touch-callout:none!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  outline:none!important;
}
.profile-dialog-close:focus,
.profile-dialog-close:focus-visible,
.profile-dialog-close:active,
.profile-qr-modal-close:focus,
.profile-qr-modal-close:focus-visible,
.profile-qr-modal-close:active{
  outline:none!important;
  box-shadow:none!important;
  background:rgba(18,15,15,.92)!important;
  color:#fff!important;
}

@media(max-width:620px){
  /* Riserva spazio reale per la linguetta esterna e porta il dialog leggermente più in alto. */
  #profileDialog.is-order-detail{
    max-height:calc(100dvh - 76px)!important;
    transform:translateY(-16px)!important;
  }
  #profileDialog.is-order-detail > .profile-order-return-wrap{
    transform:translate(-50%,0)!important;
  }

  /* Sequenza coupon regolare: una colonna, nessun salto dopo la seconda card. */
  .profile-coupon-list{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .profile-coupon-card,
  .profile-coupon-card.is-wide{
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
  }
  .profile-coupon-card[hidden]{display:none!important}
}

/* TECH14MP · chiusura QR senza selezioni residue e frecce centrate */
html.td-qr-just-closed,
html.td-qr-just-closed body,
html.td-qr-just-closed #profileDialog,
html.td-qr-just-closed #profileDialog *{
  -webkit-tap-highlight-color:transparent!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  outline:none!important;
}
html.td-qr-just-closed #profileDialog :focus,
html.td-qr-just-closed #profileDialog :focus-visible,
html.td-qr-just-closed #profileDialog :active{
  outline:none!important;
  box-shadow:none!important;
}

/* Ritorno ordine: leggermente più grande, senza perdere compattezza. */
#profileDialog.is-order-detail > .profile-order-return-wrap .profile-order-return-tab{
  height:36px!important;
  min-height:36px!important;
  padding:0 12px!important;
  gap:7px!important;
  font-size:.65rem!important;
  letter-spacing:.105em!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
}
#profileDialog.is-order-detail > .profile-order-return-wrap .product-back-arrow-v1 svg{
  width:11px!important;
  height:11px!important;
  margin:0!important;
  transform:translateX(-.35px)!important;
  translate:none!important;
}

/* Stesso centraggio per Torna al catalogo / Torna al cestino. */
.product-back-v1 .product-back-arrow-v1{
  display:grid!important;
  place-items:center!important;
  padding:0!important;
}
.product-back-v1 .product-back-arrow-v1 svg{
  margin:0!important;
  transform:translateX(-.35px)!important;
  translate:none!important;
}

/* TECH14MQ · View cliente: Profilo Club, Eventi e Modifica profilo */
.profile-club-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:stretch}
.profile-points-summary,.profile-benefits-summary{min-height:168px;padding:20px!important;display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:flex-start!important;gap:8px;overflow:hidden}
.profile-points-summary::after{display:none!important}.profile-points-summary>strong{font:700 clamp(2rem,4vw,3rem)/1 Georgia,serif;color:var(--gold)}.profile-points-summary>small{color:var(--muted)}
.profile-points-history,.profile-benefits-open{margin-top:auto;min-height:38px;border:1px solid rgba(201,167,106,.36);border-radius:11px;background:rgba(255,255,255,.025);color:#fff;padding:8px 13px;display:inline-flex;align-items:center;gap:8px;font-weight:700}.profile-points-history svg{width:17px;height:17px;fill:none;stroke:var(--gold);stroke-width:1.8}
.profile-benefits-summary{background:linear-gradient(145deg,rgba(53,16,22,.72),rgba(22,17,17,.96))!important}.profile-benefits-count{display:flex;align-items:baseline;gap:7px}.profile-benefits-count strong{font:700 clamp(2rem,4vw,3rem)/1 Georgia,serif;color:var(--gold)}.profile-benefits-summary p{margin:0;color:var(--muted);max-width:30ch;font-size:.85rem}
.ticket-card-image{position:relative;overflow:hidden}.ticket-date-feature{position:absolute;left:12px;bottom:12px;display:grid;gap:2px;padding:9px 11px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(14,10,10,.78);backdrop-filter:blur(10px);color:#fff;max-width:calc(100% - 24px)}.ticket-date-feature strong{font-size:.82rem}.ticket-date-feature span{font-size:.75rem;color:var(--gold)}
.ticket-card .ticket-mood-art::before,.ticket-card .ticket-mood-art::after{display:none!important}
.ticket-dialog-card{scrollbar-width:thin;scrollbar-color:rgba(124,124,124,.38) transparent;scrollbar-gutter:stable}.ticket-dialog-card::-webkit-scrollbar{width:7px}.ticket-dialog-card::-webkit-scrollbar-track{background:transparent}.ticket-dialog-card::-webkit-scrollbar-thumb{background:rgba(124,124,124,.34);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.ticket-detail-date{grid-column:1/-1;border-color:rgba(201,167,106,.45)!important;background:rgba(201,167,106,.06)!important}.ticket-detail-date strong{color:var(--gold)!important}.ticket-detail-location{grid-column:1/-1}
.ticket-table-select{position:relative}.ticket-table-select>select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.ticket-table-select>button{width:100%;min-height:46px;border:1px solid rgba(201,167,106,.3);border-radius:12px;background:#1b1415;color:#fff;padding:0 13px;display:flex;align-items:center;justify-content:space-between;text-align:left}.ticket-table-select>button b{color:var(--gold)}.ticket-table-menu{position:absolute;z-index:100;left:0;right:0;top:calc(100% + 6px);max-height:220px;overflow:auto;padding:6px;border:1px solid rgba(201,167,106,.35);border-radius:12px;background:#180f11;box-shadow:0 18px 40px rgba(0,0,0,.42)}.ticket-table-menu button{width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:11px;border-radius:8px}.ticket-table-menu button:hover,.ticket-table-menu button:focus-visible{background:rgba(201,167,106,.12);color:var(--gold)}
.profile-edit-grid,.profile-dialog-card,.profile-edit-form{overflow:visible!important}.profile-choice,.profile-select-shell{position:relative;z-index:auto}.profile-choice.is-open,.profile-select-shell.is-open{z-index:220!important}.profile-choice-menu,.profile-select-menu{z-index:230!important;max-height:min(280px,45vh)!important}
@media(max-width:760px){.profile-club-strip{grid-template-columns:1fr}.profile-points-summary,.profile-benefits-summary{min-height:145px}.ticket-dialog-card{overflow-y:auto!important;overflow-x:hidden!important}}

/* TECH14MR · Eventi: card informative e dettaglio ridisegnato */
.ticket-grid{align-items:stretch}
.ticket-card{display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important}
.ticket-card-image{margin:0!important;border-radius:inherit inherit 0 0!important;min-height:250px!important;aspect-ratio:16/10!important;background:#120d0e}
.ticket-card-image>img,.ticket-card-image>.ticket-mood-art{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important}
.ticket-card-body{padding:18px!important;display:flex!important;flex-direction:column!important;gap:10px!important;flex:1}
.ticket-card-description{margin:0!important;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ticket-card-place{display:grid;gap:4px;padding:12px 13px;border:1px solid rgba(201,167,106,.26);border-radius:12px;background:linear-gradient(145deg,rgba(53,16,22,.38),rgba(255,255,255,.02))}
.ticket-card-place span,.ticket-card-availability span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}
.ticket-card-place strong{font-size:.92rem;color:#fff;line-height:1.25}
.ticket-card-availability{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ticket-card-availability>div{display:grid;gap:4px;padding:11px 12px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025)}
.ticket-card-availability strong{font-size:.86rem;color:#fff}
.ticket-card-footer{margin-top:auto!important;padding-top:4px}
.ticket-date-feature{left:14px!important;bottom:14px!important;padding:10px 12px!important;border-radius:10px!important;background:rgba(13,9,10,.84)!important}

.ticket-dialog{padding:clamp(12px,3vw,32px)!important}
.ticket-dialog-card{width:min(960px,100%)!important;max-height:min(88vh,820px)!important;padding:0!important;display:grid!important;grid-template-columns:minmax(280px,.9fr) minmax(0,1.25fr)!important;overflow:hidden!important;border-radius:24px!important;background:linear-gradient(145deg,#1d1516,#120e0f)!important}
.ticket-dialog-image{min-height:100%!important;margin:0!important;border-radius:0!important;position:sticky!important;top:0!important;align-self:stretch!important;background:#100b0c}
.ticket-dialog-image img,.ticket-dialog-image .ticket-mood-art{height:100%!important;min-height:100%!important;object-fit:cover!important;border-radius:0!important}
.ticket-dialog-content{padding:34px 34px 30px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin!important;scrollbar-color:rgba(112,112,112,.34) transparent!important;scrollbar-gutter:stable both-edges!important}
.ticket-dialog-content::-webkit-scrollbar{width:7px!important}
.ticket-dialog-content::-webkit-scrollbar-track{background:transparent!important}
.ticket-dialog-content::-webkit-scrollbar-thumb{background:rgba(112,112,112,.34)!important;border-radius:999px!important;border:2px solid transparent!important;background-clip:padding-box!important}
.ticket-dialog-card{scrollbar-width:none!important}
.ticket-dialog-card::-webkit-scrollbar{display:none!important}
.ticket-dialog-content>h2{font-size:clamp(1.8rem,3vw,2.65rem)!important;margin:.2rem 0 .6rem!important}
.ticket-dialog-content>#ticketDialogDescription{margin:0 0 18px!important;line-height:1.65!important}
.ticket-dialog-meta{display:grid!important;gap:10px!important;margin:0 0 18px!important}
.ticket-dialog-meta>section,.ticket-detail-availability>section{border:1px solid rgba(255,255,255,.1)!important;border-radius:13px!important;background:rgba(255,255,255,.026)!important;padding:13px 14px!important;display:grid!important;gap:5px!important}
.ticket-dialog-meta span{font-size:.68rem!important;letter-spacing:.13em!important;text-transform:uppercase!important;color:var(--gold)!important}
.ticket-dialog-meta strong{font-size:.94rem!important;color:#fff!important;line-height:1.35!important}
.ticket-detail-highlight{background:linear-gradient(135deg,rgba(201,167,106,.14),rgba(201,167,106,.035))!important;border-color:rgba(201,167,106,.42)!important}
.ticket-detail-location{background:linear-gradient(135deg,rgba(53,16,22,.52),rgba(255,255,255,.02))!important;border-color:rgba(201,167,106,.28)!important}
.ticket-detail-availability{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.ticket-qty{padding:13px 14px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:13px!important;background:rgba(255,255,255,.018)!important}
.ticket-table-menu{scrollbar-width:thin!important;scrollbar-color:rgba(112,112,112,.34) transparent!important}
.ticket-table-menu::-webkit-scrollbar{width:6px!important}.ticket-table-menu::-webkit-scrollbar-track{background:transparent!important}.ticket-table-menu::-webkit-scrollbar-thumb{background:rgba(112,112,112,.34)!important;border-radius:999px!important}
.ticket-dialog-close{z-index:250!important}

@media(max-width:760px){
  .ticket-card-image{min-height:190px!important;aspect-ratio:4/3!important}
  .ticket-card-body{padding:14px!important;gap:8px!important}
  .ticket-card-availability{gap:6px}
  .ticket-card-availability>div{padding:9px}
  .ticket-dialog{padding:10px!important}
  .ticket-dialog-card{display:block!important;max-height:88dvh!important;overflow:hidden!important;border-radius:20px!important}
  .ticket-dialog-image{position:relative!important;height:220px!important;min-height:220px!important}
  .ticket-dialog-image img,.ticket-dialog-image .ticket-mood-art{height:220px!important;min-height:220px!important}
  .ticket-dialog-content{max-height:calc(88dvh - 220px)!important;padding:22px 18px 24px!important}
  .ticket-detail-availability{grid-template-columns:1fr!important}
}


/* TECH14MS · Eventi realmente ridisegnati: gerarchia, disponibilità e scrollbar */
.ticket-card{
  border:1px solid rgba(201,167,106,.26)!important;
  background:linear-gradient(160deg,rgba(31,22,23,.98),rgba(16,12,13,.98))!important;
  box-shadow:0 22px 55px rgba(0,0,0,.24)!important;
}
.ticket-card-image{
  min-height:270px!important;
  aspect-ratio:16/10!important;
  border-bottom:1px solid rgba(201,167,106,.16)!important;
}
.ticket-card-body{padding:20px!important;gap:12px!important}
.ticket-card-body>.eyebrow{margin-bottom:-4px!important}
.ticket-card-body>h2{margin:0!important;font-size:clamp(1.35rem,2vw,1.8rem)!important;line-height:1.08!important}
.ticket-card-description{min-height:3em!important;color:rgba(255,255,255,.68)!important}
.ticket-card-place{
  position:relative!important;
  padding:14px 15px 14px 17px!important;
  border:1px solid rgba(201,167,106,.38)!important;
  border-left:3px solid var(--gold)!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,rgba(75,33,38,.5),rgba(255,255,255,.025))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.ticket-card-place .ticket-card-section-label,
.ticket-card-availability-item span{
  display:block!important;
  margin-bottom:5px!important;
  font:700 .63rem/1.1 Inter,ui-sans-serif,sans-serif!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:var(--gold)!important;
}
.ticket-card-place strong{font-size:.98rem!important;line-height:1.28!important}
.ticket-card-availability{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
.ticket-card-availability-item{
  min-height:76px!important;
  padding:13px 14px!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.034)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.ticket-card-availability-item strong{
  color:#fff!important;
  font:700 1rem/1.2 Inter,ui-sans-serif,sans-serif!important;
}
.ticket-date-feature{
  top:15px!important;
  bottom:auto!important;
  left:15px!important;
  border-radius:11px!important;
  border:1px solid rgba(201,167,106,.38)!important;
  background:rgba(15,10,11,.86)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.28)!important;
}
.ticket-date-feature strong{font-size:.78rem!important;text-transform:capitalize!important}
.ticket-date-feature span{font-size:.82rem!important;font-weight:800!important}

.ticket-dialog-card{
  width:min(1040px,calc(100vw - 32px))!important;
  max-height:min(90vh,860px)!important;
  grid-template-columns:minmax(310px,.92fr) minmax(0,1.22fr)!important;
  border:1px solid rgba(201,167,106,.3)!important;
  border-radius:24px!important;
  box-shadow:0 34px 90px rgba(0,0,0,.62)!important;
}
.ticket-dialog-image{
  border-right:1px solid rgba(201,167,106,.17)!important;
}
.ticket-dialog-content{
  position:relative!important;
  padding:34px 30px 30px 34px!important;
  max-height:min(90vh,860px)!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(128,128,128,.46) transparent!important;
}
.ticket-dialog-content::-webkit-scrollbar{width:8px!important}
.ticket-dialog-content::-webkit-scrollbar-track{background:transparent!important;margin-block:18px!important}
.ticket-dialog-content::-webkit-scrollbar-thumb{
  min-height:44px!important;
  background:rgba(128,128,128,.46)!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background-clip:padding-box!important;
}
.ticket-dialog-content::-webkit-scrollbar-thumb:hover{background:rgba(155,155,155,.58)!important;background-clip:padding-box!important}
.ticket-dialog-content>h2{margin:4px 0 10px!important;font-size:clamp(2rem,3vw,2.8rem)!important}
.ticket-dialog-content>#ticketDialogDescription{
  margin:0 0 20px!important;
  padding-bottom:18px!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  color:rgba(255,255,255,.72)!important;
}
.ticket-dialog-meta{gap:12px!important;margin-bottom:20px!important}
.ticket-detail-date-banner,
.ticket-detail-location-panel{
  display:grid!important;
  gap:6px!important;
  padding:15px 16px!important;
  border-radius:14px!important;
}
.ticket-detail-date-banner{
  border:1px solid rgba(201,167,106,.46)!important;
  background:linear-gradient(135deg,rgba(201,167,106,.14),rgba(201,167,106,.035))!important;
}
.ticket-detail-location-panel{
  border:1px solid rgba(201,167,106,.3)!important;
  border-left:3px solid var(--gold)!important;
  background:linear-gradient(135deg,rgba(65,27,32,.58),rgba(255,255,255,.025))!important;
}
.ticket-detail-date-banner span,
.ticket-detail-location-panel span,
.ticket-detail-availability span{
  font:700 .63rem/1.1 Inter,ui-sans-serif,sans-serif!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  color:var(--gold)!important;
}
.ticket-detail-date-banner strong{font-size:1.04rem!important;color:#fff!important}
.ticket-detail-location-panel strong{font-size:1rem!important;color:#fff!important}
.ticket-detail-availability{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.ticket-detail-availability>section{
  min-height:82px!important;
  padding:14px!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.032)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:7px!important;
}
.ticket-detail-availability strong{font-size:1rem!important;color:#fff!important}
.ticket-qty{
  margin-top:12px!important;
  padding:14px 15px!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.025)!important;
}
.ticket-table-select>button{
  min-height:48px!important;
  border-color:rgba(201,167,106,.38)!important;
  background:linear-gradient(145deg,#211719,#160f11)!important;
}
.ticket-table-menu{
  margin-top:2px!important;
  border-color:rgba(201,167,106,.42)!important;
  background:#170f11!important;
  box-shadow:0 22px 55px rgba(0,0,0,.58)!important;
}
.ticket-table-menu button{padding:12px 13px!important;border-bottom:1px solid rgba(255,255,255,.055)!important}
.ticket-table-menu button:last-child{border-bottom:0!important}
.ticket-confirm{min-height:48px!important;margin-top:14px!important}

@media(max-width:760px){
  .ticket-grid{grid-template-columns:1fr!important}
  .ticket-card-image{min-height:230px!important;aspect-ratio:16/10!important}
  .ticket-card-body{padding:16px!important}
  .ticket-card-availability{grid-template-columns:1fr 1fr!important}
  .ticket-card-availability-item{min-height:70px!important;padding:11px!important}
  .ticket-dialog{padding:8px!important}
  .ticket-dialog-card{width:100%!important;max-height:92dvh!important;display:flex!important;flex-direction:column!important;border-radius:20px!important}
  .ticket-dialog-image{height:210px!important;min-height:210px!important;border-right:0!important;border-bottom:1px solid rgba(201,167,106,.16)!important}
  .ticket-dialog-image img,.ticket-dialog-image .ticket-mood-art{height:210px!important;min-height:210px!important}
  .ticket-dialog-content{max-height:calc(92dvh - 210px)!important;padding:22px 17px 26px 18px!important;overflow-y:scroll!important}
  .ticket-dialog-content::-webkit-scrollbar-track{margin-block:14px!important}
  .ticket-detail-availability{grid-template-columns:1fr 1fr!important}
  .ticket-detail-availability>section:last-child{grid-column:1/-1!important}
}
@media(max-width:390px){
  .ticket-card-availability{grid-template-columns:1fr!important}
  .ticket-detail-availability{grid-template-columns:1fr!important}
  .ticket-detail-availability>section:last-child{grid-column:auto!important}
}

/* TECH14MT · chiusura view cliente: eventi, ticket PNG e riepiloghi */
.ticket-card-place,.ticket-detail-location-panel{display:none!important}
.ticket-location-line{display:flex;align-items:flex-start;gap:8px;margin:0;color:rgba(255,255,255,.76);font-size:.86rem;line-height:1.35}
.ticket-location-line svg{width:17px;height:17px;flex:0 0 17px;margin-top:1px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ticket-card-availability.is-single{grid-template-columns:1fr!important}
.ticket-card-availability.is-single .ticket-card-availability-item{min-height:64px}
.ticket-card-availability-item span,.ticket-detail-availability span{font-size:.68rem!important;letter-spacing:.13em!important;text-transform:uppercase!important;color:var(--gold)!important}
.ticket-card-availability-item strong{font-size:1rem!important}
.ticket-card .ticket-mood-art::before,.ticket-card .ticket-mood-art::after,.ticket-dialog-image .ticket-mood-art::before,.ticket-dialog-image .ticket-mood-art::after{display:none!important;content:none!important}
.ticket-card .ticket-mood-art span,.ticket-dialog-image .ticket-mood-art span{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

.ticket-dialog{overflow:hidden!important}
.ticket-dialog-card{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 24px)!important;overflow:hidden!important}
.ticket-dialog-image{overflow:hidden!important;min-width:0!important}
.ticket-dialog-content{min-width:0!important;max-width:100%!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;padding-right:clamp(28px,4vw,44px)!important;scrollbar-width:thin;scrollbar-color:rgba(132,126,121,.48) transparent}
.ticket-dialog-content::-webkit-scrollbar{width:6px}
.ticket-dialog-content::-webkit-scrollbar-track{background:transparent;margin:18px 0}
.ticket-dialog-content::-webkit-scrollbar-thumb{background:rgba(132,126,121,.48);border-radius:999px;border:1px solid transparent;background-clip:padding-box}
.ticket-dialog-meta{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin:18px 0!important;min-width:0!important}
.ticket-detail-date-banner{min-width:0!important}
.ticket-detail-location-line{padding:2px 1px 4px;font-size:.92rem}
.ticket-detail-availability{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;min-width:0!important}
.ticket-detail-availability.is-single{grid-template-columns:1fr!important}
.ticket-detail-availability>section{min-width:0!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:13px!important;background:rgba(255,255,255,.026)!important;padding:13px 14px!important;display:grid!important;gap:5px!important}
.ticket-detail-availability strong{font-size:1.05rem!important}
.ticket-price-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 18px;padding:0 2px;color:rgba(255,255,255,.72)}
.ticket-price-note span{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.ticket-price-note strong{font:700 1.35rem Georgia,serif;color:var(--gold)}
.ticket-table-menu{scrollbar-width:thin;scrollbar-color:rgba(132,126,121,.48) transparent}
.ticket-table-menu::-webkit-scrollbar{width:6px}.ticket-table-menu::-webkit-scrollbar-track{background:transparent}.ticket-table-menu::-webkit-scrollbar-thumb{background:rgba(132,126,121,.48);border-radius:999px}

.profile-order-detail-head{padding-top:12px!important;min-height:112px!important;display:flex!important;align-items:center!important}
.profile-order-detail-head>div{transform:translateY(6px)}
.profile-ticket-event-name{font-size:clamp(1.55rem,2.4vw,2.15rem)!important;line-height:1.08!important}
.profile-order-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.profile-order-overview.is-ticket{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.profile-order-total-box{order:1}.profile-order-payment{order:2}.profile-order-overview>div:not(.profile-order-total-box):not(.profile-order-payment){order:3}
.profile-ticket-download-all,.profile-ticket-pass-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}
.profile-ticket-download-all svg,.profile-ticket-pass-actions button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profile-ticket-pass-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.profile-ticket-pass-actions button{min-height:38px;border:1px solid rgba(155,115,57,.42);border-radius:10px;background:rgba(155,115,57,.08);color:#7a5729;font-weight:700}
.profile-coupon-saving-counts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:9px;color:rgba(255,255,255,.68);font-size:.78rem}
.profile-coupon-saving-counts span{display:inline-flex;gap:6px;align-items:center}.profile-coupon-saving-counts b{color:#fff}

@media(max-width:680px){
  .ticket-dialog{width:calc(100% - 12px)!important;max-height:calc(100dvh - 12px)!important}
  .ticket-dialog-card{grid-template-columns:1fr!important;max-height:calc(100dvh - 12px)!important}
  .ticket-dialog-image{min-height:190px!important;max-height:230px!important}
  .ticket-dialog-content{padding:18px 22px 24px 16px!important}
  .ticket-detail-availability{grid-template-columns:1fr 1fr!important}
  .ticket-detail-availability.is-single{grid-template-columns:1fr!important}
  .profile-order-detail-head{min-height:auto!important;padding-top:8px!important;justify-content:center!important;text-align:center!important}
  .profile-order-detail-head>div{transform:none!important;width:100%}
  .profile-order-overview,.profile-order-overview.is-ticket{grid-template-columns:1fr 1fr!important}
  .profile-order-payment{grid-column:1/-1!important;order:2!important}
  .profile-order-total-box{order:1!important}
  .profile-ticket-pass-actions{grid-template-columns:1fr}
  .profile-coupon-saving-counts{display:grid;gap:5px}
}


/* TECH14MU · eventi, ticket e riepiloghi */
.ticket-location-line{align-items:center!important;gap:14px!important;font-size:1rem!important;color:var(--gold)!important}
.ticket-location-line svg{width:24px!important;height:24px!important;flex-basis:24px!important;margin:0!important;stroke:var(--gold)!important}
.ticket-location-line span{line-height:1.2!important;color:var(--gold)!important}
.ticket-card-availability-item strong{white-space:nowrap!important}

.ticket-dialog{overflow:hidden!important;padding:0!important}
.ticket-dialog-card{border:0!important;box-shadow:none!important;overflow:hidden!important}
.ticket-dialog-content{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin!important;scrollbar-color:rgba(132,126,121,.48) transparent!important}
.ticket-dialog-content::-webkit-scrollbar{width:6px!important}
.ticket-dialog-content::-webkit-scrollbar-track{background:transparent!important;margin:18px 0!important}
.ticket-dialog-content::-webkit-scrollbar-thumb{background:rgba(132,126,121,.48)!important;border-radius:999px!important;border:1px solid transparent!important;background-clip:padding-box!important}
.ticket-detail-location-box{display:grid!important;gap:8px!important;padding:14px 15px!important;border:1px solid rgba(201,167,106,.28)!important;border-radius:13px!important;background:rgba(201,167,106,.045)!important}
.ticket-detail-location-title{display:flex!important;align-items:center!important;gap:9px!important;color:var(--gold)!important;font-size:.72rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:800!important}
.ticket-detail-location-title svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
.ticket-detail-location-box>strong{color:#fff!important;font-size:1rem!important;line-height:1.35!important}
.ticket-detail-availability>section{align-items:flex-start!important;text-align:left!important}
.ticket-detail-availability>section span,.ticket-detail-availability>section strong{text-align:left!important}
.ticket-price-note{justify-content:flex-start!important;gap:14px!important;padding-top:2px!important}

.profile-order-side{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:nowrap!important}
.profile-order-list-status{order:2!important}.profile-order-total{order:1!important}.profile-order-open{order:3!important}
.profile-order-overview .profile-order-payment{order:1!important}
.profile-order-overview>div:not(.profile-order-payment):not(.profile-order-total-box){order:2!important}
.profile-order-overview .profile-order-total-box{order:3!important}
.profile-ticket-bulk-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.profile-ticket-share-all{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}
.profile-ticket-share-all svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profile-ticket-pass-actions{display:flex!important;justify-content:center!important;gap:10px!important}
.profile-ticket-pass-actions button{width:42px!important;height:42px!important;min-height:42px!important;padding:0!important;border-radius:12px!important;box-shadow:0 6px 16px rgba(53,16,22,.12)!important}
.profile-ticket-pass-actions button svg{width:19px!important;height:19px!important}

@media(max-width:680px){
  .profile-order-side{gap:6px!important}
  .profile-order-overview,.profile-order-overview.is-ticket{grid-template-columns:1fr 1fr!important}
  .profile-order-overview .profile-order-payment{grid-column:1/-1!important}
  .profile-order-overview .profile-order-total-box{grid-column:1/-1!important}
  .profile-ticket-bulk-actions{justify-content:flex-start!important;width:100%!important}
}

/* TECH14MV · cronologie, ticket PNG e sold out */
.profile-order-benefit.is-gift{
  color:var(--gold)!important;
  border-color:rgba(201,167,106,.42)!important;
  background:rgba(201,167,106,.09)!important;
}
.profile-order-benefit.is-coupon svg,
.profile-order-benefit.is-gift svg{stroke:currentColor!important}
.profile-order-side{
  display:grid!important;
  grid-template-columns:minmax(112px,1fr) minmax(118px,1fr) 42px!important;
  align-items:center!important;
  gap:10px!important;
  min-width:min(390px,46vw)!important;
}
.profile-order-total{
  display:grid!important;
  gap:3px!important;
  align-content:center!important;
  justify-items:start!important;
  min-width:0!important;
}
.profile-order-total span{
  color:rgba(255,255,255,.58)!important;
  font-size:.68rem!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.profile-order-total strong{font:700 1rem Georgia,serif!important;color:#fff!important;white-space:nowrap!important}
.profile-order-list-status,.profile-order-open{border-radius:12px!important}
.profile-order-list-status{justify-self:stretch!important;text-align:center!important}
.profile-order-open{justify-self:end!important}

.ticket-location-line{justify-content:center!important;text-align:center!important}
.ticket-location-line span{display:flex!important;align-items:center!important;min-height:24px!important}

.profile-ticket-download-all,.profile-ticket-share-all{
  min-height:40px!important;
  padding:9px 13px!important;
  border:1px solid rgba(155,115,57,.42)!important;
  border-radius:11px!important;
  background:rgba(155,115,57,.08)!important;
  color:#7a5729!important;
  font-weight:750!important;
  transition:background .18s ease,color .18s ease,transform .18s ease!important;
}
.profile-ticket-download-all.is-working,.profile-ticket-share-all.is-working,
.profile-ticket-pass-actions button.is-working{opacity:.68!important;transform:scale(.96)!important}
.profile-ticket-download-all.is-done,.profile-ticket-share-all.is-done,
.profile-ticket-pass-actions button.is-done{background:#2f855a!important;border-color:#2f855a!important;color:#fff!important}

.profile-order-detail-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 88px 118px minmax(92px,auto)!important;
  align-items:center!important;
  gap:14px!important;
}
.profile-order-detail-item .profile-order-item-main{display:grid!important;gap:4px!important;min-width:0!important}
.profile-order-item-qty,.profile-order-item-points{display:grid!important;gap:3px!important;text-align:center!important;padding-left:12px!important;border-left:1px solid rgba(255,255,255,.09)!important}
.profile-order-item-qty span,.profile-order-item-points span{font-size:.66rem!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:rgba(255,255,255,.52)!important}
.profile-order-item-qty strong,.profile-order-item-points strong{font-size:.82rem!important;color:#fff!important;white-space:nowrap!important}

.ticket-card.is-sold-out{
  position:relative!important;
  overflow:hidden!important;
  animation:ticketSoldPulse 2.8s ease-in-out infinite!important;
  border-color:rgba(177,59,59,.58)!important;
}
.ticket-card.is-sold-out::after{
  content:"SOLD OUT";
  position:absolute;
  top:18px;
  right:-38px;
  width:150px;
  padding:7px 0;
  transform:rotate(38deg);
  text-align:center;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.16em;
  color:#fff;
  background:rgba(150,36,36,.92);
  box-shadow:0 7px 22px rgba(0,0,0,.24);
  pointer-events:none;
}
.ticket-card.is-sold-out .ticket-card-image img,
.ticket-card.is-sold-out .ticket-card-fallback{filter:saturate(.55) brightness(.72)!important}
@keyframes ticketSoldPulse{
  0%,100%{box-shadow:0 10px 28px rgba(0,0,0,.12),0 0 0 0 rgba(177,59,59,0)}
  50%{box-shadow:0 14px 34px rgba(0,0,0,.18),0 0 0 4px rgba(177,59,59,.12)}
}

@media(max-width:760px){
  .profile-order-card{grid-template-columns:minmax(0,1fr)!important}
  .profile-order-side{
    min-width:0!important;
    width:100%!important;
    grid-template-columns:minmax(102px,1fr) minmax(110px,1fr) 42px!important;
  }
  .profile-order-detail-item{
    grid-template-columns:minmax(0,1fr) 66px 88px!important;
    gap:9px!important;
  }
  .profile-order-detail-item>b{grid-column:1/-1!important;justify-self:end!important}
  .profile-order-item-qty,.profile-order-item-points{padding-left:8px!important}
}
