.ezgn-booking-wrap {
	max-width: 640px;
	margin: 0 auto;
	font-family: inherit;
}

.ezgn-form {
	background: #101010;
	border: 1px solid #2a2a2a;
	border-radius: 10px;
	padding: 24px;
}

.ezgn-field {
	margin-bottom: 16px;
	flex: 1;
}

.ezgn-field-row {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.ezgn-field label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
	font-size: 14px;
}

.ezgn-field input,
.ezgn-field select,
.ezgn-field textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #3a3a3a;
	border-radius: 8px;
	font-size: 14px;
	box-sizing: border-box;
}

.ezgn-game-price {
	margin: 6px 2px 0;
	font-size: 13px;
	color: #aaa;
}

.ezgn-submit-btn {
	background: #e50914;
	color: #101010;
	border: none;
	border-radius: 8px;
	padding: 12px 28px;
	font-size: 15px;
	cursor: pointer;
}

.ezgn-submit-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.ezgn-form-message {
	margin-top: 14px;
	font-size: 14px;
}

.ezgn-form-message.ezgn-success {
	color: #4ade80;
}

.ezgn-form-message.ezgn-error {
	color: #c0392b;
}

.ezgn-form-message.ezgn-info {
	color: #aaa;
}

.ezgn-gamenets-grid {
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax(min(100%, 240px), 1fr) );
	gap: 18px;
}

.ezgn-gamenet-card {
	border: 1px solid #2a2a2a;
	border-radius: 10px;
	padding: 16px;
	background: #101010;
}

.ezgn-gamenet-thumb img {
	width: 100%;
	border-radius: 8px;
	margin-bottom: 10px;
}

.ezgn-gamenet-card h3 {
	margin: 0 0 6px;
}

.ezgn-gamenet-city,
.ezgn-gamenet-address {
	font-size: 13px;
	color: #666;
	margin: 2px 0;
}

.ezgn-gamenet-games-label {
	margin: 10px 0 4px;
	font-weight: 600;
	font-size: 13px;
}

.ezgn-gamenet-games-list {
	margin: 0;
	padding-inline-start: 18px;
	font-size: 13px;
	color: #444;
}

