.builder-row{grid-template-columns:76px minmax(130px,1.4fr) minmax(120px,1fr) 90px 78px 96px 90px 36px;transition:border-color .15s,box-shadow .15s,opacity .15s,transform .15s}.order-controls{display:flex;align-items:center;gap:3px}.drag{display:grid;place-items:center;width:24px;height:30px;border-radius:6px;color:#777f91;cursor:grab;user-select:none;touch-action:none}.drag:hover,.drag:focus-visible{background:#eeecff;color:#554bd4;outline:none}.drag:active{cursor:grabbing}.order-step{display:grid;place-items:center;width:21px;height:25px;padding:0;border:1px solid #dfe3ec;border-radius:5px;background:#fff;color:#687184;font-size:11px;line-height:1}.order-step:hover:not(:disabled),.order-step:focus-visible{border-color:#aaa5ef;background:#f2f0ff;color:#554bd4;outline:none}.order-step:disabled{opacity:.28;cursor:default}.builder-row.dragging{opacity:.38;transform:scale(.985)}.builder-row.drag-target{border-color:#8d85eb;box-shadow:0 0 0 3px #6157e719}.field-list.saving{pointer-events:none;opacity:.68}.field-list.saving:after{display:block;padding:8px;color:#687184;font-size:11px;text-align:center;content:"•••"}.builder-heading,.airport-info-heading,.preview-language{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-heading{margin-bottom:13px}.builder-heading h2,.builder-heading p,.airport-info-heading h2,.preview-language h2,.preview-language p{margin:0}.builder-heading p{margin-top:4px;color:var(--muted)}.preview-language{align-items:flex-start;margin-bottom:16px}.preview-language label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.preview-language select{min-width:112px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.airport-info-card{max-width:760px}.translation-form{display:grid;gap:14px}.translation-base{display:grid;gap:5px;padding:13px;border-radius:10px;background:#f4f5f8}.translation-base b{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.translation-base span{font-weight:850}.translation-base small{color:var(--muted);white-space:pre-wrap}.translation-form section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px}.translation-form section header{display:flex;align-items:center;justify-content:space-between;grid-column:1/-1}.translation-form section label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:750}.translation-form input,.translation-form textarea{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit}.translation-form textarea{min-height:72px;resize:vertical}.translation-form .form-actions{position:sticky;bottom:-24px;padding:12px 0 0;background:#fff}.calculated-builder-row{grid-template-columns:76px minmax(150px,1.5fr) minmax(120px,1fr) 78px 90px 70px 36px}@media(max-width:1050px){.builder-row,.calculated-builder-row{grid-template-columns:76px 1fr 1fr}.builder-row>*{grid-row:auto}.builder-row>input[data-prop="options"]{grid-column:2/-1!important}}@media(max-width:600px){.builder-row,.calculated-builder-row{grid-template-columns:70px 1fr}.builder-row>select[data-prop="type"],.builder-row>label{grid-column:2}.builder-row>button[data-delete]{grid-column:1}.builder-row>input[data-prop="options"]{grid-column:2!important}.translation-form section{grid-template-columns:1fr}.builder-heading{align-items:flex-start}.preview-language{flex-direction:column}}
.share-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px;align-items:start}.share-tools{display:grid;gap:14px}.share-card p:not(.eyebrow){margin:-8px 0 16px;color:var(--muted)}.share-card textarea,.share-link-row input{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fafbfc;color:var(--ink);outline:0}.share-card textarea:focus,.share-link-row input:focus{border-color:#8f87ed;box-shadow:0 0 0 3px #6157e718}.share-link-row{display:flex;gap:8px}.share-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.code-box{min-height:92px;resize:vertical;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.share-code-label{margin:20px 0 8px!important;font-weight:800;color:var(--ink)!important}.share-poster{position:sticky;top:18px;min-height:570px;padding:36px;text-align:center;background:radial-gradient(circle at 100% 0,#6157e724,transparent 48%),#fff}.share-poster-brand{margin-bottom:30px;font-weight:950;letter-spacing:.18em}.share-poster-brand small{display:block;color:#9298a7;font-size:7px}.share-poster h2{margin:13px 0 24px;font-size:32px;letter-spacing:-.04em}.qr-render{width:min(270px,100%);margin:0 auto 22px}.qr-render svg{display:block;width:100%;height:auto;border-radius:10px}.poster-copy{min-height:72px;margin:0 0 16px;white-space:pre-line;color:var(--muted);line-height:1.6}.share-poster>strong{font-size:13px;word-break:break-all}@media(max-width:900px){.share-grid{grid-template-columns:1fr}.share-poster{position:static}}@media(max-width:600px){.share-link-row{align-items:stretch;flex-direction:column}.share-poster{min-height:0;padding:26px}}@media print{body.share-printing{background:#fff}body.share-printing *{visibility:hidden!important}body.share-printing #share-print-area,body.share-printing #share-print-area *{visibility:visible!important}body.share-printing #share-print-area{position:fixed;inset:0;width:100%;min-height:100vh;margin:0;padding:18mm;border:0;border-radius:0;box-shadow:none;display:flex;align-items:center;justify-content:center;flex-direction:column}.share-printing .qr-render{width:90mm}.share-printing .share-poster h2{font-size:15mm}.share-printing .poster-copy{font-size:5mm}.share-printing .share-poster>strong{font-size:4mm}}
@media(max-width:600px){.admin-top nav button:nth-child(3){display:block!important}}
.share-link-security{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.share-link-security small{max-width:470px;color:var(--muted);line-height:1.45}.share-link-security .btn{flex:0 0 auto}.share-poster .poster-url{display:none}@media(max-width:600px){.share-link-security{align-items:stretch;flex-direction:column}}

/* MobilePay form-builder option */
.mobilepay-builder-card{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:18px;padding:20px;border-color:#d8d4fa;background:linear-gradient(130deg,#f7f5ff,#fff)}.mobilepay-builder-card h2,.mobilepay-builder-card p{margin:0}.mobilepay-builder-card>div>p:not(.eyebrow){max-width:680px;margin-top:6px;color:var(--muted);line-height:1.5}.mobilepay-builder-card>.btn{flex:0 0 auto}.mobilepay-builder-status{display:flex;align-items:center;gap:9px;margin-top:12px}.mobilepay-builder-status span{padding:4px 8px;border-radius:999px;background:#eceef3;color:#62697a;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.mobilepay-builder-status span.enabled{background:#e5f7eb;color:#168445}.mobilepay-builder-status small{color:var(--muted);font-size:10px}.mobilepay-config-intro{display:flex;align-items:center;gap:12px;padding:13px;border-radius:11px;background:#f3f1ff}.mobilepay-config-intro p{margin:0;color:#595f70;line-height:1.45}.mobilepay-credentials{padding-top:10px;border-top:1px solid var(--line)}.mobilepay-credentials h3,.mobilepay-credentials p{margin:0}.mobilepay-credentials p{margin-top:4px;color:var(--muted);font-size:11px}.mobilepay-config-form .field small{color:var(--muted);font-size:10px}@media(max-width:700px){.mobilepay-builder-card{align-items:flex-start;flex-direction:column}.mobilepay-builder-card>.btn{width:100%}}

/* A4 share poster */
.share-poster{position:sticky;top:18px;isolation:isolate;overflow:hidden;min-height:600px;padding:34px;text-align:center;background:linear-gradient(155deg,#fff 0 68%,#f4f3ff 100%)}
.share-poster>*:not(.poster-airfield-graphic){position:relative;z-index:1}
.share-poster-brand{margin-bottom:24px;font-size:18px;font-weight:950;letter-spacing:.2em}
.share-poster-brand small{display:block;margin-top:2px;color:#9298a7;font-size:8px;letter-spacing:.22em}
.poster-title{margin-bottom:18px}.poster-title .airport-code{display:inline-block;padding:6px 9px;border:1px solid #d9d7fa;border-radius:999px;color:#554bcf;font-size:12px;font-weight:900;letter-spacing:.18em}
.share-poster .poster-title h2{margin:12px 0 4px;font-size:38px;line-height:1;letter-spacing:-.045em}.poster-title p{margin:0;color:#202331;font-size:21px;font-weight:900;letter-spacing:-.02em}
.share-poster .qr-render{width:min(278px,100%);margin:0 auto 18px}.share-poster .qr-render svg{display:block;width:100%;height:auto;border-radius:10px}
.share-poster .poster-copy{min-height:0;max-height:120px;overflow:hidden;margin:0 auto 14px;white-space:pre-line;color:#555b6b;font-size:15px;font-weight:650;line-height:1.45}.share-poster .poster-url{display:block;font-size:13px;word-break:break-all}
.poster-footer{margin-top:22px;padding-top:13px;border-top:1px solid #d9dbe2;color:#6b7180;font-size:10px;font-weight:900;letter-spacing:.22em}
.poster-airfield-graphic{position:absolute;inset:0;z-index:0;pointer-events:none;color:#6157e7;opacity:.11}
.poster-runway{position:absolute;right:-3px;bottom:-46px;width:82px;height:315px;border:2px solid currentColor;transform:rotate(28deg);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:12px 0;color:inherit}
.poster-runway b{position:absolute;top:22px;bottom:22px;left:50%;border-left:2px dashed currentColor}.poster-runway i{font-style:normal;font-size:10px;font-weight:950}
.poster-flight-path{position:absolute;left:-62px;top:145px;width:240px;height:145px;border:2px dashed currentColor;border-right:0;border-bottom:0;border-radius:100% 0 0 0;transform:rotate(-18deg)}

@page{size:A4 portrait;margin:0}
@media print{
 html,body{width:210mm!important;height:296mm!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#fff!important}
 body.share-printing *{visibility:visible!important}
 body.share-printing>*:not(#share-print-area){display:none!important}
 body.share-printing #share-print-area{display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;align-items:center;justify-items:center;position:absolute!important;inset:0 auto auto 0!important;width:210mm!important;height:296mm!important;min-height:0!important;max-height:296mm!important;margin:0!important;padding:12mm 16mm 10mm!important;box-sizing:border-box!important;overflow:hidden!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;break-before:avoid!important;break-after:avoid!important;break-inside:avoid!important;page-break-before:avoid!important;page-break-after:avoid!important;page-break-inside:avoid!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 body.share-printing #share-print-area>*:not(.poster-airfield-graphic){position:relative;z-index:1}
 .share-printing .share-poster-brand{margin:0;font-size:6mm}.share-printing .share-poster-brand small{font-size:2.4mm}
 .share-printing .poster-title{margin:5mm 0 0}.share-printing .poster-title .airport-code{padding:2mm 3mm;font-size:4mm}.share-printing .share-poster .poster-title h2{margin:3mm 0 1mm;font-size:17mm;line-height:.95}.share-printing .poster-title p{margin:0;font-size:8mm}
 .share-printing .share-poster .qr-render{align-self:center;width:100mm;margin:5mm auto 3mm}.share-printing .share-poster .qr-render svg{border-radius:0}
 .share-printing .share-poster .poster-copy{min-height:0;max-height:30mm;max-width:165mm;margin:0;overflow:hidden;font-size:5.5mm;line-height:1.32;font-weight:650}.share-printing .share-poster .poster-url{margin-top:3mm;font-size:4.5mm;word-break:break-all}
 .share-printing .poster-footer{align-self:end;width:100%;margin-top:4mm;padding-top:4mm;border-top:.4mm solid #ccd0da;font-size:3.5mm;letter-spacing:.22em}
 .share-printing .poster-airfield-graphic{position:absolute!important;inset:0!important;z-index:0!important;opacity:.11!important}.share-printing .poster-runway{right:5mm;bottom:-15mm;width:24mm;height:105mm;border-width:.6mm}.share-printing .poster-flight-path{left:-18mm;top:54mm;width:78mm;height:48mm;border-width:.6mm}
}
.share-poster .poster-url{display:none!important}

/* Stronger aviation poster artwork */
.share-poster{border:2px solid #d8d5ff;box-shadow:inset 0 0 0 8px #fff,inset 0 0 0 10px #e6e4ff,0 18px 45px #27234d14}
.share-poster:before{position:absolute;inset:14px;z-index:0;border:1px solid #c9c5f4;border-radius:12px;content:"";pointer-events:none}
.poster-airfield-graphic{opacity:.16}
.poster-airfield-graphic:before{position:absolute;left:-170px;top:105px;width:390px;height:390px;border:2px solid currentColor;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 48px,currentColor 49px 51px,transparent 52px 96px);content:""}
.poster-airfield-graphic:after{position:absolute;left:24px;top:284px;width:170px;border-top:2px solid currentColor;box-shadow:0 -85px 0 currentColor,0 85px 0 currentColor;content:"";transform:rotate(-18deg)}
.poster-flight-path{border-width:3px}.poster-flight-path:after{position:absolute;right:-19px;top:-20px;content:"✈";font-size:31px;line-height:1;transform:rotate(24deg)}
.poster-runway{width:90px;border-width:3px;background:repeating-linear-gradient(0deg,transparent 0 25px,currentColor 26px 28px,transparent 29px 52px)}
.poster-runway b{border-left-width:3px}
.poster-title{display:grid;justify-items:center}.poster-title:after{width:72px;margin-top:12px;border-top:3px solid #6157e7;content:""}
.share-poster .qr-render{position:relative;padding:11px;border:2px solid #6157e7;border-radius:18px;background:#fff;box-shadow:0 0 0 5px #eeecff,0 12px 28px #29245f1c}
.share-poster .qr-render:before,.share-poster .qr-render:after{position:absolute;width:25px;height:25px;border-color:#6157e7;content:"";pointer-events:none}.share-poster .qr-render:before{left:-8px;top:-8px;border-left:5px solid;border-top:5px solid}.share-poster .qr-render:after{right:-8px;bottom:-8px;border-right:5px solid;border-bottom:5px solid}
.poster-footer{border:1px solid #c9c5f4;border-radius:999px;padding:10px 15px;background:#f6f5ff;color:#5148c5}
@media print{
 body.share-printing #share-print-area{outline:1mm solid #6157e7!important;outline-offset:-7mm!important}
 .share-printing .poster-airfield-graphic{opacity:.14!important}.share-printing .poster-airfield-graphic:before{left:-52mm;top:44mm;width:126mm;height:126mm;border-width:.6mm}.share-printing .poster-airfield-graphic:after{left:8mm;top:107mm;width:55mm;border-top-width:.6mm;box-shadow:0 -28mm 0 currentColor,0 28mm 0 currentColor}
 .share-printing .poster-flight-path{border-width:.8mm}.share-printing .poster-flight-path:after{right:-7mm;top:-7mm;font-size:11mm}.share-printing .poster-runway{width:27mm;border-width:.8mm}.share-printing .poster-runway b{border-left-width:.8mm}
 .share-printing .poster-title:after{width:24mm;margin-top:3mm;border-top-width:1mm}
 .share-printing .share-poster .qr-render{width:106mm;margin:5mm auto 3mm;padding:4mm;border-width:.8mm;border-radius:4mm;box-shadow:0 0 0 2mm #eeecff}.share-printing .share-poster .qr-render:before,.share-printing .share-poster .qr-render:after{width:9mm;height:9mm;border-width:0}.share-printing .share-poster .qr-render:before{left:-3mm;top:-3mm;border-left:1.5mm solid #6157e7;border-top:1.5mm solid #6157e7}.share-printing .share-poster .qr-render:after{right:-3mm;bottom:-3mm;border-right:1.5mm solid #6157e7;border-bottom:1.5mm solid #6157e7}
 .share-printing .poster-footer{padding:2.5mm 5mm;border-width:.4mm;border-radius:99mm;background:#f6f5ff}
}
.visibility-button.has-rules{border-color:#a9a3ef;background:#f0eeff;color:#5147ca}
.translation-form [data-suggest].suggestion-missing{border-color:#e3c67b;background:#fff8df;color:#7a5a00}
.translation-form [data-translation-options]+small{color:var(--muted);font-size:10px;font-weight:600;line-height:1.35;text-transform:none;letter-spacing:0}
.stripe-builder-card{border-color:#cfd8ff;background:linear-gradient(130deg,#f4f7ff,#fff)}.stripe-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#635bff;color:#fff;font-size:11px;font-weight:900;letter-spacing:.06em}.stripe-setup-guide{display:flex;align-items:flex-start;gap:14px;padding:16px;border-radius:13px;background:#f2f4ff}.stripe-setup-guide p{margin:5px 0 0;color:var(--muted);line-height:1.5}.stripe-connect-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;border:1px solid var(--line);border-radius:12px}.stripe-connect-actions small{width:100%;color:var(--muted)}.stripe-connect-state{display:grid;flex:1 1 300px;gap:2px;padding:11px 12px;border-radius:9px;background:#f3f4f7;color:#626a7b}.stripe-connect-state b,.stripe-connect-state span{display:block}.stripe-connect-state span{font-size:12px;line-height:1.4}.stripe-connect-state.available{background:#efedff;color:#5148c4}.stripe-connect-state.connected,.stripe-connect-state.ready{background:#eaf8f2;color:#187853}.stripe-connect-state.unavailable{background:#fff7e8;color:#8a6215}.stripe-connect-actions>[data-stripe-start]{flex:0 0 auto}.stripe-connect-actions>[data-stripe-start]:disabled{cursor:not-allowed;box-shadow:none;opacity:.5}.stripe-connect-error{width:100%;margin:0}.stripe-connect-actions .stripe-connect-error[hidden]{display:none}@media(max-width:650px){.stripe-connect-actions>[data-stripe-start]{width:100%}}
