/* Public submission and promotion controls, scoped to their own components. */
.promo-box{width:560px;max-width:calc(100vw - 28px);border:1px solid #45474c;border-radius:18px;background:#25272b;box-shadow:0 30px 100px #0008;overflow:hidden}.promo-head{padding:20px 24px;border-bottom:1px solid #ffffff0b;background:transparent;font-size:16px}.promo-head .ad-badge{border-radius:6px;letter-spacing:1px}.promo-close{border-radius:8px;color:#bfc5ce;background:#ffffff07}.promo-body{padding:24px}.promo-intro h2{margin:6px 0 8px;color:#f1f3f7;font-size:25px}.promo-eyebrow{color:#f7878e;font-size:12px;letter-spacing:2px}.promo-note{margin:0 0 22px;color:#929ba8;font-size:13px}.promo-section-label{display:flex;gap:10px;align-items:center;margin:20px 0 12px;font-size:12px;color:#ed7b84;letter-spacing:1px}.promo-section-label span{color:#c7cdd6;letter-spacing:0;font-weight:600}.promo-type-filter{display:grid;grid-template-columns:1fr 1fr;gap:12px}.promo-type-filter button{height:auto;min-height:76px;display:block;text-align:left;border:1px solid #454950;border-radius:10px;padding:13px 16px;color:#d2d8e2;background:#2c2f34;font-size:15px;font-weight:600;cursor:pointer}.promo-type-filter button .css-icon{margin-right:8px;vertical-align:middle}.promo-type-filter button small{display:block;margin-top:5px;font-size:12px;color:#929dab;font-weight:400}.promo-type-filter button.active{border-color:#ee6572;background:linear-gradient(125deg,#f1404b22,#f1404b08);box-shadow:0 0 0 1px #f1404b22}.promo-type-desc{font-size:12px;color:#9ba5b2;margin:12px 0 0;line-height:1.7}.promo-duration-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.promo-duration{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:23px 8px 17px;border:1px solid #454950;border-radius:10px;color:#c4cbd5;background:#2c2f34;cursor:pointer}.promo-duration.active{border-color:#f17b85;background:#f1404b0d}.promo-duration b{font-size:14px}.promo-duration strong{font-size:26px;color:#f4f6f9}.promo-duration small{font-size:10px;letter-spacing:1px;color:#929dab}.promo-save{position:absolute;right:8px;top:-9px;border-radius:5px;padding:2px 7px;font-size:10px;background:#543339;color:#f7a0a8}.promo-preview-note{display:flex;align-items:center;gap:8px;margin:20px 0;color:#98a3b1;font-size:12px;line-height:1.7}.promo-preview-note .css-icon{color:#7fc9b1;flex-shrink:0}.promo-total{padding:18px 0;border-top:1px solid #ffffff0d;background:transparent}.promo-total span b{color:#d9dee6;font-size:14px}.promo-total strong{color:#f2f4f8;font-size:26px}.promo-total small{color:#8d98a6}.promo-body .pay-btn{width:100%;height:46px;border:1px solid #55505a;border-radius:9px;background:#44363d;color:#bd9fa8;font-size:14px;cursor:not-allowed}.promo-type-filter button:focus-visible,.promo-duration:focus-visible,.promo-close:focus-visible{outline:2px solid #f58a95;outline-offset:3px}
.required-mark{margin-left:6px;padding:2px 6px;border-radius:4px;color:#f7a0a9;background:#f1404b1c;font-size:11px;font-weight:400}.field-hint{color:#939daa;font-size:12px;line-height:1.7}.key-status{min-height:18px;font-size:12px;color:#9ba6b4}.key-status[data-state=available]{color:#7dd4b1}.key-status[data-state=error],.submission-error{color:#ff9aa5}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 2px #f1788455}.field input[aria-invalid=true]{box-shadow:0 0 0 1px #f37983}.public-captcha{margin-top:3px}.public-captcha-box{display:flex;align-items:center;gap:16px;max-width:580px;padding:14px 16px;background:linear-gradient(115deg,#253936,#273237);border:1px solid #4c716b;border-radius:10px}.captcha-question-wrap{min-width:140px;display:flex;flex-direction:column;gap:5px}.captcha-caption{font-size:11px;color:#a0c7bf;letter-spacing:1px}.public-captcha .captcha-code{width:auto;min-width:140px;height:40px;padding:0;border:0;background:transparent;color:#dcfff3;font-size:27px;font-weight:700;letter-spacing:2px;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums}.captcha-equals{font-size:23px;color:#a8c5be}.public-captcha .public-captcha-box input{width:112px;height:46px;border:1px solid #6b9c8e;background:#182a27;color:#e0fff5;text-align:center;font-size:18px;border-radius:8px}.public-captcha-box input::placeholder{font-size:13px;color:#95b8ac}.captcha-refresh{margin-left:auto;display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px;border:0;border-radius:6px;color:#accbc0;background:transparent;font-size:24px;cursor:pointer}.captcha-refresh span{font-size:11px}.public-captcha button:focus-visible{outline:2px solid #b2ead5;outline-offset:4px}.submission-error{grid-column:1/-1;margin:0;padding:12px 14px;background:#f1404b12;border:1px solid #f1404b33;border-radius:7px;font-size:13px}.submission-error[hidden]{display:none}
@media(max-width:600px){.promo-head{padding:16px 18px}.promo-body{padding:18px}.promo-intro h2{font-size:22px}.promo-type-filter button{padding:12px;font-size:14px}.promo-type-filter button small{font-size:11px}.promo-duration strong{font-size:23px}.public-captcha-box{gap:10px;padding:12px}.captcha-question-wrap,.public-captcha .captcha-code{min-width:112px}.public-captcha .captcha-code{font-size:23px}.public-captcha .public-captcha-box input{width:94px}.captcha-equals{display:none}}
/* Submission receipt: exchange addresses and one-time account credentials. */
.submission-result[hidden],.result-missing[hidden],.result-account[hidden],.result-member-note[hidden]{display:none}.submission-result{border:1px solid #40454d;border-radius:16px;overflow:hidden}.submission-result .success-status{padding:32px 24px 26px;background:radial-gradient(ellipse at top,#3a524b55,transparent 75%);text-align:center}.submission-result .success-mark{width:52px;height:52px;line-height:52px;margin:0 auto 12px;border:1px solid #79c7a955;border-radius:16px;color:#a6e5c8;background:#58bc8c16;box-shadow:0 4px 24px #58bc8c0c;font-size:28px}.result-eyebrow{font-size:11px;color:#96c9b2;letter-spacing:2px}.submission-result .success-status h1{margin:8px 0 10px;color:#ecf0f4;font-size:26px}.submission-result .success-status p{color:#a0aab6;font-size:13px}.submission-result .success-body{padding:0 28px 26px}.submission-result .success-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:24px;padding:18px 0;background:#202327;border:1px solid #3e434b;border-radius:10px}.submission-result .success-summary>div{min-width:0;padding:0 18px;border-right:1px solid #3b4047}.submission-result .success-summary>div:last-child{border:0}.submission-result .success-summary span{display:block;margin-bottom:7px;color:#8f9aa9;font-size:11px}.submission-result .success-summary strong{display:block;color:#dde4eb;overflow-wrap:anywhere;font-size:14px}.result-section-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.result-section-title>span{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#ffffff0a;color:#a9b5c4;font-size:11px}.result-section-title h2{margin:0;color:#e2e7ee;font-size:16px}.result-section-title>small{margin-left:auto;color:#9ac8b1;font-size:10px;background:#548f6e22;padding:3px 7px;border-radius:5px}.result-exchange{margin:0;padding:0;background:transparent;border:0}.result-exchange>p,.result-account>p{margin:0 0 16px;color:#939fac;font-size:12px;line-height:1.8}.result-exchange>label,.credential-grid label{display:block;margin:16px 0 7px;font-size:11px;color:#aab5c4}.submission-result .copy-row{display:flex;gap:12px;align-items:center;padding:12px 14px;margin:0;background:#1d2024;border:1px solid #41464e;border-radius:8px;min-width:0}.submission-result .copy-row code{flex:1;min-width:0;white-space:pre-wrap;word-break:break-all;color:#cbd6e3;font-size:12px;line-height:1.9;font-family:Consolas,monospace}.submission-result .copy-btn{flex-shrink:0;padding:6px 10px;border:1px solid #505763;border-radius:6px;background:#343a43;color:#d3dce8;font-size:11px;cursor:pointer}.result-account{margin-top:24px;padding:20px;border:1px solid #4f6a5f;border-radius:11px;background:linear-gradient(120deg,#2b3b3420,#25333366)}.credential-grid{display:grid;grid-template-columns:1fr;gap:4px}.credential-grid label{margin-top:8px}.credential-grid code{font-variant-ligatures:none}.credential-reminder{display:flex;gap:10px;margin-top:16px;color:#bbd2c3}.credential-reminder>.css-icon{flex-shrink:0;margin-top:3px}.credential-reminder b{display:block;font-size:12px;font-weight:600}.credential-reminder small{display:block;margin-top:4px;color:#9bb3a6;font-size:11px;line-height:1.8}.save-account-btn{margin-top:16px;width:100%;padding:10px;border:1px solid #6e9681;border-radius:7px;background:#3f6f531c;color:#b6d8c4;font-size:12px;cursor:pointer}.result-member-note{padding:14px;color:#a8d7bd;background:#56806612;border:1px solid #56806655;border-radius:8px;line-height:1.9;font-size:12px}.result-next{display:flex;gap:12px;margin:22px 0 0;color:#c2cbd7}.result-next>.css-icon{flex-shrink:0;margin-top:3px;color:#c1a3ab}.result-next b{font-size:12px}.result-next p{margin:5px 0 0;color:#919cab;font-size:12px;line-height:1.8}.result-copy-status{min-height:18px;color:#a4d5bd;font-size:12px}.submission-result .success-actions{display:flex;gap:12px}.submission-result .success-actions a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:43px;border-radius:8px;font-size:13px}.result-missing{max-width:680px;margin:auto;padding:24px;text-align:center}.result-missing .success-actions{margin-top:20px}.submission-storage-result{overflow-wrap:anywhere}.submission-storage-result code{display:block;padding:10px;border:1px solid #555;border-radius:6px;background:#202428}.member-links-pager{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;font-size:13px;color:#abb5c2}.member-links-pager button{border:1px solid #50545d;border-radius:6px;background:#30343b;color:#d6dce5;padding:6px 12px;cursor:pointer}.member-links-pager button:disabled{opacity:.4;cursor:default}
@media(max-width:600px){.submission-result .success-status{padding:26px 16px 20px}.submission-result .success-status h1{font-size:22px}.submission-result .success-body{padding:0 16px 20px}.submission-result .success-summary>div{padding:0 10px}.submission-result .success-summary strong{font-size:12px}.result-account{padding:15px}.submission-result .copy-row{padding:10px;gap:8px}.submission-result .copy-row code{font-size:11px}.submission-result .copy-btn{padding:5px 8px}.submission-result .success-actions a{flex:1;padding:0 12px}.result-section-title h2{font-size:14px}}
/* Override legacy promotion rules only inside the redesigned dialog. */
#promoModal .promo-box{width:560px!important;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto;border:1px solid #45474c!important;border-radius:18px!important;background:#25272b!important;box-shadow:0 30px 100px #0008!important}#promoModal .promo-head{padding:17px 24px!important;background:transparent!important;font-size:16px!important;min-height:62px!important}#promoModal .promo-body{padding:24px!important}#promoModal .promo-note{padding:0!important;margin:0 0 22px!important;border:0;color:#929ba8!important;background:transparent!important}#promoModal .promo-type-filter{padding:0;gap:12px;background:transparent}#promoModal .promo-type-desc{padding:0;min-height:0;background:transparent}#promoModal .promo-total{padding:18px 0;border-left:0;margin-top:0;background:transparent}#promoModal .pay-btn{height:46px!important;background:#44363d!important;margin-top:2px!important}#promoModal .promo-duration small{margin-left:0}.submission-result .copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto}.submission-result .copy-row code{padding:0;background:transparent}.submission-result .copy-btn{width:auto;min-height:30px;height:auto}.submission-result .success-summary>div+div{border-left:0;border-top:0}.submission-result .success-summary{margin-top:22px}.member-link-error{color:#ffa5ad;font-size:12px;line-height:1.7}.member-links-pager[hidden]{display:none}
.public-captcha .captcha-code{box-shadow:none;white-space:nowrap;letter-spacing:1px;font-size:25px}.public-captcha .captcha-code:hover{background:transparent;color:#fff}.captcha-equals{display:none}.form-grid>.field{align-content:start}
@media(max-width:600px){#promoModal .promo-head{padding:14px 18px!important;min-height:54px!important}#promoModal .promo-body{padding:18px!important}#promoModal .promo-note{margin-bottom:16px!important}.public-captcha .captcha-code{font-size:22px}.submission-result .copy-row{grid-template-columns:minmax(0,1fr)}.submission-result .copy-btn{justify-self:end}.submission-result .credential-grid .copy-row{grid-template-columns:minmax(0,1fr) auto}.submission-result .credential-grid .copy-row code{font-size:12px}}
body.promotion-open{overflow:hidden}

/* Compact public captcha: keeps the required challenge readable without
   pushing the submission form down the page. */
.public-captcha-box { max-width: 430px; min-height: 48px; gap: 8px; padding: 7px 9px; border-radius: 7px; }
.captcha-question-wrap { min-width: 92px; gap: 1px; }
.captcha-caption { font-size: 9px; letter-spacing: .4px; }
.public-captcha .captcha-code { min-width: 92px; height: 25px; font-size: 18px; letter-spacing: 1px; }
.captcha-equals { font-size: 17px; }
.public-captcha .public-captcha-box input { width: 74px; height: 32px; font-size: 14px; border-radius: 5px; }
.captcha-refresh { padding: 2px 4px; font-size: 17px; }
.captcha-refresh span { font-size: 9px; }
.public-captcha .field-hint { font-size: 11px; }
@media(max-width:600px) { .public-captcha-box { max-width: 100%; gap: 6px; padding: 7px; } .captcha-question-wrap,.public-captcha .captcha-code { min-width: 78px; } .public-captcha .public-captcha-box input { width: 65px; } }

/* The submission challenge shares one quiet row with its answer and action. */
#submitForm .public-captcha { margin-top: 3px; }
#submitForm .public-captcha-box { width: 100%; max-width: 520px; min-height: 44px; padding: 0; display: grid; grid-template-columns: 112px minmax(0,1fr) 142px; gap: 10px; background: transparent; border: 0; border-radius: 0; }
#submitForm .captcha-code { width: 100%; min-width: 0; height: 44px; padding: 0 12px; border: 1px solid rgba(255,255,255,.065); border-radius: 5px; color: #e3e7eb; background: #2b2e32; font-size: 16px; font-weight: 700; letter-spacing: 1px; text-align: center; cursor: pointer; font-variant-numeric: tabular-nums; }
#submitForm .captcha-code:hover { color: #fff; background: #34383d; }
#submitForm .captcha-code:disabled { cursor: wait; opacity: .65; }
#submitForm .public-captcha-box input { width: 100%; min-width: 0; height: 44px; padding: 0 12px; border: 1px solid rgba(255,255,255,.065); border-radius: 5px; color: #e3e7eb; background: #24272a; box-shadow: none; text-align: left; font-size: 14px; }
#submitForm .public-captcha-box input:focus { border-color: rgba(241,64,75,.72); background: #26292c; box-shadow: 0 0 0 3px rgba(241,64,75,.08); }
#submitForm .public-captcha-box input::placeholder { color: #656d76; font-size: 13px; }
#submitForm .submit-captcha-submit { width: 100%; min-width: 0; height: 44px; padding: 0 12px; white-space: nowrap; box-shadow: 0 9px 20px rgba(241,64,75,.15); }
#submitForm .public-captcha button:focus-visible { outline: 2px solid #f58a95; outline-offset: 3px; }
@media(max-width:600px) {
  #submitForm .public-captcha-box { max-width: 100%; grid-template-columns: minmax(76px,88px) minmax(0,1fr) minmax(112px,auto); gap: 8px; }
  #submitForm .captcha-code { padding: 0 5px; font-size: 14px; }
  #submitForm .public-captcha-box input { padding: 0 9px; }
  #submitForm .submit-captcha-submit { gap: 6px; padding: 0 8px; font-size: 13px; }
}
