:root{
  --bg:#050608;--panel:#0e1015;--panel2:#13161d;--panel3:#090b0f;--line:#262b36;
  --text:#f7f8fb;--muted:#99a1b0;--purple:#a900ff;--blue:#4c79ff;--green:#35d27c;
  --red:#ff5f73;--yellow:#f3c84c;--radius:18px;--shadow:0 24px 80px rgba(0,0,0,.32)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 5%,rgba(169,0,255,.14),transparent 28%),radial-gradient(circle at 14% 18%,rgba(76,121,255,.1),transparent 24%),var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.ltr{direction:ltr;text-align:left}.muted{color:var(--muted)}
.site-shell{width:min(1380px,calc(100% - 40px));margin:auto}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);gap:28px}.brand img{width:146px;display:block}.site-header nav{display:flex;gap:28px;color:#d4d8e0;flex:1;justify-content:center}.site-header nav a:hover{color:#fff}.header-action{border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:13px;color:#e3e6ec}
.hero{min-height:420px;display:grid;grid-template-columns:1.25fr 1fr;gap:30px;align-items:center;padding:32px 0 18px}.hero-copy{order:1}.hero-art{order:2;position:relative;overflow:hidden;min-height:350px;border-radius:26px;border:1px solid var(--line);background:#090a0e}.hero-art img{width:100%;height:100%;min-height:350px;object-fit:cover;display:block}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,8,.88),rgba(5,6,8,.05) 48%,rgba(5,6,8,.05))}.eyebrow{color:#b9a9ff;letter-spacing:2px;font-size:12px;font-weight:800}.hero h1{margin:10px 0 14px;font-size:clamp(42px,5vw,72px);line-height:1.05}.hero p{max-width:730px;color:var(--muted);font-size:17px;line-height:1.9}.feature-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.feature-pills span{border:1px solid var(--line);background:rgba(13,15,20,.82);padding:10px 13px;border-radius:11px;color:#e6e8ee;font-size:13px}
.notice{padding:13px 15px;border-radius:12px;border:1px solid var(--line)}.notice.danger{background:rgba(255,95,115,.08);border-color:rgba(255,95,115,.3);color:#ffd6dc}.notice.success{background:rgba(53,210,124,.08);border-color:rgba(53,210,124,.28);color:#ceffdf}
.booking-card{display:grid;grid-template-columns:1fr 1.15fr 1fr;background:rgba(13,15,20,.95);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.booking-column{padding:25px;min-width:0}.booking-column+.booking-column{border-right:1px solid var(--line)}.section-heading{display:flex;align-items:center;gap:10px;margin-bottom:17px}.section-heading h2{font-size:18px;margin:0}.step{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--blue),var(--purple));font-weight:800}.spaced{margin-top:26px}.player-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.choice{border:1px solid var(--line);background:#11141a;color:#fff;border-radius:11px;padding:14px;font-weight:800}.choice.active{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--blue),0 0 24px rgba(169,0,255,.16)}label{display:block;font-size:13px;color:#cfd3db;margin:14px 0 7px}.field{width:100%;border:1px solid var(--line);background:#0a0c10;color:#fff;border-radius:11px;padding:12px 13px;outline:none}.field:focus{border-color:#655fff;box-shadow:0 0 0 3px rgba(76,121,255,.1)}.slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-height:350px;overflow:auto;padding-left:2px}.slot-btn{min-height:70px;border:1px solid var(--line);background:#11141a;color:#fff;border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.slot-btn b{font-size:16px}.slot-btn small{color:var(--muted)}.slot-btn .next-day{color:#cbb6ff;font-size:10px}.slot-btn.active{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--blue),0 0 25px rgba(169,0,255,.16)}.slot-btn:disabled{opacity:.26;cursor:not-allowed}.slots-loading,.slots-empty{grid-column:1/-1;color:var(--muted);text-align:center;padding:28px 8px}.small-hint{color:var(--muted);font-size:11px;text-align:center;line-height:1.7}.phone-field{display:grid;grid-template-columns:74px 1fr;border:1px solid var(--line);background:#0a0c10;border-radius:11px;overflow:hidden}.phone-field span{display:grid;place-items:center;border-left:1px solid var(--line);color:#dde1e8}.phone-field input{border:0;background:transparent;color:#fff;padding:12px;outline:0;direction:ltr;text-align:left}.terms-check{display:flex;align-items:flex-start;gap:8px;line-height:1.6}.terms-check input{margin-top:4px}.terms-check a{color:#b9a8ff;text-decoration:underline}.primary-btn{width:100%;border:0;color:#fff;font-weight:800;border-radius:11px;padding:14px 18px;margin-top:18px;background:linear-gradient(90deg,var(--blue),var(--purple));box-shadow:0 12px 32px rgba(94,49,255,.18)}.primary-btn:disabled{opacity:.42;cursor:not-allowed}.form-error{display:none;color:#ffd7dd;background:rgba(255,95,115,.08);border:1px solid rgba(255,95,115,.25);padding:10px;border-radius:9px;margin-top:10px}.secure-line{color:var(--muted);font-size:11px;text-align:center}.summary-box{margin-top:22px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.summary-box div{border:1px solid var(--line);background:#0a0c10;border-radius:11px;padding:11px}.summary-box small,.ticket-grid small{display:block;color:var(--muted);margin-bottom:4px}.summary-box strong{font-size:13px}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:20px;margin:22px 0 58px;overflow:hidden;background:#0c0e13}.benefits>div{padding:23px;text-align:center}.benefits>div+div{border-right:1px solid var(--line)}.benefits b{font-size:32px;color:#aa6cff}.benefits h3{margin:7px 0}.benefits p{margin:0;color:var(--muted);font-size:13px}.faq{max-width:900px;margin:0 auto 70px}.faq h2{font-size:28px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:28px 0 40px;display:flex;align-items:center;justify-content:space-between}.site-footer img{width:110px}.site-footer div{display:flex;gap:20px;color:var(--muted);font-size:12px}
.simple-page{min-height:100vh}.simple-shell,.confirmation-shell{width:min(820px,calc(100% - 30px));margin:46px auto}.simple-logo{width:160px;display:block;margin:0 auto 24px}.simple-card,.ticket{background:#0d1015;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.simple-card h1,.ticket h1{margin-top:0}.simple-card .primary-btn{margin-top:18px}.legal .simple-card{line-height:1.9;color:#d9dce3}.legal .simple-card p{color:#b9c0cd}.center{text-align:center}.error-code{font-size:68px;font-weight:900;color:#b59dff}.flash-stack{display:grid;gap:8px;margin-bottom:15px}.flash{padding:11px 13px;border-radius:9px;border:1px solid var(--line);margin-bottom:10px}.flash.success{color:#caffdf;background:rgba(53,210,124,.08);border-color:rgba(53,210,124,.25)}.flash.error{color:#ffd6dc;background:rgba(255,95,115,.08);border-color:rgba(255,95,115,.25)}.ticket{text-align:center;position:relative}.ticket-status{position:absolute;top:18px;left:18px;border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:11px}.success-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;margin:0 auto 13px;background:rgba(53,210,124,.12);color:var(--green);font-size:33px}.booking-code{font-size:28px;font-weight:900;letter-spacing:2px;padding:15px;margin:18px 0;border:1px dashed #596070;border-radius:13px;direction:ltr}.ticket-layout{display:grid;grid-template-columns:1fr 180px;gap:14px;align-items:stretch}.ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;text-align:right}.ticket-grid div{background:#090b0f;border:1px solid var(--line);border-radius:11px;padding:13px}.qr-box{background:#fff;border-radius:12px;padding:10px;color:#16171b;display:flex;flex-direction:column;justify-content:center;align-items:center}.qr-box img{width:145px;height:145px}.qr-box small{font-size:10px}.ticket-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:18px}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#151821;color:#fff;border-radius:9px;padding:10px 13px}.danger-btn{border:1px solid rgba(255,95,115,.35);background:rgba(255,95,115,.08);color:#ffd4db;border-radius:9px;padding:10px 13px}
.admin-page{background:#07080b}.admin-layout{min-height:100vh;display:grid;grid-template-columns:245px 1fr;direction:ltr}.sidebar{direction:rtl;position:sticky;top:0;height:100vh;padding:22px 17px;background:#0b0d12;border-left:1px solid var(--line);display:flex;flex-direction:column}.admin-brand{display:block;margin-bottom:22px}.admin-brand img{width:124px;display:block;margin-bottom:6px}.admin-brand span{color:#858d9d;font-size:10px;letter-spacing:2px}.side-nav{display:flex;flex-direction:column;gap:6px}.side-nav a{color:#c6cad3;padding:10px 11px;border-radius:9px;font-size:13px}.side-nav a:hover,.side-nav a.active{background:#151821;color:#fff}.logout-btn{margin-top:auto;width:100%;padding:10px;border:1px solid var(--line);background:transparent;color:#ff9aa8;border-radius:9px}.admin-content{direction:rtl;min-width:0;padding:26px}.admin-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.admin-topbar small{color:#838b9a;letter-spacing:2px}.admin-topbar h1{margin:4px 0 0;font-size:27px}.admin-user{border:1px solid var(--line);background:#11141a;border-radius:999px;padding:7px 11px;display:flex;align-items:center;gap:8px}.admin-user small{font-size:10px;letter-spacing:0}.dashboard-date{width:220px;margin-bottom:12px}.dashboard-date label{margin-top:0}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:17px}.stat-card{background:#0e1117;border:1px solid var(--line);border-radius:13px;padding:16px}.stat-card small{display:block;color:var(--muted);margin-bottom:7px}.stat-card strong{font-size:23px}.admin-panel{background:#0e1117;border:1px solid var(--line);border-radius:15px;padding:17px;margin-bottom:17px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.panel-head h2,.admin-panel h2{margin:0 0 4px;font-size:18px}.panel-head p{margin:0;color:var(--muted);font-size:12px}.primary-small{display:inline-flex;padding:9px 11px;border-radius:8px;background:linear-gradient(90deg,var(--blue),var(--purple));font-weight:800;font-size:12px}.day-board{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.board-slot{min-height:105px;border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:3px}.board-slot b{font-size:17px}.board-slot small,.board-slot em{font-size:10px;color:var(--muted);font-style:normal}.board-slot span{margin-top:auto;font-size:12px}.board-slot.open{border-color:rgba(53,210,124,.23)}.board-slot.open em{color:#9df5be}.board-slot.booked{border-color:rgba(76,121,255,.34);background:rgba(76,121,255,.05)}.board-slot.blocked{border-color:rgba(255,95,115,.27);opacity:.78}.admin-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quick-grid a{border:1px solid var(--line);background:#0a0c10;border-radius:9px;padding:13px}.audit-list{display:grid;gap:9px}.audit-list div{border-bottom:1px solid #20242d;padding-bottom:8px}.audit-list b,.audit-list span,.audit-list small{display:block}.audit-list span,.audit-list small{color:var(--muted);font-size:11px;margin-top:2px}.audit-list.compact{max-height:420px;overflow:auto}.empty-state{color:var(--muted);padding:30px;text-align:center;grid-column:1/-1}
.filters{display:grid;gap:8px;align-items:end}.filters.six{grid-template-columns:145px 145px 150px 150px 130px 1fr auto}.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:1020px}.admin-table th,.admin-table td{text-align:right;padding:11px 10px;border-top:1px solid #20242d;vertical-align:middle;font-size:12px}.admin-table th{color:#9ba3b2;font-weight:600}.admin-table td small{display:block;color:var(--muted);margin-top:3px}.admin-table code{color:#d8c8ff}.badge{display:inline-block;border-radius:999px;padding:5px 8px;font-size:10px;border:1px solid var(--line)}.status-confirmed,.status-checked_in{color:#caffdf;background:rgba(53,210,124,.08)}.status-completed{color:#cbd9ff;background:rgba(76,121,255,.08)}.status-cancelled{color:#ffd2d9;background:rgba(255,95,115,.08)}.status-no_show{color:#ffe9a9;background:rgba(243,200,76,.08)}.pay-paid{color:#caffdf}.pay-unpaid{color:#ffe9a9}.pay-refunded{color:#dac8ff}.actions{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.actions a,.actions button{border:0;background:#171a22;color:#fff;padding:7px 8px;border-radius:7px;font-size:11px}.actions .danger-link{color:#ff99a7}.empty-cell{text-align:center!important;color:var(--muted);padding:28px!important}.pagination{display:flex;justify-content:center;align-items:center;gap:14px;padding:13px;border-top:1px solid var(--line);font-size:12px}.pagination a{border:1px solid var(--line);border-radius:8px;padding:7px 9px}.table-link{color:#b9a8ff}.search-line{display:grid;grid-template-columns:1fr auto;gap:8px}.report-filter{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.report-filter>div{width:180px}.report-filter label{margin-top:0}
.booking-edit-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:17px}.form-panel{max-width:1100px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.form-grid.two-col{grid-template-columns:1fr 1fr}.form-grid .wide{grid-column:1/-1}.textarea{min-height:100px;resize:vertical}.form-actions{display:flex;gap:9px;margin-top:18px}.form-actions .primary-btn{width:auto;margin:0}.booking-side{height:max-content}.detail-list{display:grid;gap:8px}.detail-list div{border:1px solid var(--line);border-radius:9px;padding:10px;background:#0a0c10}.detail-list small,.detail-list b{display:block}.detail-list small{color:var(--muted);font-size:10px;margin-bottom:3px}.booking-side .full{width:100%;margin-top:8px}.booking-side h3{font-size:14px;margin-top:18px}
.availability-head{display:flex;gap:9px;align-items:end}.availability-head>div{width:220px}.date-controls{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px}.date-controls .notice{flex:1}.inline-wide{display:flex;gap:7px;align-items:center}.inline-wide .field{width:260px}.availability-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.slot-admin{min-height:150px;border:1px solid var(--line);border-radius:11px;padding:11px;background:#0a0c10}.slot-admin.open{border-color:rgba(53,210,124,.23)}.slot-admin.booked{border-color:rgba(76,121,255,.34)}.slot-admin.blocked{border-color:rgba(255,95,115,.28)}.slot-time{font-size:18px;font-weight:900}.slot-admin small,.slot-admin span{display:block;color:var(--muted);font-size:10px;margin:4px 0}.slot-admin b{display:block;margin-top:7px}.slot-admin a{color:#b8c6ff;font-size:11px}.slot-admin form{display:grid;gap:5px;margin-top:7px}.slot-admin form input{width:100%;border:1px solid var(--line);background:#11141a;color:#fff;border-radius:6px;padding:6px;font-size:10px}.slot-admin form button{border:1px solid var(--line);background:#171a22;color:#fff;border-radius:6px;padding:6px;font-size:10px}
.settings-section{border-bottom:1px solid #20242d;padding-bottom:18px;margin-bottom:18px}.settings-tip{color:var(--muted);font-size:11px;line-height:1.7}.toggle-row{display:flex;align-items:center;gap:9px;padding:8px 0;margin:0}.toggle-row input{width:17px;height:17px}.schedule-table{display:grid;gap:8px}.schedule-row{display:grid;grid-template-columns:140px 160px auto 160px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:9px}.schedule-row .toggle-row{padding:0}.save-settings{width:auto}.role-help{display:grid;gap:10px}.role-help div{border-bottom:1px solid var(--line)}.role-help p{color:var(--muted);font-size:12px}.reset-password{display:flex;gap:5px}.mini-input{border:1px solid var(--line);background:#0a0c10;color:#fff;border-radius:6px;padding:6px;width:145px;font-size:10px}.narrow-panel{max-width:560px}.narrow-panel .primary-btn{width:auto}.system-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.system-grid div{border:1px solid var(--line);background:#0a0c10;border-radius:10px;padding:13px}.system-grid small,.system-grid b{display:block}.system-grid small{color:var(--muted);margin-bottom:5px}.ok-text{color:#caffdf}.bad-text{color:#ffd2d9}.path-code{display:block;direction:ltr;text-align:left;background:#090b0f;border:1px solid var(--line);padding:10px;border-radius:8px;overflow:auto}
.login-page{min-height:100vh;display:grid;place-items:center;background:#050608}.login-shell{width:min(430px,calc(100% - 28px))}.wide-login{width:min(760px,calc(100% - 28px))}.login-card{background:#0d1015;border:1px solid var(--line);border-radius:19px;padding:25px;box-shadow:var(--shadow)}.login-card img{width:138px}.login-card>span{display:block;color:#838b9a;font-size:10px;letter-spacing:2px;margin-top:5px}.login-card h1{font-size:23px;margin:17px 0}
@media(max-width:1180px){.hero{grid-template-columns:1fr}.hero-art{order:2}.hero-copy{order:1}.booking-card{grid-template-columns:1fr}.booking-column+.booking-column{border-right:0;border-top:1px solid var(--line)}.stats-grid{grid-template-columns:repeat(3,1fr)}.day-board{grid-template-columns:repeat(4,1fr)}.availability-grid{grid-template-columns:repeat(4,1fr)}.filters.six{grid-template-columns:repeat(3,1fr)}.booking-edit-grid{grid-template-columns:1fr}}
@media(max-width:850px){.site-shell{width:min(100% - 22px,1380px)}.site-header{height:70px}.site-header nav{display:none}.brand img{width:120px}.hero{padding-top:18px;min-height:0}.hero h1{font-size:38px}.hero-art,.hero-art img{min-height:250px}.benefits{grid-template-columns:1fr}.benefits>div+div{border-right:0;border-top:1px solid var(--line)}.site-footer{flex-direction:column;gap:15px}.admin-layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-left:0;border-bottom:1px solid var(--line)}.side-nav{display:grid;grid-template-columns:repeat(2,1fr)}.logout-btn{margin-top:14px}.admin-content{padding:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-grid.two{grid-template-columns:1fr}.day-board{grid-template-columns:repeat(3,1fr)}.availability-grid{grid-template-columns:repeat(3,1fr)}.date-controls{flex-direction:column;align-items:stretch}.inline-wide{width:100%}.inline-wide .field{width:auto;flex:1}.form-grid{grid-template-columns:1fr 1fr}.ticket-layout{grid-template-columns:1fr}.qr-box{max-width:180px;margin:auto}.system-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.header-action{font-size:11px;padding:7px 9px}.hero h1{font-size:34px}.booking-column{padding:17px}.slots-grid{grid-template-columns:repeat(2,1fr)}.ticket-grid{grid-template-columns:1fr 1fr}.booking-code{font-size:21px}.site-footer div{flex-wrap:wrap;justify-content:center}.stats-grid{grid-template-columns:1fr 1fr}.stat-card strong{font-size:19px}.day-board{grid-template-columns:repeat(2,1fr)}.filters.six,.form-grid,.form-grid.two-col{grid-template-columns:1fr}.availability-grid{grid-template-columns:1fr 1fr}.side-nav{grid-template-columns:1fr}.schedule-row{grid-template-columns:1fr 1fr}.schedule-row>span{display:none}.admin-topbar h1{font-size:22px}.admin-user{display:none}.system-grid{grid-template-columns:1fr}.report-filter>div{width:100%}.search-line{grid-template-columns:1fr}.inline-wide{flex-direction:column;align-items:stretch}.availability-head{align-items:stretch}.availability-head>div{width:100%}}
.quick-select-form select{border:1px solid var(--line);background:#0a0c10;color:#fff;border-radius:7px;padding:6px 7px;font-size:10px;outline:none}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.special-hours-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-top:12px}.special-hours-form>div{width:150px}.special-hours-form .grow{flex:1;min-width:220px}.special-hours-form label{margin-top:0}.clear-override-form{margin-top:10px}
@media print{body{background:#fff;color:#000}.confirmation-shell{width:100%;margin:0}.simple-logo{filter:invert(1)}.ticket{box-shadow:none;border:1px solid #ccc;background:#fff;color:#000}.ticket-actions,.ticket-status{display:none!important}.ticket-grid div{background:#fff;border-color:#ddd}.ticket-grid small,.muted{color:#555}.booking-code{border-color:#777}.qr-box{border:1px solid #ddd}.success-icon{border:1px solid #aaa}.site-header,.site-footer{display:none!important}}
.admin-warning{margin-bottom:14px}.admin-warning a{text-decoration:underline;color:#fff}
.footer-brand{display:flex;flex-direction:column;gap:5px}.footer-brand small{color:var(--muted);font-size:11px}

/* Professional v4 additions */
.payment-heading{margin-top:22px}.payment-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.payment-choice{border:1px solid var(--line);background:#0a0c10;color:#fff;border-radius:12px;padding:11px 8px;text-align:center;display:flex;flex-direction:column;gap:4px;align-items:center}.payment-choice:hover{border-color:#4d5568}.payment-choice.active{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--blue),0 0 20px rgba(169,0,255,.14)}.payment-choice b{font-size:12px}.payment-choice small{color:var(--muted);font-size:9px;line-height:1.5}.payment-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(76,121,255,.15),rgba(169,0,255,.15));color:#d8cbff}.payment-note{color:var(--muted);font-size:10px;line-height:1.6;margin:9px 0 0}.payment-settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 16px}.payment-setting{display:flex;gap:10px;align-items:flex-start;margin:0;border:1px solid var(--line);background:#0a0c10;padding:13px;border-radius:11px}.payment-setting input{margin-top:3px;width:17px;height:17px}.payment-setting b,.payment-setting small{display:block}.payment-setting small{color:var(--muted);font-size:10px;margin-top:4px;line-height:1.5}.important-toggle{border:1px solid rgba(169,0,255,.25);background:rgba(169,0,255,.05);border-radius:11px;padding:13px}.important-toggle span b,.important-toggle span small{display:block}.important-toggle span small{color:var(--muted);font-size:10px;margin-top:4px}.security-note{margin-top:14px;background:rgba(76,121,255,.06);border-color:rgba(76,121,255,.25);color:#d9e1ff}.security-status-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.security-status-row>div{border:1px solid var(--line);background:#0a0c10;border-radius:10px;padding:11px}.security-status-row small,.security-status-row b{display:block}.security-status-row small{color:var(--muted);font-size:10px;margin-bottom:3px}.otp-setup{display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:start;margin-top:12px}.otp-setup>img{width:190px;background:#fff;border-radius:12px;padding:9px}.otp-secret{display:block;direction:ltr;text-align:left;word-break:break-all;background:#090b0f;border:1px solid var(--line);border-radius:8px;padding:10px;margin:8px 0}.otp-input{font-size:22px;letter-spacing:6px;text-align:center}.inline-security{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin-top:10px}.inline-security .secondary-btn,.inline-security .danger-btn{height:42px}.recovery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.recovery-grid code{direction:ltr;text-align:center;border:1px solid var(--line);background:#090b0f;border-radius:8px;padding:10px;color:#e7ddff}.otp-card .text-link{display:block;text-align:center;color:#aeb7c8;font-size:11px;margin-top:14px}.save-zone{display:flex;align-items:center;gap:14px}.saved-state{color:var(--muted);font-size:10px}.unsaved-indicator{position:fixed;left:24px;bottom:24px;z-index:60;background:#17121f;border:1px solid rgba(169,0,255,.4);color:#f0e8ff;border-radius:999px;padding:9px 13px;font-size:11px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.unsaved-indicator.show{opacity:1;transform:translateY(0)}.section-title-row{display:flex;justify-content:space-between;align-items:end}.section-title-row p{color:var(--muted);font-size:11px;margin:3px 0 0}
@media(max-width:850px){.payment-settings-grid{grid-template-columns:1fr}.otp-setup{grid-template-columns:1fr}.otp-setup>img{margin:auto}.recovery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.payment-choice-grid{grid-template-columns:1fr}.security-status-row{grid-template-columns:1fr}.inline-security{grid-template-columns:1fr}.recovery-grid{grid-template-columns:1fr 1fr}.save-zone{align-items:stretch;flex-direction:column}.unsaved-indicator{left:12px;right:12px;bottom:12px;text-align:center}}

/* VRX v5 professional additions */
.field-help{display:block;color:var(--muted);font-size:11px;margin-top:6px}
.promo-box{margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#0a0c10}
.promo-input-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.promo-input-row .secondary-btn{height:46px}
#promoMessage{display:block;min-height:18px;margin-top:7px;color:#b8c2d4}
.maintenance-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,rgba(169,0,255,.15),transparent 34%),#050608}
.maintenance-shell{width:min(720px,calc(100% - 30px));text-align:center}.maintenance-shell>img{width:180px;margin-bottom:24px}.maintenance-card{padding:38px 28px;border:1px solid var(--line);background:#0e1015;border-radius:24px}.maintenance-card span{font-size:12px;letter-spacing:3px;color:#a88aff}.maintenance-card h1{font-size:36px;margin:10px 0}.maintenance-card p{color:var(--muted);font-size:17px;line-height:1.9}.maintenance-card small{color:#7f8796}
.simple-shell{width:min(620px,calc(100% - 28px));margin:45px auto}.centered-brand{display:block;text-align:center;margin-bottom:20px}.centered-brand img{width:160px}.simple-card{padding:26px;background:#0e1015;border:1px solid var(--line);border-radius:20px}.simple-card h1{margin-top:0}.full-btn{width:100%;margin-top:10px}
.ops-status{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.ops-status>div{background:#0e1117;border:1px solid var(--line);border-radius:14px;padding:15px}.ops-status small{display:block;color:var(--muted);margin-bottom:6px}.ops-status strong{font-size:24px}.ops-list{display:grid;gap:9px}.ops-card{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:13px;border:1px solid var(--line);border-radius:12px;background:#0a0c10}.ops-card.live{border-color:rgba(51,209,122,.35);box-shadow:inset 0 0 0 1px rgba(51,209,122,.08)}.ops-card div{min-width:0}.ops-card small{display:block;color:var(--muted);margin-top:4px}.equipment-mini{display:flex;flex-wrap:wrap;gap:7px}.equipment-dot{border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:12px}.equipment-dot.online{color:#caffdf;border-color:rgba(51,209,122,.28)}.equipment-dot.offline{color:#ffd6dd;border-color:rgba(255,93,115,.28)}.equipment-dot.maintenance{color:#ffe9a9;border-color:rgba(244,200,74,.28)}
.scan-panel{max-width:800px}.scan-search{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.scan-search label{grid-column:1/-1}.scan-result{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#090b0f;display:flex;justify-content:space-between;gap:18px;align-items:center}.scan-result h2{font-size:30px;margin:5px 0}.scan-result p{color:var(--muted)}.scan-actions{display:flex;flex-direction:column;gap:8px;min-width:180px}.scan-actions .primary-btn{margin:0}.scan-actions form{margin:0}
.compact-stats{grid-template-columns:repeat(3,1fr)}.equipment-list{display:grid;gap:8px}.equipment-row{display:grid;grid-template-columns:minmax(110px,1fr) 130px minmax(130px,1.2fr) auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0a0c10}.equipment-row small{display:block;color:var(--muted)}.equipment-row select,.equipment-row input{background:#11141a;border:1px solid var(--line);color:#fff;border-radius:8px;padding:8px}.equipment-row button,.promo-row button,.session-row button{border:1px solid var(--line);background:#171a22;color:#fff;border-radius:8px;padding:8px 10px}
.promo-list,.session-list{display:grid;gap:9px}.promo-row,.session-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);background:#0a0c10;border-radius:11px}.promo-row small,.session-row small{display:block;color:var(--muted);margin-top:4px}.promo-form .primary-btn{width:auto;margin:0}
.status-in_game{color:#b7e7ff;background:rgba(59,184,255,.09);border-color:rgba(59,184,255,.22)}
@media(max-width:900px){.ops-status{grid-template-columns:repeat(2,1fr)}.equipment-row{grid-template-columns:1fr 1fr}.equipment-row div,.equipment-row input{grid-column:span 1}.scan-result{flex-direction:column;align-items:stretch}.scan-actions{min-width:0}.compact-stats{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.promo-input-row{grid-template-columns:1fr}.ops-status{grid-template-columns:1fr 1fr}.equipment-row{grid-template-columns:1fr}.promo-row,.session-row{grid-template-columns:1fr}.scan-search{grid-template-columns:1fr}.maintenance-card h1{font-size:28px}}


/* =========================================================
   VRX CMS + bilingual + light/dark theme
   ========================================================= */
html[data-theme="light"]{
  --bg:#efeeeb;--panel:#f8f7f4;--panel2:#f4f3f0;--panel3:#ebeae6;--line:#d8d6d1;
  --text:#181a20;--muted:#666a73;--shadow:0 20px 55px rgba(25,28,38,.10)
}
html[data-theme="light"] body{
  background:radial-gradient(circle at 80% 5%,rgba(169,0,255,.08),transparent 28%),
             radial-gradient(circle at 14% 18%,rgba(76,121,255,.07),transparent 24%),var(--bg);
}
html[data-theme="light"] .site-header{border-bottom-color:rgba(16,19,26,.08)}
html[data-theme="light"] .site-header nav{color:#4b5565}
html[data-theme="light"] .site-header nav a:hover{color:#111827}
html[data-theme="light"] .feature-pills span,
html[data-theme="light"] .booking-card,
html[data-theme="light"] .choice,
html[data-theme="light"] .slot-btn,
html[data-theme="light"] .field,
html[data-theme="light"] .phone-field,
html[data-theme="light"] .summary-box div,
html[data-theme="light"] .benefits,
html[data-theme="light"] .simple-card,
html[data-theme="light"] .ticket,
html[data-theme="light"] .ticket-grid div,
html[data-theme="light"] .secondary-btn,
html[data-theme="light"] .payment-choice,
html[data-theme="light"] .promo-box,
html[data-theme="light"] .game-card,
html[data-theme="light"] .cms-block,
html[data-theme="light"] .admin-panel,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .admin-game-card,
html[data-theme="light"] .element-card,
html[data-theme="light"] .element-preview,
html[data-theme="light"] .sidebar,
html[data-theme="light"] .admin-user,
html[data-theme="light"] .quick-select-form select,
html[data-theme="light"] .equipment-row select,
html[data-theme="light"] .equipment-row input{
  background:var(--panel);color:var(--text);border-color:var(--line)
}
html[data-theme="light"] .choice,
html[data-theme="light"] .slot-btn,
html[data-theme="light"] .field,
html[data-theme="light"] .payment-choice,
html[data-theme="light"] .phone-field input,
html[data-theme="light"] .quick-select-form select,
html[data-theme="light"] .equipment-row select,
html[data-theme="light"] .equipment-row input{color:var(--text)}
html[data-theme="light"] .phone-field span{color:#344054}
html[data-theme="light"] label{color:#344054}
html[data-theme="light"] .booking-column+.booking-column{border-color:var(--line)}
html[data-theme="light"] .hero-art:after{background:linear-gradient(90deg,rgba(239,238,235,.58),rgba(239,238,235,.02) 48%,rgba(239,238,235,.02))}
html[data-theme="light"] .admin-page{background:var(--bg)}
html[data-theme="light"] .side-nav a{color:#4b5565}
html[data-theme="light"] .side-nav a:hover,
html[data-theme="light"] .side-nav a.active{background:#eef1f6;color:#111827}
html[data-theme="light"] .admin-table th,
html[data-theme="light"] .admin-table td{border-color:#e7ebf1}
html[data-theme="light"] .admin-table code{color:#6d28d9}
html[data-theme="light"] .qr-box{background:#fff}

.pro-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px)}
.header-tools{display:flex;align-items:center;gap:8px}
.compact-tool{min-width:40px;height:38px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.compact-tool:hover{border-color:#6a70ff}
.primary-inline{display:inline-flex;align-items:center;justify-content:center;border:0;color:#fff;font-weight:800;border-radius:11px;padding:12px 16px;background:linear-gradient(90deg,var(--blue),var(--purple));box-shadow:0 12px 32px rgba(94,49,255,.18)}
.hero-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:24px}
.hero-v6 .hero-art{isolation:isolate}
.hero-orbit{position:absolute;border:1px solid rgba(181,122,255,.28);border-radius:50%;z-index:2;pointer-events:none}
.orbit-one{width:220px;height:220px;right:-60px;bottom:-80px}.orbit-two{width:130px;height:130px;right:70px;bottom:-45px;border-color:rgba(76,121,255,.35)}

.section-lead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:58px 0 22px}
.section-lead h1,.section-lead h2{font-size:clamp(30px,4vw,48px);margin:6px 0 10px}
.section-lead p{max-width:720px;color:var(--muted);line-height:1.8;margin:0}
.centered-lead{justify-content:center;text-align:center;margin-top:64px}
.games-section{scroll-margin-top:100px}
.game-showcase{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.game-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.game-card:hover{transform:translateY(-3px);border-color:rgba(133,92,255,.48);box-shadow:0 18px 50px rgba(0,0,0,.16)}
.game-media{display:block;position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,#141824,#090b10);overflow:hidden}
.game-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.game-card:hover .game-media img{transform:scale(1.025)}
.game-placeholder{height:100%;min-height:160px;display:grid;place-items:center;font-size:36px;font-weight:900;letter-spacing:5px;color:#fff;background:radial-gradient(circle at 65% 30%,rgba(169,0,255,.38),transparent 32%),linear-gradient(135deg,#141824,#08090d)}
.game-placeholder.large{min-height:420px}
.game-badge{position:absolute;top:12px;inset-inline-start:12px;border:1px solid rgba(255,255,255,.18);background:rgba(4,5,8,.72);color:#fff;border-radius:999px;padding:6px 9px;font-size:10px;backdrop-filter:blur(10px)}
.inline-badge{position:static;display:inline-flex;margin-bottom:10px}
.game-card-copy{padding:15px}
.game-card-copy h3{font-size:18px;margin:0 0 8px}
.game-card-copy p{color:var(--muted);font-size:12px;line-height:1.7;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.game-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}
.game-meta span{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:10px;color:var(--muted)}
.text-action{display:inline-block;margin-top:13px;font-size:12px;color:#a88cff}
.empty-public-state{grid-column:1/-1;border:1px dashed var(--line);border-radius:16px;padding:36px;text-align:center;color:var(--muted)}

.booking-section{scroll-margin-top:100px}
.booking-game-grid{display:grid;grid-template-columns:1fr;gap:8px;max-height:240px;overflow:auto}
.booking-game-choice{display:grid;grid-template-columns:54px 1fr;gap:10px;align-items:center;text-align:start;border:1px solid var(--line);background:var(--panel3);color:var(--text);border-radius:12px;padding:8px}
.booking-game-choice.active{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--blue),0 0 22px rgba(169,0,255,.14)}
.booking-game-thumb{width:54px;height:46px;border-radius:9px;overflow:hidden;background:#10131a;display:grid;place-items:center;font-weight:900;color:#fff}
.booking-game-thumb img{width:100%;height:100%;object-fit:cover}
.booking-game-choice b,.booking-game-choice small{display:block}.booking-game-choice small{color:var(--muted);font-size:10px;margin-top:3px}

.cms-block-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:24px 0}
.cms-block{position:relative;border:1px solid var(--line);background:var(--panel);border-radius:18px;overflow:hidden;min-height:140px}
.cms-block.layout-third{grid-column:span 2}.cms-block.layout-half{grid-column:span 3}.cms-block.layout-full{grid-column:1/-1}
.cms-block.style-glass{background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:blur(14px)}
.cms-block.style-solid{background:var(--panel)}
.cms-block.style-outline{background:transparent;border-style:dashed}
.cms-block.style-gradient{background:linear-gradient(135deg,rgba(76,121,255,.12),rgba(169,0,255,.13))}
.cms-block.style-minimal{border-color:transparent;background:transparent}
.cms-block-image{width:100%;height:190px;object-fit:cover;display:block}
.cms-block-copy{padding:18px}
.cms-block-copy h3{margin:4px 0 8px;font-size:20px}.cms-block-copy p{margin:0;color:var(--muted);line-height:1.75}
.cms-block-icon{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;font-size:19px;margin-bottom:6px}
.block-announcement.layout-full{min-height:auto}.block-announcement .cms-block-copy{display:flex;align-items:center;gap:14px;justify-content:center;text-align:center}
.block-stat .cms-block-copy h3{font-size:34px}.block-cta.layout-full .cms-block-copy{display:flex;justify-content:space-between;align-items:center;gap:20px}
.block-image .cms-block-copy:empty{display:none}

.pro-footer{align-items:flex-start}.pro-footer>div:last-child{flex-wrap:wrap;justify-content:flex-end}
.catalogue-page{padding:28px 0 80px}.catalogue-lead{margin-top:24px}.catalogue-grid{grid-template-columns:repeat(3,1fr)}
.game-detail-page{padding:28px 0 80px}.back-link{display:inline-flex;margin:12px 0 18px;color:var(--muted)}
.game-detail-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:center}
.game-detail-media{border:1px solid var(--line);border-radius:22px;overflow:hidden;min-height:420px;background:var(--panel)}
.game-detail-media img{width:100%;height:100%;min-height:420px;object-fit:cover;display:block}
.game-detail-copy h1{font-size:clamp(38px,5vw,68px);margin:6px 0 14px}.game-detail-copy p{color:var(--muted);line-height:1.9;font-size:16px}
.game-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0}.game-detail-stats>div{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:13px}.game-detail-stats small,.game-detail-stats b{display:block}.game-detail-stats small{color:var(--muted);margin-bottom:4px}
.simple-top-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.simple-top-tools .centered-brand{margin:0}.simple-top-tools>div{display:flex;gap:8px}

.admin-top-actions{display:flex;align-items:center;gap:8px}
.panel-actions{display:flex;gap:8px;flex-wrap:wrap}
.game-admin-stats{grid-template-columns:repeat(4,1fr)}
.admin-game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.admin-game-card{display:grid;grid-template-columns:180px 1fr;border:1px solid var(--line);background:var(--panel3);border-radius:14px;overflow:hidden}
.admin-game-media{position:relative;min-height:180px;background:#090b0f}.admin-game-media img{width:100%;height:100%;object-fit:cover;display:block}
.status-dot{position:absolute;top:9px;inset-inline-start:9px;border-radius:999px;padding:5px 8px;font-size:9px;background:rgba(0,0,0,.72);color:#fff}.status-dot.live{border:1px solid rgba(53,210,124,.45)}.status-dot.draft{border:1px solid rgba(243,200,76,.42)}
.admin-game-copy{padding:14px;display:flex;flex-direction:column;justify-content:space-between}.admin-game-copy h3{margin:4px 0;font-size:18px}.admin-game-copy p{margin:0;color:var(--muted);font-size:12px}.admin-game-copy>div>small{color:var(--muted);font-size:10px}
.admin-game-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.admin-game-actions form{margin:0}.admin-game-actions button{font-size:11px}
.current-upload{display:flex;align-items:center;gap:14px;margin-bottom:12px}.current-upload img{width:180px;aspect-ratio:16/9;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.content-admin-grid{align-items:start}.two-col{grid-template-columns:repeat(2,1fr)}
.element-library{display:grid;gap:9px}
.element-card{display:grid;grid-template-columns:110px 1fr;gap:12px;border:1px solid var(--line);background:var(--panel3);border-radius:12px;padding:10px}
.element-preview{height:92px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;font-size:30px;overflow:hidden;background:var(--panel)}
.element-preview img{width:100%;height:100%;object-fit:cover}.element-copy small{color:var(--muted);font-size:9px}.element-copy h3{margin:4px 0 5px;font-size:15px}.element-copy p{margin:0;color:var(--muted);font-size:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.element-actions{display:flex;gap:6px;align-items:center;margin-top:8px}.element-actions a,.element-actions button{border:0;background:transparent;color:#aeb8ca;padding:0;font-size:10px}.element-actions .danger-link{color:#ff8fa0}
.element-builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.element-builder-grid>section{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--panel3)}
.booking-game-label{color:#a68fff!important}

@media(max-width:1150px){
  .game-showcase{grid-template-columns:repeat(3,1fr)}
  .admin-game-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .header-action{display:none}.site-header nav{display:none}
  .game-showcase,.catalogue-grid{grid-template-columns:repeat(2,1fr)}
  .game-detail-hero{grid-template-columns:1fr}
  .game-detail-media{min-height:320px}.game-detail-media img{min-height:320px}
  .cms-block.layout-third,.cms-block.layout-half{grid-column:span 3}
  .element-builder-grid{grid-template-columns:1fr}
  .content-admin-grid{grid-template-columns:1fr!important}
}
@media(max-width:620px){
  .site-shell{width:min(100% - 22px,1380px)}
  .brand img{width:112px}
  .header-tools{gap:5px}.compact-tool{padding:0 9px}
  .game-showcase,.catalogue-grid{grid-template-columns:1fr}
  .cms-block.layout-third,.cms-block.layout-half,.cms-block.layout-full{grid-column:1/-1}
  .block-cta.layout-full .cms-block-copy{display:block}
  .game-detail-stats{grid-template-columns:1fr}
  .admin-game-card{grid-template-columns:1fr}.admin-game-media{min-height:200px}
  .game-admin-stats{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr}
  .simple-top-tools{align-items:flex-start}.simple-top-tools>div{flex-direction:column}
}

[data-sort-id][draggable="true"]{cursor:grab}
[data-sort-id].dragging{opacity:.45;outline:1px dashed #8b5cff}
.sort-saved{box-shadow:0 0 0 2px rgba(53,210,124,.18)}

.element-zone{border:1px solid var(--line);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--panel3) 76%,transparent)}
.element-zone+.element-zone{margin-top:12px}.element-zone-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:5px 4px 10px}.element-zone-title small{color:var(--muted);font-size:9px}.element-zone-list{display:grid;gap:8px}

/* =========================================================
   VRX v7 public booking experience
   ========================================================= */
.hero-v7{min-height:420px}.hero-public-facts{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.hero-public-facts span{border:1px solid var(--line);background:var(--panel);padding:10px 13px;border-radius:999px;color:var(--muted);font-size:12px}
.games-first{margin-top:36px}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.experience-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;overflow:hidden;transition:.2s transform,.2s border-color,.2s box-shadow}.experience-card:hover{transform:translateY(-3px);border-color:rgba(139,92,246,.5);box-shadow:0 22px 55px rgba(0,0,0,.18)}.experience-image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#08090d}.experience-image>img{width:100%;height:100%;object-fit:cover;display:block}.experience-copy{padding:17px}.experience-copy h3{margin:0 0 8px;font-size:20px}.experience-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.75;min-height:42px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.experience-meta{display:flex;gap:7px;margin:13px 0;flex-wrap:wrap}.experience-meta span{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:10px;color:var(--muted)}.full-cta{width:100%;margin-top:3px}.coming-soon{display:block;text-align:center;padding:11px;border:1px solid var(--line);border-radius:11px;color:var(--muted);font-size:12px}.simple-book-cta{margin:55px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(76,121,255,.08),rgba(169,0,255,.1));border-radius:22px;padding:28px}.simple-book-cta h2{font-size:32px;margin:5px 0}.simple-book-cta p{color:var(--muted);margin:0}
.booking-flow-shell{padding:28px 0 80px}.booking-page-head{max-width:760px;margin:10px auto 34px;text-align:center}.booking-page-head .back-link{display:inline-flex;margin-bottom:18px}.booking-page-head h1{font-size:clamp(36px,5vw,58px);margin:6px 0 12px}.booking-page-head p{color:var(--muted);font-size:16px}.booking-step,.booking-panel{border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:22px}.booking-step{margin-bottom:16px}.step-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:17px}.step-title>span{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-weight:800}.step-title h2{margin:2px 0 3px;font-size:18px}.step-title p{margin:0;color:var(--muted);font-size:12px}.small-step{margin-top:24px}.booking-game-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.booking-game-tile{border:1px solid var(--line);background:var(--panel3);color:var(--text);border-radius:14px;padding:8px;text-align:start;overflow:hidden}.booking-game-tile.active{border-color:var(--purple);box-shadow:0 0 0 2px rgba(124,58,237,.12)}.booking-game-image{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#08090d;margin-bottom:9px}.booking-game-image img{width:100%;height:100%;object-fit:cover;display:block}.booking-game-tile b,.booking-game-tile small{display:block}.booking-game-tile small{color:var(--muted);font-size:10px;margin-top:4px}.booking-two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}.international-phone{display:grid;grid-template-columns:minmax(180px,.8fr) 1.2fr;gap:8px}.country-select{min-width:0}.booking-summary-v7{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:18px}.booking-summary-v7>div{border:1px solid var(--line);background:var(--panel3);border-radius:11px;padding:10px}.booking-summary-v7 small,.booking-summary-v7 b{display:block}.booking-summary-v7 small{color:var(--muted);margin-bottom:4px;font-size:10px}.customer-instructions{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.compact-lead{margin:0 0 16px}.instruction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.instruction-grid article{border:1px solid var(--line);background:var(--panel3);border-radius:13px;padding:14px}.instruction-grid article>span{font-size:23px}.instruction-grid h3{font-size:14px;margin:8px 0 5px}.instruction-grid p{color:var(--muted);font-size:11px;line-height:1.65;margin:0}

/* =========================================================
   VRX v7 staff portal, admin.vrx.sa
   Inspired by a clean booking operations console.
   ========================================================= */
.staff-page{background:#f7f8fb!important;color:#20242b!important;min-height:100vh}.staff-page a{color:inherit}.staff-shell{max-width:1500px;margin:auto;min-height:100vh;background:#fff;box-shadow:0 0 0 1px #eceef3}.staff-header{display:grid;grid-template-columns:230px minmax(220px,1fr) auto;gap:22px;align-items:center;padding:20px 28px;border-bottom:1px solid #e6e8ee}.staff-logo img{width:125px;display:block;filter:invert(1)}.staff-branch{border:1px solid #dcdfe6;border-radius:12px;padding:10px 14px;max-width:420px}.staff-branch span,.staff-branch b{display:block}.staff-branch span{font-size:9px;color:#89909b;text-transform:uppercase;letter-spacing:1.2px}.staff-branch b{font-size:15px;margin-top:3px}.staff-head-actions{display:flex;gap:10px;align-items:center}.staff-lang,.staff-icon-button{border:1px solid #dcdfe6;background:#fff;border-radius:10px;padding:9px 12px;font-size:12px}.staff-icon-button{width:38px}.staff-user{display:block;border-left:1px solid #e4e6ec;padding-left:13px;text-decoration:none}.staff-user span,.staff-user small{display:block}.staff-user span{font-size:13px;font-weight:700}.staff-user small{font-size:9px;color:#8a919d;margin-top:2px}.staff-nav{display:flex;gap:6px;flex-wrap:wrap;padding:15px 28px;border-bottom:1px solid #e6e8ee;background:#fff}.staff-nav a{display:flex;align-items:center;gap:7px;padding:10px 13px;border-radius:9px;font-size:13px;text-decoration:none}.staff-nav a span{font-size:17px}.staff-nav a:hover{background:#f3f2fb}.staff-nav a.active{background:#6552d9;color:#fff}.staff-main{padding:26px 28px 60px}.staff-flashes{margin-bottom:14px}.staff-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center}.staff-game-filter{flex:1}.staff-game-filter select{width:min(100%,700px);border:1px solid #d8dce5;background:#fff;border-radius:10px;padding:12px 14px;color:#30343b}.staff-toolbar-actions{display:flex;gap:8px}.staff-button,.staff-create,.staff-primary{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:10px 14px;border:1px solid #dcdfe6;text-decoration:none;font-size:12px;font-weight:600}.staff-button.ghost{background:#fafafa;color:#30343b}.staff-button.solid,.staff-create,.staff-primary{background:#5d49d3;color:#fff;border-color:#5d49d3}.staff-primary{width:100%;font-size:13px;margin-top:15px}.staff-primary.inline{width:auto}.staff-datebar{display:grid;grid-template-columns:55px 1fr 55px;gap:12px;align-items:center;margin:28px 0 16px}.arrow-button{font-size:26px;text-align:center;text-decoration:none}.staff-date-title{text-align:center}.staff-date-title b{font-size:25px}.staff-date-title input{display:block;margin:7px auto 0;border:0;background:transparent;color:#707783}.staff-view-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.segmented{display:flex;border:1px solid #6552d9;border-radius:10px;overflow:hidden}.segmented a{padding:10px 17px;color:#5d49d3;text-decoration:none;border-right:1px solid #6552d9;font-size:12px}.segmented a:last-child{border-right:0}.segmented a.active{background:#5d49d3;color:#fff}.schedule-board{display:grid;gap:12px;overflow-x:auto;align-items:start}.schedule-board.view-day{grid-template-columns:minmax(300px,1fr)}.schedule-board.view-3days{grid-template-columns:repeat(3,minmax(280px,1fr))}.schedule-board.view-week{grid-template-columns:repeat(7,minmax(240px,1fr))}.schedule-day{border:1px solid #e1e4ea;border-radius:13px;background:#fafbfc;min-height:250px}.schedule-day>header{padding:13px;border-bottom:1px solid #e7e9ee;display:grid;grid-template-columns:1fr auto;gap:3px}.schedule-day>header span{font-size:11px;color:#8a919d;text-transform:uppercase}.schedule-day>header b{grid-column:1;font-size:17px}.schedule-day>header small{grid-column:2;grid-row:1/3;align-self:center;color:#9298a3;font-size:10px}.schedule-cards{padding:10px;display:grid;gap:8px}.schedule-booking{display:block;background:#fff;border:1px solid #dfe2e9;border-left:4px solid #6552d9;border-radius:10px;padding:11px;text-decoration:none;box-shadow:0 3px 10px rgba(30,35,50,.04)}.schedule-booking.status-cancelled{border-left-color:#c7cbd3;opacity:.65}.schedule-booking.status-checked_in{border-left-color:#21a366}.schedule-booking.status-in_game{border-left-color:#e2a300}.schedule-booking.status-completed{border-left-color:#4b78d1}.schedule-time{font-size:16px;font-weight:800}.schedule-code{font-size:9px;color:#7d8490;margin:3px 0}.schedule-booking h3{font-size:13px;margin:6px 0 3px}.schedule-booking p{font-size:10px;color:#767d88;margin:0}.schedule-card-meta{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.schedule-card-meta span{font-size:9px;background:#f2f3f6;border-radius:999px;padding:4px 6px}.schedule-empty,.staff-empty{text-align:center;color:#9a9fa8;padding:35px 12px;border:1px dashed #dfe2e8;border-radius:10px}.staff-page-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:18px}.staff-page-head>div>span,.customer-profile>div>span{font-size:9px;letter-spacing:1.2px;color:#8b92a0}.staff-page-head h1,.customer-profile h1{margin:4px 0;font-size:28px}.staff-page-head p{color:#7d8490;margin:0;font-size:12px}.staff-filter-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr) auto;gap:8px;margin-bottom:15px}.staff-filter-grid input,.staff-filter-grid select,.staff-filter-grid button,.staff-search input,.staff-search button{border:1px solid #dce0e6;background:#fff;border-radius:9px;padding:10px;color:#30343b}.staff-filter-grid button,.staff-search button{background:#5d49d3;color:#fff;border-color:#5d49d3}.staff-booking-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.booking-square{display:block;min-height:175px;border:1px solid #e0e3e9;border-top:4px solid #6552d9;background:#fff;border-radius:12px;padding:14px;text-decoration:none}.booking-square.status-cancelled{border-top-color:#b9bec8}.booking-square.status-completed{border-top-color:#4b78d1}.booking-square.status-in_game{border-top-color:#e2a300}.booking-square.status-checked_in{border-top-color:#21a366}.booking-square-top{display:flex;justify-content:space-between;gap:10px}.booking-square-top b{font-size:12px}.booking-square-top span{font-size:9px;color:#727984}.booking-square h3{font-size:15px;margin:14px 0 4px}.booking-square>p{font-size:10px;color:#737a85;margin:0}.booking-square-info{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.booking-square-info span{font-size:9px;background:#f2f3f7;padding:5px 6px;border-radius:7px}.booking-square>small{color:#8c929c;font-size:9px}.staff-search{display:flex;gap:8px;margin-bottom:16px}.staff-search input{flex:1}.customer-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.customer-card{display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;border:1px solid #e1e4e9;background:#fff;border-radius:12px;padding:13px;text-decoration:none}.customer-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#eeeafd;color:#5d49d3;font-weight:800}.customer-avatar.large{width:70px;height:70px;font-size:24px}.customer-card h3{margin:0 0 3px;font-size:14px}.customer-card p{margin:2px 0;color:#818792;font-size:10px}.customer-stats{display:grid;gap:4px;text-align:right}.customer-stats span{font-size:9px;color:#818792}.customer-stats b{color:#30343b;font-size:13px}.customer-profile{display:flex;gap:14px;align-items:center;margin:18px 0 26px}.customer-profile p{color:#7d8490;margin:4px 0}.staff-section-title{font-size:18px;margin-bottom:13px}.staff-back{display:inline-flex;margin-bottom:14px;color:#6d7480;text-decoration:none}.staff-form-card{border:1px solid #e0e3e9;background:#fff;border-radius:13px;padding:18px}.staff-form-card .field{background:#fff;color:#24282f;border-color:#dfe2e8}.staff-form-card label{color:#41464e}.staff-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.staff-form-grid .wide{grid-column:1/-1}.staff-form-actions{display:flex;gap:8px;align-items:center;margin-top:14px}.staff-form-actions .staff-primary{width:auto;margin-top:0}.staff-status-actions{margin-top:15px;border:1px solid #e0e3e9;background:#fff;border-radius:13px;padding:18px}.staff-status-actions h2{font-size:17px;margin-top:0}.staff-status-actions>div{display:flex;gap:7px;flex-wrap:wrap}.staff-status-actions form{margin:0}.staff-status-actions p{color:#7f8690;font-size:10px}.activity-feed{display:grid;gap:0;border:1px solid #e1e4e9;border-radius:13px;background:#fff;overflow:hidden}.activity-feed article{display:grid;grid-template-columns:20px 1fr;gap:8px;padding:13px;border-bottom:1px solid #edf0f3}.activity-feed article:last-child{border-bottom:0}.activity-dot{width:9px;height:9px;border-radius:50%;background:#6552d9;margin-top:4px}.activity-feed b,.activity-feed span,.activity-feed a,.activity-feed small{display:inline-block;margin-right:8px;font-size:10px}.activity-feed p{margin:4px 0;color:#737a85;font-size:10px}.staff-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.recovery-box{margin-top:14px;border:1px solid #e0e3e9;border-radius:10px;padding:10px}.recovery-box code{display:inline-block;margin:4px;padding:5px;background:#f3f4f7}.otp-setup-card{max-width:540px}.otp-qr{width:220px;background:#fff;padding:10px;border:1px solid #ddd;border-radius:12px;display:block;margin:16px 0}.otp-secret{display:block;word-break:break-all;margin-bottom:12px}.staff-login-page{background:#f6f7fa!important}.staff-login-shell{min-height:100vh;display:grid;place-items:center;padding:18px}.staff-login-card{width:min(420px,100%);background:#fff;border:1px solid #e0e3e9;border-radius:16px;padding:26px;color:#20242b;box-shadow:0 20px 65px rgba(30,35,55,.12)}.staff-login-card img{width:130px;filter:invert(1)}.staff-login-card>span{display:block;color:#6552d9;font-size:9px;letter-spacing:1.5px;margin-top:8px}.staff-login-card h1{font-size:28px;margin:12px 0 5px}.staff-login-card>p{color:#818792;font-size:12px}.staff-login-card .field{background:#fff;color:#222;border-color:#dfe2e8}.staff-login-card label{color:#41464e}.otp-field{text-align:center;letter-spacing:5px;font-size:20px}.admin-list-cards{display:grid;gap:8px}.admin-list-cards>article{display:flex;justify-content:space-between;gap:15px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel3)}.admin-list-cards h3{margin:4px 0}.admin-list-cards p{margin:0;color:var(--muted);font-size:11px}.row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.row-actions form{margin:0}.row-actions a,.row-actions button{font-size:10px;border:0;background:transparent;color:#aab4c7}.row-actions .danger-link{color:#ff889a}.email-queue-stats{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.email-queue-stats span{border:1px solid var(--line);border-radius:999px;padding:6px 8px;font-size:10px}.readonly-setting{border:1px solid var(--line);background:var(--panel3);border-radius:10px;padding:12px;font-weight:700}.readonly-setting small{display:block;color:var(--muted);font-weight:400;margin-top:4px}
@media(max-width:1150px){.experience-grid{grid-template-columns:repeat(3,1fr)}.booking-game-gallery{grid-template-columns:repeat(3,1fr)}.staff-booking-grid{grid-template-columns:repeat(3,1fr)}.customer-card-grid{grid-template-columns:repeat(2,1fr)}.staff-filter-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.experience-grid{grid-template-columns:repeat(2,1fr)}.booking-two-column{grid-template-columns:1fr}.booking-game-gallery{grid-template-columns:repeat(2,1fr)}.instruction-grid{grid-template-columns:1fr}.simple-book-cta{display:block}.simple-book-cta .primary-inline{margin-top:15px}.staff-header{grid-template-columns:1fr auto;padding:16px}.staff-branch{grid-column:1/-1;grid-row:2}.staff-nav{padding:10px 16px;overflow-x:auto;flex-wrap:nowrap}.staff-nav a{white-space:nowrap}.staff-main{padding:18px 16px 50px}.staff-booking-grid{grid-template-columns:repeat(2,1fr)}.staff-filter-grid{grid-template-columns:1fr 1fr}.schedule-board.view-3days,.schedule-board.view-week{grid-template-columns:repeat(3,minmax(250px,1fr))}.customer-card-grid{grid-template-columns:1fr}.staff-profile-grid{grid-template-columns:1fr}}
@media(max-width:560px){.experience-grid{grid-template-columns:1fr}.booking-game-gallery{grid-template-columns:1fr 1fr}.international-phone{grid-template-columns:1fr}.booking-summary-v7{grid-template-columns:1fr 1fr}.staff-head-actions{gap:5px}.staff-user{display:none}.staff-toolbar,.staff-view-actions,.staff-page-head{align-items:stretch;flex-direction:column}.staff-toolbar-actions{justify-content:stretch}.staff-toolbar-actions>*{flex:1}.staff-date-title b{font-size:20px}.staff-booking-grid{grid-template-columns:1fr}.staff-filter-grid{grid-template-columns:1fr}.staff-form-grid{grid-template-columns:1fr}.staff-form-grid .wide{grid-column:1}.schedule-board.view-3days,.schedule-board.view-week{grid-template-columns:repeat(3,minmax(230px,1fr))}.customer-card{grid-template-columns:45px 1fr}.customer-stats{grid-column:1/-1;display:flex;gap:12px}.booking-game-gallery{grid-template-columns:1fr}.admin-list-cards>article{align-items:flex-start;flex-direction:column}}
.staff-logo img,.staff-login-card img{filter:none!important;height:auto}

.staff-results-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 10px;color:#4b5563}.staff-results-head b{color:#1e2330}.staff-results-head small{font-size:12px}.staff-pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin:24px 0}.staff-pagination a,.staff-pagination span{border:1px solid #dedee8;border-radius:9px;padding:9px 12px;background:#fff;color:#4036a9;font-size:13px}.staff-pagination span{color:#6b7280}

.email-test-panel{display:flex;align-items:end;justify-content:space-between;gap:18px}.email-test-panel h2{margin:0 0 4px}.email-test-panel p{margin:0}.email-test-actions{display:flex;gap:8px;align-items:center;min-width:min(100%,460px)}.email-test-actions .field{margin:0}.email-test-actions .secondary-btn{white-space:nowrap}
@media(max-width:700px){.email-test-panel,.email-test-actions{display:grid;grid-template-columns:1fr;min-width:0;width:100%}}

/* v8 security/login additions */
.staff-pin-input{letter-spacing:.45em;text-align:center;font-size:1.25rem;font-variant-numeric:tabular-nums}
.login-security-note{display:block;margin-top:14px;color:var(--muted);text-align:center;line-height:1.5}
.permission-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.permission-item{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);background:var(--panel3);border-radius:10px;padding:10px;margin:0}
.permission-item input{margin-top:3px}.permission-item b,.permission-item small{display:block}.permission-item small{color:var(--muted);margin-top:2px}
@media(max-width:700px){.permission-matrix{grid-template-columns:1fr}}

.price-section{padding:12px 0 34px}.price-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.price-card-grid article{position:relative;border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:20px}.price-card-grid small,.price-card-grid b{display:block}.price-card-grid small{color:var(--muted);margin-bottom:8px}.price-card-grid b{font-size:26px}.price-card-grid .special-price{background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 88%,#5f37ff 12%),var(--panel));border-color:color-mix(in srgb,var(--line) 55%,#5f37ff 45%)}.special-price>span{position:absolute;top:10px;inset-inline-end:10px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#7d5cff}.special-price small{margin-top:18px}@media(max-width:760px){.price-card-grid{grid-template-columns:repeat(2,1fr)}}

/* v8 transparent logo system */
.brand img,.footer-brand img,.maintenance-shell>img,.login-card>img,.admin-brand img,.staff-login-card>img{background:transparent!important;box-shadow:none!important;border-radius:0!important;object-fit:contain}
html[data-theme="dark"] .brand img,html[data-theme="dark"] .footer-brand img,html[data-theme="dark"] .maintenance-shell>img,html[data-theme="dark"] .login-card>img,html[data-theme="dark"] .admin-brand img{filter:invert(1) grayscale(1) brightness(1.65)}
.staff-page .staff-logo img,.staff-login-card>img{filter:none}

/* =========================================================
   VRX v9 portal direction, staff dark mode and booking fixes
   ========================================================= */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.public-flashes{margin:14px 0}.customer-booking-form{display:block}.price-hint{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 18px}.price-hint span{border:1px solid var(--line);border-radius:9px;padding:8px;text-align:center;color:var(--muted);font-size:10px;background:color-mix(in srgb,var(--panel) 88%,transparent)}
.booking-game-tile,.player-choice,.payment-choice{cursor:pointer}.booking-game-tile.active,.payment-choice.active{border-color:var(--purple)!important;box-shadow:0 0 0 2px rgba(169,0,255,.14),0 12px 32px rgba(69,40,180,.10)}.player-choice.active{border-color:var(--purple)!important;background:color-mix(in srgb,var(--purple) 11%,var(--panel))!important}.player-choice span{display:block;text-align:center}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.login-lang-row{display:flex;gap:7px;justify-content:flex-end;margin:-4px 0 12px}.login-help{display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:7px}

/* Back Office follows document direction exactly. */
.admin-layout{direction:inherit!important}.sidebar,.admin-content{direction:inherit!important}.admin-table th,.admin-table td{text-align:start!important}.side-nav a{text-align:start}.admin-brand span{text-align:start;display:block}.admin-topbar{text-align:start}
html[dir="rtl"] .admin-layout{grid-template-columns:245px minmax(0,1fr)}
html[dir="rtl"] .sidebar{border-left:0;border-right:1px solid var(--line)}
html[dir="ltr"] .sidebar{border-right:0;border-left:1px solid var(--line)}
html[dir="rtl"] .ticket-status{left:auto;right:18px}
html[dir="rtl"] .unsaved-indicator{left:auto;right:24px}
html[dir="ltr"] .unsaved-indicator{right:auto;left:24px}

/* Transparent VRX logo, no square backgrounds. */
.brand,.admin-brand,.staff-logo,.centered-brand{background:transparent!important}.brand img,.admin-brand img,.staff-logo img,.login-card>img,.staff-login-card>img,.centered-brand img{background:transparent!important;object-fit:contain}
html[data-theme="dark"] .brand img,html[data-theme="dark"] .admin-brand img,html[data-theme="dark"] .staff-logo img,html[data-theme="dark"] .login-card>img,html[data-theme="dark"] .staff-login-card>img,html[data-theme="dark"] .centered-brand img{filter:brightness(0) invert(1)!important}
html[data-theme="light"] .brand img,html[data-theme="light"] .admin-brand img,html[data-theme="light"] .staff-logo img,html[data-theme="light"] .login-card>img,html[data-theme="light"] .staff-login-card>img,html[data-theme="light"] .centered-brand img{filter:none!important}

/* Staff portal now uses the same theme tokens instead of forcing white. */
.staff-page{background:var(--bg)!important;color:var(--text)!important;min-height:100vh}.staff-shell{max-width:1500px;margin:auto;min-height:100vh;background:var(--panel);box-shadow:0 0 0 1px var(--line)}
.staff-header,.staff-nav{background:var(--panel)!important;border-color:var(--line)!important}.staff-branch,.staff-lang,.staff-icon-button,.staff-game-filter select,.staff-filter-grid input,.staff-filter-grid select,.staff-filter-grid button,.staff-search input,.staff-search button,.staff-form-card,.staff-status-actions,.activity-feed,.customer-card,.booking-square,.schedule-day,.schedule-booking,.staff-login-card{background:var(--panel2)!important;border-color:var(--line)!important;color:var(--text)!important}.staff-branch span,.staff-user small,.staff-page-head p,.staff-page-head>div>span,.staff-date-title input,.schedule-day>header span,.schedule-day>header small,.schedule-code,.schedule-booking p,.staff-empty,.schedule-empty,.booking-square-top span,.booking-square>p,.booking-square>small,.customer-card p,.customer-stats span,.customer-profile p,.activity-feed p,.login-security-note{color:var(--muted)!important}.staff-user{border-color:var(--line)!important}.staff-nav a:hover{background:var(--panel3)!important}.staff-nav a.active,.staff-button.solid,.staff-create,.staff-primary,.staff-filter-grid button,.staff-search button{background:#6252d8!important;color:#fff!important;border-color:#6252d8!important}.staff-button.ghost{background:var(--panel2)!important;color:var(--text)!important}.schedule-booking,.booking-square{box-shadow:0 5px 18px rgba(0,0,0,.08)}.schedule-card-meta span,.booking-square-info span{background:var(--panel3)!important;color:var(--muted)!important}.customer-avatar{background:color-mix(in srgb,#6252d8 15%,var(--panel));color:#8b7eff}.customer-stats b{color:var(--text)!important}.staff-form-card .field,.staff-login-card .field{background:var(--panel3)!important;color:var(--text)!important;border-color:var(--line)!important}.staff-form-card label,.staff-login-card label{color:var(--text)!important}.activity-feed article{border-color:var(--line)!important}.staff-login-page{background:var(--bg)!important}.staff-login-card{box-shadow:0 20px 65px rgba(0,0,0,.18)}
html[dir="rtl"] .staff-shell,html[dir="rtl"] .staff-main,html[dir="rtl"] .staff-header,html[dir="rtl"] .staff-nav{text-align:right;direction:rtl}html[dir="ltr"] .staff-shell,html[dir="ltr"] .staff-main,html[dir="ltr"] .staff-header,html[dir="ltr"] .staff-nav{text-align:left;direction:ltr}
html[dir="rtl"] .staff-user{border-left:0;border-right:1px solid var(--line);padding-left:0;padding-right:13px}html[dir="ltr"] .staff-user{border-right:0;border-left:1px solid var(--line);padding-right:0;padding-left:13px}
html[dir="rtl"] .schedule-booking{border-left:1px solid var(--line);border-right:4px solid #6552d9}html[dir="rtl"] .schedule-booking.status-cancelled{border-right-color:#c7cbd3}html[dir="rtl"] .schedule-booking.status-checked_in{border-right-color:#21a366}html[dir="rtl"] .schedule-booking.status-in_game{border-right-color:#e2a300}html[dir="rtl"] .schedule-booking.status-completed{border-right-color:#4b78d1}
html[dir="rtl"] .segmented a{border-right:0;border-left:1px solid #6552d9}html[dir="rtl"] .segmented a:last-child{border-left:0}

/* Softer light theme. */
html[data-theme="light"]{--bg:#f0efec;--panel:#faf9f6;--panel2:#f5f4f1;--panel3:#eceae5;--line:#d9d6cf;--text:#1c1e24;--muted:#696d76}
html[data-theme="light"] body{background:radial-gradient(circle at 82% 5%,rgba(92,70,220,.055),transparent 30%),#f0efec}

/* Public game posters retain their supplied portrait composition. */
.experience-media,.game-media,.booking-game-image{background:#0b0c10}.experience-media img,.game-media img,.booking-game-image img{object-fit:cover;object-position:center top}.booking-game-image{aspect-ratio:3/4;max-height:430px}

@media(max-width:850px){html[dir="rtl"] .sidebar,html[dir="ltr"] .sidebar{border-left:0;border-right:0;border-bottom:1px solid var(--line)}.price-hint{grid-template-columns:1fr 1fr}}
.experience-image,.game-media{aspect-ratio:3/4!important}.experience-image>img,.game-media img{object-fit:cover!important;object-position:center top!important}

/* VRX v9 live builder and palette controls */
.color-field{display:grid;grid-template-columns:52px 1fr;gap:8px;align-items:center}.color-field input[type=color],.color-input{height:44px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel);width:100%}.live-builder-shell{display:grid;gap:14px}.builder-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:0}.builder-toolbar h2{margin:0 0 5px}.builder-toolbar p{margin:0}.builder-toolbar-actions{display:flex;gap:7px;flex-wrap:wrap}.builder-size.active{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--purple)}.builder-workspace{display:grid;grid-template-columns:minmax(0,1fr) 0;gap:12px;min-height:74vh;transition:grid-template-columns .2s ease}.builder-workspace:has(.builder-editor:not([hidden])){grid-template-columns:minmax(0,1fr) minmax(360px,38vw)}.builder-preview-wrap{--preview-width:100%;display:flex;justify-content:center;align-items:flex-start;background:var(--panel3);border:1px solid var(--line);border-radius:16px;padding:12px;overflow:auto;min-width:0}.builder-preview-wrap iframe{width:min(100%,var(--preview-width));height:74vh;border:1px solid var(--line);border-radius:12px;background:#fff;transition:width .2s ease}.builder-editor{border:1px solid var(--line);background:var(--panel);border-radius:16px;overflow:hidden;min-width:0}.builder-editor-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line)}.builder-editor iframe{width:100%;height:calc(74vh - 48px);border:0;background:var(--bg)}
.builder-preview-mode [data-builder-edit-url],.builder-preview-mode [data-builder-block-id]{position:relative;outline:2px dashed transparent;outline-offset:3px;cursor:pointer;transition:outline-color .12s ease,box-shadow .12s ease}.builder-preview-mode [data-builder-edit-url]:hover,.builder-preview-mode [data-builder-block-id]:hover{outline-color:#8b5cf6;box-shadow:0 0 0 6px rgba(139,92,246,.09)}.builder-preview-mode [data-builder-block-id]{cursor:grab}.builder-preview-mode .builder-dragging{opacity:.45;outline-color:#4c79ff}.builder-preview-mode .site-header a,.builder-preview-mode .hero a,.builder-preview-mode .experience-card a,.builder-preview-mode .site-footer a{pointer-events:none}
@media(max-width:900px){.builder-workspace:has(.builder-editor:not([hidden])){grid-template-columns:1fr}.builder-editor iframe{height:62vh}.builder-toolbar{align-items:flex-start;flex-direction:column}}
.admin-layout.admin-embedded{display:block;min-height:100vh}.admin-layout.admin-embedded>.sidebar,.admin-layout.admin-embedded .admin-topbar{display:none}.admin-layout.admin-embedded>.admin-content{padding:12px;min-height:100vh}.admin-layout.admin-embedded .form-panel,.admin-layout.admin-embedded .admin-panel{margin-bottom:10px}.admin-layout.admin-embedded .form-grid{grid-template-columns:1fr 1fr}
@media(max-width:600px){.admin-layout.admin-embedded .form-grid{grid-template-columns:1fr}}
.confirmation-pricing{margin-top:26px;border-top:1px solid var(--line);padding-top:22px}.compact-price-grid{grid-template-columns:repeat(4,1fr)}.compact-price-grid article{min-height:105px}
@media(max-width:620px){.compact-price-grid{grid-template-columns:1fr 1fr}}


/* v9.3 confirmation cleanup + compact mobile UI */
.confirmation-v10 .confirmation-shell{width:min(720px,calc(100% - 28px));margin:26px auto 60px}
.confirmation-v10 .confirmation-card{padding:26px;text-align:start}
.confirmation-v10 .confirmation-card>.success-icon{margin-inline:auto}
.confirmation-v10 .confirmation-kicker{text-align:center;color:var(--purple);font-size:11px;font-weight:900;letter-spacing:.13em;margin:7px 0 8px}
.confirmation-v10 .confirmation-card>h1{text-align:center;margin:0 0 7px;font-size:30px}
.confirmation-v10 .confirmation-card>.muted{text-align:center;max-width:520px;margin:0 auto 18px}
.confirmation-v10 .booking-code-wrap{border:1px solid var(--line);border-radius:15px;padding:13px 15px;text-align:center;background:var(--panel3);margin:18px 0 22px}
.confirmation-v10 .booking-code-wrap small{display:block;color:var(--muted);margin-bottom:5px}
.confirmation-v10 .booking-code{border:0;padding:0;margin:0;font-size:26px}
.confirmation-section{border-top:1px solid var(--line);padding-top:20px}
.confirmation-section h2{font-size:17px;margin:0 0 10px}
.confirmation-details{margin:0}
.confirmation-details>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;padding:11px 3px;border-bottom:1px solid var(--line)}
.confirmation-details dt{color:var(--muted);font-size:12px}
.confirmation-details dd{margin:0;font-weight:750;text-align:end;overflow-wrap:anywhere}
html[dir="rtl"] .confirmation-details dd{text-align:start}
.confirmation-details .total-row dd{font-size:18px;color:var(--text)}
.confirmation-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.confirmation-main-action{width:100%;min-height:68px;padding:12px 14px;display:flex;align-items:center;justify-content:flex-start;gap:11px;text-align:start}
.confirmation-main-action>span:first-child{font-size:21px;flex:0 0 auto}
.confirmation-main-action>span:last-child{display:flex;flex-direction:column;gap:3px}
.confirmation-main-action b{font-size:14px}
.confirmation-main-action small{font-size:10px;opacity:.72}
.confirmation-secondary-actions{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}
.confirmation-secondary-actions form{display:inline-flex}
.vrx-dialog{width:min(560px,calc(100% - 28px));max-height:min(82vh,760px);border:1px solid var(--line);border-radius:20px;padding:0;background:var(--panel);color:var(--text);box-shadow:0 26px 90px rgba(0,0,0,.55)}
.vrx-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}
.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 20px 14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:2}
.dialog-head small{display:block;color:var(--purple);font-size:10px;font-weight:900;letter-spacing:.12em;margin-bottom:4px}
.dialog-head h2{margin:0;font-size:21px}
.dialog-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--panel3);color:var(--text);font-size:23px;line-height:1;cursor:pointer}
.dialog-intro{margin:16px 20px 4px;color:var(--muted);font-size:13px;line-height:1.7}
.instruction-list{list-style:none;margin:8px 20px 0;padding:0}
.instruction-list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;padding:14px 0;border-bottom:1px solid var(--line)}
.instruction-list li:last-child{border-bottom:0}
.instruction-number{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--purple) 14%,transparent);color:var(--purple);font-size:12px;font-weight:900}
.instruction-list strong{display:block;font-size:14px;margin-top:4px}
.instruction-list p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.dialog-done{width:calc(100% - 40px);margin:16px 20px 20px}
.qr-dialog-body{text-align:center;padding:24px 20px 2px}
.clean-qr{width:230px;max-width:100%;margin:0 auto;padding:14px}
.clean-qr img{width:202px;height:202px;max-width:100%}
.qr-booking-code{font-size:22px;font-weight:900;letter-spacing:1.5px;direction:ltr;margin:16px 0 6px}
.qr-dialog-body p{color:var(--muted);font-size:12px;margin:0 auto;max-width:360px;line-height:1.7}
body.dialog-open{overflow:hidden}

@media(max-width:600px){
  .confirmation-v10 .confirmation-shell{width:calc(100% - 20px);margin:14px auto 34px}
  .confirmation-v10 .simple-top-tools{margin-bottom:12px}
  .confirmation-v10 .brand img{width:104px}
  .confirmation-v10 .confirmation-card{padding:17px;border-radius:17px}
  .confirmation-v10 .success-icon{width:48px;height:48px;font-size:25px;margin-bottom:9px}
  .confirmation-v10 .confirmation-kicker{font-size:9px;margin-top:3px}
  .confirmation-v10 .confirmation-card>h1{font-size:23px}
  .confirmation-v10 .confirmation-card>.muted{font-size:11px;line-height:1.55}
  .confirmation-v10 .booking-code-wrap{margin:14px 0 17px;padding:10px}
  .confirmation-v10 .booking-code{font-size:22px}
  .confirmation-section{padding-top:15px}
  .confirmation-section h2{font-size:15px}
  .confirmation-details>div{grid-template-columns:102px minmax(0,1fr);gap:10px;padding:9px 2px}
  .confirmation-details dt{font-size:10px}
  .confirmation-details dd{font-size:12px}
  .confirmation-details .total-row dd{font-size:15px}
  .confirmation-primary-actions{grid-template-columns:1fr;gap:8px;margin-top:15px}
  .confirmation-main-action{min-height:56px;padding:10px 12px}
  .confirmation-secondary-actions{gap:6px;padding-top:12px;margin-top:14px}
  .confirmation-secondary-actions .secondary-btn,.confirmation-secondary-actions .danger-btn{padding:8px 10px;font-size:11px}
  .vrx-dialog{width:calc(100% - 18px);max-height:88vh;border-radius:17px}
  .dialog-head{padding:15px 15px 11px}
  .dialog-head h2{font-size:18px}
  .dialog-intro{margin:13px 15px 2px;font-size:11px}
  .instruction-list{margin:6px 15px 0}
  .instruction-list li{grid-template-columns:30px minmax(0,1fr);gap:9px;padding:11px 0}
  .instruction-number{width:27px;height:27px;font-size:10px}
  .instruction-list strong{font-size:12px}
  .instruction-list p{font-size:11px}
  .dialog-done{width:calc(100% - 30px);margin:13px 15px 15px}
  .clean-qr{width:210px}
  .clean-qr img{width:182px;height:182px}
}

/* language direction polish */
html[dir="rtl"] .back-link{direction:rtl}
html[dir="rtl"] .confirmation-main-action{text-align:right}

/* v9.4 multi-country */
.market-tool{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none;font-size:11px;font-weight:850;background:var(--panel3)}
.market-status-notice{margin:12px 0 0;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel3);font-size:12px;color:var(--muted)}
.country-shell{width:min(780px,calc(100% - 28px));margin:0 auto;padding:28px 0 60px}
.country-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:56px}
.country-top>img{width:132px;height:auto}
.country-top>div{display:flex;gap:8px}
.country-card{text-align:center}
.country-card h1{font-size:clamp(32px,7vw,58px);margin:8px 0 10px}
.country-card>p{color:var(--muted);margin:0 auto 30px;max-width:520px}
.country-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.country-option{display:grid;grid-template-columns:52px 1fr 24px;gap:13px;align-items:center;text-align:start;padding:20px;border:1px solid var(--line);background:var(--panel);border-radius:18px;color:var(--text);text-decoration:none;transition:.18s ease}
.country-option:hover{transform:translateY(-2px);border-color:var(--purple)}
.country-flag{font-size:34px}
.country-option span:nth-child(2){display:flex;flex-direction:column;gap:4px}
.country-option b{font-size:17px}
.country-option small{color:var(--muted);font-size:11px}
.country-arrow{font-size:20px;color:var(--muted)}
html[dir="rtl"] .country-arrow{transform:rotate(180deg)}
.portal-market-switch{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--panel3)}
.portal-market-switch a{padding:6px 8px;border-radius:7px;color:var(--muted);text-decoration:none;font-size:10px;font-weight:850}
.portal-market-switch a.active{background:var(--panel);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.confirmation-market{width:max-content;max-width:100%;margin:0 auto 10px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:800;color:var(--muted)}
.market-settings-section{position:relative}
.market-config-badge{display:inline-flex;padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:850;background:var(--panel3)}
@media(max-width:700px){
  .country-shell{width:calc(100% - 20px);padding-top:18px}
  .country-top{margin-bottom:34px}
  .country-top>img{width:105px}
  .country-card h1{font-size:30px}
  .country-card>p{font-size:12px;margin-bottom:20px}
  .country-grid{grid-template-columns:1fr;gap:9px}
  .country-option{grid-template-columns:44px 1fr 18px;padding:14px;border-radius:14px}
  .country-flag{font-size:28px}
  .country-option b{font-size:14px}
  .market-tool{padding:7px 8px;font-size:10px}
  .portal-market-switch a{padding:5px 6px}
}

.market-booking-closed{display:flex;flex-direction:column;gap:6px;padding:18px 20px;margin:18px 0 30px}.market-booking-closed b{font-size:16px}.market-booking-closed span{font-size:13px;opacity:.8}


/* v9.5 IP auto-country + inline market picker */
.market-picker{position:relative;display:inline-flex}
.market-picker>summary{list-style:none;cursor:pointer;user-select:none}
.market-picker>summary::-webkit-details-marker{display:none}
.market-caret{opacity:.6;font-size:10px;margin-inline-start:2px}
.market-picker-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;min-width:190px;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 18px 52px rgba(0,0,0,.3);z-index:80}
.market-picker-menu a{display:grid;grid-template-columns:24px 1fr 18px;align-items:center;gap:8px;padding:10px;border-radius:9px;color:var(--text);text-decoration:none;font-size:12px}
.market-picker-menu a:hover,.market-picker-menu a.active{background:var(--panel3)}
.market-picker-menu a b{text-align:center;color:var(--purple)}
.market-tool-static{cursor:default}
@media(max-width:600px){.market-tool{max-width:132px;padding:7px 8px}.market-tool span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-picker-menu{min-width:176px}}


/* v9.5.2 - clear portal sign out controls */
.topbar-signout-form,.staff-signout-form{margin:0}
.topbar-signout{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:38px;padding:8px 13px;border:1px solid rgba(255,95,115,.38);
  border-radius:10px;background:rgba(255,95,115,.08);color:#ff9aaa;
  font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap
}
.topbar-signout:hover{background:rgba(255,95,115,.15);border-color:rgba(255,95,115,.65)}
.staff-signout{
  display:inline-flex;align-items:center;justify-content:center;min-height:38px;
  padding:9px 13px;border:1px solid #e5b6bd;border-radius:10px;
  background:#fff5f6;color:#b83246;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap
}
.staff-signout:hover{background:#ffecef}
@media(max-width:850px){
  .admin-topbar{align-items:flex-start;gap:12px}
  .admin-top-actions{flex-wrap:wrap;justify-content:flex-end}
  .topbar-signout{min-height:36px;padding:7px 10px}
}
@media(max-width:620px){
  .admin-topbar{display:block}
  .admin-top-actions{margin-top:12px;justify-content:flex-start}
  .admin-user{order:10}
  .staff-head-actions{flex-wrap:wrap;justify-content:flex-end}
}

