:root{--green:#0b3d24;--gold:#c9a24b;--cream:#faf7ef;--ink:#1f2a24;--muted:#66736b;--line:#d9dfda;--danger:#a32626}*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--cream);color:var(--ink)}header{background:var(--green);color:white;padding:24px}header h1{margin:0}.sub{opacity:.8;margin:6px 0 0}.wrap{max-width:1100px;margin:0 auto;padding:24px}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 6px 24px rgba(0,0,0,.05)}label{display:block;font-weight:700;margin:10px 0 5px}input,select,textarea{width:100%;padding:11px;border:1px solid #bbc6bf;border-radius:9px;font:inherit;background:white}button,.btn{display:inline-block;border:0;border-radius:9px;padding:11px 16px;background:var(--green);color:white;text-decoration:none;font-weight:800;cursor:pointer}.btn.alt,button.alt{background:var(--gold);color:#183222}.btn.ghost{background:white;color:var(--green);border:1px solid var(--green)}.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.notice{padding:12px;border-radius:9px;background:#eef6f0}.error{padding:12px;border-radius:9px;background:#fdecec;color:var(--danger)}.hidden{display:none!important}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);text-align:left;padding:9px;vertical-align:top}.pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#eef2ef;font-size:12px}.control{position:fixed;right:16px;bottom:16px;z-index:20}.tiers{display:grid;gap:10px}.tier{border:1px solid var(--line);padding:12px;border-radius:10px}.ticket{border:2px dashed var(--gold);padding:18px;border-radius:12px;background:#fffdf6}.big{font-size:28px;font-weight:900}.muted{color:var(--muted)}@media(max-width:700px){.row{grid-template-columns:1fr}.wrap{padding:14px}header{padding:18px}}
.payment-choice{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fffdf6}.payment-choice input{width:auto;margin:0}

.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.module{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink);background:#fffdf6}.module:hover{border-color:var(--gold)}.module span{color:var(--muted);font-size:14px}.guide summary{cursor:pointer}.steps{columns:2;gap:28px}.steps li{break-inside:avoid;margin:6px 0}.ghost,button.ghost{background:white;color:var(--green);border:1px solid var(--green)}@media(max-width:700px){.module-grid{grid-template-columns:1fr}.steps{columns:1}}


/* EventGate v1.4.3 classic admission ticket renderer */
.preview-controls{margin-bottom:16px}.ticket-preview-stage{overflow-x:auto;padding:8px 0 16px}.eg-ticket{--eg-primary:#245C3A;--eg-secondary:#D0A24C;--eg-accent:#F7F2E7;width:min(100%,1200px);min-width:960px;margin:0 auto;color:#173f32;font-family:Georgia,'Times New Roman',serif}.eg-ticket-frame{position:relative;display:grid;grid-template-columns:84% 16%;aspect-ratio:3/1;background:#F7F2E7;border:3px solid var(--eg-secondary);box-shadow:0 10px 24px rgba(0,0,0,.12);overflow:hidden}.eg-ticket-frame:before{content:'';position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--eg-secondary) 78%,white);pointer-events:none;z-index:8}.eg-ticket-main{position:relative;overflow:hidden;border-right:2px dashed color-mix(in srgb,var(--eg-primary) 50%,transparent);background:#F7F2E7}.eg-ticket-paper{position:absolute;inset:0;background:linear-gradient(90deg,#fbf8ef 0%,#f7f2e7 74%,#f3ecdc 100%)}.eg-ticket-art{position:absolute;z-index:1;pointer-events:none;overflow:hidden}.eg-ticket-art img{width:100%;height:100%;object-fit:contain;display:block}.eg-ticket-art-watermark{inset:12% 4% 13% 42%;background-size:contain;background-position:center right;opacity:.06;filter:grayscale(.8) sepia(.1)}.eg-ticket-art-decorative{right:4%;bottom:17%;width:27%;height:34%;background-size:contain;background-position:right bottom;opacity:.20;filter:saturate(.7) sepia(.12)}.eg-ticket-content{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:118px minmax(0,1fr) 172px;grid-template-rows:42px 122px 96px 36px 30px;padding:14px 18px 10px;gap:4px 14px}.eg-ticket-logo-wrap{grid-column:1;grid-row:1/3;display:flex;align-items:flex-start;justify-content:center;padding-top:3px}.eg-ticket-logo{width:92px;height:92px;object-fit:contain;background:rgba(255,255,255,.72);padding:4px;border:1px solid rgba(208,162,76,.35)}.eg-ticket-logo-fallback{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;border:3px double var(--eg-secondary);background:var(--eg-primary);color:#fff;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif}.eg-ticket-heading{grid-column:2/4;grid-row:1/3;text-align:center;padding-right:4px;min-width:0;align-self:start}.eg-ticket-org{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:var(--eg-org-size);font-weight:900;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--eg-primary);line-height:1.1}.eg-ticket-category{display:flex;align-items:center;justify-content:center;gap:7px;margin:4px auto 1px;color:#fff}.eg-ticket-category:before,.eg-ticket-category:after{content:'';height:1px;width:56px;background:var(--eg-secondary)}.eg-ticket-category span{display:inline-block;padding:2px 20px;background:var(--eg-secondary);clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);font:900 9px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.12em;text-transform:uppercase}.eg-ticket-title{font-size:var(--eg-title-size);font-weight:700;line-height:.96;letter-spacing:.005em;margin:3px auto 0;max-width:96%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-subtitle{font-size:var(--eg-sub-size);font-style:italic;color:#8a651d;margin-top:3px;line-height:1.05;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-details{grid-column:2;grid-row:3;align-self:start;display:grid;gap:7px;padding:1px 0 0}.eg-ticket-detail{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.eg-ticket-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--eg-primary);color:var(--eg-secondary);font-weight:900;font-size:12px}.eg-ticket-detail small{display:block;font-size:7px;font-weight:900;letter-spacing:.11em;color:#9b6d16}.eg-ticket-detail strong{display:block;font-size:10px;line-height:1.15;color:#2e2e2e;max-height:34px;overflow:hidden}.eg-ticket-detail strong span{font-weight:650;color:#4a4a4a}.eg-ticket-tier-badge{grid-column:3;grid-row:3;align-self:start;justify-self:center;width:142px;height:92px;padding:10px 10px 8px;background:var(--eg-primary);color:#fff;border:3px double var(--eg-secondary);box-shadow:inset 0 0 0 3px var(--eg-primary),inset 0 0 0 4px var(--eg-secondary);text-align:center;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.eg-ticket-tier-badge div{font-size:var(--eg-tier-size);font-weight:800;text-transform:uppercase;line-height:1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-tier-badge strong{font-size:21px;color:var(--eg-secondary);line-height:1;margin:4px 0;border-top:1px solid var(--eg-secondary);border-bottom:1px solid var(--eg-secondary);padding:4px 2px}.eg-ticket-tier-badge span{font-size:10px;font-weight:900}.eg-ticket-info{grid-column:1/4;grid-row:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:3px 4px;border-top:1px solid color-mix(in srgb,var(--eg-secondary) 55%,transparent);font-family:system-ui,-apple-system,Segoe UI,sans-serif;align-items:center}.eg-ticket-info small{display:block;font-size:6px;font-weight:900;letter-spacing:.09em;color:#8a651d}.eg-ticket-info span{display:block;font-size:7px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#2e2e2e}.eg-ticket-footer{grid-column:1/4;grid-row:5;margin:0 -18px -10px;padding:7px 16px;text-align:center;background:var(--eg-primary);color:var(--eg-secondary);font:800 9px/1.15 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.02em}.eg-ticket-stub{position:relative;background:#fbf8ef;display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px 8px 7px;font-family:Georgia,'Times New Roman',serif;overflow:hidden}.eg-ticket-stub:before,.eg-ticket-stub:after{content:'';position:absolute;left:-9px;width:16px;height:16px;border-radius:50%;background:var(--cream,#f5f1e7);z-index:10}.eg-ticket-stub:before{top:-8px}.eg-ticket-stub:after{bottom:-8px}.eg-ticket-stub-head{align-self:stretch;margin:-10px -8px 7px;padding:7px 4px;background:var(--eg-primary);color:#fff;font:900 10px/1.1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em}.eg-ticket-stub-tier{font-size:var(--eg-tier-size);font-weight:800;text-transform:uppercase;line-height:1;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-stub-price{font-size:22px;line-height:1;color:var(--eg-secondary);font-weight:800;margin:5px 0}.eg-ticket-stub-admit{font:900 10px/1.1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.03em}.eg-ticket-qr{width:72px;height:72px;margin:6px auto 5px;border:4px solid #fff;outline:2px solid var(--eg-secondary);background:repeating-conic-gradient(var(--eg-primary) 0 25%,#fff 0 50%) 50%/14px 14px;display:grid;place-items:center}.eg-ticket-qr span{background:#fff;color:#000;border:2px solid #000;font:950 9px/1 system-ui,-apple-system,Segoe UI,sans-serif;padding:2px}.eg-ticket-holder{font:850 var(--eg-holder-size)/1.05 system-ui,-apple-system,Segoe UI,sans-serif;margin-top:2px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eg-ticket-serial{margin-top:auto;padding-top:5px;border-top:2px dotted var(--eg-secondary);width:100%;font-size:7px;font-weight:800;letter-spacing:.015em;overflow-wrap:anywhere;line-height:1.05}.preview-summary{margin-top:14px}.ticket-confirmed-wrap{overflow-x:auto}.ticket-confirmed-wrap .eg-ticket{margin:8px auto 20px}@media(max-width:900px){.ticket-preview-stage,.ticket-confirmed-wrap{margin-left:-8px;margin-right:-8px}.eg-ticket{min-width:960px}.eg-ticket-frame{aspect-ratio:3/1}}
@media print{body{background:white}body>*:not(main){display:none!important}.card{border:0;box-shadow:none;padding:0}.ticket-confirmed-actions,.control{display:none!important}.ticket-confirmed-wrap{overflow:visible}.eg-ticket{width:100%;min-width:0}.eg-ticket-frame{box-shadow:none}}


/* EventGate v1.4.4 Classic Ticket Layout */
.char-counter{display:block;text-align:right;margin-top:3px;color:#6c746e;font:600 11px/1.2 system-ui,-apple-system,Segoe UI,sans-serif}.char-counter.warn{color:#9a6814}.char-counter.bad{color:#a32a2a}.ticket-readiness{border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin:6px 0 14px;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px}.ticket-readiness.ready{background:#eef7f0;border-color:#a9cdb3}.ticket-readiness.blocked{background:#fff5f2;border-color:#ddb1a7}.readiness-error{color:#9c2f22;margin-top:4px}.readiness-warning{color:#8a6418;margin-top:4px}
.ticket-preview-stage{overflow-x:auto;padding:8px 0 16px}.eg-ticket{--eg-primary:#245C3A;--eg-secondary:#D0A24C;--eg-accent:#F7F2E7;width:min(100%,1200px);min-width:960px;margin:0 auto;color:#173f32;font-family:Georgia,'Times New Roman',serif}.eg-ticket-frame{position:relative;display:grid;grid-template-columns:84% 16%;aspect-ratio:3/1;background:#F7F2E7;border:3px solid var(--eg-secondary);box-shadow:0 12px 30px rgba(0,0,0,.13);overflow:hidden;clip-path:none}.eg-ticket-frame:before{content:'';position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--eg-secondary) 80%,white);pointer-events:none;z-index:8}.eg-ticket-main{position:relative;overflow:hidden;border-right:2px dashed color-mix(in srgb,var(--eg-primary) 50%,transparent);background:#F7F2E7}.eg-ticket-paper{position:absolute;inset:0;background:linear-gradient(90deg,#fbf8ef 0%,#f7f2e7 72%,#f3ecdc 100%)}.eg-ticket-art{position:absolute;z-index:1;pointer-events:none;overflow:hidden}.eg-ticket-art img{width:100%;height:100%;object-fit:contain;display:block}.eg-ticket-art-watermark{inset:8% 4% 10% 36%;background-size:contain;background-position:center right;opacity:.08;filter:grayscale(.65) sepia(.15)}.eg-ticket-art-decorative{right:3%;bottom:13%;width:31%;height:44%;background-size:contain;background-position:right bottom;opacity:.28;filter:saturate(.8) sepia(.08)}.eg-ticket-content{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:132px minmax(0,1fr) 190px;grid-template-rows:auto 1fr auto auto;padding:20px 24px 14px;gap:6px 16px}.eg-ticket-logo-wrap{grid-column:1;grid-row:1/3;display:flex;align-items:flex-start;justify-content:center;padding-top:2px}.eg-ticket-logo{width:104px;height:104px;object-fit:contain;background:rgba(255,255,255,.72);padding:4px;border:1px solid rgba(208,162,76,.35)}.eg-ticket-logo-fallback{width:98px;height:98px;border-radius:50%;display:grid;place-items:center;border:3px double var(--eg-secondary);background:var(--eg-primary);color:#fff;font:900 18px/1 system-ui,-apple-system,Segoe UI,sans-serif}.eg-ticket-heading{grid-column:2/4;text-align:center;padding-right:8px;min-width:0}.eg-ticket-org{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:var(--eg-org-size);font-weight:900;letter-spacing:.025em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--eg-primary)}.eg-ticket-category{display:flex;align-items:center;justify-content:center;gap:8px;margin:5px auto 2px;color:#fff}.eg-ticket-category:before,.eg-ticket-category:after{content:'';height:1px;width:70px;background:var(--eg-secondary)}.eg-ticket-category span{display:inline-block;padding:3px 24px;background:var(--eg-secondary);clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);font:900 11px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.13em;text-transform:uppercase}.eg-ticket-title{font-size:var(--eg-title-size);font-weight:700;line-height:.98;letter-spacing:.01em;margin:3px auto 0;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-subtitle{font-size:var(--eg-sub-size);font-style:italic;color:#8a651d;margin-top:3px;line-height:1.08;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-details{grid-column:2;grid-row:2;align-self:center;display:grid;gap:10px;padding:4px 0}.eg-ticket-detail{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.eg-ticket-icon{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--eg-primary);color:var(--eg-secondary);font-weight:900}.eg-ticket-detail small{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:#9b6d16}.eg-ticket-detail strong{display:block;font-size:12px;line-height:1.22;color:#2e2e2e}.eg-ticket-detail strong span{font-weight:650;color:#4a4a4a}.eg-ticket-tier-badge{grid-column:3;grid-row:2;align-self:center;justify-self:center;width:156px;min-height:152px;padding:17px 13px 13px;background:var(--eg-primary);color:#fff;border:3px double var(--eg-secondary);box-shadow:inset 0 0 0 4px var(--eg-primary),inset 0 0 0 5px var(--eg-secondary);text-align:center;display:flex;flex-direction:column;justify-content:center}.eg-ticket-tier-badge div{font-size:var(--eg-tier-size);font-weight:800;text-transform:uppercase;line-height:1}.eg-ticket-tier-badge strong{font-size:27px;color:var(--eg-secondary);line-height:1.05;margin:7px 0;border-top:1px solid var(--eg-secondary);border-bottom:1px solid var(--eg-secondary);padding:6px 2px}.eg-ticket-tier-badge span{font-size:13px;font-weight:900}.eg-ticket-info{grid-column:1/4;grid-row:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 -8px;padding:6px 8px;border-top:1px solid color-mix(in srgb,var(--eg-secondary) 55%,transparent);font-family:system-ui,-apple-system,Segoe UI,sans-serif}.eg-ticket-info small{display:block;font-size:7px;font-weight:900;letter-spacing:.1em;color:#8a651d}.eg-ticket-info span{display:block;font-size:8px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#2e2e2e}.eg-ticket-footer{grid-column:1/4;grid-row:4;margin:0 -24px -14px;padding:7px 18px;text-align:center;background:var(--eg-primary);color:var(--eg-secondary);font:800 10px/1.25 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.02em}.eg-ticket-stub{position:relative;background:#fbf8ef;display:flex;flex-direction:column;align-items:center;text-align:center;padding:13px 10px 9px;font-family:Georgia,'Times New Roman',serif}.eg-ticket-stub:before,.eg-ticket-stub:after{content:'';position:absolute;left:-10px;width:18px;height:18px;border-radius:50%;background:var(--cream,#f5f1e7);z-index:10}.eg-ticket-stub:before{top:-9px}.eg-ticket-stub:after{bottom:-9px}.eg-ticket-stub-head{align-self:stretch;margin:-13px -10px 8px;padding:8px 5px;background:var(--eg-primary);color:#fff;font:900 12px/1.15 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.045em}.eg-ticket-stub-tier{font-size:var(--eg-tier-size);font-weight:800;text-transform:uppercase;line-height:1;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.eg-ticket-stub-price{font-size:25px;line-height:1;color:var(--eg-secondary);font-weight:800;margin:6px 0}.eg-ticket-stub-admit{font:900 11px/1.15 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.03em}.eg-ticket-qr{width:82px;height:82px;margin:8px auto 6px;border:4px solid #fff;outline:2px solid var(--eg-secondary);background:repeating-conic-gradient(var(--eg-primary) 0 25%,#fff 0 50%) 50%/16px 16px;display:grid;place-items:center}.eg-ticket-qr span{background:#fff;color:#000;border:2px solid #000;font:950 10px/1 system-ui,-apple-system,Segoe UI,sans-serif;padding:3px}.eg-ticket-holder{font:850 var(--eg-holder-size)/1.1 system-ui,-apple-system,Segoe UI,sans-serif;margin-top:3px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eg-ticket-serial{margin-top:auto;padding-top:6px;border-top:2px dotted var(--eg-secondary);width:100%;font-size:8px;font-weight:800;letter-spacing:.02em;overflow-wrap:anywhere}.preview-summary{margin-top:14px}.ticket-confirmed-wrap{overflow-x:auto}.ticket-confirmed-wrap .eg-ticket{margin:8px auto 20px}@media(max-width:900px){.ticket-preview-stage,.ticket-confirmed-wrap{margin-left:-8px;margin-right:-8px}.eg-ticket{min-width:960px}.eg-ticket-frame{aspect-ratio:3/1}}@media print{body{background:#fff}body>*:not(main){display:none!important}.card{border:0;box-shadow:none;padding:0}.ticket-confirmed-actions,.control{display:none!important}.ticket-confirmed-wrap{overflow:visible}.eg-ticket{width:100%;min-width:0}.eg-ticket-frame{box-shadow:none;aspect-ratio:3/1;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.field-near-limit{border-color:#c58a2a!important;box-shadow:0 0 0 1px rgba(197,138,42,.18)}
.field-over-limit{border-color:#b3261e!important;background:#fff7f6!important;box-shadow:0 0 0 1px rgba(179,38,30,.18)}
.char-counter.bad{font-weight:700;text-align:left}
.char-counter.warn{text-align:left}

/* EventGate v1.4.6 Classic Ticket Refinement */
.ticket-preview-stage,.ticket-confirmed-wrap{overflow-x:auto;padding:8px 0 16px}
.eg-ticket{--eg-primary:#064B33;--eg-secondary:#C99A36;--eg-accent:#F7F2E7;width:100%;min-width:0;margin:0 auto;color:#173f32;font-family:Georgia,'Times New Roman',serif}
.eg-ticket-viewport{position:relative;margin:0 auto;overflow:hidden}
.eg-ticket-canvas{position:absolute;left:0;top:0;width:1600px;height:533px;transform-origin:top left;display:grid;grid-template-columns:1340px 260px;background:#F7F2E7;border:4px solid var(--eg-secondary);box-sizing:border-box;box-shadow:0 12px 30px rgba(0,0,0,.13);overflow:hidden}
.eg-ticket-canvas:before{content:'';position:absolute;inset:9px;border:2px solid color-mix(in srgb,var(--eg-secondary) 82%,white);pointer-events:none;z-index:20}
.eg-ticket-main{position:relative;height:533px;overflow:hidden;background:#F7F2E7;border-right:2px dashed color-mix(in srgb,var(--eg-primary) 60%,transparent);box-sizing:border-box}
.eg-ticket-paper{position:absolute;inset:0;background:linear-gradient(90deg,#fbf8ef 0%,#f7f2e7 72%,#f1e8d8 100%);z-index:0}
.eg-ticket-art{position:absolute;z-index:1;pointer-events:none;overflow:hidden}.eg-ticket-art img{width:100%;height:100%;object-fit:contain;display:block}
.eg-ticket-art-watermark{left:420px;top:150px;width:650px;height:245px;background-size:contain;background-position:center;opacity:.07;filter:grayscale(.65) sepia(.2)}
.eg-ticket-art-decorative{left:455px;top:180px;width:575px;height:225px;background-size:contain;background-position:center bottom;opacity:.36;filter:saturate(.8) sepia(.12)}
.eg-ticket-logo{position:absolute;left:48px;top:34px;width:145px;height:145px;object-fit:contain;z-index:5;background:rgba(255,255,255,.68);padding:6px;border:1px solid color-mix(in srgb,var(--eg-secondary) 45%,transparent);border-radius:8px;box-sizing:border-box}
.eg-ticket-heading{position:absolute;z-index:6;left:230px;right:260px;top:25px;text-align:center;min-width:0}
.eg-ticket-org{font-family:Arial,Helvetica,sans-serif;font-size:var(--eg-org-size);font-weight:900;letter-spacing:.035em;text-transform:uppercase;color:var(--eg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.08}
.eg-ticket-heading-line{margin:7px auto 0;font-size:38px;font-weight:700;line-height:1.05;text-transform:uppercase;color:var(--eg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:900px}
.eg-ticket-category{display:flex;align-items:center;justify-content:center;gap:12px;margin:8px auto 2px;color:#fff}
.eg-ticket-category:before,.eg-ticket-category:after{content:'';height:2px;width:105px;background:var(--eg-secondary)}
.eg-ticket-category span{display:inline-block;padding:5px 35px;background:var(--eg-secondary);clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);font:900 17px/1.25 Arial,Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.eg-ticket-title{font-size:var(--eg-title-size);font-weight:700;line-height:.98;letter-spacing:.01em;margin:7px auto 0;max-width:900px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#073d2d}
.eg-ticket-subtitle{font-size:var(--eg-sub-size);font-style:italic;color:#9a6d19;margin-top:7px;line-height:1.08;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.eg-ticket-details{position:absolute;z-index:7;left:68px;top:205px;width:500px;display:grid;gap:10px;font-family:Arial,Helvetica,sans-serif}
.eg-detail-row{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;min-height:42px}
.eg-detail-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--eg-primary);color:var(--eg-accent);box-sizing:border-box}
.eg-detail-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.eg-detail-row small{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;color:#8c6419;margin-bottom:2px}
.eg-detail-row strong{display:block;font-size:17px;line-height:1.18;color:#202820;font-weight:800}
.eg-detail-row strong span{font-weight:650}
.eg-ticket-tier-badge{position:absolute;z-index:8;right:42px;top:95px;width:205px;height:265px;border-radius:18px;background:var(--eg-deep-green,#033A28);color:#fff;border:4px solid var(--eg-secondary);box-shadow:inset 0 0 0 5px var(--eg-deep-green,#033A28),inset 0 0 0 7px var(--eg-secondary);text-align:center;display:flex;flex-direction:column;justify-content:center;padding:22px 15px;box-sizing:border-box}
.eg-ticket-tier-badge div{font-size:var(--eg-tier-size);font-weight:800;text-transform:uppercase;line-height:1.05;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.eg-ticket-tier-badge strong{font-size:42px;color:var(--eg-secondary);line-height:1.05;margin:14px 0;border-top:2px solid var(--eg-secondary);border-bottom:2px solid var(--eg-secondary);padding:10px 2px}
.eg-ticket-tier-badge span{font:900 18px/1.1 Arial,Helvetica,sans-serif}
.eg-ticket-main-serial{position:absolute;z-index:9;right:48px;top:380px;width:220px;height:42px;border:3px solid var(--eg-secondary);border-radius:12px;background:#fbf8ef;color:var(--eg-primary);display:grid;place-items:center;font:900 16px/1 Arial,Helvetica,sans-serif;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 10px;box-sizing:border-box}
.eg-ticket-info{position:absolute;z-index:10;left:0;right:0;bottom:0;height:90px;background:var(--eg-deep-green,#033A28);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:14px 34px 14px;color:#fff;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif}
.eg-ticket-info-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:0 18px;border-right:1px solid color-mix(in srgb,var(--eg-secondary) 75%,transparent)}
.eg-ticket-info-item:last-child{border-right:0}
.eg-ticket-info-icon{width:38px;height:38px;color:var(--eg-secondary);display:grid;place-items:center}
.eg-ticket-info-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.eg-ticket-info small{display:block;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--eg-secondary);margin-bottom:4px}
.eg-ticket-info span{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}
.eg-ticket-stub{position:relative;height:533px;background:#fbf8ef;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 18px 14px;font-family:Georgia,'Times New Roman',serif;box-sizing:border-box;overflow:hidden}
.eg-ticket-stub:before,.eg-ticket-stub:after{content:'';position:absolute;left:-12px;width:22px;height:22px;border-radius:50%;background:#fff;z-index:20}
.eg-ticket-stub:before{top:-11px}.eg-ticket-stub:after{bottom:-11px}
.eg-ticket-stub-head{align-self:stretch;margin:0 -18px 18px;padding:15px 8px;background:var(--eg-deep-green,#033A28);color:#fff;font:900 17px/1.15 Arial,Helvetica,sans-serif;letter-spacing:.04em}
.eg-ticket-stub-tier{font-size:31px;font-weight:800;text-transform:uppercase;line-height:1.05;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#173f32}
.eg-ticket-stub-price{font-size:39px;line-height:1;color:var(--eg-secondary);font-weight:800;margin:12px 0 9px}
.eg-ticket-stub-admit{font:900 17px/1.15 Arial,Helvetica,sans-serif;letter-spacing:.03em;color:#202820}
.eg-ticket-qr{width:145px;height:145px;margin:17px auto 10px;border:7px solid #fff;outline:2px solid var(--eg-secondary);background:repeating-conic-gradient(#000 0 25%,#fff 0 50%) 50%/20px 20px;display:grid;place-items:center;box-sizing:border-box}
.eg-ticket-qr span{background:#fff;color:#000;border:2px solid #000;font:950 15px/1 Arial,Helvetica,sans-serif;padding:5px}
.eg-ticket-holder{font:850 var(--eg-holder-size)/1.1 Arial,Helvetica,sans-serif;margin-top:6px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#173f32}
.eg-ticket-stub-number{margin-top:auto;width:210px;height:46px;border-radius:12px;background:var(--eg-deep-green,#033A28);color:#fff;display:grid;place-items:center;font:900 14px/1 Arial,Helvetica,sans-serif;letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px;box-sizing:border-box}
.asset-picker{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}.asset-picker input[type=file]{padding:8px;background:#fff}.asset-status{font-size:12px;color:#5e675f;margin-top:4px}.asset-status.ok{color:#196b36}.asset-status.bad{color:#a32a2a}.advanced-url{margin-top:8px}
@media(max-width:1000px){.ticket-preview-stage,.ticket-confirmed-wrap{margin-left:-8px;margin-right:-8px}.eg-ticket-viewport{margin-left:0}}
@media print{.eg-ticket-viewport{width:1600px!important;height:533px!important;overflow:visible!important}.eg-ticket-canvas{transform:none!important;box-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* EventGate v1.4.7 Designer image controls and ticket-number refinement */
.asset-transform-grid{margin-top:10px;padding:10px;border:1px solid #d8dfda;border-radius:10px;background:#fbfcfa;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.asset-transform-grid label{margin:0;font-size:12px;font-weight:700}.asset-transform-grid label span{float:right;font-weight:600;color:#65706a}.asset-transform-grid input[type=range]{width:100%;padding:0;margin-top:5px}.asset-transform-grid select{margin-top:5px}.asset-transform-grid .transform-reset{align-self:end;min-height:38px}
.eg-ticket-logo-wrap{position:absolute;left:48px;top:34px;width:145px;height:145px;z-index:5;background:rgba(255,255,255,.68);padding:6px;border:1px solid color-mix(in srgb,var(--eg-secondary) 45%,transparent);border-radius:8px;box-sizing:border-box;overflow:hidden;display:grid;place-items:center}
.eg-ticket-logo-wrap .eg-ticket-logo{position:static;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent;transform-origin:center center;max-width:none;max-height:none}
.eg-ticket-main-serial{right:48px;top:380px;width:245px;height:42px;font-size:13px;padding:0 8px;text-overflow:clip}
.eg-ticket-stub-number{width:220px;height:46px;font-size:12.5px;text-overflow:clip;padding:0 6px}
.eg-ticket-info{grid-template-columns:1.08fr .9fr 1fr 1.38fr}
.eg-ticket-info-item{padding:0 12px;grid-template-columns:36px minmax(0,1fr);gap:8px}.eg-ticket-info-icon{width:32px;height:32px}.eg-ticket-info-icon svg{width:27px;height:27px}
.eg-ticket-info span{font-size:11.5px;line-height:1.15;white-space:normal;overflow:visible;text-overflow:clip;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
@media(max-width:700px){.asset-transform-grid{grid-template-columns:1fr}}

/* EventGate v1.4.7 reference-template update */
.eg-ticket-canvas{background:#fbfaf4;border-color:#d2a32f}
.eg-ticket-canvas:before{inset:7px;border:2px solid #d2a32f}
.eg-ticket-main{background:#fbfaf4}
.eg-ticket-paper{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(253,251,242,.94) 55%,rgba(249,246,235,.94) 100%)}
.eg-ticket-art-decorative{left:18px;top:118px;width:1285px;height:325px;opacity:.55;filter:none}
.eg-ticket-art-watermark{left:180px;top:125px;width:1000px;height:300px;opacity:.1;filter:grayscale(.25) sepia(.15)}
.eg-ticket-heading{left:270px;right:405px;top:23px}
.eg-ticket-org{color:#064b33;letter-spacing:.045em}
.eg-ticket-heading-line{font-family:Arial,Helvetica,sans-serif;font-size:42px;color:#111;font-weight:900;letter-spacing:.01em;margin-top:6px}
.eg-ticket-category{margin-top:8px}.eg-ticket-category span{background:#d2a32f;color:#fff}
.eg-ticket-title{color:var(--eg-primary);text-shadow:0 1px 0 rgba(255,255,255,.8)}
.eg-ticket-subtitle{color:#12367a;font-weight:700;text-shadow:0 1px 0 rgba(255,255,255,.85)}
.eg-ticket-details{left:250px;top:300px;width:650px;grid-template-columns:1fr 1fr 1.55fr;gap:0;background:rgba(255,255,255,.76);border-top:1px solid rgba(210,163,47,.55);border-bottom:1px solid rgba(210,163,47,.55);padding:12px 8px 10px;box-sizing:border-box}
.eg-detail-row{grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:0 14px;border-right:1px solid #d2a32f}
.eg-detail-row:nth-child(3){border-right:0}.eg-detail-row:nth-child(4){grid-column:1/-1;justify-self:center;border-right:0;margin-top:8px;padding-top:5px}
.eg-detail-icon{width:38px;height:38px;background:var(--eg-primary);color:var(--eg-tier-text,#fff);border-radius:50%;display:grid;place-items:center}.eg-detail-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.eg-detail-row small{font-size:11px;color:#12367a}.eg-detail-row strong{font-size:17px;color:#102314;line-height:1.12}.eg-detail-row strong span{font-size:14px}
.eg-ticket-tier-badge{right:205px;top:82px;width:205px;height:280px;border-radius:34px;background:linear-gradient(180deg,var(--eg-primary),var(--eg-deep-green,#033A28));border:4px solid #d2a32f;box-shadow:inset 0 0 0 4px var(--eg-deep-green,#033A28),inset 0 0 0 6px #d2a32f,0 7px 16px rgba(0,0,0,.12);padding:24px 15px}
.eg-ticket-tier-badge:before{content:'★';color:#d2a32f;font-size:27px;line-height:1;margin-bottom:8px}
.eg-ticket-tier-badge strong{font-size:46px;color:#e1b748}
.eg-ticket-tier-badge span{background:#d2a32f;color:#102314;padding:10px 8px;border-radius:2px;font-size:17px}
.eg-ticket-main-serial{right:38px;top:82px;width:145px;height:280px;border-radius:34px;background:linear-gradient(180deg,var(--eg-primary),var(--eg-deep-green,#033A28));color:var(--eg-tier-text,#fff);border:4px solid #d2a32f;box-shadow:inset 0 0 0 4px var(--eg-deep-green,#033A28),inset 0 0 0 6px #d2a32f,0 7px 16px rgba(0,0,0,.12);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px 9px;box-sizing:border-box;text-align:center;overflow:hidden}
.eg-ticket-main-serial:before{content:'★';color:#d2a32f;font-size:25px;margin-bottom:20px}
.eg-ticket-main-serial small{display:block;color:#fff;font:800 18px/1.1 Georgia,'Times New Roman',serif;text-transform:uppercase;letter-spacing:.02em;margin-bottom:22px}
.eg-ticket-main-serial strong{display:block;color:#e1b748;font:900 27px/1.05 Georgia,'Times New Roman',serif;white-space:nowrap;max-width:100%}
.eg-ticket-info{height:92px;background:linear-gradient(180deg,var(--eg-primary),var(--eg-deep-green,#033A28));border-top:3px solid #d2a32f;padding:13px 26px 12px}
.eg-ticket-info small{color:#e4ba4f}.eg-ticket-info-icon{color:#e4ba4f}
.eg-ticket-stub{background:#fffdf7;padding-bottom:20px}
.eg-ticket-stub-head{background:var(--eg-primary);color:var(--eg-tier-text,#fff);margin-bottom:17px;padding:16px 8px;font-size:18px}
.eg-ticket-stub-tier{font-family:Arial,Helvetica,sans-serif;color:var(--eg-primary);font-size:30px}
.eg-ticket-stub-price{color:#111;font-family:Arial,Helvetica,sans-serif;font-size:44px;margin:8px 0 4px}
.eg-ticket-stub-admit{font-size:18px;margin-bottom:9px}
.eg-ticket-stub-number{margin:0 auto 15px;width:195px;height:68px;border-radius:18px;background:linear-gradient(180deg,var(--eg-primary),var(--eg-deep-green,#033A28));border:3px solid #d2a32f;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #063e2e,inset 0 0 0 5px #d2a32f;overflow:hidden;flex:0 0 auto}
.eg-ticket-stub-number small{font:800 14px/1 Arial,Helvetica,sans-serif;text-transform:uppercase;margin-bottom:6px;color:#fff}
.eg-ticket-stub-number strong{font:900 22px/1 Georgia,'Times New Roman',serif;color:#e1b748;white-space:nowrap}
.eg-ticket-qr{width:140px;height:140px;margin:3px auto 7px}
.eg-ticket-holder{margin-top:3px}

/* EventGate v1.4.9 main Ticket # relocation and badge alignment */
.eg-ticket-main-serial{left:48px;top:300px;right:auto;width:195px;height:68px;border-radius:18px;background:linear-gradient(180deg,var(--eg-primary),var(--eg-deep-green,#033A28));border:3px solid #d2a32f;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #063e2e,inset 0 0 0 5px #d2a32f,0 7px 16px rgba(0,0,0,.08);padding:0 10px;box-sizing:border-box;text-align:center;overflow:hidden}
.eg-ticket-main-serial:before{content:none;display:none}
.eg-ticket-main-serial small{display:block;font:800 14px/1 Arial,Helvetica,sans-serif;text-transform:uppercase;margin:0 0 6px;color:#fff;letter-spacing:0}
.eg-ticket-main-serial strong{display:block;font:900 22px/1 Georgia,'Times New Roman',serif;color:#e1b748;white-space:nowrap;max-width:100%}
.eg-ticket-tier-badge{right:38px}


/* EventGate v1.4.11 claim-page event summary */
.claim-wrap{max-width:980px}
.claim-event-summary{border:1px solid #d8dfda;background:linear-gradient(180deg,#fffdf8,#fbf8ef);padding:22px 24px 20px;margin-bottom:16px;box-shadow:0 8px 22px rgba(14,61,36,.06)}
.claim-summary-eyebrow{font-size:11px;font-weight:900;letter-spacing:.14em;color:#9a741f;margin-bottom:5px}
.claim-event-summary h2{margin:0;color:#0b3d24;font-size:30px;line-height:1.12}
.claim-summary-tier{display:inline-block;margin-top:8px;padding:6px 12px;border-radius:999px;background:#0b3d24;color:#fff;font-weight:900;font-size:13px;letter-spacing:.02em}
.claim-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;padding-top:15px;border-top:1px solid #e4d7b9}
.claim-summary-grid>div{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:start}
.claim-summary-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#0b3d24;color:#d2a32f;font-weight:900;font-size:18px}
.claim-summary-grid small{display:block;font-size:10px;font-weight:900;letter-spacing:.1em;color:#9a741f;margin-bottom:2px}
.claim-summary-grid strong{display:block;font-size:15px;color:#1f2a24;line-height:1.3}
.claim-summary-grid div div span{display:block;font-size:13px;color:#66736b;line-height:1.3;margin-top:2px}
@media(max-width:700px){.claim-summary-grid{grid-template-columns:1fr}.claim-event-summary h2{font-size:25px}}

/* EventGate v1.4.12 ticket sharing */
.ticket-confirmed-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.ticket-confirmed-actions button{min-height:42px}
@media(max-width:650px){.ticket-confirmed-actions{display:grid;grid-template-columns:1fr 1fr}.ticket-confirmed-actions button{width:100%}}

/* EventGate v1.4.18 real QR codes */
.eg-ticket-qr{background:#fff!important;border:7px solid #fff!important;outline:2px solid var(--eg-secondary)!important;padding:0!important;overflow:hidden;display:grid!important;place-items:center!important}
.eg-ticket-qr-svg{display:block;width:100%;height:100%;background:#fff}
.eg-ticket-qr-svg path{fill:#000}


/* EventGate v1.4.19 camera QR scanner */
.scanner-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}.scanner-actions .secondary{background:#fff;color:#0b4d32;border:1px solid #0b4d32}.scanner-panel{margin-top:14px;max-width:680px}.scanner-viewport{position:relative;width:100%;aspect-ratio:4/3;background:#0b1510;border:2px solid #d2a32f;border-radius:14px;overflow:hidden}.scanner-viewport video{width:100%;height:100%;object-fit:cover;display:block}.scanner-guide{position:absolute;inset:50% auto auto 50%;width:min(76%,390px);aspect-ratio:1;transform:translate(-50%,-50%);border:3px solid rgba(255,255,255,.88);border-radius:18px;box-shadow:0 0 0 999px rgba(0,0,0,.22);pointer-events:none}.scanner-guide:before,.scanner-guide:after,.scanner-guide span:before,.scanner-guide span:after{content:'';position:absolute;width:42px;height:42px;border-color:#e4ba4f;border-style:solid}.scanner-guide:before{left:-4px;top:-4px;border-width:5px 0 0 5px;border-radius:14px 0 0 0}.scanner-guide:after{right:-4px;top:-4px;border-width:5px 5px 0 0;border-radius:0 14px 0 0}.scanner-guide span:before{left:-4px;bottom:-4px;border-width:0 0 5px 5px;border-radius:0 0 0 14px}.scanner-guide span:after{right:-4px;bottom:-4px;border-width:0 5px 5px 0;border-radius:0 0 14px 0}.scanner-status{margin:8px 2px 0}.scanner-panel.hidden{display:none!important}@media(max-width:700px){.scanner-actions button{flex:1 1 auto}.scanner-panel{max-width:none}.scanner-viewport{aspect-ratio:3/4}}


/* EventGate v1.4.21 Enhanced Gate Check-In */
.gate-result{margin-top:14px;border-radius:14px;padding:16px 18px;border:2px solid transparent;font-family:Arial,Helvetica,sans-serif;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.gate-result.success{background:#eaf7ee;border-color:#2f8a4d;color:#123e24}.gate-result.duplicate{background:#fff3e8;border-color:#c97f20;color:#633b08}.gate-result.invalid{background:#fdecec;border-color:#c84d4d;color:#6d2020}
.gate-result-status{font-size:16px;font-weight:950;letter-spacing:.08em}.gate-result-name{font-size:30px;font-weight:950;line-height:1.05;margin:5px 0 12px}
.gate-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}.gate-result-grid div{background:rgba(255,255,255,.66);border-radius:9px;padding:8px 10px}.gate-result-grid small{display:block;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:.72}.gate-result-grid strong{display:block;font-size:15px;margin-top:2px;overflow-wrap:anywhere}
.gate-result-event{font-size:13px;font-weight:800;margin-top:10px;opacity:.8}.gate-result-instruction{font-size:15px;font-weight:850;margin-top:10px}.gate-result.hidden{display:none!important}
@media(max-width:700px){.gate-result{padding:15px}.gate-result-name{font-size:27px}.gate-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gate-result-grid strong{font-size:14px}}


/* EventGate v1.4.23 dynamic multi-line price fitting */
.eg-ticket-tier-badge strong.eg-ticket-price-lines{
  font-size:var(--eg-price-size,46px);
  line-height:.92;
  margin:7px 0;
  padding:7px 2px;
  width:100%;
  min-height:72px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  white-space:normal;
  overflow:hidden;
}
.eg-ticket-tier-badge strong.eg-ticket-price-lines>span{display:block;max-width:100%;white-space:nowrap;line-height:.92}
.eg-ticket-stub-price{
  font-size:var(--eg-stub-price-size,44px);
  line-height:.9;
  min-height:64px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  margin:6px 0 5px;
  max-width:100%;
  overflow:hidden;
}
.eg-ticket-stub-price>span{display:block;max-width:100%;white-space:nowrap;line-height:.9}


/* EventGate v1.4.24 dynamic ticket-type fitting on admission stub */
.eg-ticket-stub-tier{
  font-size:var(--eg-stub-tier-size,30px)!important;
  line-height:.92!important;
  width:100%;
  max-width:100%;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  white-space:normal;
  overflow:hidden;
}
.eg-ticket-stub-tier>span{
  display:block;
  width:100%;
  max-width:100%;
  white-space:nowrap;
  line-height:.92;
}


/* EventGate v1.4.26 dedicated one-page ticket printing */
@page{size:letter landscape;margin:.3in}
@media print{
  html.eg-print-ticket,html.eg-print-ticket body{width:auto!important;height:auto!important;min-width:0!important;background:#fff!important;overflow:visible!important}
  html.eg-print-ticket body>header,
  html.eg-print-ticket #claimEventSummary,
  html.eg-print-ticket #form,
  html.eg-print-ticket #ticket>h2,
  html.eg-print-ticket #ticket>p,
  html.eg-print-ticket .ticket-confirmed-actions,
  html.eg-print-ticket #shareMsg{display:none!important}
  html.eg-print-ticket main.wrap.claim-wrap{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
  html.eg-print-ticket #ticket{display:block!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;width:auto!important;max-width:none!important;min-height:0!important;background:#fff!important}
  html.eg-print-ticket .ticket-confirmed-wrap{display:block!important;width:10.2in!important;max-width:10.2in!important;margin:0 auto!important;padding:0!important;overflow:visible!important}
  html.eg-print-ticket #confirmedTicket{width:10.2in!important;max-width:10.2in!important;margin:0 auto!important;padding:0!important}
  html.eg-print-ticket .eg-ticket{width:10.2in!important;max-width:10.2in!important;min-width:0!important;margin:0 auto!important;break-inside:avoid!important;page-break-inside:avoid!important}
  html.eg-print-ticket .eg-ticket-viewport{position:relative!important;width:10.2in!important;height:3.398in!important;margin:0 auto!important;overflow:visible!important}
  html.eg-print-ticket .eg-ticket-canvas{position:absolute!important;left:0!important;top:0!important;width:1600px!important;height:533px!important;transform:scale(.612)!important;transform-origin:top left!important;box-shadow:none!important;overflow:hidden!important;break-inside:avoid!important;page-break-inside:avoid!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
}

/* EventGate v1.4.27 scanner usability refinement */
@media(max-width:700px){.scanner-guide{width:min(76%,390px)}.scanner-status{font-size:1rem;line-height:1.45}}


/* EventGate v1.4.28 gate-operator scanner feedback */
.scanner-viewport{transition:border-color .16s ease,box-shadow .16s ease}
.scanner-viewport.scan-success{border-color:#2f9b57;box-shadow:0 0 0 6px rgba(47,155,87,.28)}
.scanner-viewport.scan-duplicate{border-color:#d28a23;box-shadow:0 0 0 6px rgba(210,138,35,.28)}
.scanner-viewport.scan-invalid{border-color:#d64f4f;box-shadow:0 0 0 6px rgba(214,79,79,.28)}
.scanner-ready{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:3;background:rgba(11,77,50,.92);color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:7px 13px;font-size:12px;font-weight:950;letter-spacing:.08em;white-space:nowrap;pointer-events:none}
.scanner-ready.busy{background:rgba(36,44,40,.92)}
.scanner-tap-focus{position:absolute;z-index:4;width:54px;height:54px;border:3px solid #f0c44e;border-radius:10px;transform:translate(-50%,-50%);box-shadow:0 0 0 2px rgba(0,0,0,.2);pointer-events:none;animation:eg-focus-pulse .65s ease}
@keyframes eg-focus-pulse{0%{transform:translate(-50%,-50%) scale(1.35);opacity:.4}100%{transform:translate(-50%,-50%) scale(1);opacity:1}}
.scanner-hint{margin:5px 2px 0;font-size:12px;color:#63706a}
.gate-result-action{font-size:34px;font-weight:1000;line-height:1;letter-spacing:.04em;margin-bottom:6px}
@media(max-width:700px){.gate-result-action{font-size:32px}.scanner-ready{bottom:12px}.scanner-hint{font-size:11px}}

/* v1.4.31: make voucher ownership explicit on claim pages. */
.claim-summary-owner{margin:2px 0 5px;font-size:.88rem;font-weight:800;letter-spacing:.02em;color:#496057}
@media (max-width:640px){.claim-summary-owner{font-size:.82rem}}

/* EventGate v1.4.36 professional visual system */
:root{
  --eg-bg:#f4f6f5;
  --eg-surface:#ffffff;
  --eg-surface-soft:#f8faf9;
  --eg-ink:#18251f;
  --eg-muted:#65736b;
  --eg-line:#dfe5e1;
  --eg-shadow:0 12px 34px rgba(21,44,33,.075);
  --eg-shadow-hover:0 18px 42px rgba(21,44,33,.12);
  --eg-radius:16px;
}
html{scroll-behavior:smooth}
body{background:linear-gradient(180deg,#f7f9f8 0,#f2f5f3 260px,#f4f6f5 100%);color:var(--eg-ink);min-height:100vh}
body>header{position:relative;overflow:hidden;padding:30px max(24px,calc((100vw - 1100px)/2 + 24px));background:linear-gradient(118deg,#07351f 0%,#0b4b2d 58%,#164f38 100%);box-shadow:0 8px 28px rgba(7,53,31,.18)}
body>header:after{content:'';position:absolute;right:-80px;top:-95px;width:330px;height:330px;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 56px rgba(255,255,255,.035),0 0 0 116px rgba(255,255,255,.022);pointer-events:none}
body>header h1{font-size:clamp(26px,3vw,38px);letter-spacing:-.025em;line-height:1.05;position:relative;z-index:1}
body>header .sub{max-width:720px;opacity:.83;position:relative;z-index:1}
.eg-page-badge{display:inline-flex;align-items:center;gap:7px;margin:0 0 10px;padding:5px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:11px;font-weight:850;letter-spacing:.11em;text-transform:uppercase;position:relative;z-index:2}
.eg-page-badge:before{content:'';width:7px;height:7px;border-radius:50%;background:#e3bd59;box-shadow:0 0 0 3px rgba(227,189,89,.16)}
.wrap{padding-top:28px;padding-bottom:56px}
.card{position:relative;border:1px solid var(--eg-line);border-radius:var(--eg-radius);box-shadow:var(--eg-shadow);padding:22px 22px 24px;background:var(--eg-surface);transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}
.card>h2:first-child,.card>h3:first-child{letter-spacing:-.015em;margin-top:0}
.card>h2:first-child{font-size:22px;line-height:1.2;margin-bottom:8px}
.card>h2:first-child:after{content:'';display:block;width:46px;height:3px;border-radius:99px;background:var(--section-accent,var(--gold));margin-top:9px}
.eg-section{--section-accent:#789086;--section-tint:#f7f9f8;border-top:4px solid var(--section-accent);background:linear-gradient(180deg,var(--section-tint) 0,rgba(255,255,255,.985) 86px,#fff 100%)}
.eg-section:before{content:'';position:absolute;right:18px;top:18px;width:9px;height:9px;border-radius:50%;background:var(--section-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--section-accent) 13%,transparent)}
.eg-section-home{--section-accent:#0b6139;--section-tint:#f0f7f3}
.eg-section-event{--section-accent:#2f6fa5;--section-tint:#f1f6fb}
.eg-section-ticket{--section-accent:#a97619;--section-tint:#fbf7ee}
.eg-section-capacity{--section-accent:#c46b22;--section-tint:#fff7ef}
.eg-section-brand{--section-accent:#8a5b8f;--section-tint:#faf4fb}
.eg-section-voucher{--section-accent:#6e56a1;--section-tint:#f6f3fb}
.eg-section-checkin{--section-accent:#087f5b;--section-tint:#eef9f5}
.eg-section-report{--section-accent:#3574a7;--section-tint:#f0f6fb}
.eg-section-issued{--section-accent:#9b6b18;--section-tint:#fbf7ed}
.eg-section-access{--section-accent:#4f5f9b;--section-tint:#f3f5fb}
.eg-section-org{--section-accent:#147b78;--section-tint:#eff9f8}
.eg-section-billing{--section-accent:#a45d37;--section-tint:#fbf4f0}
.eg-section-settings{--section-accent:#59636e;--section-tint:#f4f6f7}
.eg-section-publish{--section-accent:#2f7b44;--section-tint:#f0f8f2}
.eg-section-audit{--section-accent:#506c8a;--section-tint:#f2f6fa}
.eg-section-public{--section-accent:#26735a;--section-tint:#eff8f4}
label{font-size:13px;letter-spacing:.012em;color:#34473d;margin-top:12px}
input,select,textarea{border:1px solid #cbd5cf;border-radius:10px;background:#fff;box-shadow:inset 0 1px 1px rgba(15,35,25,.02);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
input:hover,select:hover,textarea:hover{border-color:#aebdb4}
input:focus,select:focus,textarea:focus{outline:none;border-color:#2f7f5a;box-shadow:0 0 0 3px rgba(47,127,90,.13)}
button,.btn{border-radius:10px;box-shadow:0 2px 5px rgba(11,61,36,.12);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}
button:hover,.btn:hover{filter:brightness(1.035);box-shadow:0 5px 12px rgba(11,61,36,.16)}
button:active,.btn:active{transform:translateY(1px)}
button.ghost,.btn.ghost{box-shadow:none;background:rgba(255,255,255,.8)}
.notice,.error{border:1px solid transparent}.notice{border-color:#cfe3d6}.error{border-color:#efcaca}
.pill{border:1px solid #dbe3de;background:#f4f7f5;font-weight:750}
.module-grid{gap:14px}.module{position:relative;overflow:hidden;min-height:94px;padding:18px 18px 16px;border:1px solid #e0e6e2;border-radius:14px;background:#fff;box-shadow:0 7px 19px rgba(18,50,34,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.module:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--module-accent,#7f9188)}
.module:hover{transform:translateY(-2px);box-shadow:var(--eg-shadow-hover);border-color:color-mix(in srgb,var(--module-accent,#7f9188) 38%,#dce4df)}
.module b{font-size:16px;color:#263c31}.module span{font-size:13px;line-height:1.4;margin-top:3px}
#designer{--module-accent:#2f6fa5}#admin{--module-accent:#4f5f9b}#orgs{--module-accent:#147b78}#billing{--module-accent:#a45d37}#templates{--module-accent:#a97619}#audit{--module-accent:#506c8a}#settings{--module-accent:#59636e}#voucherTile{--module-accent:#6e56a1}#checkinTile{--module-accent:#087f5b}#reportsTile{--module-accent:#3574a7}#issuedTile{--module-accent:#9b6b18}
.ops-tile{background:#fff!important;border-color:#e0e6e2!important}.ops-tile b{color:#263c31!important}
table{background:#fff;border-radius:12px;overflow:hidden}th{font-size:12px;text-transform:uppercase;letter-spacing:.045em;color:#4f6358;background:#f6f8f7}th,td{padding:11px 10px}
.tier{background:#fbfcfb;border-color:#e1e6e3;border-radius:11px}
.control-center-link{background:#fff!important;color:#164d32!important;border:1px solid #d5e1da!important;box-shadow:0 8px 22px rgba(14,49,31,.14)!important;backdrop-filter:blur(8px)}
/* page identity accents */
body.eg-page-dashboard>header{background:linear-gradient(118deg,#07351f,#0b5330 60%,#1d6246)}
body.eg-page-designer>header{background:linear-gradient(118deg,#163f61,#2f6fa5 62%,#487fa8)}
body.eg-page-admin>header{background:linear-gradient(118deg,#343f70,#4f5f9b 65%,#6672a7)}
body.eg-page-organizations>header{background:linear-gradient(118deg,#0f5553,#147b78 65%,#2a8a86)}
body.eg-page-billing>header{background:linear-gradient(118deg,#6f3d27,#a45d37 65%,#b87858)}
body.eg-page-templates>header{background:linear-gradient(118deg,#6f4c12,#a97619 65%,#bd8b33)}
body.eg-page-audit>header{background:linear-gradient(118deg,#33485e,#506c8a 65%,#6b829a)}
body.eg-page-settings>header{background:linear-gradient(118deg,#39434c,#59636e 65%,#717b85)}
body.eg-page-claim>header,body.eg-page-ticket>header,body.eg-page-batch>header{background:linear-gradient(118deg,#0a4430,#26735a 65%,#3b826c)}
body.eg-page-index>header{min-height:190px;display:flex;flex-direction:column;justify-content:flex-end}
body.eg-page-index main.wrap{margin-top:-38px;position:relative;z-index:2}
body.eg-page-index .card{max-width:520px!important;padding:28px}
/* dashboard functional work areas */
#voucher-ops{--section-accent:#6e56a1;--section-tint:#f6f3fb}
#checkin-ops{--section-accent:#087f5b;--section-tint:#eef9f5}
#reports-ops{--section-accent:#3574a7;--section-tint:#f0f6fb}
#issued-ops{--section-accent:#9b6b18;--section-tint:#fbf7ed}
#voucher-ops .walkin-panel{border-color:#d9d0eb;background:#faf8fd}
#checkin-ops .walkin-panel{border-color:#c9e6dc;background:#f2faf7}
.report-stat{border:1px solid #dce5ea!important;border-top:3px solid #3574a7!important;background:linear-gradient(180deg,#f7fbfe,#fff)!important}
.report-stat strong{color:#2f6f9e!important}
.issued-table-wrap{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
/* responsive polish */
@media(max-width:700px){
  body>header{padding:23px 17px 26px}body>header h1{font-size:29px}.wrap{padding:16px 12px 42px}.card{padding:18px 15px 20px;border-radius:14px;margin-bottom:14px}.card>h2:first-child{font-size:20px}.eg-section:before{right:14px;top:16px}.module{min-height:82px;padding:15px 15px 14px}.module-grid{gap:9px}button,.btn{min-height:42px}.toolbar{gap:8px}.control-center-link{right:10px;bottom:10px;padding:9px 12px;font-size:13px}.voucher-toolbar{grid-template-columns:1fr!important}.voucher-filterbar{gap:5px}.voucher-filterbar button{padding:7px 9px}.voucher-row{padding:10px}.batch-children{margin-left:12px;padding-left:8px}.icon-btn{min-width:40px!important;width:40px;height:40px;padding:0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.module,.card,button,.btn,input,select,textarea{transition:none!important}}

/* EventGate v1.4.37 — restrained professional interface
   Subtraction redesign: fewer cards, clearer hierarchy, flatter work surfaces. */
:root{
  --eg-bg:#f4f6f5;
  --eg-surface:#fff;
  --eg-surface-2:#f8faf9;
  --eg-border:#dfe5e1;
  --eg-text:#17221c;
  --eg-muted-2:#6d7972;
  --eg-radius-sm:8px;
  --eg-radius-md:12px;
}
body{background:#f4f6f5}
body>header{padding-top:26px;padding-bottom:24px;box-shadow:none;border-bottom:1px solid rgba(255,255,255,.12)}
body>header:after{display:none}
.eg-page-badge{background:transparent;border:0;padding:0;margin-bottom:7px;border-radius:0;opacity:.76;font-size:10px;letter-spacing:.14em}
.eg-page-badge:before{width:6px;height:6px;box-shadow:none}
.wrap{max-width:1180px;padding-top:26px}

/* Cards become sections, not floating tiles. */
.card,.eg-section{
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
  padding:22px 0 28px;
  margin:0;
  border-bottom:1px solid var(--eg-border);
}
.card:last-child,.eg-section:last-child{border-bottom:0}
.eg-section{border-top:0!important;background:transparent!important}
.eg-section:before{display:none}
.card>h2:first-child,.card>h3:first-child{margin-bottom:5px}
.card>h2:first-child:after{width:30px;height:2px;margin-top:8px;background:var(--section-accent,var(--green))}

/* Forms sit on a quiet work surface only where needed. */
.row{gap:16px}
input,select,textarea{border-radius:8px;box-shadow:none;background:#fff}
button,.btn{border-radius:8px;box-shadow:none}
button:hover,.btn:hover{box-shadow:none;transform:none}

/* Dashboard: navigation list, not a wall of cards. */
.eg-page-dashboard main.wrap>section:first-child{padding-top:4px}
.eg-page-dashboard .module-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 36px;
  margin-top:18px;
  border-top:1px solid var(--eg-border);
}
.eg-page-dashboard .module{
  min-height:0;
  padding:15px 4px 14px 25px;
  border:0;
  border-bottom:1px solid var(--eg-border);
  border-radius:0;
  background:transparent!important;
  box-shadow:none;
  transform:none!important;
}
.eg-page-dashboard .module:before{left:4px;top:19px;bottom:auto;width:8px;height:8px;border-radius:50%;background:var(--module-accent,#73877b)}
.eg-page-dashboard .module:hover{background:rgba(255,255,255,.58)!important;border-color:var(--eg-border);box-shadow:none}
.eg-page-dashboard .module b{font-size:15px;line-height:1.2}
.eg-page-dashboard .module span{font-size:12.5px;line-height:1.35}
.eg-page-dashboard #logoutBtn{margin-top:18px!important}

/* Operational areas get a slim identity rail and open layout. */
#voucher-ops,#checkin-ops,#reports-ops,#issued-ops{position:relative;padding-left:18px}
#voucher-ops:after,#checkin-ops:after,#reports-ops:after,#issued-ops:after{
  content:'';position:absolute;left:0;top:24px;bottom:30px;width:3px;border-radius:3px;background:var(--section-accent)
}
.walkin-panel{
  border:1px solid var(--eg-border)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* Voucher list: table-like rhythm instead of stacked cards. */
.voucher-row{
  border:0!important;
  border-bottom:1px solid var(--eg-border)!important;
  border-radius:0!important;
  margin:0!important;
  padding:12px 8px!important;
  background:#fff!important;
}
.voucher-row:nth-of-type(even){background:#f8faf9!important}
.voucher-row.batch-parent{border-left:3px solid color-mix(in srgb,var(--green) 62%,#fff)!important;background:#f7f9f8!important}
.batch-children{margin-top:0;margin-bottom:8px}
.batch-child{border:0!important;border-bottom:1px solid #dfe7e2!important;border-radius:0!important;margin:0!important;padding:10px 10px!important;background:#f2f7f3!important}
.batch-child:nth-child(even){background:#eaf3ed!important}
.voucher-filterbar button{box-shadow:none}

/* Tables are the primary dense-data surface. */
.issued-table-wrap{border:1px solid var(--eg-border);border-radius:10px;box-shadow:none;background:#fff}
table{box-shadow:none}
th{background:#f3f6f4}
.report-grid{gap:0;border:1px solid var(--eg-border);border-radius:10px;overflow:hidden;background:#fff}
.report-stat{border:0!important;border-right:1px solid var(--eg-border)!important;border-radius:0!important;background:#fff!important;padding:14px!important}
.report-stat:last-child{border-right:0!important}
.report-stat strong{font-size:22px!important}

/* Generic pages: groups remain visually distinct through headings and spacing, not boxes. */
.eg-page-designer .card,.eg-page-admin .card,.eg-page-organizations .card,.eg-page-billing .card,.eg-page-templates .card,.eg-page-audit .card,.eg-page-settings .card{padding-top:24px;padding-bottom:28px}
.tier{border:0;border-bottom:1px solid var(--eg-border);border-radius:0;background:transparent;padding:12px 4px}
.tiers .tier:nth-child(even){background:rgba(255,255,255,.52)}
.notice,.error{border-radius:8px}

/* Public-facing claim/ticket surfaces remain contained because they are task artifacts. */
.eg-page-claim main.wrap>.card,.eg-page-ticket main.wrap>.card,.eg-page-batch main.wrap>.card,.eg-page-index main.wrap>.card{
  background:#fff;border:1px solid var(--eg-border);border-radius:12px;box-shadow:0 6px 20px rgba(22,44,33,.055);padding:22px
}

@media(max-width:760px){
  .wrap{padding:14px 14px 38px}
  .card,.eg-section{padding:19px 0 23px}
  .eg-page-dashboard .module-grid{grid-template-columns:1fr;gap:0}
  .eg-page-dashboard .module{padding:14px 4px 13px 24px}
  #voucher-ops,#checkin-ops,#reports-ops,#issued-ops{padding-left:12px}
  #voucher-ops:after,#checkin-ops:after,#reports-ops:after,#issued-ops:after{width:2px;top:20px;bottom:24px}
  .report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-stat:nth-child(2n){border-right:0!important}
  .voucher-row{padding:11px 5px!important}
  .batch-children{margin-left:10px}
}


/* EventGate v1.4.39: single-organization / multi-chapter beta */
.beta-org-lock{padding:10px 12px;border-left:3px solid #0b3d24;background:#f7faf7;font-weight:800;border-radius:4px;margin-bottom:10px}
.beta-org-lock small{display:block;font-weight:500;color:#647067;margin-top:2px}
.beta-fixed-note{font-size:12px;color:#647067;margin:6px 0 10px}
.beta-hidden{display:none!important}
.beta-brand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:700px){.beta-brand-grid{grid-template-columns:1fr}}


/* v1.4.42 usability polish */
.eg-breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin:2px 0 14px}.eg-breadcrumb a{font-weight:700;text-decoration:none}.eg-breadcrumb strong{color:var(--green)}
.eg-status-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid var(--line);background:#f7f8f6}.eg-status-badge.active{background:#edf8ef;color:#176b35}.eg-status-badge.draft{background:#f4f4f2}.eg-status-badge.paused,.eg-status-badge.pending-approval{background:#fff7e6;color:#8a5a00}.eg-status-badge.completed,.eg-status-badge.archived{background:#f1f3f4;color:#4c555d}
.eg-compact-strip{display:flex;gap:10px;align-items:center;overflow:auto;padding:8px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.eg-activity-item{min-width:190px;padding:7px 10px;border-right:1px solid var(--line)}.eg-activity-item:last-child{border-right:0}.eg-activity-item b{font-size:12px}.eg-activity-item small{display:block;color:var(--muted);margin-top:2px}
.eg-designer-tools{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:10px 0}.eg-preview-switch{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.eg-preview-switch button{border:0;border-radius:0;padding:7px 10px;background:#fff;color:var(--green)}.eg-preview-switch button.active{background:var(--green);color:#fff}.eg-preview-mobile{max-width:430px;margin-left:auto;margin-right:auto}.eg-help{border-radius:50%;width:24px;height:24px;min-width:24px;padding:0;font-weight:900;font-size:12px;background:#f2f4f1;color:var(--green);border:1px solid var(--line)}
.eg-status-legend{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:8px}.eg-status-legend span{display:inline-flex;align-items:center;gap:4px}.eg-status-dot{width:8px;height:8px;border-radius:50%;background:#888}.eg-status-dot.active{background:#2c8b4b}.eg-status-dot.draft{background:#8b8f92}.eg-status-dot.pending{background:#c58a14}.eg-unsaved{font-size:12px;font-weight:800;color:#9a5d00}.eg-recent-select{max-width:320px}
@media(max-width:700px){.eg-mobile-sticky{position:sticky;bottom:0;z-index:20;background:rgba(255,255,255,.96);padding:10px 8px;margin:8px -8px -8px;box-shadow:0 -7px 18px rgba(0,0,0,.08);backdrop-filter:blur(8px)}.eg-designer-tools{gap:5px}.eg-designer-tools button{padding:8px 9px}.eg-compact-strip{margin-left:-4px;margin-right:-4px}}


/* v1.4.45 role-aware page access */
.module.eg-module-locked{position:relative;opacity:.52;filter:saturate(.35);cursor:not-allowed;background:#f5f6f5!important;border-style:dashed!important}
.module.eg-module-locked:hover{transform:none;box-shadow:none}
.eg-lock-mark{position:absolute;right:12px;top:10px;font-size:14px}
.eg-access-denied{max-width:620px;margin:64px auto;padding:34px 24px;text-align:center;border-top:4px solid var(--gold);background:#fff}
.eg-access-denied .eg-access-lock{font-size:34px;margin-bottom:8px}
.eg-access-denied h2{margin:0 0 8px;color:var(--green)}
.eg-access-denied p{color:var(--muted);margin:0 auto 20px;max-width:500px}
.eg-page-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin-top:10px}
.eg-page-permissions label{display:flex;gap:8px;align-items:center;margin:0;padding:7px 8px;border-bottom:1px solid var(--line)}
.eg-page-permissions label.unavailable{opacity:.45}
@media(max-width:680px){.eg-page-permissions{grid-template-columns:1fr}}

/* v1.4.47 Users & Access: compact, responsive administrator management */
.eg-section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.eg-section-title-row h2{margin-bottom:3px}.eg-users-summary{font-size:13px;font-weight:750;color:var(--muted);white-space:nowrap}.eg-users-toolbar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(120px,1fr));gap:10px;align-items:end;margin:12px 0 14px}.eg-users-toolbar label{font-size:12px}.eg-users-toolbar input,.eg-users-toolbar select{margin-bottom:0}.eg-users-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.eg-users-table{width:100%;min-width:720px;border-collapse:collapse;border-radius:0}.eg-users-table th,.eg-users-table td{vertical-align:middle;border-bottom:1px solid #edf0ee}.eg-users-table tbody tr:last-child td{border-bottom:0}.eg-user-secondary{font-size:12px;margin-top:2px}.eg-user-action{text-align:right;width:82px}.eg-user-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800;white-space:nowrap}.eg-user-status-active{background:#e8f5ed;color:#15673c}.eg-user-status-setup,.eg-user-status-invited{background:#fff3d6;color:#785511}.eg-user-status-expired{background:#fde8e5;color:#8b2f25}.eg-user-status-inactive{background:#f1f2f2;color:#66706b}.eg-users-pager{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px}.eg-users-pager .icon-btn{font-size:24px;line-height:1}.eg-empty-state{padding:22px;border:1px dashed var(--line);border-radius:10px;text-align:center;color:var(--muted);background:#fafbfa}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:900px){.eg-users-toolbar{grid-template-columns:1fr 1fr 1fr}.eg-users-search{grid-column:1/-1}}@media(max-width:700px){.eg-section-title-row{align-items:flex-start;flex-direction:column;gap:4px}.eg-users-summary{white-space:normal}.eg-users-toolbar{grid-template-columns:1fr 1fr}.eg-users-search{grid-column:1/-1}.eg-users-table-wrap{border:0;overflow:visible}.eg-users-table{min-width:0;display:block;background:transparent}.eg-users-table thead{display:none}.eg-users-table tbody{display:grid;gap:0}.eg-users-table tr{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 2px;border-bottom:1px solid var(--line);background:transparent}.eg-users-table td{display:block;padding:0;border:0}.eg-users-table td:nth-child(1){grid-column:1}.eg-users-table td:nth-child(2){grid-column:1;font-size:13px;color:var(--muted)}.eg-users-table td:nth-child(3){grid-column:1;font-size:13px}.eg-users-table td:nth-child(4){grid-column:1}.eg-users-table td:nth-child(5){grid-column:2;grid-row:1/5;align-self:center}.eg-user-action{width:auto}.eg-user-action button{min-width:64px}.eg-users-pager{position:sticky;bottom:8px;width:max-content;margin:14px auto 0;padding:5px 7px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(0,0,0,.08);backdrop-filter:blur(7px)}}

/* EventGate v1.4.50: restore Dress Code / Note to the green footer */
.eg-ticket-info-five{padding-left:18px;padding-right:18px}
.eg-ticket-info-five .eg-ticket-info-item{padding:0 8px;grid-template-columns:30px minmax(0,1fr);gap:6px}
.eg-ticket-info-five .eg-ticket-info-icon{width:28px;height:28px}
.eg-ticket-info-five .eg-ticket-info-icon svg{width:23px;height:23px}
.eg-ticket-info-five small{font-size:8.5px;letter-spacing:.055em}
.eg-ticket-info-five span{font-size:10px;line-height:1.1;-webkit-line-clamp:2}
.eg-ticket-details .eg-detail-row:nth-child(3){border-right:0}

/* EventGate v1.4.51: adaptive Dress Code / Note footer value */
.eg-ticket-info-note-value{white-space:normal!important;overflow:hidden;text-overflow:clip!important;line-height:1.08!important;display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere;word-break:normal}
.eg-ticket-info-note-item>div{min-width:0}
.eg-ticket-info-five .eg-ticket-info-note-value{line-height:1.05!important}



/* EventGate v1.4.67 exact one-page ticket printing.
   Print the already-tested 1600x533 export image as one atomic landscape object. */
@page{size:letter landscape;margin:.25in}
@media print{
  html.eg-print-image-mode,html.eg-print-image-mode body{
    width:100%!important;height:auto!important;min-width:0!important;margin:0!important;padding:0!important;
    background:#fff!important;overflow:visible!important;
  }
  html.eg-print-image-mode body>*:not(#egPrintImageOverlay){display:none!important}
  html.eg-print-image-mode #egPrintImageOverlay{
    display:flex!important;position:static!important;width:100%!important;height:auto!important;
    margin:0!important;padding:0!important;align-items:flex-start!important;justify-content:center!important;
    overflow:visible!important;break-inside:avoid!important;page-break-inside:avoid!important;
  }
  html.eg-print-image-mode #egPrintImageOverlay img{
    display:block!important;width:10.35in!important;height:auto!important;max-width:none!important;max-height:none!important;
    margin:0 auto!important;padding:0!important;object-fit:contain!important;
    break-inside:avoid!important;page-break-inside:avoid!important;
    -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
  }
}

/* EventGate v1.4.76 per-tier accent color controls and popular-color palette */
.tier-color-control{display:grid;grid-template-columns:58px 110px max-content minmax(220px,1fr);gap:8px;align-items:center}
.tier-color-control input[type="color"]{width:58px;height:40px;padding:3px;border:1px solid #b9c9bf;border-radius:6px;background:#fff;cursor:pointer}
.tier-color-control .tierAccentHex{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.tier-color-palette{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-height:40px}
.tier-color-swatch{width:28px;height:28px;min-width:28px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #9aa9a0;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}
.tier-color-swatch:hover,.tier-color-swatch:focus-visible{transform:scale(1.08);box-shadow:0 0 0 2px #1d5a3d;outline:none}
.tier-color-swatch.selected{box-shadow:0 0 0 3px #1d5a3d}
.tier-color-help{margin-top:5px}
@media(max-width:980px){.tier-color-control{grid-template-columns:58px 110px 1fr}.tier-color-palette{grid-column:1/-1}}
@media(max-width:760px){.tier-color-control{grid-template-columns:54px 1fr}.tier-color-control .resetTierColor{grid-column:1/-1}.tier-color-palette{grid-column:1/-1}}

/* EventGate v1.4.75 WCAG-aware automatic contrast for per-tier accent surfaces */
.eg-ticket-tier-badge{color:var(--eg-tier-text,#fff)}
.eg-ticket-tier-badge div{color:var(--eg-tier-text,#fff)}
.eg-ticket-info,.eg-ticket-info span{color:var(--eg-tier-text,#fff)}
.eg-ticket-main-serial,.eg-ticket-main-serial small,.eg-ticket-stub-number,.eg-ticket-stub-number small{color:var(--eg-tier-text,#fff)}
.eg-ticket-org{color:var(--eg-primary)}
.eg-ticket-tier-badge strong.eg-ticket-price-lines,.eg-ticket-main-serial strong,.eg-ticket-stub-number strong{color:var(--eg-tier-text,#fff)!important}
.eg-ticket-info small,.eg-ticket-info-icon{color:var(--eg-tier-text,#fff)!important}
.eg-ticket-stub-number{color:var(--eg-tier-text,#fff)!important;box-shadow:inset 0 0 0 3px var(--eg-deep-green,#033A28),inset 0 0 0 5px var(--eg-secondary)}
.eg-ticket-main-serial{color:var(--eg-tier-text,#fff)!important;box-shadow:inset 0 0 0 3px var(--eg-deep-green,#033A28),inset 0 0 0 5px var(--eg-secondary),0 7px 16px rgba(0,0,0,.08)}

/* EventGate v1.4.91 transaction marking refinement */
.eg-ticket-transaction-mark{position:absolute;z-index:14;right:205px;top:378px;left:auto;transform:rotate(-1.5deg);width:205px;max-width:205px;padding:9px 10px;border:3px solid var(--eg-transaction-border,var(--eg-primary));border-radius:10px;background:var(--eg-transaction-bg,var(--eg-primary));color:var(--eg-transaction-text,#fff);font:900 18px/1.05 Arial,Helvetica,sans-serif;letter-spacing:.055em;text-transform:uppercase;box-shadow:0 4px 10px rgba(0,0,0,.10);text-align:center;box-sizing:border-box;white-space:normal}

/* EventGate v1.4.91: transaction state is repeated on the admission stub. */
.eg-ticket-stub-transaction-mark{margin:7px auto 10px;max-width:210px;padding:6px 10px;border:3px solid var(--eg-transaction-border,var(--eg-primary));border-radius:8px;background:var(--eg-transaction-bg,var(--eg-primary));color:var(--eg-transaction-text,#fff);font:900 13px/1.05 Arial,Helvetica,sans-serif;letter-spacing:.055em;text-transform:uppercase;transform:rotate(-2deg);box-sizing:border-box;white-space:normal;text-align:center}


/* EventGate v1.4.94: explicit donation amount labels on ticket and stub. */
.eg-ticket-donation-mark{position:absolute;z-index:14;right:205px;top:421px;width:205px;max-width:205px;padding:7px 8px;border:2px solid #8A651D;border-radius:9px;background:#F5E4A8;color:#4B3507;font:900 15px/1.05 Arial,Helvetica,sans-serif;letter-spacing:.04em;text-transform:uppercase;text-align:center;box-sizing:border-box;white-space:normal;box-shadow:0 3px 8px rgba(0,0,0,.08)}
.eg-ticket-stub-donation-mark{margin:-4px auto 8px;max-width:210px;padding:5px 8px;border:2px solid #8A651D;border-radius:7px;background:#F5E4A8;color:#4B3507;font:900 11px/1.05 Arial,Helvetica,sans-serif;letter-spacing:.035em;text-transform:uppercase;text-align:center;box-sizing:border-box;white-space:normal}
