@charset "UTF-8";
/* Product and checkout components intentionally avoid old template selectors. */
.event-shop{--shop-gold:#80651e;--shop-line:#e5dece;--shop-muted:#7e725e}
.event-shop .shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px;font-size:15px;color:var(--shop-muted)}
.event-shop .shop-primary,.event-shop .shop-secondary{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:13px 22px;border-radius:7px;border:1px solid var(--shop-gold);font:inherit;font-size:15px;font-weight:700;line-height:1.6;text-align:center;cursor:pointer;text-decoration:none}
.event-shop .shop-primary{background:var(--shop-gold);color:#fff}.event-shop .shop-secondary{background:#fff;color:#665321;border-color:#c6b787}
.event-shop .shop-primary:hover{background:#655019}.event-shop .shop-secondary:hover{background:#f2ecdd}
.event-shop button:disabled{opacity:.5;cursor:wait}.event-shop a:focus-visible,.event-shop button:focus-visible{outline:3px solid #b79540;outline-offset:4px}
.event-shop .shop-note{font-size:15px;color:var(--shop-muted);line-height:1.8}.event-shop .shop-result{margin-bottom:18px;font-size:15px;color:var(--shop-muted)}
.event-shop .shop-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:64px 24px;text-align:center;background:#fff;border:1px solid var(--shop-line);border-radius:12px;font-size:15px;line-height:1.9}.event-shop .shop-state h3{font-size:20px;font-weight:700;color:#665321}.event-shop .shop-state a{margin-top:10px}.event-shop .shop-empty-icon{font-size:35px;display:grid;place-items:center;background:#f4efdf;color:#80651e;width:72px;height:72px;border-radius:50%;margin-bottom:8px}
.event-shop .shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.event-shop .shop-product{min-width:0;background:#fff;border:1px solid var(--shop-line);border-radius:10px;overflow:hidden;transition:box-shadow .2s,transform .2s}.event-shop .shop-product:hover{box-shadow:0 8px 26px #57411312;transform:translateY(-3px)}
.event-shop .shop-product-link{display:flex;flex-direction:column;height:100%}.event-shop .shop-product-image{position:relative;aspect-ratio:1;display:grid;place-items:center;background:#f2efe7;border-bottom:1px solid var(--shop-line)}
.event-shop .shop-product-image img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.event-shop .shop-noimage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%;height:100%;color:#9b8c6c;font-size:15px;font-weight:400}.event-shop .shop-noimage svg{width:40px;height:40px;flex-shrink:0}
.event-shop .shop-product-info{display:flex;flex-direction:column;flex:1;padding:22px}.event-shop .shop-product-info h3{font-size:16px;font-weight:700;line-height:1.7;overflow-wrap:anywhere}.event-shop .shop-price{font-size:19px;font-weight:700;margin:18px 0 20px;color:#665321}.event-shop .shop-price small,.event-shop .shop-detail-price small{font-size:15px;font-weight:400;color:var(--shop-muted)}
.event-shop .shop-product-more{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid var(--shop-line);font-size:15px;margin-top:auto;color:#70591e}.event-shop .shop-badge{align-self:flex-start;padding:3px 9px;background:#eee7d6;color:#70591e;font-size:15px;border-radius:3px;margin-bottom:10px}
.event-shop .shop-back{font-size:15px;text-decoration:underline;text-underline-offset:4px;color:#70591e}.event-shop .shop-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:start}
.event-shop .shop-detail-image{position:relative;aspect-ratio:1;background:#f1eee5;border-radius:10px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--shop-line)}.event-shop .shop-detail-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain}
.event-shop .shop-detail-info{padding:8px 0}.event-shop .shop-detail-info h1{font-size:28px;line-height:1.6;font-weight:700;overflow-wrap:anywhere}.event-shop .shop-detail-price{font-size:30px;font-weight:700;margin:20px 0 4px;color:#665321}.event-shop .shop-description{border-top:1px solid var(--shop-line);margin:26px 0;padding-top:24px;font-size:15px;line-height:1.9;overflow-wrap:anywhere}.event-shop .shop-description h3{font-size:15px;font-weight:700;margin-bottom:12px}.event-shop .shop-description img{height:auto}.event-shop .shop-add{width:100%;justify-content:space-between;min-height:54px}.event-shop .shop-login-note{margin-top:12px}.event-shop .shop-help{display:inline-block;margin-top:24px;font-size:15px;text-decoration:underline;text-underline-offset:4px;color:var(--shop-muted)}
.event-shop .shop-steps{display:flex;justify-content:center;gap:32px;margin:0 0 36px;font-size:15px;color:#928775}.event-shop .shop-steps li{display:flex;gap:8px;align-items:center}.event-shop .shop-steps b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eee8db;font-size:15px}.event-shop .shop-steps [aria-current]{color:#665321;font-weight:700}.event-shop .shop-steps [aria-current] b{background:#80651e;color:#fff}
.event-shop .shop-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}.event-shop .shop-checkout-main{min-width:0}
.event-shop .shop-cart-products{background:#fff;border:1px solid var(--shop-line);border-radius:10px;padding:0 24px}.event-shop .shop-cart-item{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:20px;padding:26px 0}.event-shop .shop-cart-item+.shop-cart-item{border-top:1px solid var(--shop-line)}
.event-shop .shop-cart-image{width:100px;height:100px;background:#f2efe7;border-radius:6px;overflow:hidden}.event-shop .shop-cart-image img{width:100%;height:100%;object-fit:contain}.event-shop .shop-cart-image .shop-noimage{gap:6px;font-size:15px}.event-shop .shop-cart-image .shop-noimage svg{width:24px;height:24px}
.event-shop .shop-cart-name{font-size:15px;font-weight:700;line-height:1.6;overflow-wrap:anywhere}.event-shop .shop-unit-price{font-size:15px;color:var(--shop-muted);margin-top:8px}.event-shop .shop-cart-controls{display:flex;align-items:center;gap:18px;margin-top:12px}.event-shop .shop-cart-controls label{display:flex;gap:10px;align-items:center;font-size:15px}.event-shop .shop-cart-controls select{width:66px;appearance:auto;min-height:40px;padding:6px 10px}.event-shop .shop-remove{font:inherit;font-size:15px;min-height:44px;padding:8px;border:0;background:transparent;color:#81725c;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.event-shop .shop-line-price{font-size:17px;font-weight:700;white-space:nowrap;color:#665321;text-align:right}.event-shop .shop-line-price small{display:block;font-size:15px;color:var(--shop-muted);font-weight:400}.event-shop .shop-continue{display:inline-block;margin:20px 0 28px}
.event-shop .shop-address{padding:24px;background:#fff;border:1px solid var(--shop-line);border-radius:10px}.event-shop .shop-section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--shop-line);padding-bottom:18px}.event-shop .shop-section-heading h3{font-size:16px;font-weight:700}.event-shop .shop-section-heading a{font-size:15px;color:#70591e;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.event-shop .shop-address dl>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:14px;margin-top:20px;font-size:15px}.event-shop .shop-address dt{font-size:15px;color:var(--shop-muted)}.event-shop .shop-address dd{overflow-wrap:anywhere}.event-shop .shop-address-note{background:#fff5dd;color:#74571e;padding:12px 14px;font-size:15px;margin-top:18px;border-radius:5px}
.event-shop .shop-purchase-notes{margin-top:20px;border:1px solid var(--shop-line);border-radius:7px;padding:16px 20px;font-size:15px;color:#76674a}.event-shop .shop-purchase-notes summary{cursor:pointer;min-height:28px;font-weight:700;display:list-item;list-style:disclosure-closed inside}.event-shop .shop-purchase-notes[open] summary{list-style-type:disclosure-open}.event-shop .shop-purchase-notes ul{list-style:disc;padding-left:18px;margin-top:12px}.event-shop .shop-purchase-notes li{margin:10px 0}
.event-shop .shop-order-summary{position:sticky;top:calc(var(--event-header-height,90px) + 24px);padding:26px;background:#fff;border:1px solid #d8caab;border-radius:10px;box-shadow:0 4px 20px #57411308}.event-shop .shop-order-summary h3{font-size:18px;font-weight:700;margin-bottom:22px}.event-shop .shop-order-summary dl>div{display:flex;justify-content:space-between;gap:14px;font-size:15px;margin:14px 0}.event-shop .shop-order-summary dd{white-space:nowrap;font-weight:600}.event-shop .shop-order-summary .shop-total{padding-top:18px;margin-top:20px;border-top:1px solid var(--shop-line);align-items:baseline}.event-shop .shop-total dd{font-size:27px;color:#665321}.event-shop .shop-total small{font-size:15px;color:var(--shop-muted)}.event-shop .shop-order-summary .shop-primary{width:100%;margin:16px 0 12px;padding:14px 12px;font-size:15px}.event-shop .shop-order-summary>.shop-note{text-align:center;font-size:15px}
.event-shop .shop-error{padding:14px 18px;margin:0 0 18px;background:#fff1ec;color:#9f3524;border:1px solid #e4beb4;border-radius:6px;font-size:15px;line-height:1.8}
.event-shop .shop-payment-dialog{position:fixed;inset:0;width:calc(100% - 32px);max-width:540px;max-height:calc(100% - 48px);margin:auto;border:1px solid #e5dece;border-radius:14px;padding:28px;background:#fffdf8;color:#3d362b;overflow:auto;box-sizing:border-box}.event-shop .shop-payment-dialog:not([open]){display:none}.event-shop .shop-payment-dialog::backdrop{background:#211c1273;backdrop-filter:blur(3px)}.event-shop .shop-payment-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.event-shop .shop-payment-head h2{font-size:21px;font-weight:700;margin-top:4px}.event-shop .shop-dialog-close{display:grid;place-items:center;min-width:44px;height:44px;border-radius:50%;border:1px solid var(--shop-line);background:#fff;color:#665321;font-size:24px;cursor:pointer}.event-shop .shop-payment-options{display:grid;gap:14px}.event-shop .shop-payment-options button{display:flex;align-items:center;gap:16px;width:100%;padding:20px 16px;border:1px solid #d8caab;background:#fff;border-radius:8px;color:#443b2a;cursor:pointer;text-align:left}.event-shop .shop-payment-options button:hover{background:#f5f0e3}.event-shop .shop-payment-options strong{display:block;font-size:16px;font-weight:700}.event-shop .shop-payment-options small{display:block;font-size:15px;line-height:1.7;color:var(--shop-muted);margin-top:5px}.event-shop .shop-payment-symbol{font-size:24px;color:#80651e}.event-shop .shop-payment-options button>span:last-child{margin-left:auto}
@media(max-width:960px){.event-shop .shop-checkout-grid{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.event-shop .shop-cart-item{grid-template-columns:80px minmax(0,1fr);gap:14px}.event-shop .shop-cart-image{width:80px;height:80px}.event-shop .shop-line-price{grid-column:2;text-align:left}.event-shop .shop-line-price small{display:inline;margin-left:6px}}
@media(max-width:700px){.event-shop .shop-toolbar{font-size:15px;gap:12px;align-items:flex-start}.event-shop .shop-toolbar .shop-secondary{white-space:nowrap;padding:10px 14px;font-size:15px;min-height:44px}.event-shop .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.event-shop .shop-product-info{padding:14px}.event-shop .shop-product-info h3{font-size:15px}.event-shop .shop-price{font-size:16px;margin:12px 0 16px}.event-shop .shop-detail{grid-template-columns:1fr;gap:24px}.event-shop .shop-detail-info h1{font-size:23px}.event-shop .shop-detail-price{font-size:26px}.event-shop .shop-checkout-grid{grid-template-columns:1fr;gap:24px}.event-shop .shop-order-summary{position:static;padding:24px}.event-shop .shop-cart-products{padding:0 16px}.event-shop .shop-cart-item{padding:20px 0}.event-shop .shop-cart-name{font-size:15px}.event-shop .shop-address{padding:20px}.event-shop .shop-address dl>div{grid-template-columns:1fr;gap:6px}.event-shop .shop-steps{gap:12px;font-size:15px;justify-content:space-between;margin-bottom:28px}.event-shop .shop-steps li{gap:5px}.event-shop .shop-steps b{width:22px;height:22px;font-size:15px}.event-shop .shop-payment-dialog{padding:22px 18px}.event-shop .shop-payment-head h2{font-size:18px}.event-shop .shop-payment-options button{padding:16px 12px;gap:12px}.event-shop .shop-state{padding:40px 20px}.event-shop .shop-state h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.event-shop .shop-product{transition:none}}

/* Keep supporting text readable, including inherited page-title styles. */
body.event-shop main .under-page_title .en{font-size:15px}
.event-shop .shop-cart-controls{flex-wrap:wrap}
.event-shop .shop-cart-controls select{font-size:16px}
.event-shop .shop-cart-image .shop-noimage{text-align:center;line-height:1.4;padding:4px;box-sizing:border-box}
.event-shop .shop-steps b{flex-shrink:0}
@media(max-width:700px){
  .event-shop .shop-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .event-shop .shop-steps li{flex-direction:column;text-align:center;line-height:1.5}
  .event-shop .shop-steps b{width:28px;height:28px}
  .event-shop .shop-section-heading{flex-wrap:wrap}
}

.event-shop .shop-paypal-option{padding:18px 16px;border:1px solid #d8caab;border-radius:8px;background:#fff;margin-bottom:14px}.event-shop .shop-paypal-option h3{font-size:16px;margin:0}.event-shop .shop-paypal-option .shop-note{margin:8px 0 12px}.event-shop .shop-payment-symbol{flex-shrink:0}.event-shop .shop-payment-symbol svg{display:block}

/* Animate native dialog entry/exit while retaining its focus and modal behavior. */
.event-shop .shop-payment-dialog[open]{animation:shop-payment-enter .24s cubic-bezier(.2,.7,.3,1) both}
.event-shop .shop-payment-dialog[open]::backdrop{animation:shop-backdrop-enter .24s ease both}
.event-shop .shop-payment-dialog[open].is-closing{animation:shop-payment-exit .18s ease-in both;pointer-events:none}
.event-shop .shop-payment-dialog[open].is-closing::backdrop{animation:shop-backdrop-exit .18s ease-in both}
@keyframes shop-payment-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes shop-payment-exit{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}
@keyframes shop-backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes shop-backdrop-exit{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.event-shop .shop-payment-dialog[open],.event-shop .shop-payment-dialog[open]::backdrop{animation:none}}

/* Original payment brand assets; preserve their colours and aspect ratios. */
.event-shop .shop-payment-copy{flex:1;min-width:0}
.event-shop .shop-payment-options .shop-payment-logo,.event-shop .shop-paypal-option .shop-payment-logo{display:block;width:auto;height:auto;max-width:min(160px,100%);max-height:30px;object-fit:contain;object-position:left center;margin:10px 0 8px}
.event-shop .shop-payment-options .shop-payment-logo--credit{width:255px;max-width:100%;max-height:none}
.event-shop .shop-payment-options .shop-payment-logo--au{max-width:65px}
.event-shop .shop-paypal-option .shop-payment-logo--paypal{width:116px;max-height:none;margin:0}