.ezgn-form,.ezgn-gamenet-card{background:#101010;color:#eee}.ezgn-field input,.ezgn-field select,.ezgn-field textarea{background:#181818;color:#eee;border-color:#3a3a3a}.ezgn-submit-btn{background:#e50914}.ezgn-game-price{color:#ff5a60}.ezgn-gamenet-card{border-color:#2a2a2a}.ezgn-gamenet-city,.ezgn-gamenet-address,.ezgn-gamenet-games-list{color:#aaa}

/* Owner panel: black / red theme */
.ezgn-owner-panel{width:100%;max-width:2000px;margin:25px auto;padding:0 16px;box-sizing:border-box;color:#e8e8e8;font-family:inherit}.ezgn-owner-head{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#0b0b0b;border:1px solid #262626;border-right:4px solid #e50914;border-radius:16px;padding:24px;margin-bottom:14px}.ezgn-owner-head h2{margin:5px 0;color:#fff;font-size:28px}.ezgn-owner-head p{margin:0;color:#888}.ezgn-owner-select select,.ezgn-owner-panel input,.ezgn-owner-panel select,.ezgn-owner-panel textarea{background:#181818;color:#eee;border:1px solid #393939;border-radius:8px;padding:10px}.ezgn-owner-select select{min-width:220px}.ezgn-owner-tabs{display:flex;gap:6px;overflow:auto;background:#0b0b0b;border:1px solid #262626;border-radius:12px;padding:6px;margin-bottom:16px}.ezgn-owner-tabs a{color:#aaa;text-decoration:none;padding:12px 18px;border-radius:8px;white-space:nowrap;flex-shrink:0}.ezgn-owner-tabs a:hover,.ezgn-owner-tabs a.is-active{background:#e50914;color:#fff}.ezgn-owner-card{background:#111;border:1px solid #292929;border-radius:15px;padding:22px;margin-bottom:18px}.ezgn-owner-card-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.ezgn-owner-card h3{color:#fff;margin:0 0 5px}.ezgn-owner-card-head p{color:#888;margin:0}.ezgn-owner-section-title{font-size:18px;font-weight:800;border-right:3px solid #e50914;padding:9px 12px;background:#0b0b0b;margin-bottom:16px}.ezgn-owner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ezgn-owner-grid label,.ezgn-owner-full{display:flex;flex-direction:column;gap:7px;color:#bbb;font-size:13px}.ezgn-owner-full{margin-top:14px}.ezgn-owner-btn{display:inline-block;border:0;border-radius:8px;background:#e50914;color:#fff;padding:11px 17px;text-decoration:none;cursor:pointer;font-weight:700;margin-top:18px}.ezgn-owner-btn.secondary{background:#241012;color:#ff5a60;border:1px solid #4b181b;margin-top:0}.ezgn-owner-notice{padding:12px 15px;background:#170b0c;border:1px solid #53191d;border-radius:9px;margin-bottom:15px;color:#ff858a}.ezgn-owner-notice-success{background:#0b170e;border-color:#1d5327;color:#7dffa0}.ezgn-owner-loading{opacity:.55;pointer-events:none;transition:opacity .15s}.ezgn-modal-hint{font-size:11px;color:#777;margin:-6px 0 6px}.ezgn-owner-games{margin-top:22px}.ezgn-owner-games h4{color:#fff}.ezgn-owner-game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ezgn-owner-game-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;background:#0b0b0b;border:1px solid #242424;border-radius:9px}.ezgn-owner-game-row input[type=number]{max-width:150px}.ezgn-check{display:flex;gap:8px;align-items:center;color:#ddd}.ezgn-owner-system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.ezgn-owner-system{display:flex;align-items:center;gap:12px;padding:14px;background:#0b0b0b;border:1px solid #272727;border-radius:12px}.ezgn-owner-system-icon{width:48px;height:48px;display:grid;place-items:center;background:#2a0b0d;color:#e50914;border-radius:10px}.ezgn-owner-system-icon .dashicons{font-size:25px}.ezgn-owner-system-main{flex:1}.ezgn-owner-system h4{color:#fff;margin:0 0 5px}.ezgn-owner-system h4 small{color:#ff5a60;font-size:11px;margin-right:7px}.ezgn-owner-system p{color:#888;margin:0;font-size:12px}.ezgn-owner-link{color:#ff5a60;text-decoration:none;margin-left:8px}.ezgn-owner-danger{background:none;border:0;color:#ff4b52;cursor:pointer;padding:0}.ezgn-inline-form{display:inline}.ezgn-owner-table-wrap{overflow:auto}.ezgn-owner-table{width:100%;border-collapse:collapse}.ezgn-owner-table th{background:#0b0b0b;color:#aaa;text-align:right;padding:12px;border-bottom:1px solid #333}.ezgn-owner-table td{padding:12px;border-bottom:1px solid #242424;color:#ddd;white-space:nowrap}.ezgn-owner-table td small{display:block;color:#777;margin-top:3px}.ezgn-owner-table .ezgn-money{color:#ff5a60}.ezgn-owner-empty,.ezgn-owner-login{padding:25px;background:#111;border:1px solid #292929;border-radius:12px;color:#aaa;text-align:center}@media(max-width:782px){.ezgn-owner-head,.ezgn-owner-card-head{flex-direction:column;align-items:stretch}.ezgn-owner-grid,.ezgn-owner-game-list,.ezgn-owner-system-grid{grid-template-columns:1fr}.ezgn-owner-system{align-items:flex-start;flex-wrap:wrap}}

/* Clickable system availability toggle */
.ezgn-owner-system-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.ezgn-system-status-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:999px;padding:8px 13px;cursor:pointer;font:inherit;font-weight:800;transition:.15s ease;min-width:120px;justify-content:center}
.ezgn-system-status-toggle.is-active{background:#0d2b19;color:#63f29a;border-color:#1d7040}
.ezgn-system-status-toggle.is-disabled{background:#262626;color:#a7a7a7;border-color:#4a4a4a}
.ezgn-system-status-toggle:hover{transform:translateY(-1px);filter:brightness(1.08)}
.ezgn-status-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#777;box-shadow:0 0 0 3px rgba(255,255,255,.04)}
.ezgn-system-status-toggle.is-active .ezgn-status-dot{background:#3bea83;box-shadow:0 0 0 3px rgba(59,234,131,.13)}
.ezgn-system-status-toggle.is-disabled .ezgn-status-dot{background:#777}
.ezgn-owner-system.is-system-active{border-color:#234b31}
.ezgn-owner-system.is-system-disabled{border-color:#343434;opacity:.92}
.ezgn-owner-system.is-system-disabled .ezgn-owner-system-icon{background:#222;color:#777}
@media(max-width:782px){.ezgn-owner-system-actions{width:100%;justify-content:flex-start}.ezgn-system-status-toggle{flex:1}}

/* EZGN Liquid Glass Theme */
/* رنگ اصلی (--ezgn-red) تلاش می‌کند رنگ اصلی قالب سایت شما را بگیرد (وردپرس بلاک‌تم/theme.json یا
   المنتور)؛ اگر چنین متغیری در سایت تعریف نشده باشد، رنگ قرمز پیش‌فرض افزونه استفاده می‌شود.
   برای سفارشی‌سازی سریع، کافی‌ست همین دو متغیر را در CSS سفارشی سایت بازنویسی کنید:
   :root{ --ezgn-red:#0a84ff; --ezgn-red-2:#0060df; } */
:root{--ezgn-red:var(--e-global-color-primary,var(--wp--preset--color--primary,var(--wp--preset--color--accent,#e50914)));--ezgn-red-2:var(--e-global-color-secondary,var(--wp--preset--color--secondary,#c8000b));}
.ezgn-booking-wrap,.ezgn-gamenets-grid,.ezgn-gamenets-full,.ezgn-owner-panel,.ezgn-slider-wrap,.ezgn-gamenet-page{--ezgn-red-soft:color-mix(in srgb,var(--ezgn-red) 16%,transparent);--ezgn-glass:rgba(18,18,22,.62);--ezgn-glass-2:rgba(255,255,255,.055);--ezgn-border:rgba(255,255,255,.12);--ezgn-shadow:0 20px 55px rgba(0,0,0,.32);}
.ezgn-booking-wrap,.ezgn-owner-panel,.ezgn-gamenet-page{position:relative;isolation:isolate}
.ezgn-booking-wrap:before,.ezgn-owner-panel:before,.ezgn-gamenet-page:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 15% 10%,rgba(229,9,20,.13),transparent 32%),radial-gradient(circle at 85% 90%,rgba(255,255,255,.05),transparent 28%)}
.ezgn-form,.ezgn-gamenet-card,.ezgn-owner-head,.ezgn-owner-tabs,.ezgn-owner-card,.ezgn-owner-system,.ezgn-owner-empty,.ezgn-owner-login,.ezgn-gamenet-page-hero,.ezgn-gamenet-page-game-card{background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important;background-color:var(--ezgn-glass)!important;border:1px solid var(--ezgn-border)!important;box-shadow:var(--ezgn-shadow),inset 0 1px 0 rgba(255,255,255,.08)!important;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}
.ezgn-form,.ezgn-gamenet-card,.ezgn-gamenet-page-hero,.ezgn-gamenet-page-game-card{border-radius:24px!important}
.ezgn-gamenet-card{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.ezgn-gamenet-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(0,0,0,.4)!important}
.ezgn-field input,.ezgn-field select,.ezgn-field textarea,.ezgn-owner-panel input,.ezgn-owner-panel select,.ezgn-owner-panel textarea{background:rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.14)!important;color:#f7f7f7!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 6px 20px rgba(0,0,0,.12)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ezgn-field input:focus,.ezgn-field select:focus,.ezgn-field textarea:focus,.ezgn-owner-panel input:focus,.ezgn-owner-panel select:focus,.ezgn-owner-panel textarea:focus{border-color:color-mix(in srgb,var(--ezgn-red) 72%,transparent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--ezgn-red) 12%,transparent),inset 0 1px 0 rgba(255,255,255,.05)!important;outline:none!important}
.ezgn-submit-btn,.ezgn-owner-btn{background:linear-gradient(135deg,var(--ezgn-red),var(--ezgn-red-2))!important;box-shadow:0 10px 28px color-mix(in srgb,var(--ezgn-red) 25%,transparent),inset 0 1px 0 rgba(255,255,255,.18)!important;border:1px solid rgba(255,255,255,.14)!important}
.ezgn-owner-tabs a.is-active,.ezgn-owner-tabs a:hover{background:linear-gradient(135deg,var(--ezgn-red),var(--ezgn-red-2))!important;box-shadow:0 8px 24px color-mix(in srgb,var(--ezgn-red) 24%,transparent),inset 0 1px 0 rgba(255,255,255,.16)}
.ezgn-owner-section-title,.ezgn-owner-game-row,.ezgn-owner-table th{background:rgba(0,0,0,.22)!important;border-color:rgba(255,255,255,.09)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.ezgn-owner-system.is-system-active{border-color:rgba(59,234,131,.28)!important;background:linear-gradient(135deg,rgba(59,234,131,.07),rgba(255,255,255,.025))!important}
.ezgn-owner-system.is-system-disabled{border-color:rgba(255,255,255,.09)!important;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.015))!important}
.ezgn-gamenet-thumb img{border-radius:18px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
@media(max-width:782px){.ezgn-form,.ezgn-owner-card,.ezgn-owner-head,.ezgn-owner-tabs,.ezgn-gamenet-card{border-radius:18px!important}}

/* ================= EZGN Gamenet Detail Page ================= */
.ezgn-gamenet-page{max-width:1100px;margin:30px auto;padding:0 16px;color:#eee;box-sizing:border-box;width:100%}
.ezgn-gamenet-page *{box-sizing:border-box}
/* هیچ عنصری نباید از عرض صفحه بیرون بزند؛ سرریز افقی روی RTL باعث می‌شد
   محتوا به یک سمت بچسبد و سمت دیگر خالی بماند. */
.ezgn-gamenet-page img,.ezgn-gamenet-page table,.ezgn-gamenet-page pre{max-width:100%}
.ezgn-gamenet-page-hero{position:relative;overflow:hidden;padding:32px}
.ezgn-gamenet-page-hero-inner{position:relative;z-index:1;display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.ezgn-gamenet-page-thumb{flex:0 0 220px;width:220px;max-width:100%;height:150px;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.ezgn-gamenet-page-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ezgn-gamenet-page-main{flex:1 1 240px;min-width:0}
.ezgn-gamenet-page-main h1{margin:0 0 10px;color:#fff;font-size:28px}
.ezgn-gamenet-page-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.ezgn-gamenet-page-meta span{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#ccc;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.1);padding:7px 12px;border-radius:999px}
.ezgn-gamenet-page-meta .dashicons{font-size:16px;width:16px;height:16px;color:var(--ezgn-red)}
.ezgn-gamenet-page-address{display:flex;align-items:center;gap:6px;color:#aaa;font-size:13px;margin:8px 0}
.ezgn-gamenet-page-address .dashicons{color:var(--ezgn-red);font-size:16px;width:16px;height:16px}
.ezgn-gamenet-page-desc{color:#bbb;line-height:2;margin-top:10px;font-size:14px}
.ezgn-gamenet-page-section{margin:26px 0}
.ezgn-gamenet-page-section h2{font-size:19px;font-weight:800;border-right:3px solid var(--ezgn-red);padding:9px 12px;background:rgba(0,0,0,.22);border-radius:8px;margin-bottom:16px;color:#fff}
/* auto-fit به‌جای auto-fill: ستون‌های خالی جمع می‌شوند تا کارت‌ها روی صفحهٔ
   باریک همهٔ عرض را بگیرند و نصفِ دیگر خالی نماند. min(100%,220px) هم جلوی
   سرریز افقی روی گوشی را می‌گیرد. */
.ezgn-gamenet-page-games{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}
.ezgn-gamenet-page-game-card{overflow:hidden;transition:transform .25s ease}
.ezgn-gamenet-page-game-card:hover{transform:translateY(-4px)}
.ezgn-gamenet-page-game-thumb{aspect-ratio:16/10;overflow:hidden;background:#0b0b0b}
.ezgn-gamenet-page-game-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.ezgn-gamenet-page-game-card:hover .ezgn-gamenet-page-game-thumb img{transform:scale(1.08)}
.ezgn-gamenet-page-game-body{padding:14px}
.ezgn-gamenet-page-game-body h4{margin:0 0 10px;color:#fff;font-size:15px}
.ezgn-gamenet-page-systems{display:flex;flex-wrap:wrap;gap:6px}
.ezgn-gamenet-page-systems .ezgn-chip{font-size:11px}
.ezgn-gamenet-page-systems-all{display:flex;flex-wrap:wrap;gap:10px}

/* --- صفحهٔ گیم‌نت روی موبایل/تبلت ---------------------------------------
   آستانه عمداً ۹۰۰px است (نه ۷۸۲px) چون بعضی گوشی‌های اندرویدی عرض مجازی
   بزرگ‌تری گزارش می‌کنند و با آستانهٔ قبلی، هیرو دوستونی می‌ماند: متن و عکس
   کنار هم فشرده می‌شدند و بقیهٔ عرض خالی می‌ماند. */
@media(max-width:900px){
	.ezgn-gamenet-page{padding:0 12px;margin:18px auto}
	.ezgn-gamenet-page-hero{padding:18px}
	.ezgn-gamenet-page-hero-inner{flex-direction:column;align-items:stretch;gap:16px}
	/* در چیدمان ستونی، flex-basis روی «ارتفاع» اثر می‌گذارد؛ پس باید صفر شود
	   وگرنه کارت عکس ۲۲۰px بلند می‌شد و height هم نادیده گرفته می‌شد. */
	.ezgn-gamenet-page-thumb{flex:0 0 auto;width:100%;height:auto;aspect-ratio:16/9;border-radius:14px}
	.ezgn-gamenet-page-main{flex:1 1 auto;width:100%}
	.ezgn-gamenet-page-main h1{font-size:21px}
	.ezgn-gamenet-page-meta{gap:7px}
	.ezgn-gamenet-page-meta span{font-size:12px;padding:6px 10px}
	.ezgn-gamenet-page-desc{font-size:13px;line-height:1.9}
	.ezgn-gamenet-page-section{margin:20px 0}
	.ezgn-gamenet-page-section h2{font-size:16px;padding:8px 10px}
	.ezgn-gamenet-page-games{gap:12px}
	/* فرم رزرو داخل صفحهٔ گیم‌نت هم باید تمام‌عرض شود، نه ۶۴۰px وسط‌چین */
	.ezgn-gamenet-page .ezgn-booking-wrap{max-width:none}
	.ezgn-gamenet-page .ezgn-form{padding:16px}
}

/* چیپ‌های مشترک (بازی‌ها/سیستم‌ها) */
.ezgn-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#ddd}
.ezgn-chip-system{color:#ff9095;border-color:rgba(229,9,20,.3);background:rgba(229,9,20,.08)}
.ezgn-chip small{color:#999;font-size:10px}

/* فیلد گیم‌نت قفل‌شده در فرم رزرو (صفحهٔ جزئیات) */
.ezgn-field-locked-gamenet .ezgn-locked-gamenet-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(229,9,20,.1);border:1px solid rgba(229,9,20,.3);color:#ff9095;padding:10px 14px;border-radius:10px;font-weight:700}
.ezgn-field-locked-gamenet .ezgn-locked-gamenet-badge .dashicons{font-size:16px;width:16px;height:16px}

/* ================= EZGN Gamenet Slider ================= */
.ezgn-slider-wrap{max-width:1200px;margin:30px auto;padding:0 16px}
.ezgn-slider-title{font-size:20px;font-weight:800;color:#fff;margin-bottom:14px}
.ezgn-slider-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.ezgn-slider-filter{appearance:none;cursor:pointer;font:inherit;font-size:13px;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#ccc;transition:.15s ease}
.ezgn-slider-filter:hover{background:rgba(255,255,255,.1);color:#fff}
.ezgn-slider-filter.is-active{background:linear-gradient(135deg,var(--ezgn-red),var(--ezgn-red-2));border-color:transparent;color:#fff;box-shadow:0 8px 22px color-mix(in srgb,var(--ezgn-red) 28%,transparent)}
.ezgn-slider-viewport{position:relative}
/* --ezgn-slide-per = تعداد کارتی که باید در هر نما دیده شود؛ عرض هر کارت از
   روی همین متغیر و فاصلهٔ بین کارت‌ها حساب می‌شود. */
.ezgn-slider-track{--ezgn-slide-per:6;--ezgn-slide-gap:14px;display:flex;gap:var(--ezgn-slide-gap);overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 16px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;user-select:none;-webkit-user-select:none}
.ezgn-slider-track::-webkit-scrollbar{display:none}
.ezgn-slider-track.is-dragging{cursor:grabbing;scroll-snap-type:none}
.ezgn-slider-track.is-dragging .ezgn-slide{pointer-events:none}
.ezgn-slide,.ezgn-slide img{-webkit-user-drag:none;user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none}
.ezgn-slide{scroll-snap-align:start;flex:0 0 calc((100% - (var(--ezgn-slide-per) - 1) * var(--ezgn-slide-gap)) / var(--ezgn-slide-per));position:relative;display:block;border-radius:22px;overflow:hidden;text-decoration:none;color:inherit;background:#0b0b0b;box-shadow:0 16px 40px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.1);transition:transform .3s ease,box-shadow .3s ease}
.ezgn-slide:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(0,0,0,.45)}
.ezgn-slide-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:linear-gradient(160deg,#161616,#0a0a0a)}
.ezgn-slide-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.ezgn-slide:hover .ezgn-slide-media img{transform:scale(1.12)}
.ezgn-slide-media-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:46px;opacity:.35}
.ezgn-slide-media-fade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.2) 45%,transparent 70%);pointer-events:none}
.ezgn-slide-name{position:absolute;right:11px;bottom:11px;left:11px;color:#fff;font-weight:800;font-size:13.5px;line-height:1.6;text-shadow:0 2px 10px rgba(0,0,0,.6);z-index:2;transition:transform .3s ease}
.ezgn-slide-info{position:absolute;left:0;right:0;bottom:0;padding:11px;display:flex;flex-direction:column;gap:6px;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.03) 45%,rgba(15,15,18,.78));border-top:1px solid rgba(255,255,255,.18);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);transform:translateY(100%);opacity:0;transition:transform .35s cubic-bezier(.2,.9,.3,1.1),opacity .3s ease;z-index:3;max-height:78%;overflow:hidden}
.ezgn-slide:hover .ezgn-slide-info{transform:translateY(0);opacity:1}
.ezgn-slide:hover .ezgn-slide-name{transform:translateY(-6px)}
.ezgn-slide-row{display:flex;flex-wrap:wrap;gap:5px}
.ezgn-slide-row .ezgn-chip{padding:4px 9px;font-size:10.5px}
.ezgn-slide-address{display:flex;align-items:center;gap:5px;font-size:11.5px;color:#ccc;margin-top:2px}
.ezgn-slide-address .dashicons{font-size:14px;width:14px;height:14px;color:var(--ezgn-red)}

/* گیم‌نتی که ساعت کاری‌اش تمام شده: تصویر خاکستری + برچسب «بسته است» در گوشهٔ
   بالا-چپ. کارت همچنان قابل کلیک است تا کاربر بتواند برای ساعت‌های بعد رزرو کند. */
.ezgn-slide.is-closed .ezgn-slide-media img{filter:grayscale(1) brightness(.6)}
.ezgn-slide.is-closed .ezgn-slide-media-placeholder{filter:grayscale(1);opacity:.22}
.ezgn-slide.is-closed{border-color:rgba(255,255,255,.08)}
.ezgn-slide.is-closed:hover .ezgn-slide-media img{filter:grayscale(.5) brightness(.8)}
.ezgn-slide-status{position:absolute;top:9px;left:9px;z-index:4;display:inline-block;padding:4px 9px;border-radius:9px;font-size:10.5px;font-weight:800;line-height:1.6;color:#fff;background:rgba(214,10,36,.92);border:1px solid #ff1744;box-shadow:0 6px 18px rgba(255,23,68,.35);white-space:nowrap}

/* تعداد کارت‌های اسلایدر بر اساس عرض صفحه: دسکتاپ ۶، تبلت ۴/۳، گوشی ۲ */
@media(max-width:1100px){.ezgn-slider-track{--ezgn-slide-per:4}}
@media(max-width:900px){.ezgn-slider-track{--ezgn-slide-per:3}}
@media(max-width:782px){
	.ezgn-slider-track{--ezgn-slide-per:2;--ezgn-slide-gap:10px}
	.ezgn-slider-wrap{padding:0 12px}
	.ezgn-slider-title{font-size:17px}
	.ezgn-slide-name{font-size:12.5px;right:9px;left:9px;bottom:9px}
	.ezgn-slide:hover{transform:none}
}

/* ================= EZGN Gamenets Full (نمایش کامل هر گیم‌نت + رزرو درجا) ================= */
.ezgn-gamenets-full{max-width:1100px;margin:30px auto;padding:0 16px;display:flex;flex-direction:column;gap:26px}
.ezgn-full-card{position:relative;border-radius:26px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025)),var(--ezgn-glass);border:1px solid var(--ezgn-border);box-shadow:var(--ezgn-shadow),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}
.ezgn-full-card-media{position:relative;aspect-ratio:16/6;min-height:180px;overflow:hidden;background:linear-gradient(160deg,#161616,#0a0a0a)}
.ezgn-full-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.ezgn-full-card:hover .ezgn-full-card-media img{transform:scale(1.06)}
.ezgn-full-card-media-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:52px;opacity:.35}
.ezgn-full-card-media-fade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.15) 55%,transparent 85%)}
.ezgn-full-card-title{position:absolute;right:22px;bottom:16px;left:22px;margin:0;color:#fff;font-size:24px;font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.6);z-index:1}
.ezgn-full-card-body{padding:22px}
.ezgn-full-card-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}
.ezgn-full-card-meta span{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#ccc;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.1);padding:7px 12px;border-radius:999px}
.ezgn-full-card-meta .dashicons{font-size:16px;width:16px;height:16px;color:var(--ezgn-red)}
.ezgn-full-card-address{display:flex;align-items:center;gap:6px;color:#aaa;font-size:13px;margin:8px 0}
.ezgn-full-card-address .dashicons{color:var(--ezgn-red);font-size:16px;width:16px;height:16px}
.ezgn-full-card-desc{color:#bbb;line-height:1.9;font-size:13.5px;margin-top:6px}
.ezgn-full-card-desc p{margin:0}
.ezgn-full-card-section{margin-top:20px}
.ezgn-full-card-section h4{font-size:14px;font-weight:800;border-right:3px solid var(--ezgn-red);padding:6px 10px;background:rgba(0,0,0,.2);border-radius:7px;margin:0 0 12px;color:#fff}
.ezgn-full-card-games{display:flex;flex-direction:column;gap:10px}
.ezgn-full-card-game{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.ezgn-full-card-game-title{display:block;color:#fff;font-weight:700;font-size:13.5px;margin-bottom:6px}
.ezgn-full-card-game-systems,.ezgn-full-card-systems{display:flex;flex-wrap:wrap;gap:6px}
.ezgn-full-card-toggle{appearance:none;cursor:pointer;font:inherit;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;padding:13px 20px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,var(--ezgn-red),var(--ezgn-red-2));color:#fff;font-weight:700;font-size:14px;box-shadow:0 10px 28px color-mix(in srgb,var(--ezgn-red) 25%,transparent),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .15s ease}
.ezgn-full-card-toggle:hover{transform:translateY(-2px)}
.ezgn-full-card-booking{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}
.ezgn-full-card-booking .ezgn-booking-wrap{max-width:none}
@media(max-width:782px){.ezgn-full-card-media{aspect-ratio:4/3}.ezgn-full-card-title{font-size:19px}.ezgn-full-card-body{padding:16px}}

/* Owner accounting / tab UI */
.ezgn-owner-tab-content{display:none}.ezgn-owner-tab-content.is-active{display:block}.ezgn-owner-tab{appearance:none;background:transparent;border:0;color:#aaa;text-decoration:none;padding:12px 18px;border-radius:8px;white-space:nowrap;cursor:pointer;font:inherit}.ezgn-owner-tab:hover,.ezgn-owner-tab.is-active{background:linear-gradient(135deg,#ff1a24,#c8000b);color:#fff;box-shadow:0 8px 24px rgba(229,9,20,.24)}
.ezgn-owner-form{margin:0}.ezgn-button-link{background:none;border:0;cursor:pointer;font:inherit}.ezgn-inline-editor{width:100%;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}
.ezgn-accounting-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.ezgn-accounting-main{min-width:0}.ezgn-accounting-side{position:sticky;top:16px}.ezgn-accounting-platform-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%, 320px), 1fr));gap:16px;align-items:start}.ezgn-accounting-platform-column{min-width:0;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(0,0,0,.16)}.ezgn-accounting-platform-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:2px 4px 12px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.ezgn-accounting-platform-head strong{color:#fff;font-size:16px}.ezgn-accounting-platform-head span{font-size:11px;color:#999}.ezgn-accounting-system-grid{display:grid;grid-template-columns:1fr;gap:12px}.ezgn-accounting-extras-full{width:100%;box-sizing:border-box;margin-top:18px}.ezgn-accounting-main{min-width:0}.ezgn-accounting-side{min-width:0}.ezgn-accounting-system-card{position:relative;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 18px 50px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.ezgn-accounting-system-card.is-running{border-color:rgba(229,9,20,.35)}.ezgn-accounting-system-card{overflow:hidden}.ezgn-status-dot{position:absolute;top:14px;left:14px;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.05)}.ezgn-status-dot.is-green{background:#2ee879;box-shadow:0 0 10px rgba(46,232,121,.8),0 0 0 4px rgba(46,232,121,.12)}.ezgn-status-dot.is-yellow{background:#ffd23f;box-shadow:0 0 10px rgba(255,210,63,.8),0 0 0 4px rgba(255,210,63,.12);animation:ezgnPulse 1.4s infinite}.ezgn-status-dot.is-red{background:#ff3b3b;box-shadow:0 0 10px rgba(255,59,59,.85),0 0 0 4px rgba(255,59,59,.12)}@keyframes ezgnPulse{0%,100%{opacity:1}50%{opacity:.45}}.ezgn-accounting-card-top{align-items:center}.ezgn-accounting-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;font-size:22px;border-radius:12px;background:linear-gradient(160deg,rgba(229,9,20,.35),rgba(229,9,20,.08));border:1px solid rgba(229,9,20,.25)}.ezgn-accounting-card-title{flex:1}.ezgn-timer.is-paused{color:#ffd23f;font-size:18px;letter-spacing:0}.ezgn-accounting-system-card.is-paused{border-color:rgba(255,210,63,.35)}.ezgn-accounting-actions-2{grid-template-columns:1fr 1fr}.ezgn-accounting-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:15px}.ezgn-accounting-card-top h4{margin:0;color:#fff;font-size:18px}.ezgn-accounting-tag{display:inline-block;color:#ff6a70;font-size:11px;margin-top:4px}.ezgn-live-state{font-size:11px;color:#63f29a;border:1px solid rgba(59,234,131,.25);padding:5px 9px;border-radius:999px;background:rgba(59,234,131,.06)}.ezgn-accounting-system-card.is-running .ezgn-live-state{color:#ff6a70;border-color:rgba(229,9,20,.25);background:rgba(229,9,20,.06)}.ezgn-rate-field{display:flex;flex-direction:column;gap:7px;color:#bbb;font-size:12px}.ezgn-rate-field>div{display:flex;gap:8px}.ezgn-rate-field input{flex:1}.ezgn-mini-btn{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;border-radius:10px;padding:9px 14px;cursor:pointer}.ezgn-start-btn{width:100%;margin-top:15px}.ezgn-accounting-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:14px}.ezgn-accounting-actions form{margin:0}.ezgn-accounting-actions .ezgn-owner-btn{width:100%;margin:0}.ezgn-timer{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:32px;letter-spacing:1px;text-align:center;margin:18px 0;padding:15px;border-radius:15px;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.08);color:#fff}.ezgn-segments-list{margin-top:14px;display:flex;flex-direction:column;gap:7px}.ezgn-segments-list>div,.ezgn-recent-sessions>div{display:grid;grid-template-columns:80px 1fr auto;gap:8px;align-items:center;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.035);font-size:12px;color:#aaa}.ezgn-segments-list b,.ezgn-recent-sessions strong{color:#fff}.ezgn-current-time-label{color:#ff6a70!important;grid-template-columns:1fr!important}.ezgn-recent-sessions{margin-top:14px;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.ezgn-recent-sessions h5{margin:0 0 8px;color:#fff}.ezgn-recent-sessions>div{grid-template-columns:1fr auto auto}.ezgn-session-details{grid-column:1/-1!important;display:block!important;color:#aaa!important}.ezgn-session-details div{padding:3px 0}.ezgn-extras-manager{margin-top:16px}.ezgn-extra-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.ezgn-extra-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(0,0,0,.2)}.ezgn-extra-list>div form{margin:0}.ezgn-modal-root{position:relative;z-index:999999}.ezgn-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}.ezgn-modal[hidden]{display:none}.ezgn-modal-backdrop{position:absolute;inset:0;background:rgba(8,8,10,.55);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);animation:ezgnBackdropIn .22s ease}.ezgn-modal-box{position:relative;width:min(460px,calc(100% - 30px));max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow:auto;padding:26px;border:1px solid rgba(255,255,255,.22);border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.03) 40%,rgba(20,20,24,.55));box-shadow:0 30px 90px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.25),inset 0 0 40px rgba(255,255,255,.03);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);color:#fff;animation:ezgnModalIn .25s cubic-bezier(.2,.9,.3,1.2)}@keyframes ezgnBackdropIn{from{opacity:0}to{opacity:1}}@keyframes ezgnModalIn{from{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.ezgn-modal-box h3{margin-top:0}.ezgn-modal-box p{color:#aaa}.ezgn-modal-close{position:absolute;top:10px;left:12px;background:transparent;border:0;color:#aaa;font-size:28px;cursor:pointer}.ezgn-modal-box label{display:flex;flex-direction:column;gap:7px;color:#bbb;font-size:13px}.ezgn-modal-box .ezgn-owner-btn{width:100%}.ezgn-modal-box-wide{width:min(620px,calc(100% - 30px))}.ezgn-tag{display:inline-block;font-size:11px;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#bbb}.ezgn-tag.is-live{color:#63f29a;border-color:rgba(59,234,131,.3);background:rgba(59,234,131,.08)}.ezgn-tag.is-paused{color:#ffd23f;border-color:rgba(255,210,63,.3);background:rgba(255,210,63,.08)}.ezgn-invoices-sidebar{padding:18px}.ezgn-invoice-list{display:flex;flex-direction:column;gap:10px;max-height:70vh;max-height:70dvh;overflow:auto}.ezgn-invoice-row{position:relative;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.ezgn-invoice-row-main{display:flex;flex-direction:column;gap:2px}.ezgn-invoice-row-main strong{color:#fff;font-size:14px}.ezgn-invoice-row-main span{color:#999;font-size:12px}.ezgn-invoice-row-side{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.ezgn-invoice-row-side b{color:#ff9095}.ezgn-invoice-row .ezgn-button-link{margin-top:10px;width:100%;text-align:center;padding:8px;border-radius:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#ddd;cursor:pointer}.ezgn-session-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.ezgn-session-detail-meta div{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.ezgn-session-detail-meta span{display:block;color:#999;font-size:11px;margin-bottom:4px}.ezgn-session-detail-meta b{color:#fff}.ezgn-session-detail-segments{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.ezgn-session-detail-segment{padding:12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.ezgn-session-detail-segment-head{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#ddd;font-size:13px}.ezgn-session-detail-segment-head b{color:#fff}.ezgn-session-detail-extras{list-style:none;margin:10px 0 0;padding:8px 0 0;border-top:1px dashed rgba(255,255,255,.1);display:flex;flex-direction:column;gap:6px}.ezgn-session-detail-extras li{display:flex;justify-content:space-between;font-size:12px;color:#aaa}.ezgn-session-detail-extras li b{color:#fff}.ezgn-session-detail-total{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:14px;background:rgba(229,9,20,.08);border:1px solid rgba(229,9,20,.25)}.ezgn-session-detail-total span{color:#ff9095;font-size:13px}.ezgn-session-detail-total b{color:#fff;font-size:18px}.ezgn-revenue-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.ezgn-revenue-summary>div{padding:18px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09)}.ezgn-revenue-summary span{display:block;color:#aaa;font-size:12px}.ezgn-revenue-summary strong{display:block;margin-top:8px;color:#fff;font-size:20px}.ezgn-revenue-summary .total{border-color:rgba(229,9,20,.28);background:rgba(229,9,20,.07)}.ezgn-revenue-summary .total strong{color:#ff6a70}@media(max-width:782px){.ezgn-accounting-platform-columns,.ezgn-accounting-system-grid,.ezgn-revenue-summary{grid-template-columns:1fr}.ezgn-accounting-layout{grid-template-columns:1fr}.ezgn-accounting-side{position:static}.ezgn-accounting-actions,.ezgn-accounting-actions-2{grid-template-columns:1fr}.ezgn-segments-list>div,.ezgn-recent-sessions>div{grid-template-columns:1fr}.ezgn-recent-sessions>div{gap:4px}.ezgn-session-detail-meta{grid-template-columns:1fr}}

/* بازی‌های زیرمجموعهٔ یک فرنچایز، در پنل گیم‌نت‌دار کمی تورفتگی و رنگ کم‌رنگ‌تر دارند */
.ezgn-owner-game-row-child{opacity:.85}
.ezgn-owner-game-row-child .ezgn-check{padding-right:16px}
.ezgn-game-tree-arrow{display:inline-block;margin-inline-end:4px;color:#888}

/* قیمت‌گذاری چندسطحی بر اساس تعداد دسته (کنترلر) در پنل گیم‌نت‌دار — فقط برای کنسول */
.ezgn-owner-game-group-header{font-weight:800;color:#fff;padding:10px 4px 4px;border-top:1px solid rgba(255,255,255,.08);margin-top:6px}
.ezgn-owner-game-group-header .dashicons{color:var(--ezgn-red,#e50914);vertical-align:middle;margin-inline-end:6px}
.ezgn-owner-game-group-header small{color:#888;font-weight:400}
.ezgn-owner-hint{opacity:.7;font-size:12px;margin:4px 0 10px}
.ezgn-owner-tier-wrap{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:4px}
.ezgn-owner-tier-row{display:flex;align-items:center;gap:4px}
.ezgn-owner-tier-row input{width:100px}
.ezgn-owner-tier-row small{color:#999;font-size:11px}
.ezgn-owner-tier-add{background:none;border:1px dashed rgba(255,255,255,.25);color:#ccc;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer}
.ezgn-owner-tier-remove{background:none;border:none;color:#e05252;font-size:11px;cursor:pointer}
#ezgn-owner-game-list[data-console="0"] .ezgn-owner-tier-only-console,.ezgn-owner-game-list[data-console="0"] .ezgn-owner-tier-only-console{display:none!important}

/* ==================================================================
   فرم رزرو چندمرحله‌ای (نسخهٔ ۳.۸) — سانس‌بندی ساعتی
   ================================================================== */

.ezgn-booking-flow .ezgn-step {
	border-top: 1px solid #262626;
	padding-top: 18px;
	margin-top: 18px;
}

.ezgn-booking-flow .ezgn-step:first-of-type {
	border-top: 0;
	margin-top: 0;
}

.ezgn-step-head {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
}

.ezgn-step-head h4 {
	margin: 0;
	font-size: 15px;
	font-weight: 700;
}

.ezgn-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #e50914;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	flex: 0 0 auto;
}

.ezgn-step-hint {
	margin: -4px 0 12px;
	font-size: 12px;
	color: #999;
}

.ezgn-loading-inline {
	display: inline-block;
	font-size: 13px;
	color: #999;
	padding: 8px 0;
}

/* --- تعداد دسته --- */

.ezgn-tier-options {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ezgn-tier-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 96px;
	padding: 10px 14px;
	border: 1px solid #3a3a3a;
	border-radius: 10px;
	background: #161616;
	color: inherit;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

.ezgn-tier-btn:hover { border-color: #666; }

.ezgn-tier-btn.is-active {
	border-color: #e50914;
	background: rgba(229, 9, 20, .12);
}

.ezgn-tier-btn strong { font-size: 14px; }
.ezgn-tier-btn small { font-size: 11px; color: #999; }

.ezgn-availability-note {
	margin: 10px 0 0;
	font-size: 12px;
	color: #7ddc9a;
}

/* --- جدول یک‌هفته‌ای --- */

.ezgn-week-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 96px), 1fr));
	gap: 8px;
}

.ezgn-day-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	padding: 12px 6px;
	border: 1px solid #3a3a3a;
	border-radius: 10px;
	background: #161616;
	color: inherit;
	cursor: pointer;
	text-align: center;
	transition: border-color .15s, background .15s;
}

.ezgn-day-card:hover:not(:disabled) { border-color: #666; }

.ezgn-day-card.is-active {
	border-color: #e50914;
	background: rgba(229, 9, 20, .12);
}

.ezgn-day-card.is-today .ezgn-day-name::after {
	content: ' (امروز)';
	font-size: 10px;
	color: #999;
}

.ezgn-day-card.is-full,
.ezgn-day-card:disabled {
	opacity: .45;
	cursor: not-allowed;
}

.ezgn-day-name { font-size: 13px; font-weight: 700; }
.ezgn-day-date { font-size: 11px; color: #aaa; }
.ezgn-day-free { font-size: 11px; color: #7ddc9a; }
.ezgn-day-card.is-full .ezgn-day-free { color: #c0392b; }

/* --- سانس‌ها --- */

.ezgn-slot-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 130px), 1fr));
	gap: 8px;
}

.ezgn-slot-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	padding: 10px 6px;
	border: 1px solid #3a3a3a;
	border-radius: 10px;
	background: #161616;
	color: inherit;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

.ezgn-slot-btn:hover:not(:disabled) { border-color: #666; }

.ezgn-slot-btn.is-selected {
	border-color: #e50914;
	background: rgba(229, 9, 20, .18);
}

.ezgn-slot-btn.is-full,
.ezgn-slot-btn:disabled {
	opacity: .4;
	cursor: not-allowed;
}

.ezgn-slot-time { font-size: 13px; font-weight: 600; }
.ezgn-slot-free { font-size: 11px; color: #7ddc9a; }
.ezgn-slot-btn.is-full .ezgn-slot-free { color: #c0392b; }

/* --- خلاصهٔ رزرو --- */

.ezgn-booking-summary {
	margin-top: 14px;
	padding: 12px 14px;
	border: 1px solid #2f2f2f;
	border-radius: 10px;
	background: #131313;
}

.ezgn-summary-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	padding: 4px 0;
}

.ezgn-summary-row span { color: #999; }

.ezgn-summary-total {
	border-top: 1px solid #2f2f2f;
	margin-top: 6px;
	padding-top: 8px;
	font-size: 14px;
}

.ezgn-summary-total b { color: #e50914; }

/* ==================================================================
   پنل گیم‌نت‌دار — تب رزروها و آلارم تداخل
   ================================================================== */

.ezgn-booking-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
	gap: 12px;
}

.ezgn-booking-card {
	border: 1px solid #2f2f2f;
	border-radius: 12px;
	padding: 14px;
	background: #141414;
}

.ezgn-booking-card.needs-system { border-color: #e5a20f; }
.ezgn-booking-card.is-manual { opacity: .82; }

.ezgn-booking-card-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 10px;
}

.ezgn-booking-card-id {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.ezgn-booking-card-amount {
	font-weight: 700;
	white-space: nowrap;
}

.ezgn-booking-card-meta {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
	gap: 8px;
	margin-bottom: 12px;
}

.ezgn-booking-card-meta > div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.ezgn-booking-card-meta span { font-size: 11px; color: #999; }
.ezgn-booking-card-meta b { font-size: 13px; }
.ezgn-booking-card-meta .ezgn-unassigned { color: #e5a20f; }

.ezgn-booking-assign {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 8px;
}

.ezgn-booking-assign > label { flex: 1 1 180px; }

.ezgn-check-inline {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	white-space: nowrap;
}

.ezgn-check-inline input { width: auto !important; }

.ezgn-booking-status-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #262626;
}

.ezgn-conflict-alarm {
	border: 1px solid #e5a20f;
	background: rgba(229, 162, 15, .1);
	border-radius: 10px;
	padding: 12px 14px;
	margin-bottom: 14px;
	font-size: 13px;
}

.ezgn-conflict-alarm strong { display: block; margin-bottom: 6px; color: #e5a20f; }
.ezgn-conflict-alarm p { margin: 4px 0; }
.ezgn-conflict-alarm ul { margin: 6px 18px; padding: 0; }
.ezgn-conflict-alarm li { margin: 2px 0; }

/* --- انتخاب پلتفرم (نوع دستگاه) --- */

.ezgn-platform-options {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ezgn-platform-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 120px;
	padding: 12px 16px;
	border: 1px solid #3a3a3a;
	border-radius: 10px;
	background: #161616;
	color: inherit;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

.ezgn-platform-btn:hover { border-color: #666; }

.ezgn-platform-btn.is-active {
	border-color: #e50914;
	background: rgba(229, 9, 20, .12);
}

.ezgn-platform-btn strong { font-size: 14px; }
.ezgn-platform-btn small { font-size: 11px; color: #999; }

/* ==================================================================
   پلیریاب گیم‌نت (نسخهٔ ۳.۹) — نقشه، صف و پیشنهاد هم‌تیمی
   ================================================================== */

.ezgn-mm {
	display: grid;
	gap: 16px;
	max-width: 1100px;
	margin: 0 auto;
}

@media (min-width: 900px) {
	.ezgn-mm { grid-template-columns: 1.1fr 1fr; align-items: start; }
}

.ezgn-mm-map-section,
.ezgn-mm-panel {
	border: 1px solid #2f2f2f;
	border-radius: 14px;
	background: #131313;
	padding: 16px;
}

.ezgn-mm-section-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}

.ezgn-mm-section-head h3 { margin: 0; font-size: 16px; }

.ezgn-mm-map {
	height: 300px;
	border-radius: 10px;
	overflow: hidden;
	background: #1b1b1b;
	z-index: 0;
}

.ezgn-mm-map .leaflet-popup-content { direction: rtl; text-align: right; }

.ezgn-mm-geo-note {
	margin: 10px 0;
	font-size: 12px;
	line-height: 1.9;
	color: #999;
}

.ezgn-mm-geo-note.is-warn { color: #e5a20f; }

.ezgn-mm-gamenet-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
	max-height: 260px;
	overflow-y: auto;
}

.ezgn-mm-gamenet-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 11px;
	border: 1px solid #2a2a2a;
	border-radius: 9px;
	background: #171717;
	text-decoration: none;
	color: inherit;
	font-size: 13px;
}

.ezgn-mm-gamenet-item:hover { border-color: #e50914; }
.ezgn-mm-gamenet-name { font-weight: 700; flex: 1 1 auto; }
.ezgn-mm-gamenet-city { color: #999; font-size: 12px; }
.ezgn-mm-dist { color: #7ddc9a; font-size: 12px; white-space: nowrap; }
.ezgn-mm-dist.is-muted { color: #666; }

/* --- حالت‌های پنل --- */

.ezgn-mm-modes {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
	gap: 8px;
	margin: 14px 0;
}

.ezgn-mm-mode {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 10px 12px;
	border: 1px solid #3a3a3a;
	border-radius: 10px;
	background: #171717;
	cursor: pointer;
}

.ezgn-mm-mode:has(input:checked) {
	border-color: #e50914;
	background: rgba(229, 9, 20, .12);
}

.ezgn-mm-mode input { margin-top: 3px; width: auto !important; }
.ezgn-mm-mode span { display: flex; flex-direction: column; gap: 2px; }
.ezgn-mm-mode strong { font-size: 13px; }
.ezgn-mm-mode small { font-size: 11px; color: #999; }

.ezgn-mm-teamsize { display: block; margin-bottom: 14px; }
.ezgn-mm-teamsize[hidden] { display: none; }

.ezgn-mm-state h4 { margin: 0 0 10px; font-size: 15px; }

.ezgn-mm-spinner {
	width: 34px;
	height: 34px;
	margin: 8px auto 14px;
	border: 3px solid #2f2f2f;
	border-top-color: #e50914;
	border-radius: 50%;
	animation: ezgn-mm-spin 0.9s linear infinite;
}

@keyframes ezgn-mm-spin { to { transform: rotate(360deg); } }

.ezgn-mm-waiting-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: center;
	margin-bottom: 10px;
}

.ezgn-mm-waiting-meta span {
	font-size: 11px;
	color: #bbb;
	background: #1e1e1e;
	border: 1px solid #2f2f2f;
	border-radius: 999px;
	padding: 3px 10px;
}

.ezgn-mm-timer {
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 2px;
	margin: 6px 0 14px;
}

.ezgn-mm-proposal-card {
	border: 1px solid #2f2f2f;
	border-radius: 10px;
	background: #171717;
	padding: 12px 14px;
	margin-bottom: 12px;
}

.ezgn-mm-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	padding: 4px 0;
}

.ezgn-mm-row span { color: #999; }

.ezgn-mm-proposal-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.ezgn-mm-proposal-actions button { flex: 1 1 130px; }

.ezgn-mm-hint { font-size: 12px; color: #999; margin-top: 10px; }

.ezgn-mm-message { margin-top: 12px; font-size: 13px; min-height: 18px; }
.ezgn-mm-message.is-success { color: #4ade80; }
.ezgn-mm-message.is-error { color: #ff6b6b; }
.ezgn-mm-message.is-info { color: #aaa; }

/* ===== ۳.۱۰.۰ — قیمت‌گذاری سانس، رزرو در نوبت، آلارم پایان زمان، ثبت نتیجه ===== */

.ezgn-start-pricing{margin:10px 0;padding:12px;border-radius:12px;border:1px solid var(--ezgn-border);background:rgba(255,255,255,.04)}
.ezgn-rate-preview{margin-top:8px;padding:9px 12px;border-radius:9px;background:rgba(255,255,255,.05);font-size:13px;color:#cfcfcf}
.ezgn-rate-preview b{color:#fff}

.ezgn-due-booking{margin-top:10px;padding:13px;border-radius:12px;border:1px solid rgba(59,234,131,.35);background:rgba(59,234,131,.07)}
.ezgn-due-booking strong{display:block;color:#63f29a;margin-bottom:6px;font-size:13px}
.ezgn-due-booking p{margin:0 0 6px;font-size:12px;color:#cfcfcf;line-height:1.9}
.ezgn-due-question{color:#fff !important;font-size:13px !important}
.ezgn-due-actions{display:grid;gap:6px}
.ezgn-due-actions form{margin:0}
.ezgn-due-actions .ezgn-owner-btn{width:100%}

.ezgn-paid-window{margin-bottom:9px;padding:9px 12px;border-radius:9px;font-size:12px;color:#cfcfcf;background:rgba(255,255,255,.05);border:1px solid var(--ezgn-border)}
.ezgn-paid-window.is-over{border-color:rgba(229,9,20,.5);background:rgba(229,9,20,.12);color:#ffb3b6;animation:ezgnPulse 1.4s ease-in-out infinite}
.ezgn-paid-window.is-over strong{display:block;color:#fff;font-size:14px;margin-bottom:4px}
.ezgn-paid-window.is-over p{margin:0;font-size:12px}
@keyframes ezgnPulse{0%,100%{box-shadow:0 0 0 0 rgba(229,9,20,.35)}50%{box-shadow:0 0 0 8px rgba(229,9,20,0)}}

.ezgn-pending-results{border-color:rgba(229,162,15,.4) !important}
.ezgn-pending-results h3{color:#ffbe4d !important}
.ezgn-invoice-row.is-pending{border-color:rgba(229,162,15,.3)}
.ezgn-invoice-row.is-pending .ezgn-owner-btn{padding:7px 12px;font-size:12px}
.ezgn-button-link.is-warning{color:#ffbe4d}

.ezgn-modal.is-locked .ezgn-modal-backdrop{cursor:default}
.ezgn-session-detail-result{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-top:10px;border-radius:10px;background:rgba(255,255,255,.05)}
.ezgn-session-detail-result span{color:#9a9a9a;font-size:12px}
.ezgn-result-win{color:#63f29a}
.ezgn-result-lose{color:#ff858a}
.ezgn-result-draw{color:#cfcfcf}
.ezgn-session-detail-total.is-sub b{color:#9a9a9a}
.ezgn-session-detail-total.is-payable b{color:#63f29a;font-size:17px}

/* Safari روی iOS ورودی با فونت کوچک‌تر از ۱۶px را هنگام فوکوس زوم می‌کند. */
@media (max-width:782px){
	.ezgn-booking-wrap input,.ezgn-booking-wrap select,.ezgn-booking-wrap textarea,
	.ezgn-gamenet-page input,.ezgn-gamenet-page select,.ezgn-gamenet-page textarea,
	.ezgn-owner-panel input,.ezgn-owner-panel select,.ezgn-owner-panel textarea,
	.ezgn-modal input,.ezgn-modal select,.ezgn-modal textarea{font-size:16px}

	/* فرم رزرو تا حالا بدون حاشیهٔ کناری بود و کادرش به لبهٔ صفحه می‌چسبید. */
	.ezgn-booking-wrap{padding-inline:14px;box-sizing:border-box}
}
