.joodit-lottery { margin-block: 1.5rem; }
.joodit-lottery [hidden] { display: none !important; }
.jl-heading { display: flex; flex-wrap: wrap; gap: 1rem; align-items: baseline; justify-content: space-between; }
.jl-heading h2 { margin: 0; overflow-wrap: anywhere; }
.jl-status { font-weight: 600; }
.jl-description { overflow-wrap: anywhere; }
.jl-photo { display: block; max-width: 100%; height: auto; margin-block: 1rem; }
.jl-message { min-height: 1.5em; font-weight: 600; }
.jl-payment-details { overflow-wrap: anywhere; }
.jl-payment-qr { width: 280px; max-width: 100%; }
.jl-payment-qr svg { display: block; width: 100%; height: auto; background: #fff; }
.jl-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 1rem; }
.jl-fields label { display: grid; gap: .4rem; }
.jl-multi-number { min-width: 0; margin-block: 1rem; }
.jl-multi-number legend { font-size: 1rem; }
.jl-multi-number > label { display: grid; gap: .4rem; max-width: 20rem; }
.jl-number-options { display: grid; grid-template-columns: repeat(auto-fill, minmax(5rem, 1fr)); gap: .5rem; max-height: 16rem; overflow: auto; padding: .25rem; }
.jl-number-options label { display: flex; align-items: center; gap: .5rem; min-height: 44px; }
.jl-number-options label:has(input:disabled) { opacity: .55; }
.jl-selected-numbers { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.jl-consent { display: flex; gap: .6rem; align-items: baseline; margin-block: 1rem; }
.jl-reservations { margin-top: 1.5rem; }
.jl-reservations ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr)); gap: .5rem; padding: .5rem 0; list-style: none; max-height: 25rem; overflow: auto; }
.jl-reservations li { overflow-wrap: anywhere; }
.jl-winners li { padding: .5rem; overflow-wrap: anywhere; }
.jl-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.jl-cart { margin-block: 1rem; }
.jl-cart[hidden], .jl-cart [hidden] { display: none !important; }
.jl-cart summary { display: flex; gap: .5rem; align-items: center; }
.jl-cart-label, .jl-cart-items li { overflow-wrap: anywhere; }
.jl-cart-status { min-height: 1.5em; }
.jl-cart-items { padding-inline-start: 1.5rem; }
.jl-cart-total { font-weight: 600; }
.jl-cart-payments { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1.5rem; }
.jl-cart-payments h3 { font-size: 1.1rem; overflow-wrap: anywhere; }
.jl-cart .jl-swish-open { display: none !important; }
@media (max-width: 782px), (pointer: coarse) {
	.jl-cart .jl-swish-open { display: inline-flex !important; }
}