:root{--red:#e31b23;--red-dark:#b91018;--black:#09090d;--charcoal:#17171f;--grey:#747784;--light:#f4f5f8;--white:#fff;--navy:#090817;--purple:#26133f;--violet:#6435a5;--shadow:0 14px 34px rgba(0,0,0,.22)}
*{box-sizing:border-box}html{background:var(--navy)}body{margin:0;min-height:100vh;padding-bottom:78px;color:#17171b;font-family:Inter,Roboto,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background-color:var(--navy);background-image:radial-gradient(circle at 82% 12%,rgba(116,63,183,.35),transparent 28%),radial-gradient(circle at 14% 72%,rgba(33,83,150,.28),transparent 26%),repeating-linear-gradient(0deg,rgba(118,72,162,.10) 0 2px,transparent 2px 46px,rgba(36,99,151,.12) 46px 49px,transparent 49px 94px),repeating-linear-gradient(90deg,rgba(122,66,166,.10) 0 2px,transparent 2px 46px,rgba(36,99,151,.12) 46px 49px,transparent 49px 94px),linear-gradient(145deg,#080713 0%,#101329 38%,#1b0e32 72%,#080713 100%);background-attachment:fixed}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.22;background-image:linear-gradient(90deg,transparent 0 14%,rgba(126,79,194,.65) 14% 14.12%,transparent 14.12% 100%),linear-gradient(0deg,transparent 0 24%,rgba(64,125,192,.55) 24% 24.12%,transparent 24.12% 100%);background-size:320px 240px,280px 300px;mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 90%,transparent)}
.site-header{position:sticky;top:0;z-index:1100;background:rgba(7,7,12,.96);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 5px 18px rgba(0,0,0,.3);backdrop-filter:blur(12px)}.topbar{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px}.brand{text-decoration:none;color:#fff;font-weight:900;letter-spacing:-.02em;line-height:1}.brand-logos{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:6px}.brand-logos img{height:23px;width:auto;max-width:82px;object-fit:contain;background:#fff;border-radius:5px;padding:2px 4px}.brand-plus{font-size:15px;color:#bbb}.brand-logos small{grid-column:1/4;text-align:left}.brand-day{color:#d9dbe2}.brand-and{color:#fff}.brand-usave{color:var(--red)}.brand small{display:block;color:#aaa;font-size:10px;letter-spacing:.14em;margin-top:5px;text-transform:uppercase}.header-actions{display:flex;gap:8px;align-items:center}.header-link{display:none;color:#fff;text-decoration:none;font-weight:800}.header-order-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;text-decoration:none;font-weight:900;min-height:44px;padding:0 14px;border-radius:10px}.admin-nav{display:flex;gap:7px;overflow-x:auto}.admin-nav a{color:#fff;text-decoration:none;font-weight:750;font-size:13px;white-space:nowrap;padding:10px 8px}.page-shell{max-width:1380px;margin:0 auto;padding:14px 12px 32px}.desktop-nav{display:none}.deadline-bar{background:#050509;color:#fff;border:2px solid #ff3841;border-radius:15px;padding:12px 14px;text-align:center;margin-bottom:14px;box-shadow:0 0 0 2px rgba(227,27,35,.16),0 12px 28px rgba(0,0,0,.28)}.deadline-copy{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#fff}.deadline-time{display:inline-block;margin:7px auto 3px;padding:7px 12px;border-radius:9px;background:#e31b23;color:#fff;font-size:24px;font-weight:950;letter-spacing:.05em;font-variant-numeric:tabular-nums}.deadline-units{display:grid;grid-template-columns:repeat(4,1fr);max-width:310px;margin:auto;color:#e4e4ea;font-size:9px;text-transform:uppercase;letter-spacing:.09em}.deadline-date{margin-top:5px;color:#fff;font-weight:700;font-size:11px}.deadline-final .deadline-time{background:#ffea00;color:#111}.deadline-closed{border-color:#9da0aa}.deadline-closed .deadline-time{background:#fff;color:#111;font-size:18px}.hero-banner{position:relative;background:#09090d;border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:16px}.hero-banner img{width:100%;height:auto;display:block;filter:brightness(.25) saturate(.55)}.hero-title-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#fff;padding:30px;background:linear-gradient(90deg,rgba(4,5,14,.55),rgba(26,10,44,.28),rgba(4,5,14,.55))}.hero-title-overlay h1{font-size:clamp(28px,4vw,52px);font-weight:950;margin:.2rem 0;text-shadow:0 3px 18px #000}.hero-title-overlay p{margin:0;color:#f1f1f4;font-weight:700}.hero-kicker{font-size:12px;letter-spacing:.22em;color:#ddd;font-weight:850}.hero-mobile-copy{display:none;background:linear-gradient(100deg,#0b0b11,#211332);color:#fff;padding:17px;border-top:4px solid var(--red)}.hero-mobile-copy h1{font-size:24px;font-weight:950;margin:0 0 5px}.hero-mobile-copy p{margin:0;color:#d6d7dd}.material-card{background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.35);border-radius:16px;box-shadow:var(--shadow);padding:18px;margin-bottom:14px}.section-title{color:#fff;font-weight:950;font-size:26px;margin:10px 0 14px}.page-shell>.text-muted,.page-shell>div>.text-muted{color:#d8d9e2!important}.btn{min-height:48px;border-radius:11px;font-weight:850;padding:.72rem 1rem}.btn-primary,.btn-success{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}.btn-primary:hover,.btn-success:hover{background:var(--red-dark)!important;border-color:var(--red-dark)!important}.btn-outline-primary{color:var(--red)!important;border-color:var(--red)!important;background:#fff}.btn-outline-primary:hover{background:var(--red)!important;color:#fff!important}.btn-outline-secondary{border-color:#666;color:#222;background:#fff}.form-control,.form-select{min-height:50px;border-radius:10px;border:1px solid #a4a5ad;font-size:16px}.form-control:focus,.form-select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,27,35,.15)}.supplier-card{border:0;border-left:5px solid var(--red);border-radius:14px;transition:transform .1s;box-shadow:var(--shadow)}.supplier-card:active{transform:scale(.99)}
.order-matrix-wrap{overflow:auto;max-height:68vh;border:1px solid #8f9199;border-radius:12px;background:#fff;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow)}.order-matrix{border-collapse:separate;border-spacing:0;min-width:max-content;width:100%}.order-matrix th,.order-matrix td{border-right:1px solid #ddd;border-bottom:1px solid #ddd;padding:.45rem;vertical-align:middle;background:#fff}.order-matrix thead th{position:sticky;top:0;z-index:7;background:#17171f;color:#fff;font-size:13px}.order-matrix .sticky-product{position:sticky;left:0;z-index:5;min-width:180px;width:180px;max-width:180px;background:#fff}.order-matrix thead .sticky-product{z-index:10;background:#17171f}.order-matrix .sticky-price{position:sticky;left:180px;z-index:5;min-width:82px;width:82px;max-width:82px;background:#f2f2f5;text-align:center;border-right:2px solid #777}.order-matrix thead .sticky-price{z-index:10;background:#17171f}.account-col{min-width:132px;width:132px;text-align:center}.account-name{font-size:10px;line-height:1.15;color:#ddd;margin-top:3px;white-space:normal}.product-cell{display:flex;align-items:center;gap:8px}.product-image{width:56px;height:56px;flex:0 0 56px;object-fit:contain;background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:2px}.product-copy{min-width:0}.product-desc{font-weight:850;font-size:13px;line-height:1.2;overflow-wrap:anywhere}.pack-desc{font-size:12px;color:#666;margin-top:3px;line-height:1.15;overflow-wrap:anywhere}.deal-text{font-size:10px;color:#555;margin-top:3px}.sticky-price strong{color:var(--red);font-size:15px}.qty-stepper{display:grid;grid-template-columns:38px 48px 38px;justify-content:center;align-items:center}.qty{width:48px!important;min-height:42px!important;text-align:center;font-weight:900;font-size:17px;padding:.2rem;border-radius:0}.qty-btn{width:38px;height:42px;border:0;background:#202029;color:#fff;font-size:23px;font-weight:900;line-height:1}.qty-btn:first-child{border-radius:9px 0 0 9px}.qty-btn:last-child{border-radius:0 9px 9px 0}.qty-btn:active{background:var(--red)}.qty-btn:disabled{background:#aaa}.qty:disabled{background:#eee;color:#777}.save-state{height:16px;font-size:10px;color:#666;margin-top:2px}.matrix-hint{background:rgba(255,255,255,.95);border-left:4px solid var(--red);padding:9px 12px;border-radius:8px;font-size:13px;margin-bottom:8px}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:1000;min-height:68px;background:#08080d;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 -2px 16px rgba(0,0,0,.38);padding-bottom:env(safe-area-inset-bottom);border-top:1px solid rgba(255,255,255,.1)}.mobile-bottom-nav a{color:#ddd;text-decoration:none;font-size:11px;font-weight:750;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px}.mobile-bottom-nav a span{font-size:21px;line-height:1}.mobile-bottom-nav .order-nav{background:var(--red);color:#fff}.faq-item{border-radius:12px!important;margin-bottom:8px;overflow:hidden}.accordion-button{font-weight:800;min-height:52px}.accordion-button:not(.collapsed){background:#fff0f0;color:#111;box-shadow:none}.accordion-button:focus{box-shadow:0 0 0 3px rgba(227,27,35,.15)}.venue-placeholder{min-height:280px;border:2px dashed #999;border-radius:16px;background:#eee;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:#555}.table{background:#fff}.table thead th{background:#202029;color:#fff}.alert-info{background:#eef1f5;border-color:#c5c7ce;color:#202026}.auth-shell{min-height:58vh;display:grid;place-items:center}.auth-card{width:min(100%,520px)}.code-input{text-align:center;font-size:28px;font-weight:900;letter-spacing:.28em;font-variant-numeric:tabular-nums}.account-edit-row{display:grid;grid-template-columns:1fr 1.35fr 54px;gap:8px;margin-bottom:9px}.fulfilment-grid{display:grid;gap:12px}.fulfilment-card{background:#f4f5f7;border:1px solid #d6d7dc;border-radius:14px;padding:14px}.method-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.method-buttons input{position:absolute;opacity:0}.method-buttons span{display:flex;min-height:50px;align-items:center;justify-content:center;border:2px solid #aaa;border-radius:11px;background:#fff;font-weight:850;cursor:pointer}.method-buttons input:checked+span{border-color:var(--red);background:#fff0f1;color:#8e0d13;box-shadow:0 0 0 2px rgba(227,27,35,.10)}.signature-wrap{height:190px;background:#fff;border:2px dashed #686a72;border-radius:12px;position:relative;overflow:hidden;touch-action:none}.signature-wrap canvas{display:block;width:100%;height:180px;touch-action:none}.signature-label{position:absolute;left:0;right:0;bottom:10px;text-align:center;color:#aaa;text-transform:uppercase;font-weight:850;letter-spacing:.12em;pointer-events:none}.signature-preview{max-width:100%;height:auto;max-height:220px;background:#fff;border:1px solid #ddd;border-radius:8px}.closed-panel{background:#111827;color:#fff;border:2px solid #d2d4da;border-radius:14px;padding:18px;margin-top:14px}.closed-panel a{color:#fff;font-weight:900}.orders-list{display:grid;gap:10px}.order-history-card{display:flex;align-items:center;justify-content:space-between;color:#19191f!important}.status-chip{display:inline-block;background:#e8f5eb;color:#18642c;border-radius:100px;padding:4px 9px;font-size:11px;font-weight:850}.fulfilment-summary{background:#fff;border-left:5px solid var(--red);border-radius:10px;padding:11px 13px;margin-bottom:8px;box-shadow:var(--shadow)}code{color:#861119}.form-check-input:checked{background-color:var(--red);border-color:var(--red)}
@media(min-width:768px){body{padding-bottom:0}.page-shell{padding:18px 24px 42px}.mobile-bottom-nav{display:none}.desktop-nav{display:flex;background:rgba(255,255,255,.96);border-bottom:1px solid #ddd;justify-content:center;gap:8px;padding:8px;position:sticky;top:64px;z-index:900;backdrop-filter:blur(8px)}.desktop-nav a{color:#222;text-decoration:none;font-weight:800;padding:10px 15px;border-radius:9px}.desktop-nav a:hover{background:#eee;color:var(--red)}.header-link{display:inline-flex}.order-matrix .sticky-product{min-width:280px;width:280px;max-width:280px}.order-matrix .sticky-price{left:280px;min-width:112px;width:112px;max-width:112px}.account-col{min-width:132px;width:132px}.product-desc{font-size:15px}.pack-desc{font-size:13px}.product-image{width:68px;height:68px;flex-basis:68px}.hero-title-overlay{display:flex}.hero-banner img{max-height:360px;object-fit:cover;object-position:center}.deadline-bar{padding:14px}.deadline-copy{font-size:15px}.fulfilment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.brand{font-size:14px}.brand small{font-size:8px}.header-order-btn{font-size:13px;padding:0 11px}.account-edit-row{grid-template-columns:1fr 54px}.account-edit-row input:nth-child(2){grid-column:1/2}.account-edit-row button{grid-column:2;grid-row:1/3}.deadline-time{font-size:20px}.order-matrix .sticky-product{min-width:170px;width:170px;max-width:170px}.order-matrix .sticky-price{left:170px;min-width:78px;width:78px;max-width:78px}.product-image{width:50px;height:50px;flex-basis:50px}.product-desc{font-size:12px}.pack-desc{font-size:11px}}

.venue-plan-image{display:block;width:100%;height:auto;background:#fff;touch-action:pan-x pan-y;user-select:none}

.brand-desc{font-size:10px;color:#6b4aa0;font-weight:800;margin-top:2px}.supplier-search-card{position:sticky;top:72px;z-index:20}.grid-two-actions{grid-template-columns:1fr 1fr}.supplier-name{font-size:1.6rem;line-height:1.15}.supplier-code{font-size:1rem}.supplier-meta,.supplier-description,.supplier-attendees,.supplier-brands{font-size:1rem;line-height:1.45}.supplier-attendees{color:#303038}.venue-search-results{display:grid;gap:6px;max-height:320px;overflow:auto}.venue-result{width:100%;text-align:left;border:1px solid #c9cad1;background:#fff;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;min-height:52px}.venue-result:active{border-color:var(--red);background:#fff1f2}.venue-result span{font-size:12px;color:#666;margin-top:2px}.venue-search-empty{padding:12px;border-radius:8px;background:#f0f1f4;color:#555}.venue-map-card{overflow:hidden}.venue-viewport{overflow:auto;max-height:72vh;border:1px solid #b8bac2;border-radius:12px;background:#fff;-webkit-overflow-scrolling:touch}.venue-map{position:relative;min-width:900px;width:100%;line-height:0}.venue-plan-image{display:block;width:100%;height:auto}.stand-marker{position:absolute;transform:translate(-50%,-50%);z-index:12;display:flex;flex-direction:column;align-items:center;filter:drop-shadow(0 4px 8px rgba(0,0,0,.7));animation:markerPulse 1.15s infinite ease-in-out}.marker-pin{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#ffea00;color:#111;border:5px solid #ff1744;font-size:22px;box-shadow:0 0 0 8px rgba(255,23,68,.28),0 0 30px rgba(255,234,0,.95)}.marker-label{margin-top:5px;line-height:1;background:#ff1744;color:#fff;border:2px solid #fff;border-radius:100px;padding:7px 10px;font-size:11px;font-weight:950;white-space:nowrap;letter-spacing:.04em}.selected-stand-info{margin-top:12px;border-left:5px solid #ff1744;padding:12px;background:#fff8d9;border-radius:9px;line-height:1.4}@keyframes markerPulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.16)}}
@media(max-width:767px){.supplier-search-card{top:70px}.grid-two-actions{grid-template-columns:1fr}.venue-map{min-width:1050px}.venue-viewport{max-height:65vh}}

/* 2026-08-22 upgrade: branded hero, featured partners, assistant */
.hero-logo-overlay{gap:10px}.hero-logo-row{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}.hero-logo-row img{width:auto!important;height:72px!important;max-width:42vw!important;object-fit:contain!important;filter:none!important;background:#fff;border-radius:12px;padding:8px 12px;box-shadow:0 8px 24px rgba(0,0,0,.28)}.hero-logo-overlay h1{font-size:clamp(34px,5vw,66px);letter-spacing:.04em}.hero-tagline{font-size:clamp(13px,1.7vw,21px);letter-spacing:.14em}.featured-partners{padding:22px}.featured-star{color:var(--red);font-size:28px;line-height:1}.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.featured-logo-card{min-height:150px;border:1px solid #e1e2e6;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#17171b;padding:14px;box-shadow:0 6px 18px rgba(0,0,0,.08);transition:transform .12s,border-color .12s}.featured-logo-card:active{transform:scale(.985);border-color:var(--red)}.featured-logo-card img{width:100%;height:85px;object-fit:contain}.featured-logo-card span{font-weight:850;font-size:12px;text-align:center;margin-top:8px}.featured-logo-card small{color:#666;font-weight:750}.featured-logo-card.is-static{opacity:.85}.attendee-list{display:grid;gap:7px}.attendee-list>div{padding:9px 11px;background:#f4f5f7;border-radius:9px;display:flex;flex-direction:column}.attendee-list span{font-size:12px;color:#666}.exhibitor-only{background:#eef1f4;border-left:4px solid #68707c;border-radius:8px;padding:10px 12px;font-weight:800;color:#3c424b}.chat-launcher{position:fixed;right:14px;bottom:84px;z-index:1250;border:0;border-radius:999px;background:#e31b23;color:#fff;padding:5px 12px 5px 5px;display:flex;align-items:center;gap:7px;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.38)}.chat-launcher img{width:48px;height:48px;object-fit:cover;border-radius:50%;border:2px solid #fff}.chat-panel{position:fixed;right:10px;left:10px;bottom:82px;z-index:1300;max-height:72vh;background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.48);overflow:hidden;border:1px solid #ddd}.chat-panel[hidden]{display:none}.chat-head{display:grid;grid-template-columns:48px 1fr 42px;align-items:center;gap:9px;background:#111118;color:#fff;padding:10px}.chat-head img{width:48px;height:48px;border-radius:50%;object-fit:cover}.chat-head strong,.chat-head small{display:block}.chat-head small{font-size:11px;color:#c7c8cf}.chat-head button{border:0;background:transparent;color:#fff;font-size:30px}.chat-messages{height:300px;overflow:auto;padding:12px;background:#f3f4f6;display:flex;flex-direction:column;gap:8px}.chat-bubble{max-width:88%;padding:10px 12px;border-radius:14px;line-height:1.35;font-size:14px;white-space:pre-wrap}.chat-bubble.bot{align-self:flex-start;background:#fff;border:1px solid #ddd}.chat-bubble.user{align-self:flex-end;background:#e31b23;color:#fff}.chat-bubble.waiting{color:#777}.chat-quick{display:flex;gap:6px;overflow-x:auto;padding:8px;background:#fff}.chat-quick button{border:1px solid #d1d2d6;border-radius:999px;background:#fff;padding:7px 9px;font-size:12px;white-space:nowrap}.chat-form{display:grid;grid-template-columns:1fr auto;gap:7px;padding:10px;border-top:1px solid #ddd}.chat-form input{min-width:0;border:1px solid #aaa;border-radius:10px;padding:10px;font-size:16px}.chat-form button{border:0;border-radius:10px;background:#e31b23;color:#fff;font-weight:850;padding:0 14px}.chat-links{display:flex;flex-wrap:wrap;gap:6px;margin:0 12px 10px}.chat-links a{font-size:12px;background:#fff;border:1px solid #e31b23;color:#a70f16;text-decoration:none;border-radius:999px;padding:6px 9px;font-weight:800}
@media(min-width:768px){.featured-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.featured-logo-card{min-height:180px}.featured-logo-card img{height:110px}.chat-launcher{bottom:20px;right:20px}.chat-panel{left:auto;right:20px;bottom:84px;width:390px;max-height:650px}.chat-messages{height:360px}}
@media(max-width:520px){.hero-title-overlay{display:none!important}.hero-mobile-copy{display:block}.hero-mobile-copy .hero-logo-row{margin-bottom:12px}.hero-logo-row img{height:46px!important;max-width:43vw!important;padding:5px 7px}.hero-mobile-copy h1{font-size:29px;letter-spacing:.03em}.hero-mobile-copy p{font-size:12px;letter-spacing:.1em}.featured-logo-card{min-height:130px}.featured-logo-card img{height:72px}}
.voice-controls{display:flex;align-items:center;gap:9px;padding:9px 10px;border-top:1px solid #e1e2e6;background:#fff}.voice-button{min-height:46px;border:0;border-radius:999px;background:#17171d;color:#fff;font-weight:900;padding:7px 14px;display:flex;align-items:center;gap:8px;touch-action:none;user-select:none;-webkit-user-select:none}.voice-button .voice-icon{font-size:20px}.voice-button.connecting{background:#555b66}.voice-button.listening{background:#e31b23;box-shadow:0 0 0 5px rgba(227,27,35,.16);transform:scale(1.02)}.voice-button.speaking{background:#5427a5}.voice-button.error{background:#8b2020}.voice-status{font-size:12px;color:#5e626b;font-weight:750;line-height:1.2}.voice-button:disabled{opacity:.55}.chat-panel{overscroll-behavior:contain}.chat-messages{scroll-behavior:smooth}
.chat-links{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;max-width:100%;margin:0 0 2px;padding:0 2px 8px}.chat-links a{flex:0 0 auto;white-space:nowrap}
.sound-button{margin-left:auto;flex:0 0 auto;border:1px solid #c9cbd1;border-radius:999px;background:#fff;color:#25262b;font-size:12px;font-weight:850;padding:7px 9px;white-space:nowrap}.sound-button[aria-pressed="false"]{color:#676b74;background:#f2f3f5}
/* Sponsor layout: maximum two per row; for odd totals the single logo sits on row two. */
.featured-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
.featured-grid.odd>.featured-logo-card:nth-child(3),.featured-grid.odd>.featured-logo-card:first-child:last-child{grid-column:1/-1;width:calc(50% - 7px);justify-self:center}
@media(max-width:480px){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.featured-grid.odd>.featured-logo-card:nth-child(3),.featured-grid.odd>.featured-logo-card:first-child:last-child{width:calc(50% - 5px)}}
.featured-logo-main{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:inherit;flex:1;width:100%}.featured-actions{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:8px}.featured-logo-card{display:flex;flex-direction:column;justify-content:space-between}
.featured-logo-placeholder{width:100%;height:85px;border-radius:10px;background:#f2f3f5;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:40px}
.brand-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;max-width:250px}
.brand-logos img{height:23px;max-width:70px}
.brand-logos.logo-count-3 img{max-width:55px}
.brand-logos small{flex-basis:100%;text-align:left}
.brand-event-name{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-event-strapline{margin:-2px 0 16px;text-align:center;color:#fff;font-size:clamp(15px,2.2vw,24px);font-weight:900;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 3px 14px rgba(0,0,0,.7)}
@media(max-width:520px){.brand-logos{max-width:170px}.brand-logos img{max-width:54px}.brand-logos.logo-count-3 img{max-width:39px}.brand-event-name{max-width:150px}.featured-logo-placeholder{height:72px}}


/* 2026-08-22 banner-only update: the banner artwork already contains the logos and text. */
.home-hero img{filter:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important;}
.home-hero .hero-title-overlay,.home-hero .hero-mobile-copy{display:none!important;}
@media(min-width:768px){.home-hero img{max-height:none!important;object-fit:contain!important;}}

/* 2026-08-23: aligned live countdown values and unit labels */
.deadline-countdown{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;width:min(100%,310px);margin:7px auto 3px;padding:7px 10px 5px;border-radius:9px;background:#e31b23;color:#fff;font-variant-numeric:tabular-nums}
.deadline-segment{display:grid;grid-template-rows:auto auto;justify-items:center;min-width:0}
.deadline-value{font-size:24px;font-weight:950;letter-spacing:.05em;line-height:1.18;white-space:nowrap}
.deadline-unit{margin-top:7px;color:#fff;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;line-height:1}
.deadline-separator{align-self:start;padding:0 4px;font-size:24px;font-weight:950;line-height:1.18;color:#fff}
.deadline-closed-text{display:inline-block;margin:7px auto 3px;padding:7px 12px;border-radius:9px;background:#fff;color:#111;font-size:18px;font-weight:950;letter-spacing:.04em}
.deadline-final .deadline-countdown{background:#ffea00;color:#111}
.deadline-final .deadline-countdown .deadline-unit,.deadline-final .deadline-countdown .deadline-separator{color:#111}
.deadline-time,.deadline-units{display:none!important}
@media(max-width:520px){.deadline-countdown{width:min(100%,280px);padding-left:8px;padding-right:8px}.deadline-value,.deadline-separator{font-size:20px}.deadline-separator{padding-left:2px;padding-right:2px}.deadline-unit{font-size:8px;letter-spacing:.05em}}

/* 2026-08-23: keep product images inside the natural table/order row height. */
.product-image,
.product-thumb{
  width:40px!important;
  height:40px!important;
  max-width:40px!important;
  max-height:40px!important;
  flex:0 0 40px!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block;
}
.product-row{display:flex;align-items:center;gap:8px;min-width:0}
.product-row-copy{min-width:0}
.table tbody td .product-thumb{vertical-align:middle}

/* Do not let desktop/mobile breakpoints enlarge row product images. */
@media(min-width:768px){.product-image,.product-thumb{width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;flex-basis:40px!important}}
@media(max-width:520px){.product-image,.product-thumb{width:36px!important;height:36px!important;max-width:36px!important;max-height:36px!important;flex-basis:36px!important}}


/* Category sales drill-down charts */
.category-sales-chart{display:grid;gap:.55rem}.category-chart-row{display:grid;grid-template-columns:minmax(150px,28%) 1fr;gap:1rem;align-items:center;width:100%;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.65rem .75rem;background:rgba(0,0,0,.12);color:inherit;text-align:left}.category-chart-row:hover,.category-chart-row.active{border-color:var(--bs-primary);background:rgba(255,255,255,.05)}.category-chart-label{display:flex;flex-direction:column;min-width:0}.category-chart-label small{opacity:.72;margin-top:.15rem}.category-chart-bars{display:grid;gap:.4rem}.category-bar-track{display:block;height:10px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}.category-bar{display:block;height:100%;border-radius:inherit}.category-value-bar{background:var(--bs-primary)}.category-qty-bar{background:rgba(255,255,255,.72)}.category-sub-panel{border-top:1px solid rgba(255,255,255,.12);padding-top:1rem}@media(max-width:700px){.category-chart-row{grid-template-columns:1fr;gap:.45rem}.category-chart-bars{gap:.3rem}}

/* 2026-08-23: true category dashboard graph */
.category-sales-card{overflow:hidden}.category-chart-toggle{white-space:nowrap}.category-graph{min-width:0}.category-graph-ylabel{font-size:.72rem;font-weight:700;color:var(--bs-secondary-color);margin:0 0 .35rem 2px}.category-graph-stage{position:relative;height:320px;border-left:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);padding:18px 10px 0;overflow-x:auto;overflow-y:hidden}.category-graph-grid{position:absolute;inset:18px 10px 48px 0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.category-graph-grid span{display:block;border-top:1px dashed rgba(127,127,127,.2)}.category-graph-bars{position:relative;z-index:1;height:100%;display:flex;align-items:flex-end;gap:10px;min-width:max-content}.category-graph-bar-wrap{width:76px;height:100%;display:grid;grid-template-rows:24px 1fr 46px;align-items:end;justify-items:center;background:none;border:0;color:inherit;padding:0 3px;cursor:pointer}.category-graph-bar-wrap:focus-visible{outline:2px solid var(--bs-primary);outline-offset:2px;border-radius:6px}.category-graph-bar-wrap.active .category-graph-bar{filter:brightness(1.18)}.category-graph-value{font-size:.68rem;font-weight:700;line-height:1;text-align:center;white-space:nowrap;align-self:end;margin-bottom:4px}.category-graph-bar{display:block;width:44px;min-height:0;border-radius:7px 7px 0 0;background:var(--bs-primary);transition:height .25s ease,filter .15s ease}.category-graph-label{font-size:.68rem;line-height:1.1;text-align:center;align-self:start;padding-top:6px;width:72px;overflow:hidden;text-overflow:ellipsis}.category-graph-axis-title{text-align:center;font-size:.72rem;font-weight:700;color:var(--bs-secondary-color);margin-top:.45rem}.category-drilldown{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(127,127,127,.2)}.category-subgraph{display:grid;gap:.6rem}.category-subgraph-row{display:grid;grid-template-columns:minmax(110px,24%) 1fr auto;gap:.65rem;align-items:center}.category-subgraph-label{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-subgraph-track{height:18px;border-radius:4px;background:rgba(127,127,127,.15);overflow:hidden}.category-subgraph-track span{display:block;height:100%;min-width:2px;background:var(--bs-primary);border-radius:inherit}.category-subgraph-value{font-size:.75rem;font-weight:700;white-space:nowrap}@media(max-width:700px){.category-graph-stage{height:270px}.category-graph-bar-wrap{width:62px;grid-template-rows:22px 1fr 42px}.category-graph-bar{width:36px}.category-graph-label{width:58px;font-size:.62rem}.category-subgraph-row{grid-template-columns:minmax(84px,31%) 1fr auto;gap:.4rem}.category-subgraph-label,.category-subgraph-value{font-size:.68rem}}

/* 2026-08-23: category graph server-rendered fallback/reliability */
.category-chart-pane{min-width:0}.category-graph-bar-wrap{grid-template-rows:24px minmax(0,1fr) 46px}.category-graph-bar{align-self:end}.category-chart-pane.d-none{display:none!important}.category-drill-mode.d-none,.category-subgraph.d-none{display:none!important}
.event-picker{position:relative;margin-left:auto;min-width:180px;max-width:290px}.event-picker summary{list-style:none;cursor:pointer;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:.45rem .75rem;line-height:1.15}.event-picker summary::-webkit-details-marker{display:none}.event-picker summary:after{content:' ▾';font-size:.8em}.event-picker-label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;opacity:.72;margin-bottom:.15rem}.event-picker summary strong{display:inline-block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.event-picker-menu{position:absolute;z-index:1050;right:0;top:calc(100% + .4rem);width:min(340px,88vw);padding:.55rem;background:#fff;color:#171717;border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.25)}.event-picker-menu form{margin:0}.event-picker-option{display:flex;width:100%;justify-content:space-between;gap:1rem;text-align:left;border:0;border-radius:6px;background:transparent;padding:.65rem .7rem;color:#171717}.event-picker-option:hover,.event-picker-option.active{background:#eef2ff;color:#172a68}.event-picker-option small{color:#6c757d}@media(max-width:900px){.topbar{flex-wrap:wrap}.event-picker{order:3;max-width:none;width:100%;margin:.35rem 0 0}.event-picker summary strong{max-width:80vw}.event-picker-menu{left:0;right:auto}.admin-nav{order:4;width:100%}}
.table th.sortable-column{cursor:pointer;user-select:none;-webkit-user-select:none;white-space:nowrap}.table th.sortable-column:after{content:'↕';display:inline-block;margin-left:.42rem;color:#858892;font-size:.78em;line-height:1}.table th.sortable-column[aria-sort="ascending"]:after{content:'▲';color:var(--red)}.table th.sortable-column[aria-sort="descending"]:after{content:'▼';color:var(--red)}.table th.sortable-column:hover{background-color:rgba(227,27,35,.07)}.table th.sortable-column:focus-visible{outline:3px solid rgba(227,27,35,.38);outline-offset:-3px}
.portal-nav{overflow:visible;align-items:center;justify-content:flex-end;flex-wrap:wrap}.portal-nav a,.portal-nav summary{color:#fff;text-decoration:none;font-weight:750;font-size:13px;white-space:nowrap;padding:10px 9px;border-radius:8px}.portal-nav-home:hover,.portal-nav-home.active,.portal-nav-menu.active>summary,.portal-nav-menu[open]>summary{background:rgba(255,255,255,.14);color:#fff}.portal-nav-menu{position:relative}.portal-nav-menu summary{display:block;list-style:none;cursor:pointer;user-select:none}.portal-nav-menu summary::-webkit-details-marker{display:none}.portal-nav-menu summary:after{content:' ▾';font-size:.78em;margin-left:.28rem}.portal-nav-menu[open] summary:after{content:' ▴'}.portal-nav-dropdown{position:absolute;z-index:1120;top:calc(100% + .45rem);left:0;width:max-content;min-width:210px;max-width:min(320px,calc(100vw - 24px));padding:.45rem;background:#fff;color:#171717;border:1px solid #dadbe0;border-radius:11px;box-shadow:0 15px 36px rgba(0,0,0,.32)}.portal-nav-dropdown a{display:block;color:#202026;font-size:14px;padding:.7rem .8rem;border-radius:7px}.portal-nav-dropdown a:hover,.portal-nav-dropdown a.active{background:#eef1f5;color:#9e1118}.portal-nav-account .portal-nav-dropdown{left:auto;right:0}@media(max-width:900px){.portal-nav{justify-content:flex-start;gap:4px}.portal-nav-dropdown{left:0}.portal-nav-account .portal-nav-dropdown{left:auto;right:0}}@media(max-width:520px){.portal-nav a,.portal-nav summary{font-size:12px;padding:9px 7px}.portal-nav-dropdown a{font-size:14px;padding:.72rem}.portal-nav-dropdown{min-width:190px}}

/* v1.1.34 mobile registration visibility and accessible touch navigation */
@media(max-width:767px){
 .header-register-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:2px solid #fff;border-radius:10px;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
 .header-register-link:hover,.header-register-link:focus-visible{background:#fff;color:#15151b}
 .topbar{flex-wrap:wrap;row-gap:8px}
 .header-actions{margin-left:auto;flex-shrink:0}
 .mobile-bottom-nav{grid-template-columns:repeat(var(--mobile-nav-items,5),minmax(0,1fr));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
 .mobile-bottom-nav a{min-width:0;min-height:48px;font-size:clamp(10px,2.5vw,12px);overflow-wrap:anywhere;text-align:center}
 .mobile-bottom-nav a:focus-visible{outline:3px solid #fff;outline-offset:-4px}
 .page-shell{min-width:0}
 .table-responsive,.order-matrix-wrap{max-width:100%;-webkit-overflow-scrolling:touch}
 .uws-site-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}
}
@media(max-width:380px){.topbar{padding-left:8px;padding-right:8px}.header-actions{gap:5px}.header-register-link{padding:0 8px;font-size:12px}.header-order-btn{padding:0 8px;font-size:12px}.event-picker{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
