.swal-overlay { z-index: 9999999 !important; }
.tke-page { width:100%; min-height:100px; background:#f6f8fa; }
.tke-container { width:calc(100% - 40px); max-width:1320px; margin:0 auto; }

.tke-breadcrumb { display:flex; align-items:center; gap:11px; padding-top:34px; color:#a3aab4; font-size:12px; line-height:1; }
.tke-breadcrumb a { display:flex; align-items:center; gap:7px; color:#7d8795; font-weight:600; text-decoration:none!important; transition:color .2s ease; }
.tke-breadcrumb a:first-child i { color:#ff6600; font-size:11px; }
.tke-breadcrumb a:hover { color:#ff6600; }
.tke-breadcrumb > i { color:#cbd0d6; font-size:7px; }
.tke-breadcrumb > span { overflow:hidden; color:#a3aab4; font-weight:500; white-space:nowrap; text-overflow:ellipsis; }

.tke-main { display:grid; grid-template-columns:.75fr 1fr; gap:30px; margin-top:28px; align-items:stretch; }
.tke-event-area { display:flex; flex-direction:column; min-width:0; }
.tke-event-title { margin:0 0 18px; color:#151b26; font-size:36px; line-height:1.15; font-weight:800; letter-spacing:-1px; }
.tke-event-image { position:relative; width:100%; height:520px; flex:none; overflow:hidden; border:6px solid #fff; border-radius:24px; background:#111; box-shadow:0 20px 50px rgba(20,28,40,.14),0 4px 14px rgba(20,28,40,.07); isolation:isolate; }
.tke-event-image:before { content:""; position:absolute; z-index:2; inset:0; border-radius:18px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.2); pointer-events:none; }
.tke-event-image:after { content:""; position:absolute; z-index:2; left:0; right:0; bottom:0; height:20%; background:linear-gradient(180deg,transparent,rgba(17,24,39,.12)); pointer-events:none; }
.tke-event-image img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.tke-event-image:hover img { transform:scale(1.018); }
.tke-calendar-area { height:520px; display:flex; min-width:0; padding-top:0; margin-top:59px; }
@media(max-width:900px) {
	.tke-main { grid-template-columns:1fr; gap:22px; }
	.tke-calendar-area { height:auto; min-height:450px; margin-top:0; padding-top:0; }
	.tke-event-image { height:min(520px,70vw); }
	.tke-calendar-box { min-height:450px; }
}
@media(max-width:600px) {
	.tke-event-title { margin-bottom:15px; font-size:29px; }
	.tke-event-image { height:420px; border-radius:16px; }
	.tke-calendar-box { min-height:400px; border-radius:16px; }
}

.tke-calendar-box { flex:1; min-width:0; min-height:0; display:flex; flex-direction:column; background:#fff; border:1px solid #e5e9ef; border-radius:24px; padding:26px 28px 28px; box-shadow:0 16px 40px rgba(15,23,42,.065); overflow:hidden; }
.tke-calendar-header { flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:20px; margin-bottom:15px; border-bottom:1px solid #edf0f3; }
.tke-calendar-days { flex:1; display:grid; grid-template-columns:repeat(7,1fr); grid-template-rows:repeat(6,1fr); gap:8px; min-height:0; }
.tke-calendar-title { display:flex; align-items:center; gap:12px; }
.tke-calendar-title-icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; flex:0 0 42px; border-radius:13px; background:#fff1e8; color:#ff6600; font-size:17px; }
.tke-calendar-title > div:last-child { display:flex; flex-direction:column; gap:5px; }
.tke-calendar-title span { color:#9aa3af; font-size:10px; font-weight:700; letter-spacing:.7px; }
.tke-calendar-title strong { color:#111827; font-size:14px; font-weight:800; }
.tke-calendar-nav { display:flex; align-items:center; gap:13px; }
.tke-calendar-nav strong { min-width:105px; color:#111827; font-size:14px; font-weight:800; text-align:center; }
.tke-calendar-nav button { width:36px; height:36px; display:flex; align-items:center; justify-content:center; padding:0; border:1px solid #e4e8ed; border-radius:10px; background:#fff; color:#64748b; font-size:11px; cursor:pointer; transition:.2s ease; }
.tke-calendar-nav button:hover { border-color:#ff6600; background:#fff6f0; color:#ff6600; transform:translateY(-1px); }
.tke-calendar-week { display:grid; grid-template-columns:repeat(7,1fr); gap:7px; margin-bottom:7px; }
.tke-calendar-week span { display:flex; align-items:center; justify-content:center; height:28px; color:#000; font-size:10px; font-weight:800;}
.tke-calendar-day { position:relative; width:100%; height:100%; min-height:44px; display:flex; align-items:center; justify-content:center; padding:0; border:1px solid transparent; border-radius:14px; background:transparent; color:#697586; font-size:13px; font-weight:700; outline:none!important; transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease; }
button.tke-calendar-day.available { position:relative; width:calc(100% - 8px); height:calc(100% - 8px); min-height:50px; align-self:center; justify-self:center; border:1px solid #ffd6bd; border-radius:15px; background:linear-gradient(145deg,#fffaf7 0%,#fff4ed 100%); color:#e85d04; font-size:14px; font-weight:800; cursor:pointer; box-shadow:0 4px 12px rgba(255,102,0,.055); }
button.tke-calendar-day.available::before { content:""; position:absolute; inset:3px; border:1px solid rgba(255,102,0,.055); border-radius:11px; pointer-events:none; }
button.tke-calendar-day.available::after { content:""; position:absolute; left:50%; bottom:8px; width:4px; height:4px; border-radius:50%; background:#ff6600; transform:translateX(-50%); box-shadow:0 0 0 3px rgba(255,102,0,.08); }
button.tke-calendar-day.available:hover { border-color:#ff9d5c; background:#fff; color:#ff6600; transform:translateY(-2px); box-shadow:0 9px 20px rgba(255,102,0,.13); }
button.tke-calendar-day.selected { border-color:#ff6600; background:linear-gradient(145deg,#ff7a1a,#ff5c00); color:#fff; transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,102,0,.25); }
button.tke-calendar-day.selected::before { border-color:rgba(255,255,255,.22); }
button.tke-calendar-day.selected::after { background:#fff; box-shadow:0 0 0 3px rgba(255,255,255,.18); }
button.tke-calendar-day.selected:hover { border-color:#ff6600; background:linear-gradient(145deg,#ff7a1a,#ff5c00); color:#fff; transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,102,0,.25); }
button.tke-calendar-day.disabled { background:transparent; color:#696969; cursor:default; }
.tke-calendar-day.other-month { color:#d7dce3db; font-weight:600; }
@media(max-width:900px) {
	.tke-calendar-box { padding:22px; border-radius:18px; }
}
@media(max-width:600px) {
	.tke-calendar-box { padding:18px 14px; }
	.tke-calendar-header { gap:10px; }
	.tke-calendar-title-icon { width:38px; height:38px; flex-basis:38px; }
	.tke-calendar-title span { font-size:9px; }
	.tke-calendar-title strong { font-size:15px; }
	.tke-calendar-nav { gap:6px; }
	.tke-calendar-nav strong { min-width:82px; font-size:12px; }
	.tke-calendar-nav button { width:32px; height:32px; }
	.tke-calendar-week,.tke-calendar-days { gap:4px; }
	.tke-calendar-day { height:40px; border-radius:9px; font-size:12px; }
}

.tke-bottom-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:30px; margin-top:30px; align-items:start; }
.tke-bottom-left,.tke-bottom-right { min-width:0; }
@media(max-width:900px) {
	.tke-bottom-grid { grid-template-columns:1fr; gap:22px; }
}
@media(max-width:600px) {
	.tke-bottom-grid { gap:18px; margin-top:22px; padding-bottom:40px; }
}
.tke-detail-card { position:relative; overflow:hidden; background:#fff; border:1px solid #e6eaf0; border-radius:22px; padding:28px 30px 24px; box-shadow:0 12px 35px rgba(15,23,42,.055); }
.tke-detail-header { display:flex; align-items:center; gap:13px; padding-bottom:20px; margin-bottom:24px; border-bottom:1px solid #edf0f3; }
.tke-detail-icon { width:46px; height:46px; flex:0 0 46px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:linear-gradient(135deg,#fff3ea,#ffe9d9); color:#ff6600; font-size:19px; }
.tke-detail-heading { display:flex; flex-direction:column; gap:5px; }
.tke-detail-heading span { color:#9aa3af; font-size:10px; line-height:1; font-weight:800; letter-spacing:.7px; }
.tke-detail-heading h2 { margin:0; color:#172033; font-size:19px; line-height:1.25; font-weight:800; letter-spacing:-.4px; }
.tke-detail-body { position:relative; max-height:350px; overflow:hidden; transition:max-height .4s ease; }
.tke-detail-body:not(.expanded).has-more:after { content:""; position:absolute; z-index:1; bottom:0; left:0; right:0; height:95px; background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 95%); pointer-events:none; }
.tke-detail-body.expanded { max-height:none; }
.tke-detail-content { color:#536174; font-size:15px; line-height:1.85; overflow-wrap:anywhere; }
.tke-detail-content p { margin:0 0 18px; }
.tke-detail-content p:last-child { margin-bottom:0; }
.tke-detail-content strong,.tke-detail-content b { color:#1c2736; font-weight:700; }
.tke-detail-content a { color:#ff6600; text-decoration:none; font-weight:600; }
.tke-detail-content a:hover { text-decoration:underline; }
.tke-detail-content ul,.tke-detail-content ol { margin:15px 0; padding-left:24px; }
.tke-detail-content li { margin-bottom:8px; }
.tke-detail-content img { max-width:100%; height:auto; border-radius:12px; }
.tke-detail-content iframe { max-width:100%; }
.tke-detail-footer { padding-top:12px; }
.tke-detail-toggle { width:100%; min-height:46px; display:flex; align-items:center; justify-content:center; gap:10px; border:1px solid #ffddc7; border-radius:12px; background:linear-gradient(135deg,#fffaf6,#fff3ea); color:#f56600; font-size:13px; font-weight:800; cursor:pointer; transition:all .2s ease; }
.tke-detail-toggle:hover { border-color:#ff6600; background:#fff0e4; color:#e65c00; }
.tke-detail-toggle i { font-size:11px; transition:transform .25s ease; }
.tke-detail-toggle.active i { transform:rotate(180deg); }
@media(max-width:600px) {
	.tke-detail-card { padding:22px 20px 20px; border-radius:17px; }
	.tke-detail-header { padding-bottom:17px; margin-bottom:20px; }
	.tke-detail-icon { width:42px; height:42px; flex-basis:42px; }
	.tke-detail-heading h2 { font-size:17px; }
	.tke-detail-content { font-size:14px; line-height:1.75; }
	.tke-detail-body { max-height:300px; }
}
.tke-org-card { position:relative; overflow:hidden; background:#fff; border:1px solid #e6eaf0; border-radius:22px; box-shadow:0 12px 35px rgba(15,23,42,.055); transition:box-shadow .25s ease; }
.tke-org-card:hover { box-shadow:0 18px 45px rgba(15,23,42,.09); }
.tke-org-cover { position:relative; height:110px; padding:20px 23px; overflow:hidden; background:linear-gradient(120deg,#192337 0%,#273752 65%,#34445e 100%); }
.tke-org-cover:before { content:""; position:absolute; width:180px; height:180px; right:-55px; top:-105px; border:1px solid rgba(255,255,255,.12); border-radius:50%; }
.tke-org-cover:after { content:""; position:absolute; width:125px; height:125px; right:15px; top:-75px; border:1px solid rgba(255,255,255,.09); border-radius:50%; }
.tke-org-cover-glow { position:absolute; width:200px; height:150px; right:-45px; bottom:-95px; border-radius:50%; background:#ff6600; filter:blur(75px); opacity:.48; }
.tke-org-cover-label { position:relative; z-index:1; display:inline-flex; align-items:center; gap:8px; color:#fff; font-size:10px; font-weight:800; letter-spacing:.8px; }
.tke-org-cover-label i { color:#ff8a3d; font-size:12px; }
.tke-org-cover-pattern { position:absolute; right:27px; top:26px; color:rgba(255,255,255,.09); font-size:55px; transform:rotate(-25deg); }
.tke-org-content { position:relative; padding:0 24px 24px; }
.tke-org-logo { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; width:82px; height:82px; margin-top:-43px; overflow:hidden; border:5px solid #fff; border-radius:20px; background:#fff; box-shadow:0 7px 20px rgba(15,23,42,.13); }
.tke-org-logo img { display:block; width:100%; height:100%; object-fit:contain; }
.tke-org-logo-fallback { display:flex; align-items:center; justify-content:center; width:100%; height:100%; border-radius:14px; background:linear-gradient(135deg,#fff0e4,#ffdbc2); color:#ff6600; font-size:35px; font-weight:900; }
.tke-org-identity { padding-top:15px; padding-bottom:21px; }
.tke-org-eyebrow { display:block; margin-bottom:7px; color:#9ca5b3; font-size:10px; font-weight:800; letter-spacing:.65px; }
.tke-org-identity h3 { margin:0 0 8px; color:#172033; font-size:21px; font-weight:800; line-height:1.3; overflow-wrap:anywhere; }
.tke-org-identity p { margin:0; color:#8793a4; font-size:12px; line-height:1.6; }
.tke-org-social-section { padding:18px 0 21px; border-top:1px solid #edf0f4; }
.tke-org-social-title { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px; color:#657185; font-size:12px; font-weight:700; }
.tke-org-social-title > i { color:#b0bac7; font-size:11px; }
.tke-org-socials { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.tke-org-social { display:flex; align-items:center; justify-content:center; width:43px; height:43px; border:1px solid #e9edf2; border-radius:12px; background:#f8fafc; color:#58677a; font-size:17px; text-decoration:none!important; transition:all .2s ease; }
.tke-org-social:hover { transform:translateY(-3px); background:#fff; box-shadow:0 6px 15px rgba(15,23,42,.09); }
.tke-org-social-instagram:hover { color:#e1306c; border-color:#f6c6d8; background:#fff5f9; }
.tke-org-social-facebook:hover { color:#1877f2; border-color:#c7defd; background:#f3f8ff; }
.tke-org-social-linkedin:hover { color:#0a66c2; border-color:#c5dff8; background:#f2f8ff; }
.tke-org-social-twitter:hover { color:#111827; border-color:#cbd5e1; background:#f1f5f9; }
.tke-org-social-youtube:hover { color:#ff0033; border-color:#ffc6d2; background:#fff4f6; }
.tke-org-social-web:hover { color:#ff6600; border-color:#ffd7bd; background:#fff5ee; }
.tke-org-profile-btn { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:49px; padding:0 17px; border:1px solid #ff6600; border-radius:13px; background:linear-gradient(120deg,#ff7619,#ff5c00); color:#fff!important; font-size:13px; font-weight:800; text-decoration:none!important; box-shadow:0 7px 17px rgba(255,102,0,.18); transition:all .2s ease; }
.tke-org-profile-btn span { display:flex; align-items:center; gap:10px; }
.tke-org-profile-btn > i { font-size:13px; transition:transform .2s ease; }
.tke-org-profile-btn:hover { background:linear-gradient(120deg,#ff852d,#ff6600); box-shadow:0 10px 22px rgba(255,102,0,.25); transform:translateY(-2px); }
.tke-org-profile-btn:hover > i { transform:translateX(3px); }
@media(max-width:600px) {
	.tke-org-card { border-radius:17px; }
	.tke-org-cover { height:100px; padding:18px 20px; }
	.tke-org-content { padding:0 20px 20px; }
	.tke-org-logo { width:75px; height:75px; margin-top:-39px; }
	.tke-org-identity h3 { font-size:19px; }
	.tke-org-social { width:41px; height:41px; }
}
.tke-org-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.tke-org-stat { display:flex; align-items:center; gap:11px; min-width:0; padding:15px 12px; border:1px solid #edf0f4; border-radius:14px; background:linear-gradient(145deg,#fafbfd,#fff); transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.tke-org-stat:hover { border-color:#ffd7bc; transform:translateY(-2px); box-shadow:0 7px 18px rgba(15,23,42,.045); }
.tke-org-stat-icon { width:39px; height:39px; flex:0 0 39px; display:flex; align-items:center; justify-content:center; border-radius:12px; font-size:15px; }
.tke-org-stat-icon.events { background:#fff0e5; color:#ff6600; }
.tke-org-stat-icon.participants { background:#eaf4ff; color:#1e9ff2; }
.tke-org-stat-info { display:flex; flex-direction:column; gap:3px; min-width:0; }
.tke-org-stat-info strong { color:#172033; font-size:21px; line-height:1.1; font-weight:850; letter-spacing:-.5px; font-variant-numeric:tabular-nums; }
.tke-org-stat-info span { color:#8b96a6; font-size:10px; line-height:1.3; font-weight:650; }

@media(max-width:1100px) {
	.tke-org-stat { gap:8px; padding:12px 9px; }
	.tke-org-stat-icon { width:34px; height:34px; flex-basis:34px; font-size:13px; }
	.tke-org-stat-info strong { font-size:18px; }
	.tke-org-stat-info span { font-size:9px; }
}

@media(max-width:600px) {
	.tke-org-stats { gap:10px; }
	.tke-org-stat { padding:13px 11px; }
	.tke-org-stat-info strong { font-size:20px; }
	.tke-org-stat-info span { font-size:10px; }
}
.tke-bottom-grid { align-items:start; }
.tke-bottom-left,.tke-bottom-right { min-width:0; }
.tke-detail-card { display:flex; flex-direction:column; }
.tke-detail-header { flex-shrink:0; }
.tke-detail-body { flex:1 1 auto; min-height:0; }
.tke-detail-footer { flex-shrink:0; margin-top:auto; }

.tke-info-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; align-items:start; margin-top:30px; padding-bottom:65px; }
.tke-info-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:24px; overflow:hidden; background:#fff; border:1px solid #e7ebf1; border-radius:23px; box-shadow:0 12px 35px rgba(15,23,42,.055); }
.tke-info-rules { border-top-color:#ffe1cf; }
.tke-info-conditions { border-top-color:#d4e7ff; }
.tke-info-header { position:relative; display:flex; align-items:center; gap:15px; min-height:67px; margin-bottom:19px; }
.tke-info-header-icon { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; width:58px; height:58px; flex:0 0 58px; border-radius:16px; font-size:23px; }
.tke-info-orange { background:linear-gradient(135deg,#fff1e8,#ffe7d6); color:#ff6600; }
.tke-info-blue { background:linear-gradient(135deg,#eaf5ff,#deecff); color:#147bd1; }
.tke-info-header-text { position:relative; z-index:1; min-width:0; }
.tke-info-header-text span { display:block; margin-bottom:5px; color:#8a96a8; font-size:10px; font-weight:800; letter-spacing:.55px; }
.tke-info-header-text h2 { margin:0; color:#172033; font-size:20px; font-weight:850; line-height:1.3; letter-spacing:-.5px; }
.tke-info-watermark { position:absolute; top:-17px; right:-7px; color:rgba(255,102,0,.055); font-size:90px; transform:rotate(-15deg); pointer-events:none; }
.tke-info-conditions .tke-info-watermark { color:rgba(30,159,242,.065); }
.tke-info-description { margin:0 0 18px; color:#728096; font-size:12px; line-height:1.7; }
.tke-info-rules-list { display:flex; flex-direction:column; gap:8px; }
.tke-info-rule-item { display:flex; align-items:center; gap:13px; min-width:0; padding:10px 12px; border:1px solid #edf0f4; border-radius:12px; background:linear-gradient(120deg,#f9fafc,#fff); transition:background .2s ease,border-color .2s ease; }
.tke-info-rule-item:hover { background:#fff9f5; border-color:#ffd9c0; }
.tke-info-rule-icon { display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:0 0 36px; border-radius:10px; background:#fff0e7; color:#ff6600; font-size:14px; }
.tke-info-rule-item p { flex:1; min-width:0; margin:0; color:#58667a; font-size:12px; line-height:1.65; font-weight:500; overflow-wrap:anywhere; }
.tke-info-conditions-list { display:flex; flex-direction:column; gap:15px; padding-bottom:20px;}
.tke-info-condition-item { display:flex; align-items:flex-start; gap:15px; padding:15px; border:1px solid #edf0f4; border-radius:13px; background:linear-gradient(120deg,#f9fafc,#fff); }
.tke-info-condition-icon { display:flex; align-items:center; justify-content:center; width:49px; height:49px; flex:0 0 49px; border-radius:13px; background:#e8f3ff; color:#147bd1; font-size:19px; }
.tke-info-condition-text { flex:1; min-width:0; }
.tke-info-condition-text h3 { margin:0 0 6px; color:#172033; font-size:13px; font-weight:800; line-height:1.4; }
.tke-info-condition-text p { margin:0; color:#66758b; font-size:12px; line-height:1.7; font-weight:500; overflow-wrap:anywhere; }
.tke-info-contact { display:flex; align-items:center; gap:13px; margin-top:0; padding:15px; border:1px solid #dcecff; border-radius:14px; background:linear-gradient(120deg,#f0f7ff,#eaf4ff); }
.tke-info-contact-icon { display:flex; align-items:center; justify-content:center; width:49px; height:49px; flex:0 0 49px; border-radius:12px; background:#fff; color:#147bd1; font-size:20px; }
.tke-info-contact-text { display:flex; flex:1; flex-direction:column; gap:5px; min-width:0; }
.tke-info-contact-text strong { color:#172033; font-size:12px; line-height:1.4; font-weight:800; }
.tke-info-contact-text span { color:#75869c; font-size:11px; line-height:1.5; }
.tke-info-contact-btn { display:flex; align-items:center; justify-content:center; gap:9px; flex-shrink:0; min-height:43px; padding:0 13px; border-radius:11px; background:linear-gradient(120deg,#1e9ff2,#0875dc); color:#fff!important; font-size:11px; font-weight:800; text-decoration:none!important; box-shadow:0 6px 15px rgba(30,159,242,.2); transition:transform .2s ease,box-shadow .2s ease; }
.tke-info-contact-btn:hover { transform:translateY(-2px); box-shadow:0 9px 20px rgba(30,159,242,.3); }
.tke-info-contact-btn i { font-size:12px; }
.tke-info-empty { display:flex; flex:1; flex-direction:column; align-items:center; justify-content:center; min-height:290px; padding:25px 20px; text-align:center; }
.tke-info-empty-icon { display:flex; align-items:center; justify-content:center; width:76px; height:76px; margin-bottom:20px; border-radius:22px; background:#fff0e7; color:#ff6600; font-size:30px; }
.tke-info-empty h3 { margin:0 0 10px; color:#172033; font-size:17px; font-weight:800; }
.tke-info-empty p { max-width:400px; margin:0; color:#8190a3; font-size:13px; line-height:1.8; }
@media(max-width:1100px) {
	.tke-info-grid { grid-template-columns:1fr; gap:22px; }
	.tke-info-card { padding:24px; }
}
@media(max-width:600px) {
	.tke-info-grid { gap:18px; margin-top:22px; margin-bottom:40px; }
	.tke-info-card { padding:19px 16px; border-radius:18px; }
	.tke-info-header { gap:11px; }
	.tke-info-header-icon { width:45px; height:45px; flex-basis:45px; border-radius:12px; font-size:18px; }
	.tke-info-header-text span { font-size:9px; }
	.tke-info-header-text h2 { font-size:17px; }
	.tke-info-watermark { font-size:65px; }
	.tke-info-rule-item { gap:10px; padding:10px; }
	.tke-info-rule-icon { width:32px; height:32px; flex-basis:32px; font-size:12px; }
	.tke-info-rule-item p { font-size:12px; }
	.tke-info-condition-item { gap:11px; padding:12px; }
	.tke-info-condition-icon { width:39px; height:39px; flex-basis:39px; font-size:16px; }
	.tke-info-contact { flex-wrap:wrap; }
	.tke-info-contact-text { flex-basis:calc(100% - 65px); }
	.tke-info-contact-btn { width:100%; }
}
.tke-info-grid.tke-info-no-rules { grid-template-columns:minmax(0,1fr); }
.tke-info-no-rules .tke-info-conditions-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tke-info-no-rules .tke-info-condition-item { height:100%; }
.tke-info-no-rules .tke-info-contact { margin-top:20px; }

@media(max-width:700px) {
	.tke-info-no-rules .tke-info-conditions-list { grid-template-columns:1fr; }
}

.tke-comment-section { margin-top:30px; padding:28px 30px 30px; background:#fff; border:1px solid #e7ebf1; border-radius:23px; box-shadow:0 12px 35px rgba(15,23,42,.055); }
.tke-comment-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:23px; margin-bottom:24px; border-bottom:1px solid #edf0f4; }
.tke-comment-heading-left { display:flex; align-items:center; gap:15px; }
.tke-comment-heading-icon { display:flex; align-items:center; justify-content:center; width:54px; height:54px; flex:0 0 54px; border-radius:16px; background:#fff0e6; color:#ff6600; font-size:23px; }
.tke-comment-heading-left span { display:block; margin-bottom:6px; color:#9aa3af; font-size:10px; font-weight:800; letter-spacing:.7px; }
.tke-comment-heading-left h2 { margin:0; color:#172033; font-size:21px; font-weight:850; letter-spacing:-.5px; }
.tke-comment-heading-left p { margin:7px 0 0; color:#8793a4; font-size:12px; }
.tke-comment-add-btn { display:flex; align-items:center; justify-content:center; gap:11px; flex-shrink:0; min-height:46px; padding:0 19px; border:0; border-radius:12px; background:linear-gradient(120deg,#ff791c,#ff5c00); color:#fff; font-size:12px; font-weight:800; cursor:pointer; box-shadow:0 7px 18px rgba(255,102,0,.19); transition:.2s ease; }
.tke-comment-add-btn:hover { color:#fff; transform:translateY(-2px); box-shadow:0 10px 23px rgba(255,102,0,.27); }
.tke-comment-add-btn i:last-child { font-size:11px; }
.tke-comment-layout { display:grid; grid-template-columns:300px minmax(0,1fr); gap:25px; align-items:start; }
.tke-comment-summary { padding:24px; border:1px solid #edf0f4; border-radius:17px; background:linear-gradient(155deg,#fffaf6,#fff 48%,#f9fbfd); }
.tke-comment-summary-label { color:#9aa3af; font-size:10px; font-weight:800; letter-spacing:.6px; }
.tke-comment-score { margin:15px 0 6px; color:#172033; font-size:56px; line-height:1; font-weight:850; letter-spacing:-2px; }
.tke-comment-score span { color:#a8b1bf; font-size:18px; font-weight:600; letter-spacing:0; margin-left:5px; }
.tke-comment-score-stars { display:flex; gap:5px; color:#ffab00; font-size:18px; }
.tke-comment-summary > p { margin:11px 0 24px; color:#8a96a8; font-size:12px; }
.tke-comment-summary > p strong { color:#536174; }
.tke-comment-rating-bars { display:flex; flex-direction:column; gap:12px; padding-top:21px; border-top:1px solid #edf0f4; }
.tke-comment-rating-bars > div { display:flex; align-items:center; gap:12px; }
.tke-comment-rating-bars > div > span { display:flex; align-items:center; gap:5px; width:30px; flex-shrink:0; color:#657185; font-size:12px; font-weight:700; }
.tke-comment-rating-bars > div > span i { color:#ffab00; font-size:10px; }
.tke-comment-bar { height:7px; flex:1; overflow:hidden; border-radius:20px; background:#edf0f4; }
.tke-comment-bar b { display:block; height:100%; border-radius:20px; background:linear-gradient(90deg,#ffb13b,#ff7600); }
.tke-comment-rating-bars small { width:19px; color:#8a96a8; font-size:11px; text-align:right; }
.tke-comment-summary-note { display:flex; align-items:flex-start; gap:9px; margin-top:24px; padding:13px; border-radius:11px; background:#fff3e9; color:#a66a42; font-size:11px; line-height:1.6; }
.tke-comment-summary-note i { margin-top:3px; color:#ff6600; }
.tke-comment-list { min-width:0; }
.tke-comment-list-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 0 15px; border-bottom:1px solid #edf0f4; }
.tke-comment-list-top strong { color:#172033; font-size:15px; font-weight:800; }
.tke-comment-list-top span { color:#26a06b; font-size:11px; font-weight:700; }
.tke-comment-list-top span i { margin-right:5px; }
.tke-comment-item { display:flex; align-items:flex-start; gap:15px; padding:22px 0; border-bottom:1px solid #edf0f4; }
.tke-comment-avatar { display:flex; align-items:center; justify-content:center; width:47px; height:47px; flex:0 0 47px; border-radius:14px; background:#fff0e5; color:#ff6600; font-size:14px; font-weight:850; }
.tke-comment-avatar.blue { background:#e9f4ff; color:#1e9ff2; }
.tke-comment-item-content { flex:1; min-width:0; }
.tke-comment-author-row { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.tke-comment-author-row strong { color:#172033; font-size:13px; font-weight:800; }
.tke-comment-author-row time { color:#a1aab8; font-size:11px; }
.tke-comment-item-stars { display:flex; gap:4px; margin:9px 0; color:#ffab00; font-size:12px; }
.tke-comment-item-content p { margin:0; color:#657185; font-size:13px; line-height:1.85; overflow-wrap:anywhere; }
.tke-comment-more { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:45px; margin-top:20px; border:1px solid #e7ebf1; border-radius:12px; background:#f8fafc; color:#66758b; font-size:12px; font-weight:800; cursor:pointer; transition:.2s ease; }
.tke-comment-more:hover:not(:disabled) { border-color:#ffcfb1; background:#fff7f0; color:#ff6600; }
.tke-comment-more:disabled { opacity:.5; cursor:default; }
.tke-comment-modal { position:fixed; z-index:10050; inset:0; display:none; align-items:center; justify-content:center; padding:20px; }
.tke-comment-modal.is-open { display:flex; }
.tke-comment-modal-backdrop { position:absolute; inset:0; background:rgba(15,23,42,.65); backdrop-filter:blur(5px); }
.tke-comment-modal-dialog { position:relative; z-index:1; width:100%; max-width:490px; max-height:calc(100vh - 40px); overflow-y:auto; padding:32px; border:1px solid #eef0f4; border-radius:24px; background:#fff; box-shadow:0 25px 90px rgba(15,23,42,.25); }
.tke-comment-modal-close { position:absolute; top:20px; right:20px; display:flex; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid #edf0f4; border-radius:10px; background:#f8fafc; color:#8793a4; cursor:pointer; }
.tke-comment-modal-icon { display:flex; align-items:center; justify-content:center; width:55px; height:55px; margin-bottom:19px; border-radius:16px; background:#fff0e5; color:#ff6600; font-size:24px; }
.tke-comment-modal-eyebrow { color:#ff6600; font-size:10px; font-weight:850; letter-spacing:1px; }
.tke-comment-modal-dialog h3 { margin:7px 0; color:#172033; font-size:24px; font-weight:850; }
.tke-comment-modal-desc { margin:0 0 25px; color:#8793a4; font-size:12px; line-height:1.7; }
.tke-comment-form-field { margin-bottom:19px; }
.tke-comment-form-field > label { display:block; margin-bottom:9px; color:#334155; font-size:12px; font-weight:800; }
.tke-comment-form-field input[type=text],.tke-comment-form-field textarea { display:block; width:100%; padding:13px 15px; border:1px solid #e2e8f0; border-radius:12px; outline:none; background:#fafbfd; color:#172033; font-size:13px; transition:.2s ease; }
.tke-comment-form-field input:focus,.tke-comment-form-field textarea:focus { border-color:#ff9e5c; background:#fff; box-shadow:0 0 0 3px rgba(255,102,0,.08); }
.tke-comment-form-field textarea { min-height:120px; resize:vertical; }
.tke-comment-form-field > small { display:block; margin-top:7px; color:#a0aab8; font-size:10px; text-align:right; }
.tke-comment-star-picker { display:flex; gap:7px; }
.tke-comment-star-picker button { padding:4px; border:0; background:transparent; color:#dce2e9; font-size:29px; cursor:pointer; transition:transform .15s ease,color .15s ease; }
.tke-comment-star-picker button.active { color:#ffad16; }
.tke-comment-star-picker button:hover { transform:scale(1.12); }
.tke-comment-rating-label { display:block; margin-top:7px; color:#a0aab8; font-size:11px; }
.tke-comment-form-notice { display:flex; align-items:flex-start; gap:9px; margin-bottom:18px; padding:12px; border-radius:11px; background:#eff6ff; color:#557496; font-size:11px; line-height:1.6; }
.tke-comment-form-notice i { margin-top:2px; color:#1e9ff2; }
.tke-comment-submit { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:49px; border:0; border-radius:12px; background:linear-gradient(120deg,#ff791c,#ff5c00); color:#fff; font-size:13px; font-weight:800; cursor:pointer; box-shadow:0 7px 18px rgba(255,102,0,.2); }
.tke-comment-submit:hover { background:#f56600; }
@media(max-width:900px) { .tke-comment-layout { grid-template-columns:1fr; } .tke-comment-summary { max-width:none; } }
@media(max-width:600px) { .tke-comment-section { padding:20px 16px; border-radius:18px; } .tke-comment-heading { flex-direction:column; align-items:stretch; } .tke-comment-heading-left h2 { font-size:17px; } .tke-comment-heading-icon { width:45px; height:45px; flex-basis:45px; font-size:19px; } .tke-comment-add-btn { width:100%; } .tke-comment-summary { padding:19px; } .tke-comment-list-top { flex-wrap:wrap; } .tke-comment-item { gap:11px; } .tke-comment-avatar { width:39px; height:39px; flex-basis:39px; font-size:12px; } .tke-comment-author-row { align-items:flex-start; flex-direction:column; gap:4px; } .tke-comment-modal-dialog { padding:24px 20px; border-radius:18px; } }

.tke-comment-list { display:flex; flex-direction:column; min-width:0; height:350px; overflow:hidden; }
.tke-comment-list-top { flex:0 0 auto; }
.tke-comment-scroll { flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; padding-right:12px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#ffbf99 #f1f4f8; }
.tke-comment-scroll::-webkit-scrollbar { width:6px; }
.tke-comment-scroll::-webkit-scrollbar-track { background:#f1f4f8; border-radius:10px; }
.tke-comment-scroll::-webkit-scrollbar-thumb { background:#ffbf99; border-radius:10px; }
.tke-comment-scroll::-webkit-scrollbar-thumb:hover { background:#ff6600; }
.tke-comment-item:last-child { border-bottom:0; }
.tke-comment-score-stars .fa-regular { color:#dce2e9; }
.tke-comment-score-stars .tke-star-half { background:linear-gradient(90deg,#ffab00 50%,#dce2e9 50%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.tke-comment-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:100%; padding:35px 20px; text-align:center; }
.tke-comment-empty-icon { display:flex; align-items:center; justify-content:center; width:74px; height:74px; margin-bottom:19px; border-radius:21px; background:#fff1e8; color:#ff6600; font-size:31px; }
.tke-comment-empty h3 { margin:0 0 10px; color:#172033; font-size:17px; font-weight:800; }
.tke-comment-empty p { max-width:340px; margin:0 0 21px; color:#8190a3; font-size:12px; line-height:1.8; }
.tke-comment-empty-btn { display:flex; align-items:center; justify-content:center; gap:9px; padding:12px 19px; border:1px solid #ffd5bb; border-radius:11px; background:#fff4ed; color:#ff6600; font-size:12px; font-weight:800; cursor:pointer; }
.tke-comment-empty-btn:hover { background:#ff6600; color:#fff; }
@media(max-width:900px) { .tke-comment-list { height:400px; } }
@media(max-width:600px) { .tke-comment-list { height:370px; } .tke-comment-scroll { padding-right:6px; } }

.tke-comment-reply { display:flex; align-items:flex-start; gap:10px; margin-top:14px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.tke-comment-reply-arrow { flex:0 0 16px; margin-top:3px; color:#b6c0cd; font-size:13px; transform:scaleX(-1); }
.tke-comment-reply-content { flex:1; min-width:0; }
.tke-comment-reply-header { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 4px; }
.tke-comment-reply-header strong { color:#273449; font-size:12px; font-weight:800; }
.tke-comment-reply-header span { padding:0; border:0; background:transparent; color:#ff6600; font-size:10px; font-weight:700; }
.tke-comment-reply-content p { margin:0; color:#7a8798; font-size:12px; line-height:1.7; font-weight:400; }
@media(max-width:600px) { .tke-comment-reply { gap:8px; margin-top:12px; } .tke-comment-reply-header strong { font-size:11px; } .tke-comment-reply-content p { font-size:11px; } }

.tke-calendar-tooltip { position:fixed; z-index:10060; width:310px; max-width:calc(100vw - 24px); padding:16px; border:1px solid #e8edf3; border-radius:16px; background:#fff; box-shadow:0 18px 50px rgba(15,23,42,.17),0 4px 12px rgba(15,23,42,.05); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-5px); transition:opacity .15s ease,transform .15s ease,visibility .15s; }
.tke-calendar-tooltip.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
.tke-calendar-tooltip:before { content:""; position:absolute; top:-6px; left:var(--tke-arrow-left,50%); width:11px; height:11px; border-top:1px solid #e8edf3; border-left:1px solid #e8edf3; background:#fff; transform:translateX(-50%) rotate(45deg); }
.tke-tooltip-entry + .tke-tooltip-entry { margin-top:13px; padding-top:13px; border-top:1px solid #edf0f4; }
.tke-tooltip-title { display:flex; align-items:center; gap:10px; margin-bottom:13px; }
.tke-tooltip-title-icon { display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:0 0 36px; border-radius:10px; background:#fff0e6; color:#ff6600; font-size:15px; }
.tke-tooltip-title strong { display:block; color:#172033; font-size:13px; font-weight:800; }
.tke-tooltip-title small { display:block; margin-top:4px; color:#9aa3af; font-size:10px; font-weight:700; }
.tke-tooltip-place { display:flex; align-items:flex-start; gap:8px; }
.tke-tooltip-place > i { margin-top:3px; color:#ff6600; font-size:12px; }
.tke-tooltip-place strong { display:block; margin-bottom:5px; color:#273449; font-size:12px; font-weight:800; }
.tke-tooltip-place p { margin:0; color:#7e8a9b; font-size:11px; line-height:1.7; overflow-wrap:anywhere; }
.tke-tooltip-footer { display:flex; justify-content:flex-end; margin-top:12px; }
.tke-tooltip-city { display:inline-flex; align-items:center; gap:5px; padding:5px 9px; border-radius:7px; background:#f1f5f9; color:#64748b; font-size:10px; font-weight:700; }
.tke-tooltip-city i { color:#ff6600; font-size:10px; }
@media(max-width:600px) { .tke-calendar-tooltip { width:280px; padding:13px; } }
.tke-calendar-tooltip.is-above:before { top:auto; bottom:-6px; border:0; border-right:1px solid #e8edf3; border-bottom:1px solid #e8edf3; }

.tke-ticket-panel { margin-top:30px; padding:28px 30px 30px; border:1px solid #e7ebf1; border-radius:23px; background:#fff; box-shadow:0 12px 35px rgba(15,23,42,.055); }
.tke-ticket-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:23px; }
.tke-ticket-eyebrow { display:block; margin-bottom:7px; color:#ff6600; font-size:10px; font-weight:800; letter-spacing:.8px; }
.tke-ticket-heading h2 { margin:0 0 7px; color:#172033; font-size:23px; font-weight:800; letter-spacing:-.5px; }
.tke-ticket-heading p { margin:0; color:#8793a4; font-size:12px; line-height:1.6; }
.tke-ticket-close { display:flex; align-items:center; justify-content:center; width:35px; height:35px; flex:0 0 35px; border:1px solid #e7ebf1; border-radius:10px; background:#f8fafc; color:#8b96a6; cursor:pointer; }
.tke-ticket-close:hover { border-color:#ffd4b8; background:#fff4ec; color:#ff6600; }
.tke-ticket-datebar { display:flex; align-items:center; gap:16px; padding:16px 19px; border:1px solid #edf0f4; border-radius:14px; background:#f8fafc; }
.tke-ticket-datebox { display:flex; flex:0 0 59px; flex-direction:column; align-items:center; justify-content:center; min-height:61px; border:1px solid #ffe0cb; border-radius:11px; background:#fff; }
.tke-ticket-datebox strong { color:#ff6600; font-size:24px; line-height:1.15; font-weight:850; }
.tke-ticket-datebox span { margin-top:3px; color:#e56a1b; font-size:10px; font-weight:800; }
.tke-ticket-event { display:flex; flex:1; flex-direction:column; gap:6px; min-width:0; }
.tke-ticket-event strong { color:#172033; font-size:15px; font-weight:800; }
.tke-ticket-event span { color:#78869a; font-size:12px; }
.tke-ticket-location { display:flex; align-items:center; gap:7px; color:#64748b; font-size:12px; font-weight:700; }
.tke-ticket-location i { color:#ff6600; font-size:12px; }
.tke-ticket-section-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:27px 0 14px; }
.tke-ticket-section-heading h3 { margin:0 0 5px; color:#172033; font-size:16px; font-weight:800; }
.tke-ticket-section-heading p { margin:0; color:#8995a5; font-size:12px; }
.tke-ticket-section-heading > span { color:#8b96a6; font-size:11px; font-weight:700; white-space:nowrap; }
.tke-ticket-list { overflow:hidden; border:1px solid #e8edf3; border-radius:14px; }
.tke-ticket-row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 22px; background:#fff; transition:background .2s ease; }
.tke-ticket-row + .tke-ticket-row { border-top:1px solid #edf0f4; }
.tke-ticket-row:hover { background:#fcfcfd; }
.tke-ticket-info { display:flex; flex:1; flex-direction:column; gap:7px; min-width:0; }
.tke-ticket-info strong { color:#172033; font-size:14px; font-weight:800; }
.tke-ticket-info span { color:#8b96a6; font-size:12px; }
.tke-ticket-actions { display:flex; align-items:center; gap:32px; }
.tke-ticket-price { min-width:100px; color:#172033; font-size:17px; font-weight:850; text-align:right; white-space:nowrap; }
.tke-ticket-quantity { display:flex; align-items:center; justify-content:space-between; width:116px; height:39px; padding:4px; border:1px solid #e5e9ef; border-radius:10px; background:#f8fafc; }
.tke-ticket-quantity button { display:flex; align-items:center; justify-content:center; width:29px; height:29px; padding:0; border:0; border-radius:7px; background:#fff; color:#64748b; font-size:11px; cursor:pointer; }
.tke-ticket-quantity button:hover { background:#ff6600; color:#fff; }
.tke-ticket-qty { color:#172033; font-size:13px; font-weight:800; }
@media(max-width:700px) { .tke-ticket-panel { padding:20px 16px; border-radius:18px; } .tke-ticket-heading h2 { font-size:20px; } .tke-ticket-datebar { flex-wrap:wrap; gap:12px; padding:13px; } .tke-ticket-location { width:100%; padding-left:72px; } .tke-ticket-row { align-items:flex-start; flex-direction:column; gap:15px; padding:17px; } .tke-ticket-actions { justify-content:space-between; width:100%; gap:15px; } .tke-ticket-price { text-align:left; } .tke-ticket-footer { gap:12px; } .tke-ticket-continue { min-width:130px; padding:0 15px; } .tke-ticket-total strong { font-size:23px; } }

.tke-ticket-time { display:flex; align-items:center; gap:15px; flex-shrink:0; padding:11px 17px; border:1px solid #e7ebf1; border-radius:12px; background:#fff; }
.tke-ticket-time-item { display:flex; flex-direction:column; align-items:center; gap:5px; }
.tke-ticket-time-item span { color:#9aa5b4; font-size:9px; font-weight:800; letter-spacing:.6px; }
.tke-ticket-time-item strong { color:#172033; font-size:19px; font-weight:850; line-height:1.2; font-variant-numeric:tabular-nums; letter-spacing:-.4px; }
.tke-ticket-time-divider { display:flex; align-items:center; justify-content:center; width:25px; height:25px; border-radius:50%; background:#fff1e8; color:#ff6600; font-size:10px; }
@media(max-width:700px) { .tke-ticket-time { width:100%; justify-content:center; gap:22px; padding:12px; } .tke-ticket-time-item strong { font-size:18px; } }

.tke-ticket-info { gap:0; }
.tke-ticket-actions { gap:18px; }
.tke-ticket-quantity { flex:0 0 116px; }
.tke-ticket-quantity button.is-hidden { visibility:hidden; pointer-events:none; }
.tke-ticket-buy { display:flex; align-items:center; justify-content:center; gap:9px; min-width:125px; height:39px; padding:0 16px; border:0; border-radius:10px; background:#ff6600; color:#fff; font-size:12px; font-weight:800; cursor:pointer; transition:background .2s ease,box-shadow .2s ease; }
.tke-ticket-buy:hover { background:#e85d04; color:#fff; box-shadow:0 6px 15px rgba(255,102,0,.18); }
.tke-ticket-buy i { font-size:11px; }
.tke-ticket-empty { padding:28px 20px; color:#8793a4; font-size:13px; text-align:center; }
@media(max-width:700px) { .tke-ticket-actions { flex-wrap:wrap; justify-content:flex-start; gap:12px; } .tke-ticket-price { min-width:0; margin-right:auto; } .tke-ticket-buy { min-width:115px; } }
.tke-ticket-price i { margin-left:2px; font-size:14px; font-weight:800; }
.tke-ticket-price-value { font-variant-numeric:tabular-nums; }

.tke-ticket-info { gap:5px; }
.tke-ticket-seated { display:inline-flex; align-items:center; gap:6px; color:#8b96a6; font-size:11px; font-weight:500; }
.tke-ticket-seated i { color:#ff6600; font-size:10px; }
.tke-ticket-row-disabled { background:#fafbfc; }
.tke-ticket-row-disabled:hover { background:#fafbfc; }
.tke-ticket-row-disabled .tke-ticket-info strong { color:#7f8b9b; }
.tke-ticket-buy:disabled,.tke-ticket-buy-disabled { background:#e9edf2!important; color:#8995a5!important; cursor:not-allowed!important; box-shadow:none!important; }
.tke-ticket-buy:disabled:hover { background:#e9edf2!important; transform:none!important; }
.tke-ticket-quantity-disabled { opacity:.55; pointer-events:none; }
