/* Shared, external styling for event, campaign and claim submissions. */
body.ad-submit-reference,
body.claim-reference,
body.event-submit-reference { min-height:100vh; background:#fff; color:#12291f; }
body.event-submit-reference { overflow-x:hidden; overflow-y:auto; }
body.ad-submit-reference .events.form,
body.event-submit-reference .events.form { position:relative; width:min(100%,760px); min-height:100vh; margin:0 auto; padding:calc(var(--topbar-height) + 38px) 24px calc(96px + env(safe-area-inset-bottom)); }
body.claim-reference .events.form { width:min(100%,680px); min-height:100vh; margin:0 auto; padding:calc(var(--topbar-height) + 38px) 24px 96px; }
body.has-app-shell.ad-submit-reference .events.form,
body.has-app-shell.event-submit-reference .events.form,
body.has-app-shell.claim-reference .events.form { width:auto; max-width:none; margin-left:var(--sidebar-width); padding-right:clamp(20px,4vw,64px); padding-left:clamp(20px,4vw,64px); }
body.ad-submit-reference .events.form > *,
body.event-submit-reference .events.form > * { width:min(100%,760px); margin-right:auto; margin-left:auto; }
body.claim-reference .events.form > * { width:min(100%,680px); margin-right:auto; margin-left:auto; }
.ad-submit-reference .back-link,
.event-submit-reference .back-link,
.claim-reference .back-link { display:inline-block; min-height:auto; margin:0 0 27px; color:#183b2b; font-size:.82rem; font-weight:700; text-decoration:none; }
.ad-submit-reference .form-heading,
.event-submit-reference .form-heading { margin-bottom:27px; }
.ad-submit-reference .form-heading .eyebrow,
.event-submit-reference .form-heading .eyebrow { display:none; }
.ad-submit-reference .form-heading h1,
.event-submit-reference .form-heading h1,
.claim-reference h1 { margin:0; font-family:"Playfair Display",serif; font-size:2rem; line-height:1.08; }
.ad-submit-reference .form-heading p,
.event-submit-reference .form-heading p,
.claim-reference .intro { margin-top:7px; color:#668277; font-size:.92rem; }
.claim-reference .intro { margin-bottom:26px; }
.ad-submit-reference .event-form,
.event-submit-reference .event-form { max-width:none; gap:24px; }
.claim-reference .event-form { max-width:none; gap:15px; }
.ad-submit-reference .event-form fieldset,
.event-submit-reference .event-form fieldset { gap:13px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.ad-submit-reference .event-form legend,
.event-submit-reference .event-form legend { padding:0; font-family:inherit; font-size:.88rem; font-weight:750; }
.ad-submit-reference .event-form label,
.event-submit-reference .event-form label,
.claim-reference .event-form label { gap:7px; color:#1b382d; font-size:.82rem; font-weight:700; }
.ad-submit-reference .event-form input,
.ad-submit-reference .event-form select,
.ad-submit-reference .event-form textarea,
.event-submit-reference .event-form input,
.event-submit-reference .event-form select,
.event-submit-reference .event-form textarea,
.claim-reference .event-form textarea { min-height:37px; padding:8px 12px; border:1px solid #e2e3de; border-radius:8px; background:#fff; box-shadow:0 1px 3px rgba(22,48,37,.07); color:#142e23; font:400 .88rem inherit; }
.ad-submit-reference .event-form textarea { min-height:108px; resize:vertical; }
.event-submit-reference .event-form textarea { min-height:100px; resize:vertical; }
.claim-reference .event-form textarea { min-height:130px; padding:11px 12px; resize:vertical; }
.event-submit-reference .event-form select { cursor:pointer; }
.ad-submit-reference .form-columns,
.event-submit-reference .form-columns { gap:16px; }
.ad-submit-reference .ad-price { margin:0; padding:11px 13px; border-radius:9px; background:#f4f7f5; color:#537568; font-size:.8rem; line-height:1.45; }
.ad-submit-reference .event-form .ad-agreement { padding:16px; border:1px solid #dce6df; border-radius:10px; background:#f7faf8; }
.ad-submit-reference .ad-agreement p { margin:0; font-size:.84rem; line-height:1.6; }
.ad-submit-reference .event-form .ad-agreement-choice { display:flex; align-items:flex-start; gap:10px; line-height:1.6; }
.ad-submit-reference .event-form .ad-agreement-choice input { flex:0 0 18px; width:18px; height:18px; min-height:18px; margin:3px 0 0; padding:0; accent-color:#277353; }
.ad-submit-reference .upload-label,
.event-submit-reference .upload-label { display:flex!important; min-height:46px; align-items:center; justify-content:center; border:1px dashed #dce2dc!important; box-shadow:none!important; color:#53796b!important; cursor:pointer; }
.ad-submit-reference .upload-label input,
.event-submit-reference .upload-label input { position:absolute; width:1px; height:1px; opacity:0; }
.ad-submit-reference .form-help,
.event-submit-reference .form-help { margin:0; color:#668277; font-size:.74rem; text-align:center; }
.ad-submit-reference .event-form > button,
.event-submit-reference .event-form > button,
.claim-reference .event-form button { min-height:39px; border:0; border-radius:8px; background:#277353; color:#fff; font-size:.83rem; font-weight:800; cursor:pointer; }
.ad-submit-reference .event-form > button:hover,
.event-submit-reference .event-form > button:hover,
.claim-reference .event-form button:hover { background:#1d6146; }
.event-submit-reference [hidden] { display:none!important; }
.event-submit-reference .organizer-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:8px; }
.event-submit-reference .organizer-option { display:flex; min-height:63px; align-items:center; gap:12px; padding:10px 12px; border:1px solid #e1e4de; border-radius:12px; background:#fff; color:#173b2c; cursor:pointer; }
.event-submit-reference .organizer-option:has(input:checked) { border-color:#277353; background:#f4f9f5; box-shadow:inset 0 0 0 1px #277353; }
.event-submit-reference .organizer-option input { position:absolute; opacity:0; pointer-events:none; }
.event-submit-reference .organizer-option b { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:#eef3ef; color:#277353; font-size:1rem; }
.event-submit-reference .organizer-option span { display:grid; gap:2px; font-size:.84rem; font-weight:750; }
.event-submit-reference .organizer-option small { color:#668277; font-size:.72rem; font-weight:500; }
.event-submit-reference .organizer-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.event-submit-reference .check-filter { margin-top:2px; font-size:.82rem; }
.event-success-modal { position:fixed; inset:0; z-index:200; display:grid; place-items:center; padding:20px; background:rgba(13,34,25,.46); backdrop-filter:blur(3px); }
.event-success-modal[hidden] { display:none; }
.event-success-card { width:min(100%,440px); padding:30px; border-radius:18px; background:#fff; box-shadow:0 22px 55px rgba(10,35,25,.25); text-align:center; }
.event-success-icon { display:grid; width:56px; height:56px; margin:0 auto 15px; place-items:center; border-radius:50%; background:#e7f4eb; color:#227250; font-size:1.7rem; font-weight:800; }
.event-success-card h2 { margin:0; color:#173326; font-family:"Playfair Display",serif; font-size:1.7rem; }
.event-success-card p { margin:10px 0 22px; color:#5c7d6e; line-height:1.55; }
.event-success-actions { display:grid; gap:9px; }
.event-success-actions a { display:flex; min-height:43px; align-items:center; justify-content:center; border-radius:8px; background:#277353; color:#fff; font-size:.85rem; font-weight:800; text-decoration:none; }
.event-success-actions a:last-child { border:1px solid #dce6df; background:#fff; color:#356451; }
.claim-reference .page-message { margin-top:16px; color:#b53a32; }
@media(max-width:760px) {
  body.has-app-shell.ad-submit-reference .events.form,
  body.has-app-shell.event-submit-reference .events.form,
  body.has-app-shell.claim-reference .events.form,
  body.ad-submit-reference .events.form,
  body.event-submit-reference .events.form,
  body.claim-reference .events.form { width:100%; margin-left:0; padding:calc(var(--topbar-height) + 27px) 16px calc(96px + env(safe-area-inset-bottom)); }
  body.claim-reference .events.form { padding-bottom:80px; }
}
@media(max-width:700px) {
  .ad-submit-reference .form-heading h1,
  .event-submit-reference .form-heading h1 { font-size:1.72rem; }
  .ad-submit-reference .form-columns,
  .event-submit-reference .form-columns,
  .event-submit-reference .organizer-options,
  .event-submit-reference .organizer-controls { grid-template-columns:1fr; }
  .ad-submit-reference .event-form,
  .event-submit-reference .event-form { gap:21px; }
}
