:root{--sb-bg:#080d19;--sb-panel:#111a2b;--sb-card:#121d31;--sb-border:#253048;--sb-text:#eaf0ff;--sb-muted:#96a5c1;--sb-purple:#9462ff;--sb-purple2:#7449f4;--sb-cyan:#34e6cd;--sb-pink:#ed6ff5;--sb-radius:18px}
[data-bs-theme="light"]{--sb-bg:#f2f5fd;--sb-panel:#fff;--sb-card:#fff;--sb-border:#dce3f2;--sb-text:#1a2744;--sb-muted:#687791;--sb-purple:#7041ed;--sb-purple2:#5b33d0;--sb-cyan:#0da391;--sb-pink:#d24ae0}
*{box-sizing:border-box}
body{background:var(--sb-bg);color:var(--sb-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}
a{text-decoration:none;color:var(--sb-purple)}a:hover{color:var(--sb-cyan)}
.topbar{min-height:74px;background:color-mix(in srgb,var(--sb-panel) 92%,transparent);border-bottom:1px solid var(--sb-border);backdrop-filter:blur(16px);z-index:1040}
.brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:1rem;letter-spacing:.045em;color:var(--sb-text);white-space:nowrap}.brand:hover{color:var(--sb-text)}.brand b{color:var(--sb-cyan)}.brand-mark{background:linear-gradient(145deg,var(--sb-purple),#39b7fa);border-radius:13px;width:39px;height:39px;display:inline-grid;place-items:center;color:#fff;box-shadow:0 6px 22px #9462ff30}.brand-mark i{font-size:19px}
.nav-quick{font-size:.88rem;font-weight:700;color:var(--sb-muted);padding:10px 14px}.nav-person{background:var(--sb-bg);border:1px solid var(--sb-border);border-radius:30px;padding:8px 12px;color:var(--sb-text)}
.btn-primary{--bs-btn-bg:var(--sb-purple2);--bs-btn-border-color:var(--sb-purple2);--bs-btn-hover-bg:var(--sb-purple);--bs-btn-hover-border-color:var(--sb-purple);--bs-btn-active-bg:var(--sb-purple)}.btn-outline-primary{--bs-btn-color:var(--sb-purple);--bs-btn-border-color:var(--sb-purple);--bs-btn-hover-bg:var(--sb-purple);--bs-btn-hover-border-color:var(--sb-purple)}
.btn{border-radius:10px;font-weight:700;padding:.58rem .9rem}.btn-sm{padding:.36rem .64rem;font-size:.82rem}.btn-lg{padding:.84rem 1.15rem}.btn-icon{width:38px;height:38px;display:grid;place-items:center;padding:0}
.app-shell{display:flex;align-items:stretch;min-height:calc(100vh - 126px)}.app-sidebar{width:254px;flex:0 0 254px;padding:28px 14px 24px;background:var(--sb-panel);border-right:1px solid var(--sb-border);position:sticky;top:74px;height:calc(100vh - 74px);overflow-y:auto}.main-content{flex:1;min-width:0}.sidebar-label{font-size:.68rem;color:var(--sb-muted);font-weight:850;letter-spacing:.14em;padding:4px 16px 12px}.side-links{display:flex;flex-direction:column;gap:3px}.side-link{padding:12px 13px;border-radius:11px;display:flex;align-items:center;gap:12px;color:var(--sb-muted);font-size:.88rem;font-weight:650}.side-link i{width:20px;text-align:center}.side-link:hover{color:var(--sb-text);background:color-mix(in srgb,var(--sb-purple) 10%,transparent)}.side-link.active{color:#fff;background:linear-gradient(120deg,#6338bb,var(--sb-purple2));box-shadow:0 7px 21px #603ace20}.sidebar-bottom{margin-top:36px;padding:16px 15px;border:1px solid var(--sb-border);border-radius:14px;color:var(--sb-muted);font-size:.8rem;line-height:1.8}.sidebar-bottom span{font-weight:800;color:var(--sb-cyan)}.sidebar-mobile{background:var(--sb-panel);width:280px!important}.sidebar-mobile .offcanvas-body{padding:6px 12px}
.content-wrap{max-width:1570px;padding:30px 32px 80px}.guest-content .content-wrap{max-width:1380px;margin:auto}.footer-strip{display:flex;justify-content:space-between;gap:12px;padding:17px 30px;border-top:1px solid var(--sb-border);color:var(--sb-muted);font-size:.77rem}
.page-heading{margin:4px 0 24px}.page-heading h1{font-size:clamp(1.6rem,2.5vw,2.2rem);letter-spacing:-.045em;font-weight:850;margin:0 0 4px}.page-heading p{color:var(--sb-muted);margin:0;font-size:.92rem}
.hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:435px;background:radial-gradient(circle at 80% 15%,#2a266f 0%,transparent 48%),linear-gradient(110deg,#14203b,#101029 68%,#112844);border:1px solid #30355d;border-radius:24px;overflow:hidden;position:relative;box-shadow:0 15px 60px #00000015}.hero:before{content:"";position:absolute;right:18%;top:-70px;width:240px;height:240px;border:1px solid #6c59ac55;transform:rotate(40deg);border-radius:50px}.hero-text{position:relative;z-index:1;padding:64px 24px 45px 57px}.eyebrow{color:var(--sb-cyan);font-size:.76rem;font-weight:850;letter-spacing:.14em}.hero h1{font-size:clamp(2.2rem,4vw,4.45rem);line-height:1.09;font-weight:950;letter-spacing:-.05em;margin:21px 0;color:#fff}.hero h1 span{background:linear-gradient(100deg,#a776ff,#47d6fa);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:#adbddd;font-size:1rem;max-width:560px;line-height:1.8;margin-bottom:25px}.hero-art{display:grid;place-items:center;padding:25px;position:relative}.hero-art img{max-width:100%;width:480px;filter:drop-shadow(0 28px 55px #050618c9);animation:levitate 6s ease-in-out infinite}@keyframes levitate{50%{transform:translateY(-11px)}}.hero-foot{display:flex;gap:20px;flex-wrap:wrap;margin-top:38px;color:#b4c3e0;font-size:.77rem}.hero-foot i{color:var(--sb-cyan);margin-right:6px}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:46px 0 18px;gap:16px}.section-title h2{font-size:1.55rem;font-weight:840;letter-spacing:-.04em;margin:8px 0 0}.link-arrow{font-weight:740;font-size:.87rem;white-space:nowrap}.link-arrow i{margin-left:5px}.panel{background:var(--sb-panel);border:1px solid var(--sb-border);border-radius:var(--sb-radius);padding:25px;box-shadow:0 5px 32px #00000009}.info-panel{background:color-mix(in srgb,var(--sb-purple) 8%,var(--sb-panel));border:1px solid var(--sb-border);border-radius:var(--sb-radius);padding:25px;color:var(--sb-text)}.text-accent{color:var(--sb-cyan)}.price{color:var(--sb-cyan);font-weight:850;font-size:1.12rem}
.game-station-card,.game-card,.tournament-card{background:var(--sb-card);border:1px solid var(--sb-border);border-radius:var(--sb-radius);overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.game-station-card:hover,.game-card:hover,.tournament-card:hover{transform:translateY(-3px);border-color:var(--sb-purple);box-shadow:0 13px 35px #0306142b}.station-cover{height:176px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#7052ba 0%,#242048 45%,#141b33 78%);overflow:hidden}.station-cover.station-pc{background:radial-gradient(circle at 50% 40%,#126b9c,#132950 48%,#141b31 80%)}.station-cover.station-ps4{background:radial-gradient(circle at 60% 50%,#4937a1,#131b41 68%)}.station-cover.station-xbox{background:radial-gradient(circle at 60% 30%,#0b7c61,#12263c 72%)}.station-cover img{width:78%;height:170px;object-fit:contain;filter:drop-shadow(0 14px 15px #03071270)}.platform-pill{position:absolute;top:15px;left:15px;background:#0c1232c4;border:1px solid #c8d0ff49;color:#fff;border-radius:30px;padding:5px 12px;font-size:.72rem;font-weight:800}
.game-art{height:205px;background:linear-gradient(145deg,#252650,#141f3b);overflow:hidden}.game-art>img{width:100%;height:100%;object-fit:cover}.game-art-fallback{height:100%;background:radial-gradient(circle,#4b2d7c,#192140 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px}.game-art-fallback i{font-size:4rem;color:#b99aff;filter:drop-shadow(0 0 13px #a06bf4)}.game-art-fallback span{font-size:.7rem;color:#d5ceef;letter-spacing:.22em;font-weight:800}.event-card{background:var(--sb-panel);border:1px solid var(--sb-border);border-radius:16px;padding:22px;display:flex;gap:20px;align-items:center}.event-icon{border-radius:14px;width:66px;height:66px;display:grid;place-items:center;background:linear-gradient(145deg,#c97a11,#7a367f);color:#fff;font-size:1.8rem;flex:none}.event-banner{height:130px;background:radial-gradient(circle at 55% 40%,#6d2b8f,#282454 80%);display:flex;align-items:center;justify-content:center;position:relative}.event-banner i{color:#ffb45a;font-size:4rem;filter:drop-shadow(0 6px 18px #0008)}.event-banner span{position:absolute;right:17px;top:15px;background:#0d102ea3;color:#fff;border:1px solid #ffffff24;border-radius:20px;padding:4px 12px;font-size:.72rem;font-weight:800}
.stat-card{border:1px solid var(--sb-border);background:var(--sb-panel);border-radius:16px;padding:23px;min-height:180px}.stat-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;color:var(--sb-cyan);background:color-mix(in srgb,var(--sb-cyan) 12%,transparent);margin-bottom:16px}.stat-value{font-size:1.62rem;font-weight:880;letter-spacing:-.04em}.stat-label{font-weight:800;margin-bottom:4px;font-size:.89rem}.empty-box{text-align:center;color:var(--sb-muted);padding:52px 18px;border:1px dashed var(--sb-border);border-radius:16px;background:color-mix(in srgb,var(--sb-panel) 60%,transparent)}.empty-box i{color:var(--sb-purple)}.empty-box p{margin:5px 0 18px}
.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 22px}.filter-pill{border:1px solid var(--sb-border);border-radius:24px;padding:9px 17px;color:var(--sb-muted);background:var(--sb-panel);font-weight:750;font-size:.84rem}.filter-pill.selected{color:#fff;border-color:var(--sb-purple2);background:var(--sb-purple2)}.filter-pill:hover{border-color:var(--sb-purple);color:var(--sb-text)}
.booking-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:21px;border-radius:13px;border:1px solid color-mix(in srgb,var(--sb-purple) 40%,var(--sb-border));background:color-mix(in srgb,var(--sb-purple) 8%,var(--sb-panel))}.booking-summary h3{font-size:1.6rem;color:var(--sb-cyan);font-weight:850;margin-top:6px}.booking-steps{color:var(--sb-muted);padding-left:20px;line-height:1.85;font-size:.9rem;margin:15px 0}.booking-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-detail-grid>div{padding:13px 0;border-bottom:1px solid var(--sb-border)}.booking-detail-grid span,.booking-detail-grid strong{display:block}.booking-detail-grid span{font-size:.76rem;color:var(--sb-muted);margin-bottom:6px}.booking-detail-grid strong{font-size:.93rem}.amount-due{font-size:2.5rem;font-weight:900;color:var(--sb-cyan);margin-bottom:24px}.amount-due small{display:block;color:var(--sb-muted);font-size:.8rem;font-weight:500}.payment-line{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid var(--sb-border)}.payment-line:last-child{border-bottom:0}.payment-line strong{font-size:.82rem;display:block}.payment-line small{display:block;font-size:.75rem;color:var(--sb-muted);margin-top:3px}
.auth-wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1000px;margin:35px auto 80px}.auth-aside{min-height:470px;background:radial-gradient(circle at 70% 60%,#38316e,#171a38 60%,#151c36);border:1px solid #37315d;border-radius:20px;position:relative;overflow:hidden;padding:50px;color:#fff}.auth-aside h2{font-size:2.55rem;line-height:1.1;font-weight:900;margin:24px 0;letter-spacing:-.04em}.auth-aside h2 span{color:#bda3ff}.auth-aside p{color:#b0bad8;max-width:300px;line-height:1.8}.auth-aside img{width:330px;position:absolute;bottom:-58px;right:-25px;transform:rotate(-9deg);filter:drop-shadow(0 30px 28px #0008)}.auth-form{padding:35px}.player-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px}.player-chip{border:1px solid var(--sb-border);border-radius:12px;padding:12px;font-weight:700}.player-chip span{display:inline-grid;place-items:center;background:var(--sb-purple2);color:#fff;border-radius:50%;width:27px;height:27px;margin-right:10px}.rank{font-weight:900;font-size:1.1rem;color:var(--sb-purple)}.platforms-checks{display:flex;flex-wrap:wrap;gap:9px}.platforms-checks label{border:1px solid var(--sb-border);border-radius:10px;padding:8px 12px;font-size:.85rem}.manual-pay-form{display:flex;gap:5px;flex-wrap:wrap;max-width:430px}.manual-pay-form input{min-width:120px;max-width:155px;flex:1}.manual-pay-form select{max-width:140px}
.form-control,.form-select{background-color:var(--sb-bg);border:1px solid var(--sb-border);padding:.7rem .85rem;border-radius:11px;color:var(--sb-text)}.form-control:focus,.form-select:focus{background-color:var(--sb-bg);color:var(--sb-text);border-color:var(--sb-purple);box-shadow:0 0 0 .2rem #9360fb22}.form-label{font-weight:730;font-size:.85rem}.form-text{font-size:.76rem}.table{--bs-table-color:var(--sb-text);--bs-table-bg:transparent;--bs-table-border-color:var(--sb-border);--bs-table-hover-color:var(--sb-text);--bs-table-hover-bg:color-mix(in srgb,var(--sb-purple) 7%,transparent);margin-bottom:0;font-size:.86rem}.table th{color:var(--sb-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:800;font-size:.69rem;padding-top:14px;padding-bottom:14px}.table td{padding-top:13px;padding-bottom:13px}.badge{padding:.46em .7em;font-weight:770;letter-spacing:.01em}.alert{border-radius:13px}.sidebar-mobile .btn-close{margin-left:auto}
@media(max-width:1100px){.hero{grid-template-columns:1.1fr .9fr}.hero-text{padding-left:30px}.hero h1{font-size:3rem}.hero-art img{width:370px}}
@media(max-width:991px){.content-wrap{padding:27px 22px 70px}.app-shell{display:block}.auth-wrap{grid-template-columns:1fr;max-width:650px}.auth-aside{min-height:210px}.auth-aside img{width:230px;bottom:-105px}.hero-text{padding:35px}.hero-art img{max-width:320px}}
@media(max-width:700px){.brand{font-size:.83rem}.brand-mark{width:35px;height:35px}.topbar{min-height:68px}.content-wrap{padding:21px 15px 65px}.hero{display:block;min-height:auto}.hero-text{padding:31px 22px}.hero h1{font-size:2.5rem}.hero p{font-size:.88rem}.hero-art{display:none}.hero-foot{gap:10px;margin-top:27px}.section-title{margin-top:33px}.section-title h2{font-size:1.25rem}.section-title .link-arrow{font-size:.75rem}.page-heading h1{font-size:1.65rem}.panel{padding:19px}.booking-summary{flex-direction:column;align-items:flex-start}.booking-detail-grid{gap:10px}.auth-aside{display:none}.auth-wrap{margin:20px auto}.auth-form{padding:23px}.footer-strip{font-size:.7rem;padding:15px;flex-direction:column}.table{min-width:650px}.event-card{padding:17px}.event-icon{width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.session-timer{font-size:.78rem;font-weight:800;color:var(--sb-cyan);margin-top:5px}.session-timer.warning{color:#e5a742}.session-timer.overtime{color:#ec6b8a}
