/* Event Country booking result pages */
:root{
  --ecx-orange:#ff5001;
  --ecx-dark:#111827;
  --ecx-muted:#64748b;
  --ecx-line:rgba(15,23,42,.12);
  --ecx-soft:#fff7ed;
  --ecx-bg:#f8fafc;
  --ecx-radius:14px;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ecx-dark);
  background:linear-gradient(180deg,#fff 0%,#fff7ed 42%,#f8fafc 100%);
}
a{color:inherit;text-decoration:none}
.ecx-header{
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--ecx-line);
}
.ecx-header-inner{
  width:min(1180px,calc(100% - 32px));
  margin:auto;
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.ecx-brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:900;
  letter-spacing:-.02em;
}
.ecx-brand img{width:42px;height:42px;border-radius:10px;object-fit:contain}
.ecx-nav{
  display:flex;
  align-items:center;
  gap:18px;
  color:#475569;
  font-weight:700;
  font-size:14px;
}
.ecx-nav a:hover{color:var(--ecx-orange)}
.ecx-header-actions{display:flex;align-items:center;gap:10px}
.ecx-header-actions a{
  border:1px solid var(--ecx-line);
  border-radius:999px;
  padding:9px 13px;
  font-size:13px;
  font-weight:800;
  background:#fff;
}
.ecx-main{
  width:min(1100px,calc(100% - 32px));
  margin:0 auto;
  padding:44px 0 70px;
}
.ecx-result-shell{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
  align-items:start;
}
.ecx-result-card,.ecx-ticket-card,.ecx-help-card{
  background:#fff;
  border:1px solid var(--ecx-line);
  border-radius:var(--ecx-radius);
  box-shadow:0 22px 55px rgba(15,23,42,.08);
}
.ecx-result-card{padding:30px}
.ecx-status-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:#ecfdf5;
  color:#047857;
  font-weight:900;
  font-size:13px;
}
.ecx-status-badge.cancel{background:#fff7ed;color:#c2410c}
.ecx-status-badge.error{background:#fef2f2;color:#b91c1c}
.ecx-result-card h1{
  margin:16px 0 10px;
  font-size:clamp(32px,5vw,54px);
  line-height:1.02;
  letter-spacing:-.05em;
}
.ecx-result-card p{
  color:var(--ecx-muted);
  line-height:1.65;
  font-size:16px;
}
.ecx-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.ecx-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:12px;
  padding:13px 18px;
  font-weight:900;
  cursor:pointer;
}
.ecx-btn-primary{
  background:var(--ecx-orange);
  color:#fff;
  box-shadow:0 14px 26px rgba(255,80,1,.24);
}
.ecx-btn-secondary{
  background:#fff;
  border:1px solid var(--ecx-line);
  color:#0f172a;
}
.ecx-btn:disabled{opacity:.6;cursor:not-allowed}
.ecx-side-stack{display:grid;gap:16px}
.ecx-help-card{padding:20px}
.ecx-help-card h3{margin:0 0 8px;font-size:18px}
.ecx-help-card p,.ecx-help-card li{color:var(--ecx-muted);line-height:1.55}
.ecx-help-card ul{margin:10px 0 0;padding-left:18px}
.ecx-loader{
  padding:18px;
  border-radius:12px;
  background:#f8fafc;
  color:#64748b;
  border:1px dashed var(--ecx-line);
}
.ecx-ticket-list{
  display:grid;
  gap:16px;
  margin-top:22px;
}
.ecx-ticket-card{
  overflow:hidden;
}
.ecx-ticket-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:18px;
  background:linear-gradient(135deg,#111827,#334155);
  color:#fff;
}
.ecx-ticket-head img{
  width:46px;
  height:46px;
  border-radius:12px;
  background:#fff;
  padding:4px;
  object-fit:contain;
}
.ecx-ticket-head h2{
  margin:0;
  font-size:20px;
  line-height:1.15;
}
.ecx-ticket-body{
  display:grid;
  grid-template-columns:1fr 210px;
  gap:18px;
  padding:18px;
}
.ecx-ticket-meta{
  display:grid;
  gap:10px;
}
.ecx-ticket-meta div{
  padding-bottom:10px;
  border-bottom:1px solid rgba(15,23,42,.08);
}
.ecx-ticket-meta span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.ecx-ticket-meta strong{
  display:block;
  margin-top:3px;
  font-size:15px;
}
.ecx-qr-box{
  display:grid;
  gap:10px;
  justify-items:center;
  align-content:start;
  border:1px solid var(--ecx-line);
  border-radius:12px;
  padding:12px;
  background:#fff;
}
.ecx-qr-box img{
  width:180px;
  height:180px;
  object-fit:contain;
}
.ecx-code{
  font-family:"Courier New",monospace;
  font-size:13px;
  font-weight:900;
  word-break:break-all;
  text-align:center;
  color:#0f172a;
}
.ecx-barcode{
  font-family:"Courier New",monospace;
  letter-spacing:2px;
  font-weight:900;
  text-align:center;
  border-top:1px dashed rgba(15,23,42,.2);
  padding-top:10px;
  width:100%;
}
.ecx-email-form{
  display:flex;
  gap:10px;
  margin-top:14px;
}
.ecx-email-form input{
  flex:1;
  min-width:0;
  padding:13px 14px;
  border:1px solid var(--ecx-line);
  border-radius:12px;
}
.ecx-footer{
  border-top:1px solid var(--ecx-line);
  background:#fff;
}
.ecx-footer-inner{
  width:min(1180px,calc(100% - 32px));
  margin:auto;
  padding:22px 0;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:12px;
  color:#64748b;
  font-size:14px;
}
@media(max-width:860px){
  .ecx-nav{display:none}
  .ecx-result-shell{grid-template-columns:1fr}
  .ecx-ticket-body{grid-template-columns:1fr}
  .ecx-qr-box img{width:160px;height:160px}
}
@media print{
  .ecx-header,.ecx-actions,.ecx-help-card,.ecx-footer,.ecx-email-form{display:none!important}
  body{background:#fff}
  .ecx-main{width:100%;padding:0}
  .ecx-result-shell{display:block}
  .ecx-result-card{box-shadow:none;border:0;padding:0}
  .ecx-ticket-card{break-inside:avoid;box-shadow:none}
}
