@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Outfit:wght@200;300;400;500;600&display=swap');

html,body{background:#080808!important;color:#F0EDE8!important;font-family:'Outfit',-apple-system,BlinkMacSystemFont,sans-serif!important}
.navbar,.navbar-default,.navbar-fixed-top,header,.header{background:#080808!important;border-bottom:1px solid rgba(200,0,10,0.18)!important;box-shadow:none!important}
.navbar-default .navbar-brand,.navbar-brand,.navbar a,.navbar-default .navbar-nav>li>a{color:#F0EDE8!important}
.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#C8000A!important}
.container,.container-fluid,body>.container{background:transparent!important}
main,main#content,#content,.main-box,[role="main"]{background:#080808!important;color:#F0EDE8!important}
.page-header,.event-header,.shop-header{background:#080808!important;border-bottom:1px solid rgba(200,0,10,0.15)!important;color:#F0EDE8!important}
.page-header h1,.page-header h2,.event-header h1{color:#F0EDE8!important}
.panel,.panel-default,.panel-body,.panel-heading,.panel-footer,.card,.well,.info-row,.shop-box,.event-box{background:#0d0d0d!important;border-color:rgba(255,255,255,0.06)!important;color:#F0EDE8!important;box-shadow:none!important}
.panel-default>.panel-heading{background:#141414!important;border-bottom-color:rgba(255,255,255,0.06)!important;color:#F0EDE8!important}
.item,.item-row,.product-row,.item-category,.product,.variation,.item-description-box,.category,.category-box,article,.table>thead>tr>th,.table>tbody>tr>td{background:#0d0d0d!important;color:#F0EDE8!important;border-color:rgba(255,255,255,0.06)!important}
.item-category h3,.category h3,.item h4,.product-name,.item-name{color:#F0EDE8!important;font-weight:500!important}
.item-description,.product-description,.variation-description{color:#c8c4be!important}
.price,.price-current,.item-price,.product-price,.total-price{color:#F0EDE8!important;font-weight:600!important}
.price-old,.price-original{color:#555!important}
.btn-primary,.btn-success,.btn-add-to-cart,button[type="submit"],input[type="submit"],.btn-checkout{background:#C8000A!important;border-color:#C8000A!important;color:#F0EDE8!important;font-family:'Bebas Neue',sans-serif!important;font-size:18px!important;font-weight:400!important;letter-spacing:0.18em!important;text-transform:uppercase!important;border-radius:0!important;transition:background 0.2s!important;padding:12px 28px!important}
.btn-primary:hover,.btn-primary:focus,.btn-success:hover,.btn-success:focus,.btn-add-to-cart:hover,button[type="submit"]:hover,.btn-checkout:hover{background:#a30008!important;border-color:#a30008!important;color:#F0EDE8!important;transform:none!important}
.btn-default,.btn-secondary{background:transparent!important;border:1px solid rgba(255,255,255,0.12)!important;color:#888!important;border-radius:0!important;transition:all 0.2s!important}
.btn-default:hover,.btn-default:focus,.btn-secondary:hover{border-color:rgba(255,255,255,0.3)!important;color:#c8c4be!important;background:transparent!important}
.btn-danger{background:#8B0006!important;border-color:#8B0006!important;color:#F0EDE8!important;border-radius:0!important}
.btn-danger:hover{background:#6B0004!important}
a:not(.btn),a:not(.btn):visited{color:#C8000A!important;transition:color 0.2s!important}
a:not(.btn):hover,a:not(.btn):focus{color:#e83030!important;text-decoration:none!important}
.form-control,input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="date"],textarea,select{background:#141414!important;border:1px solid rgba(255,255,255,0.08)!important;color:#F0EDE8!important;border-radius:0!important;transition:border-color 0.2s!important}
.form-control:focus,input:focus,textarea:focus,select:focus{border-color:rgba(200,0,10,0.5)!important;box-shadow:0 0 0 2px rgba(200,0,10,0.08)!important;outline:none!important}
.form-control::placeholder,input::placeholder,textarea::placeholder{color:#555!important}
label,.control-label{color:#888!important;font-weight:500!important;text-transform:uppercase!important;font-size:0.62rem!important;letter-spacing:0.18em!important}
h1,h2,h3,h4,h5,h6{color:#F0EDE8!important}
p,li,span,div,td,th{color:#F0EDE8!important}
.text-muted,.help-block,small,.small{color:#555!important}
.table,table{background:transparent!important;border-color:rgba(255,255,255,0.06)!important}
.table>thead>tr>th{border-bottom:2px solid rgba(200,0,10,0.25)!important;color:#C8000A!important;text-transform:uppercase!important;font-size:0.62rem!important;letter-spacing:0.18em!important;font-weight:500!important}
.table>tbody>tr>td{border-top-color:rgba(255,255,255,0.04)!important}
.table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,0.02)!important}
.table-hover>tbody>tr:hover{background:rgba(200,0,10,0.04)!important}
.alert{border-radius:0!important;border:none!important}
.alert-info{background:rgba(200,0,10,0.06)!important;border-left:3px solid #C8000A!important;color:#F0EDE8!important}
.alert-success{background:rgba(74,222,128,0.08)!important;border-left:3px solid rgba(74,222,128,0.6)!important;color:#F0EDE8!important}
.textbubble-success{background:#4ade80!important;color:#08110b!important;border:1px solid #86efac!important;font-weight:700!important}
.textbubble-success .fa{color:#08110b!important}
.list-group-item.payment,.list-group-item.payment *{background:#0d0d0d!important;color:#F0EDE8!important;border-color:rgba(255,255,255,0.06)!important}
.list-group-item.payment .ecube-payment-note{color:#F0EDE8!important}
.alert-warning{background:rgba(200,0,10,0.08)!important;border-left:3px solid #C8000A!important;color:#F0EDE8!important}
.alert-danger{background:rgba(139,0,6,0.15)!important;border-left:3px solid #8B0006!important;color:#F0EDE8!important}
.badge,.label,.label-default{background:rgba(200,0,10,0.12)!important;color:#C8000A!important;border-radius:0!important;font-weight:500!important}
.label-success,.badge-success{background:#4ade80!important;border:1px solid #86efac!important;color:#08110b!important;font-weight:700!important;text-shadow:none!important}
.label-danger{background:rgba(139,0,6,0.2)!important;color:#ef4444!important}
.list-group-item.payment,.list-group-item.payment *{color:#F0EDE8!important}
.modal-content{background:#0d0d0d!important;border:1px solid rgba(255,255,255,0.08)!important;border-radius:0!important;color:#F0EDE8!important}
.modal-header{border-bottom-color:rgba(255,255,255,0.06)!important}
.modal-footer{border-top-color:rgba(255,255,255,0.06)!important}
.modal-backdrop{background:#080808!important}
.dropdown-menu{background:#141414!important;border:1px solid rgba(255,255,255,0.08)!important;border-radius:0!important;box-shadow:0 8px 32px rgba(0,0,0,0.6)!important}
.dropdown-menu>li>a{color:#c8c4be!important;transition:all 0.2s!important}
.dropdown-menu>li>a:hover{background:rgba(200,0,10,0.08)!important;color:#F0EDE8!important}
.pagination>li>a,.pagination>li>span{background:#141414!important;border-color:rgba(255,255,255,0.06)!important;color:#c8c4be!important}
.pagination>li>a:hover{background:rgba(200,0,10,0.08)!important;color:#C8000A!important}
.pagination>.active>a,.pagination>.active>span{background:#C8000A!important;border-color:#C8000A!important;color:#F0EDE8!important}
.breadcrumb{background:transparent!important;padding:0!important}
.breadcrumb>li,.breadcrumb>.active{color:#555!important}
.breadcrumb>li>a{color:#C8000A!important}
.cart,.cart-box,.checkout-flow,.checkout-step{background:#0d0d0d!important;border-color:rgba(255,255,255,0.06)!important}
.cart-total,.order-total{color:#F0EDE8!important;font-weight:600!important}
.countdown,.timer{color:#C8000A!important;font-family:'Bebas Neue',sans-serif!important;letter-spacing:0.08em!important}
.progress{background:#141414!important;border-radius:0!important}
.progress-bar{background:#C8000A!important}
footer,.footer,.powered-by{background:#080808!important;border-top:1px solid rgba(255,255,255,0.06)!important;color:#888!important}
footer a,.footer a,.powered-by a{color:#888!important}
footer a:hover,.footer a:hover{color:#C8000A!important}
input[type="checkbox"],input[type="radio"]{accent-color:#C8000A!important}
hr{border-top-color:rgba(255,255,255,0.06)!important}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:#080808}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.08);border-radius:0}
::-webkit-scrollbar-thumb:hover{background:rgba(200,0,10,0.4)}
.quantity-input,.count,input[type="number"]{background:#141414!important;color:#F0EDE8!important;border-color:rgba(255,255,255,0.08)!important}
.container.main-box,.container>.row,.main-box>.row,#main-content,.content-wrapper,div[class*="content"],div[class*="main"]{background:#080808!important;color:#F0EDE8!important}
*{--bs-body-bg:#080808!important;--bs-card-bg:#0d0d0d!important}
body::after{content:'';position:fixed;inset:-60px;z-index:9998;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:180px;animation:nx-grain 1.2s steps(2) infinite}
@keyframes nx-grain{0%{transform:translate(0,0)}10%{transform:translate(-15px,-18px)}20%{transform:translate(18px,12px)}30%{transform:translate(-8px,22px)}40%{transform:translate(22px,-8px)}50%{transform:translate(-18px,16px)}60%{transform:translate(12px,-14px)}70%{transform:translate(-22px,8px)}80%{transform:translate(8px,-22px)}90%{transform:translate(-12px,14px)}100%{transform:translate(18px,-18px)}}

html body div.container.main-box footer,
html body div.container.main-box footer * { display: none !important; height: 0 !important; overflow: hidden !important; }

#ecube-branding-vFinal, #ecube-branding-vFinal * { text-align: center !important; }
#ecube-branding-vFinal {
    display: block !important;
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    padding: 60px 0 40px !important;
    color: #555 !important;
    font-size: 0.9rem !important;
    background: transparent !important;
}

html body .exclusive-access-cta a.exclusive-access-btn:link,
html body .exclusive-access-cta a.exclusive-access-btn:visited,
html body .exclusive-access-cta a.exclusive-access-btn.btn.btn-primary:link,
html body .exclusive-access-cta a.exclusive-access-btn.btn.btn-primary:visited {
    display:inline-block!important;background:#C8000A!important;border:1px solid #C8000A!important;
    color:#F0EDE8!important;-webkit-text-fill-color:#F0EDE8!important;text-shadow:none!important;
    opacity:1!important;font-size:14px!important;font-weight:700!important;
    text-transform:uppercase!important;letter-spacing:.08em!important;text-decoration:none!important;
}
html body .exclusive-access-cta a.exclusive-access-btn:hover,
html body .exclusive-access-cta a.exclusive-access-btn:focus,
html body .exclusive-access-cta a.exclusive-access-btn.btn.btn-primary:hover,
html body .exclusive-access-cta a.exclusive-access-btn.btn.btn-primary:focus {
    background:#8B0006!important;border-color:#8B0006!important;
    color:#F0EDE8!important;-webkit-text-fill-color:#F0EDE8!important;
}

/* ── Override Pretix brand primary & dialog styling ── */
:root {
  --pretix-brand-primary: #C8000A !important;
  --pretix-brand-primary-darken-5: #C8000A !important;
  --pretix-brand-primary-darken-10: #a30008 !important;
  --pretix-brand-primary-darken-15: #a30008 !important;
  --pretix-brand-primary-darken-17: #a30008 !important;
  --pretix-brand-primary-darken-30: #a30008 !important;
}
dialog.modal-card .modal-card-icon { background: #C8000A !important; color: #fff !important; }
dialog.modal-card { background: #0d0d0d !important; color: #F0EDE8 !important; border: 1px solid rgba(255,255,255,0.1) !important; }
dialog.modal-card .modal-card-content { color: #F0EDE8 !important; }
dialog::backdrop { background-color: rgba(0,0,0,0.7) !important; backdrop-filter: blur(4px) !important; }

/* ── Kill focus outlines & tap highlight ── */
* { -webkit-tap-highlight-color: transparent !important; }
*:focus { outline: none !important; box-shadow: none !important; }
*:active { outline: none !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible { outline: 2px solid currentColor !important; outline-offset: 2px !important; }

/* ── Customer login page alignment ── */
#customer-account-login-providers { padding-left: 0 !important; text-align: center !important; }
#customer-account-login-providers li { display: block !important; padding: 0 !important; }
#customer-account-login-providers .btn { text-align: center !important; }

/* ── Hide single-page pagination count ── */
.pagination-container:not(:has(.fa)) { display: none !important; }
