/* Experience Center 4.5.0 — shared visual system for certificates,
   coupons, discounts, admission tickets and VIP passes. */
.document-generation-layout{display:grid;grid-template-columns:minmax(520px,1.45fr) minmax(300px,.65fr);gap:22px;align-items:start}.document-preview{--doc-navy:#00314e;--doc-red:#e51b3e;position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.414/1;background:#fff;border:3px solid var(--doc-navy);outline:1px solid var(--doc-red);outline-offset:-12px;padding:34px 42px;box-shadow:0 18px 42px rgba(4,47,71,.12);display:flex;flex-direction:column;color:var(--doc-navy)}.document-preview:before,.document-preview:after{content:"";position:absolute;z-index:-1;width:180px;height:180px;border:1px solid rgba(0,73,108,.09);transform:rotate(45deg);pointer-events:none}.document-preview:before{left:-115px;top:33%}.document-preview:after{right:-105px;top:18%;border-color:rgba(229,27,62,.09)}.document-preview-watermark{position:absolute;z-index:-1;left:50%;top:52%;transform:translate(-50%,-50%) rotate(-18deg);white-space:nowrap;font-size:clamp(1.5rem,4.4vw,3.35rem);font-weight:900;letter-spacing:.02em;color:rgba(23,61,82,.075)}.document-preview header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid rgba(0,49,78,.24)}.document-preview header img{display:block;width:min(235px,43%);max-height:62px;object-fit:contain;object-position:left center}.document-preview header strong{font-size:.78rem;letter-spacing:.13em;position:relative;white-space:nowrap}.document-preview header strong:after{content:"";position:absolute;width:72%;height:3px;right:0;bottom:-12px;background:var(--doc-red)}.document-preview main{flex:1;text-align:center;display:flex;flex-direction:column;justify-content:center;padding:18px 7% 10px}.document-preview-type{font-size:.86rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase;margin:0 0 18px}.document-preview main h2{font-size:clamp(1.55rem,3.7vw,3rem);line-height:1.06;margin:0 0 12px}.document-preview main h3{font-size:clamp(1.05rem,2.25vw,1.75rem);line-height:1.13;margin:10px 0}.document-preview main p{margin:5px 0;color:#31566a}.document-preview footer{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;border-top:1px solid rgba(0,49,78,.18);padding-top:14px}.document-preview footer b,.document-preview footer small{display:block}.document-preview footer small{color:#526f7d;margin-top:5px}.document-preview-qr{width:76px;height:76px;border:1px solid #9eb6c2;background:repeating-linear-gradient(45deg,#fff 0 4px,#edf3f6 4px 8px);display:grid;place-items:center;font-weight:900;font-size:.76rem}.document-preview-ticket main{text-align:left;align-items:flex-start;padding-left:4%;padding-right:26%}.document-preview-ticket .document-preview-type{font-size:1.05rem}.document-preview-ticket:after{right:22%;top:20%;height:68%;width:1px;border:0;border-left:1px dashed rgba(0,49,78,.35);transform:none}.document-preview-vip_pass{aspect-ratio:1/1.414;max-width:540px;margin-inline:auto;padding:34px}.document-preview-vip_pass main{padding-inline:5%}.document-preview-vip_pass main h2{font-size:clamp(1.8rem,4.4vw,3.25rem)}.document-preview-vip_pass footer{padding:14px 12px;background:linear-gradient(90deg,var(--doc-navy),#075577);color:#fff;border-top:3px solid var(--doc-red);margin:0 -12px -12px}.document-preview-vip_pass footer small{color:#e9f2f5}.document-preview-discount main h2{color:var(--doc-red)}
.document-public-card{--doc-navy:#00314e;--doc-red:#e51b3e;background:#fff;border:1px solid #d8e4ea;border-top:5px solid var(--doc-navy);border-radius:18px;box-shadow:0 16px 42px rgba(4,47,71,.1);overflow:hidden}.document-public-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:28px 30px 20px;border-bottom:1px solid #e1eaee}.document-public-head h1{margin:9px 0 0;font-size:clamp(1.7rem,4vw,2.65rem);color:var(--doc-navy)}.document-public-body{display:grid;grid-template-columns:minmax(235px,.65fr) minmax(320px,1.35fr);gap:34px;padding:30px}.document-public-qr{display:flex;flex-direction:column;align-items:center;gap:13px;text-align:center;color:#526f7d}.document-public-qr .qr-box{background:#fff;border:1px solid #a9bdc7;padding:16px;box-shadow:0 8px 22px rgba(4,47,71,.09)}.document-public-details h2{font-size:clamp(1.45rem,3vw,2.25rem);color:var(--doc-navy);margin:0 0 10px}.document-public-details .lead{font-size:1.08rem;color:#385d70}.document-public-details dl{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(180px,1fr);gap:9px 16px;margin:22px 0}.document-public-details dt{font-weight:800;color:#486879}.document-public-details dd{margin:0;color:#092f46}.document-public-terms{border-left:3px solid var(--doc-red);padding:4px 0 4px 18px}.document-public-terms h3{margin:0 0 7px}.document-public-terms p{margin:0;white-space:normal}.document-public-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 30px;background:#f6fafb;border-top:1px solid #e1eaee}.document-public-ticket{border-top-color:#0b5276}.document-public-vip_pass{border-top-color:#c69730}.document-public-discount{border-top-color:var(--doc-red)}
.document-use-card{max-width:900px}.document-use-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.document-use-head h2{margin:10px 0 6px}.document-use-card form{margin-top:22px;padding-top:20px;border-top:1px solid #dce7ec}
@media(max-width:1050px){.document-generation-layout{grid-template-columns:1fr}.document-preview{max-width:900px}.document-public-body{grid-template-columns:1fr}.document-public-qr{order:2}.document-public-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.document-preview{min-width:0;padding:24px 26px;outline-offset:-8px}.document-preview header img{width:44%;max-height:42px}.document-preview header strong{font-size:.57rem}.document-preview main{padding-inline:1%}.document-preview footer{gap:10px}.document-preview-qr{width:54px;height:54px}.document-preview-vip_pass{padding:24px}.document-public-head,.document-public-body,.document-public-footer{padding:20px}.document-public-details dl{grid-template-columns:1fr}.document-public-details dt{margin-top:8px}.document-use-head{flex-direction:column}}
