/* Park-inspired portal presentation; card text and links remain in the HTML. */
body.qr-portal-frame .hero{padding-top:40px}
body.qr-portal-frame .title-row{margin-bottom:32px}
body.qr-portal-frame .gate{min-height:150px;padding:22px 24px;background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 68%),linear-gradient(145deg,#1a2537,#111a29);border-color:color-mix(in srgb,var(--accent) 26%,#233147);box-shadow:0 12px 32px #0002}
body.qr-portal-frame .gate::before{height:2px;transform:scaleX(1);background:linear-gradient(90deg,var(--accent),transparent)}
body.qr-portal-frame .gate::after{pointer-events:none}
body.qr-portal-frame .gate-head{margin-bottom:12px}
body.qr-portal-frame .gate-no{font-size:.85rem;color:#a4b3c5}
body.qr-portal-frame .gate-body{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:4px 16px;margin:8px 0 18px}
body.qr-portal-frame .gate-name{margin:0;font-family:var(--sans);font-size:clamp(1.15rem,1.65vw,1.5rem);line-height:1.25;font-weight:700;letter-spacing:-.035em;color:#e9f1ff}
body.qr-portal-frame .gate-ko{grid-column:2;margin:0;font-size:.7rem;line-height:1.5;color:#b7c9d8}
body.qr-portal-frame .gate-go{margin-top:auto;padding-top:12px}
body.qr-portal-frame .subgates>.gate--doc .gate-body{margin-bottom:auto}
body.qr-portal-frame .qr-card-icon{grid-column:1;grid-row:1/span 2;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:1px solid color-mix(in srgb,var(--accent) 36%,transparent);border-radius:16px;color:var(--accent);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 20%,#162333),#152334);box-shadow:inset 0 1px #ffffff16,0 8px 20px #0002}
body.qr-portal-frame .qr-card-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
body.qr-portal-frame .gate-sub{font-size:.65rem;padding:5px 8px}
@media(max-width:1080px){body.qr-portal-frame .gates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body.qr-portal-frame .subgates,body.qr-portal-frame .gates{grid-template-columns:1fr}body.qr-portal-frame .gate{min-height:0}body.qr-portal-frame .gate-body{margin:10px 0 16px}}
