/* BroInTheAir · il biglietto "sta per iniziare" — copia dark-only di prototype/shared/styles.css
   (usata dalla landing: stessi valori del prodotto, senza le regole del tema chiaro) */
.nextup{ --pad:20px; --stub:74px; position:absolute; left:0; right:0; bottom:62px; z-index:30; border-radius:20px 20px 0 0; background:var(--surface); box-shadow:inset 0 0 0 1px var(--border-strong); transform:translateY(calc(100% + 8px)); transition:transform .55s cubic-bezier(.2,.85,.25,1.04); touch-action:pan-x; cursor:grab;
  -webkit-mask-image:radial-gradient(circle 8px at calc(100% - var(--pad) - var(--stub)) 0, transparent 8px, #000 8.5px), radial-gradient(circle 8px at calc(100% - var(--pad) - var(--stub)) 100%, transparent 8px, #000 8.5px);
  mask-image:radial-gradient(circle 8px at calc(100% - var(--pad) - var(--stub)) 0, transparent 8px, #000 8.5px), radial-gradient(circle 8px at calc(100% - var(--pad) - var(--stub)) 100%, transparent 8px, #000 8.5px);
  -webkit-mask-composite:source-in; mask-composite:intersect; }
.nextup.up{ transform:none; }
.nextup.static{ position:static; transform:none; border-radius:18px; cursor:default; }
.nextup.nostub{ -webkit-mask-image:none; mask-image:none; }
.nextup.live{ box-shadow:inset 0 0 0 1px rgba(77,227,161,.38); }
.nextup .grab{ position:absolute; left:50%; top:7px; width:34px; height:3px; margin-left:-17px; border-radius:99px; background:var(--border-strong); }
.nextup > a{ display:flex; align-items:stretch; padding:19px var(--pad) 14px; text-decoration:none; color:var(--ink); }
.nextup .body{ flex:1; min-width:0; padding-right:15px; }
.nextup .kk{ display:flex; align-items:center; gap:6px; font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--mint); }
.nextup .kk.warn{ color:var(--amber); }
.nextup .kk.bad{ color:var(--danger); }
.nextup .kk.mute{ color:var(--ink-subtle); }
.nextup .dot{ width:6px; height:6px; border-radius:99px; background:currentColor; flex:none; box-shadow:none; animation:none; }
.nextup.live .dot{ animation:nupulse 1.9s ease-in-out infinite; }
.nextup .ti{ display:flex; align-items:center; gap:9px; margin-top:7px; min-width:0; }
.nextup .ti img{ width:22px; height:22px; object-fit:contain; flex:none; border-radius:5px; }
.nextup .ti svg{ width:18px; height:18px; color:var(--mint); flex:none; }
.nextup .ti b{ font-size:16px; font-weight:500; letter-spacing:-.018em; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nextup .mt s{ color:var(--ink-subtle); opacity:.6; text-decoration-color:var(--border-strong); margin-right:5px; }
.nextup .mt{ display:block; margin-top:5px; font-variant-numeric:tabular-nums; font-size:12.5px; color:var(--ink-subtle); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nextup .stub{ flex:none; width:var(--stub); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; border-left:1.5px dashed var(--border-strong); padding:0; text-align:center; }
.nextup .sk{ font-size:9.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-subtle); }
.nextup .sv{ font-variant-numeric:tabular-nums; font-size:22px; font-weight:500; letter-spacing:-.02em; color:var(--ink); }
.nextup.live .sv{ color:var(--mint); }
.nextup .track{ padding:0 var(--pad) 18px; }
.nextup .segs{ display:flex; gap:3px; }
.nextup .segs i{ flex:1; height:3px; border-radius:99px; background:var(--surface-3); transform:scaleX(0); transform-origin:left; transition:transform .5s cubic-bezier(.22,.7,.2,1), background .3s; }
.nextup.run .segs i{ transform:none; }
.nextup .segs i.done{ background:var(--mint); }
.nextup .segs i.now{ background:var(--mint); animation:nxnow 1.6s ease-in-out infinite; }
.nextup .segs i:nth-child(2){ transition-delay:.05s } .nextup .segs i:nth-child(3){ transition-delay:.1s }
.nextup .segs i:nth-child(4){ transition-delay:.15s } .nextup .segs i:nth-child(5){ transition-delay:.2s }
.nextup .segs i:nth-child(6){ transition-delay:.25s } .nextup .segs i:nth-child(7){ transition-delay:.3s }
@keyframes nxnow{ 0%,100%{ opacity:1 } 50%{ opacity:.32 } }
.nextup .lg{ display:flex; align-items:baseline; gap:9px; margin-top:9px; font-variant-numeric:tabular-nums; font-size:11.5px; color:var(--ink-subtle); }
.nextup .st{ font-size:10px; font-weight:600; letter-spacing:.11em; text-transform:uppercase; color:var(--mint); }
.nextup .st.warn{ color:var(--amber); }
.nextup .st.bad{ color:var(--danger); }
.nextup .fr{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nextup .to{ flex:none; color:var(--ink-muted); }
@keyframes nupulse{ 0%,100%{ opacity:1 } 50%{ opacity:.25 } }
