/* ==========================================================================
   Sponsor a student (اكفل طالبًا), round 5
   - Public page /sponsor and /ar/sponsor: body.hp-ui.hp-guides.hp-sponsor,
     loaded after hp-guides.css (the shared public shell).
   - App pages /sponsor/apply, /status, /give, /impact:
     body.hp-ui.hp-app.hp-sponsor-app.
   Drawn from the --hx-* tokens, so the dark library theme follows. Logical
   properties keep the Arabic pages right. No important flags.
   ========================================================================== */

/* ---------- Shared pieces ---------- */
body.hp-ui :is(.hp-sponsor, .hp-sponsor-app) .icon,
body.hp-ui:is(.hp-sponsor, .hp-sponsor-app) .icon { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; }
[dir="rtl"] body.hp-ui:is(.hp-sponsor, .hp-sponsor-app) :is(.hps-hero-link, .hps-pack-go, .hps-close-link) .icon { transform: scaleX(-1); }

/* ==========================================================================
   1. Public page: hero with the sealed envelope
   ========================================================================== */
body.hp-ui.hp-sponsor .hps-hero > * { max-width: none; }
body.hp-ui.hp-sponsor .hps-hero-grid {
    display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: clamp(24px, 4vw, 56px); align-items: center;
}
body.hp-ui.hp-sponsor .hps-hero-copy { max-width: 62ch; }
body.hp-ui.hp-sponsor .hps-hero-copy .hpg-banner-title { max-width: 18ch; }
body.hp-ui.hp-sponsor .hps-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: 30px; }
body.hp-ui.hp-sponsor .hps-hero-btn { background: linear-gradient(180deg, #e3bd7f, #c9934b); color: #1d1206; box-shadow: 0 14px 30px -14px rgba(201, 147, 75, .8); }
body.hp-ui.hp-sponsor .hps-hero-btn:hover:not(:disabled) { background: linear-gradient(180deg, #ecca90, #d29d55); }
body.hp-ui.hp-sponsor .hps-hero-link {
    display: inline-flex; align-items: center; gap: 8px; min-height: 44px;
    color: var(--hx-on-stage); font-weight: 700; text-decoration: none;
    border-bottom: 1px solid rgba(240, 214, 170, .45); transition: border-color .2s ease;
}
body.hp-ui.hp-sponsor .hps-hero-link:hover { border-bottom-color: var(--hx-cream); }
body.hp-ui.hp-sponsor :is(.hps-hero-btn, .hps-hero-link, .hpg-crumbs a):focus-visible { outline: 2px solid var(--hx-focus-on-stage); outline-offset: 4px; }

/* Live counters: only real numbers, only above zero */
body.hp-ui.hp-sponsor .hps-counters {
    display: flex; flex-wrap: wrap; gap: 14px 34px; margin: 34px 0 0; padding: 20px 0 0; list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .14);
}
body.hp-ui.hp-sponsor .hps-counters li { display: grid; gap: 2px; min-width: 0; }
body.hp-ui.hp-sponsor .hps-counters strong {
    font-family: var(--hx-f-display); font-weight: 400; font-size: clamp(2.2rem, 4vw, 2.9rem); line-height: 1;
    color: var(--hx-cream); font-variant-numeric: tabular-nums;
}
body.hp-ui.hp-sponsor .hps-counters span { font-size: .88rem; font-weight: 600; color: var(--hx-on-stage-2); max-width: 22ch; }

/* The envelope: a drawing, not content */
body.hp-ui.hp-sponsor .hps-hero-art { justify-self: center; }
@media (min-width: 1100px) {
    body.hp-ui.hp-sponsor .hps-hero-art .hps-envelope { transform: scale(1.1); transform-origin: 50% 50%; }
}
.hps-envelope { position: relative; width: 340px; height: 300px; }
.hps-letter {
    position: absolute; z-index: 0; inset-block-start: 14px; inset-inline-start: 82px; width: 190px; height: 150px;
    display: flex; flex-direction: column; gap: 10px; padding: 26px 22px 0;
    background: linear-gradient(180deg, #fffdf7, #f4ecdb); border-radius: 6px;
    box-shadow: 0 18px 36px -18px rgba(0, 0, 0, .7), 0 1px 0 rgba(0, 0, 0, .06);
    transform: rotate(-5deg);
}
.hps-letter-head { display: block; width: 62%; height: 8px; border-radius: 3px; background: #12503e; opacity: .85; margin-bottom: 4px; }
.hps-letter i { display: block; height: 3px; border-radius: 2px; background: rgba(20, 38, 31, .18); }
.hps-letter i.is-short { width: 55%; }
.hps-letter-tag {
    position: absolute; inset-block-start: 18px; inset-inline-end: 14px;
    padding: 3px 9px; border-radius: 999px; background: #f3e4c3; color: #6e4b1c;
    font: 700 .64rem/1.4 var(--hx-f-body); letter-spacing: .08em; text-transform: uppercase;
}
.hps-envelope-body {
    position: absolute; z-index: 1; inset-block-end: 0; inset-inline-start: 20px; width: 300px; height: auto;
    filter: drop-shadow(0 22px 26px rgba(0, 0, 0, .45));
}
.hps-olive { position: absolute; z-index: 2; inset-block-end: 2px; inset-inline-start: 0; width: 150px; height: auto; }
[dir="rtl"] .hps-olive { transform: scaleX(-1); }
.hps-envelope-seal.hp-seal { position: absolute; z-index: 3; inset-block-start: 165px; inset-inline-start: calc(50% - 52px); }
@media (prefers-reduced-motion: no-preference) {
    .hps-letter { animation: hpsLetterRise 1.1s .15s var(--hx-ease) both; }
    .hps-olive { animation: hpsFadeIn .8s .7s ease both; }
}
@keyframes hpsLetterRise { from { opacity: 0; transform: translateY(60px) rotate(0deg); } }
@keyframes hpsFadeIn { from { opacity: 0; } }

/* ---------- Public sections ---------- */
body.hp-ui.hp-sponsor .hps-section { max-width: 1120px; margin: clamp(52px, 7vw, 92px) auto 0; padding-inline: 4px; }
body.hp-ui.hp-sponsor .hps-section-head { max-width: 64ch; margin-bottom: 26px; }
body.hp-ui.hp-sponsor .hps-section-head .hp-kicker { margin: 0 0 10px; }
body.hp-ui.hp-sponsor .hps-section-head h2 { margin: 0; font-size: clamp(1.9rem, 3.4vw, 2.6rem); line-height: 1.1; color: var(--hx-ink); text-wrap: balance; }
body.hp-ui.hp-sponsor .hps-section-head h2 em { color: var(--hx-quill-ink); }
body.hp-ui.hp-sponsor .hps-section-text { margin: 12px 0 0; color: var(--hx-ink-2); font-size: 1.02rem; line-height: 1.7; }

/* Seat packs */
body.hp-ui.hp-sponsor .hps-packs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
body.hp-ui.hp-sponsor .hps-packs > li { display: flex; min-width: 0; }
body.hp-ui.hp-sponsor .hps-pack {
    position: relative; flex: 1; display: flex; flex-direction: column; gap: 4px; min-width: 0;
    padding: 26px 24px 22px; border-radius: 26px;
    background: var(--hx-surface); border: 1px solid var(--hx-line); color: var(--hx-ink); text-decoration: none;
    box-shadow: 0 1px 0 rgba(20, 35, 28, .03);
    transition: border-color .2s ease, transform .25s var(--hx-ease), box-shadow .25s ease;
}
body.hp-ui.hp-sponsor a.hps-pack:hover { border-color: color-mix(in srgb, var(--hx-quill) 75%, transparent); transform: translateY(-2px); box-shadow: var(--hx-shadow); }
body.hp-ui.hp-sponsor a.hps-pack:focus-visible { outline: 2px solid var(--hx-focus); outline-offset: 3px; }
body.hp-ui.hp-sponsor .hps-pack.is-featured { border-color: color-mix(in srgb, var(--hx-quill) 60%, var(--hx-line)); background: linear-gradient(180deg, var(--hx-quill-soft), var(--hx-surface) 70%); }
body.hp-ui.hp-sponsor .hps-pack-n { font-family: var(--hx-f-display); font-size: 3.6rem; line-height: .95; color: var(--hx-royal-ink); font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor .hps-pack-label { font-weight: 700; font-size: .95rem; color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor .hps-pack-total { margin-top: 14px; font-size: 1.25rem; font-weight: 800; color: var(--hx-ink); font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor .hps-pack-go {
    display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 18px;
    color: var(--hx-royal-ink); font: inherit; font-weight: 700; font-size: .92rem;
    background: none; border: 0; cursor: pointer; align-self: flex-start;
}
body.hp-ui.hp-sponsor .hps-pack.is-custom { gap: 8px; }
body.hp-ui.hp-sponsor .hps-custom-row { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
body.hp-ui.hp-sponsor .hps-custom-row .hps-pack-total { margin-top: 0; }
body.hp-ui.hp-sponsor .hps-custom-input {
    width: 5.2ch; min-height: 56px; padding: 4px 10px; border-radius: 14px;
    border: 1px solid var(--hx-line-2); background: var(--hx-paper); color: var(--hx-royal-ink);
    font-family: var(--hx-f-display); font-size: 2.4rem; line-height: 1; text-align: center; font-variant-numeric: tabular-nums;
    -moz-appearance: textfield; appearance: textfield;
}
body.hp-ui.hp-sponsor .hps-custom-input::-webkit-inner-spin-button,
body.hp-ui.hp-sponsor .hps-custom-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
body.hp-ui.hp-sponsor .hps-custom-input:focus { border-color: var(--hx-quill); outline: 2px solid var(--hx-focus); outline-offset: 2px; }
body.hp-ui.hp-sponsor .hps-custom-hint { font-size: .84rem; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor .hps-pack-go:focus-visible { outline: 2px solid var(--hx-focus); outline-offset: 3px; border-radius: 8px; }
body.hp-ui.hp-sponsor .hps-fine { max-width: 76ch; margin: 18px 0 0; font-size: .92rem; line-height: 1.65; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor .hps-paused { padding: 22px 24px; border-radius: 20px; background: var(--hx-warn-soft); color: var(--hx-warn); font-weight: 600; }

/* How it works */
body.hp-ui.hp-sponsor .hps-how-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
body.hp-ui.hp-sponsor .hps-how-card {
    position: relative; padding: 30px clamp(22px, 3vw, 34px) 28px; border-radius: 28px;
    background: var(--hx-surface); border: 1px solid var(--hx-line); scroll-margin-top: 90px;
}
body.hp-ui.hp-sponsor .hps-how-card.is-student { background: linear-gradient(180deg, var(--hx-royal-soft), var(--hx-surface) 80%); border-color: color-mix(in srgb, var(--hx-royal) 22%, var(--hx-line)); }
body.hp-ui.hp-sponsor .hps-how-card h3 { margin: 0 0 18px; font-family: var(--hx-f-display); font-weight: 400; font-size: 1.7rem; color: var(--hx-ink); }
body.hp-ui.hp-sponsor .hps-steps { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; counter-reset: hps-step; }
body.hp-ui.hp-sponsor .hps-steps li {
    position: relative; padding-inline-start: 46px; counter-increment: hps-step;
    color: var(--hx-ink-2); line-height: 1.6; font-size: .98rem;
}
body.hp-ui.hp-sponsor .hps-steps li::before {
    content: counter(hps-step); position: absolute; inset-inline-start: 0; inset-block-start: -2px;
    display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--hx-quill) 55%, transparent); color: var(--hx-quill-ink);
    font-family: var(--hx-f-display); font-size: 1.1rem;
}
body.hp-ui.hp-sponsor .hps-steps b { color: var(--hx-ink); }
body.hp-ui.hp-sponsor .hps-ask {
    margin-top: 24px; background: var(--hx-royal); color: #fff; white-space: normal; text-align: center;
}
body.hp-ui.hp-sponsor .hps-ask:hover:not(:disabled) { background: var(--hx-royal-hover); }
body.hp-ui.hp-sponsor .hps-how-note { margin: 16px 0 0; font-size: .9rem; color: var(--hx-ink-3); line-height: 1.6; }

/* Plainly: questions and answers */
body.hp-ui.hp-sponsor .hps-qa { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; margin: 0; }
body.hp-ui.hp-sponsor .hps-qa > div { padding: 22px 0; border-top: 1px solid var(--hx-line); }
body.hp-ui.hp-sponsor .hps-qa dt { margin: 0 0 8px; font-family: var(--hx-f-display); font-size: 1.35rem; color: var(--hx-ink); }
body.hp-ui.hp-sponsor .hps-qa dd { margin: 0; color: var(--hx-ink-2); line-height: 1.7; }

/* Closing */
body.hp-ui.hp-sponsor .hps-close { max-width: 1120px; margin-inline: auto; }
body.hp-ui.hp-sponsor .hps-close h2 { max-width: 26ch; }
body.hp-ui.hp-sponsor .hps-close-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
body.hp-ui.hp-sponsor .hps-close-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--hx-royal-ink); font-weight: 700; }

html[lang="ar"] body.hp-ui.hp-sponsor :is(.hps-qa dt, .hps-how-card h3) { font-weight: 700; line-height: 1.45; }
html[lang="ar"] body.hp-ui.hp-sponsor .hps-section-head h2 { line-height: 1.35; }
html[lang="ar"] body.hp-ui.hp-sponsor .hps-counters span { max-width: 26ch; }

@media (max-width: 960px) {
    body.hp-ui.hp-sponsor .hps-hero-grid { grid-template-columns: minmax(0, 1fr); }
    body.hp-ui.hp-sponsor .hps-hero-art { justify-self: start; }
    body.hp-ui.hp-sponsor .hps-packs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.hp-ui.hp-sponsor .hps-how-grid,
    body.hp-ui.hp-sponsor .hps-qa { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
    body.hp-ui.hp-sponsor .hps-hero-art { justify-self: center; margin-top: 4px; }
    .hps-envelope { transform: scale(.86); transform-origin: 50% 0; margin-bottom: -40px; }
    body.hp-ui.hp-sponsor .hps-hero-actions .hp-btn { width: 100%; }
    body.hp-ui.hp-sponsor .hps-pack { padding: 20px 18px 18px; border-radius: 22px; }
    body.hp-ui.hp-sponsor .hps-pack-n { font-size: 2.8rem; }
    body.hp-ui.hp-sponsor .hps-counters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; }
    body.hp-ui.hp-sponsor .hps-counters strong { font-size: 2.1rem; }
    body.hp-ui.hp-sponsor .hps-section { padding-inline: 2px; }
}
@media (max-width: 380px) {
    body.hp-ui.hp-sponsor .hps-packs { grid-template-columns: minmax(0, 1fr); }
}

/* ==========================================================================
   2. App pages: apply, status, give, impact
   ========================================================================== */
body.hp-ui.hp-sponsor-app .hps-skip {
    position: absolute; inset-inline-start: 12px; inset-block-start: -60px; z-index: 50;
    padding: 10px 16px; border-radius: 12px; background: var(--hx-royal); color: #fff; font-weight: 700;
}
body.hp-ui.hp-sponsor-app .hps-skip:focus { inset-block-start: 12px; }
body.hp-ui.hp-sponsor-app .hps-shell { display: grid; gap: 18px; }

/* The forest band */
body.hp-ui.hp-sponsor-app .hps-band {
    position: relative; isolation: isolate; overflow: hidden;
    display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px 28px;
    padding: clamp(26px, 4vw, 44px) clamp(22px, 4vw, 48px);
    border-radius: 28px; color: var(--hx-on-stage);
    background:
        radial-gradient(560px 360px at 14% 0%, rgba(42, 122, 92, .36), transparent 62%),
        radial-gradient(380px 260px at 90% 120%, rgba(184, 137, 74, .18), transparent 60%),
        linear-gradient(165deg, #12503e 0%, #0b392f 46%, #04170f 100%);
    border: 1px solid var(--hx-stage-line); box-shadow: var(--hx-shadow);
}
body.hp-ui.hp-sponsor-app .hps-band::after {
    content: ""; position: absolute; z-index: -1; pointer-events: none;
    inset-block: -10%; inset-inline-start: 74%; inset-inline-end: -14%;
    background: linear-gradient(165deg, #155a45 0%, #0d3e31 55%, #062419 100%);
    border-inline-start: 1.5px solid rgba(240, 214, 170, .7);
    transform-origin: 0 100%; transform: skewX(-9deg);
}
[dir="rtl"] body.hp-ui.hp-sponsor-app .hps-band::after { transform-origin: 100% 100%; transform: skewX(9deg); }
body.hp-ui.hp-sponsor-app .hps-band-copy { max-width: 64ch; }
body.hp-ui.hp-sponsor-app .hps-eyebrow { margin: 0 0 10px; color: var(--hx-cream); font-size: .74rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
body.hp-ui.hp-sponsor-app .hps-band h1 { margin: 0; font-size: clamp(2rem, 4.2vw, 3.1rem); line-height: 1.06; color: var(--hx-on-stage); text-wrap: balance; }
body.hp-ui.hp-sponsor-app .hps-band-lead { margin: 14px 0 0; color: var(--hx-on-stage-2); font-size: 1.02rem; line-height: 1.65; }
body.hp-ui.hp-sponsor-app .hps-band-link {
    display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 18px; border-radius: 999px;
    border: 1px solid rgba(240, 214, 170, .4); background: rgba(255, 255, 255, .06);
    color: var(--hx-on-stage); font-weight: 700; text-decoration: none; transition: background-color .2s ease;
}
body.hp-ui.hp-sponsor-app .hps-band-link:hover { background: rgba(255, 255, 255, .12); }
body.hp-ui.hp-sponsor-app .hps-band-link:focus-visible { outline: 2px solid var(--hx-focus-on-stage); outline-offset: 3px; }
body.hp-ui.hp-sponsor-app .hps-band-stats { display: flex; flex-wrap: wrap; gap: 10px 30px; margin: 0; }
body.hp-ui.hp-sponsor-app .hps-band:has(.hps-band-stats)::after { inset-inline-start: 86%; }
body.hp-ui.hp-sponsor-app .hps-band-stats div { display: grid; gap: 2px; }
body.hp-ui.hp-sponsor-app .hps-band-stats dt { order: 2; font-size: .82rem; font-weight: 600; color: var(--hx-on-stage-2); }
body.hp-ui.hp-sponsor-app .hps-band-stats dd { order: 1; margin: 0; font-family: var(--hx-f-display); font-size: 2.4rem; line-height: 1; color: var(--hx-cream); font-variant-numeric: tabular-nums; }

/* Status line */
body.hp-ui.hp-sponsor-app .hps-flash {
    display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 14px 18px; border-radius: 16px;
    background: var(--hx-ok-soft); color: var(--hx-ok); font-weight: 600; line-height: 1.5;
    border: 1px solid color-mix(in srgb, var(--hx-ok) 25%, transparent);
}
body.hp-ui.hp-sponsor-app .hps-flash.is-error { background: var(--hx-danger-soft); color: var(--hx-danger); border-color: color-mix(in srgb, var(--hx-danger) 25%, transparent); }
body.hp-ui.hp-sponsor-app .hps-flash .icon { margin-top: 2px; }

/* Layout and cards */
body.hp-ui.hp-sponsor-app .hps-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; align-items: start; }
body.hp-ui.hp-sponsor-app .hps-main { display: grid; gap: 18px; min-width: 0; }
body.hp-ui.hp-sponsor-app .hps-side { display: grid; gap: 18px; min-width: 0; position: sticky; inset-block-start: 90px; }
body.hp-ui.hp-sponsor-app .hps-card {
    margin: 0; padding: clamp(20px, 3vw, 30px); border-radius: 24px; min-width: 0;
    background: var(--hx-surface); border: 1px solid var(--hx-line); box-shadow: var(--hx-shadow);
    color: var(--hx-ink);
}
body.hp-ui.hp-sponsor-app .hps-card p { line-height: 1.65; color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor-app .hps-card-title { margin: 0 0 10px; font-family: var(--hx-f-display); font-weight: 400; font-size: 1.55rem; line-height: 1.2; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-card-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
body.hp-ui.hp-sponsor-app .hps-card-head .hps-card-title { margin: 0; }
body.hp-ui.hp-sponsor-app .hps-section-title { margin: 8px 0 12px; font-family: var(--hx-f-display); font-weight: 400; font-size: 1.7rem; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-muted { color: var(--hx-ink-3); font-size: .92rem; }
body.hp-ui.hp-sponsor-app .hps-link { color: var(--hx-royal-ink); font-weight: 700; }
body.hp-ui.hp-sponsor-app :is(.hps-card, .hps-band) :is(a, button, summary, input, select, textarea):focus-visible { outline: 2px solid var(--hx-focus); outline-offset: 2px; }

/* Buttons */
body.hp-ui.hp-sponsor-app .hps-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 10px 20px;
    border-radius: 999px; border: 1px solid var(--hx-line-2); background: var(--hx-surface); color: var(--hx-ink);
    font: inherit; font-weight: 700; font-size: .95rem; text-decoration: none; cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, transform .2s var(--hx-ease);
}
body.hp-ui.hp-sponsor-app .hps-btn:hover { border-color: var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-btn.is-primary { background: var(--hx-royal); border-color: var(--hx-royal); color: #fff; box-shadow: 0 12px 26px -14px rgba(15, 69, 54, .8); }
body.hp-ui.hp-sponsor-app .hps-btn.is-primary:hover { background: var(--hx-royal-hover); transform: translateY(-1px); }
body.hp-ui.hp-sponsor-app .hps-btn.is-quiet { border-color: transparent; background: transparent; color: var(--hx-ink-2); padding-inline: 10px; text-decoration: underline; text-underline-offset: 3px; }
body.hp-ui.hp-sponsor-app .hps-btn.is-quiet:hover { color: var(--hx-danger); }
body.hp-ui.hp-sponsor-app .hps-btn.is-wide { width: 100%; }
body.hp-ui.hp-sponsor-app .hps-btn[disabled] { opacity: .55; cursor: not-allowed; transform: none; }
body.hp-ui.hp-sponsor-app .hps-inline-form { margin: 12px 0 0; }

/* Forms */
body.hp-ui.hp-sponsor-app .hps-form { display: grid; gap: 8px; }
body.hp-ui.hp-sponsor-app .hps-fieldset { min-width: 0; margin: 0; padding: 0 0 18px; border: 0; display: grid; gap: 14px; }
body.hp-ui.hp-sponsor-app .hps-card.hps-fieldset { padding: clamp(20px, 3vw, 30px); }
body.hp-ui.hp-sponsor-app .hps-form .hps-fieldset + .hps-fieldset { padding-top: 22px; border-top: 1px solid var(--hx-line); }
/* Floated, so the legend is a plain first row inside the fieldset instead of sitting on its border */
body.hp-ui.hp-sponsor-app .hps-legend {
    float: inline-start; width: 100%;
    display: flex; align-items: center; gap: 12px; padding: 0; margin-bottom: 4px;
    font-family: var(--hx-f-display); font-size: 1.4rem; color: var(--hx-ink);
}
body.hp-ui.hp-sponsor-app .hps-step {
    display: grid; place-items: center; flex: none; width: 30px; height: 30px; border-radius: 50%;
    background: var(--hx-quill-soft); color: var(--hx-quill-ink); font-family: var(--hx-f-body); font-size: .9rem; font-weight: 800;
}
body.hp-ui.hp-sponsor-app .hps-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
body.hp-ui.hp-sponsor-app .hps-field { display: grid; align-content: start; gap: 6px; min-width: 0; }
body.hp-ui.hp-sponsor-app .hps-label { font-size: .9rem; font-weight: 700; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-label small { font-weight: 500; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-field :is(input[type="text"], input[type="number"], input[type="file"], select, textarea) {
    width: 100%; min-height: 48px; padding: 11px 14px; border-radius: 14px;
    border: 1px solid var(--hx-line-2); background: var(--hx-paper); color: var(--hx-ink);
    font: inherit; font-size: 1rem; line-height: 1.5; box-shadow: none;
    transition: border-color .2s ease, background-color .2s ease;
}
body.hp-ui.hp-sponsor-app .hps-field textarea { resize: vertical; min-height: 120px; }
body.hp-ui.hp-sponsor-app .hps-field input[type="file"] { padding: 10px; cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-field :is(input, select, textarea):focus { border-color: var(--hx-quill); background: var(--hx-surface); }
body.hp-ui.hp-sponsor-app .hps-field [aria-invalid="true"] { border-color: var(--hx-danger); }
body.hp-ui.hp-sponsor-app .hps-error { color: var(--hx-danger); font-size: .86rem; font-weight: 600; }
body.hp-ui.hp-sponsor-app .hps-hint { color: var(--hx-ink-3); font-size: .84rem; }
body.hp-ui.hp-sponsor-app .hps-count { justify-self: end; color: var(--hx-ink-3); font-size: .82rem; font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor-app .hps-count.is-short { color: var(--hx-warn); }
body.hp-ui.hp-sponsor-app .hps-count.is-ok { color: var(--hx-ok); }

/* Radio cards (goals) */
body.hp-ui.hp-sponsor-app .hps-choices { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
body.hp-ui.hp-sponsor-app .hps-choice { position: relative; display: flex; }
body.hp-ui.hp-sponsor-app .hps-choice input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-choice span {
    flex: 1; display: grid; place-items: center; min-height: 56px; padding: 10px 12px; border-radius: 16px; text-align: center;
    border: 1px solid var(--hx-line-2); background: var(--hx-paper); color: var(--hx-ink); font-weight: 700; font-size: .94rem;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
body.hp-ui.hp-sponsor-app .hps-choice input:checked + span { border-color: var(--hx-royal); background: var(--hx-royal-soft); color: var(--hx-royal-ink); box-shadow: inset 0 0 0 1px var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-choice input:focus-visible + span { outline: 2px solid var(--hx-focus); outline-offset: 2px; }
body.hp-ui.hp-sponsor-app .hps-choice:hover span { border-color: var(--hx-quill); }

/* Checkboxes */
body.hp-ui.hp-sponsor-app .hps-check { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-check input { flex: none; width: 20px; height: 20px; margin: 3px 0 0; accent-color: var(--hx-royal); cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-check span { display: grid; gap: 2px; }
body.hp-ui.hp-sponsor-app .hps-check b { color: var(--hx-ink); font-weight: 700; }
body.hp-ui.hp-sponsor-app .hps-check small { color: var(--hx-ink-3); font-size: .86rem; line-height: 1.5; }
body.hp-ui.hp-sponsor-app .hps-first-name { max-width: 320px; padding-inline-start: 32px; }
body.hp-ui.hp-sponsor-app [data-hps-name-row][hidden],
body.hp-ui.hp-sponsor-app [data-hps-name-field][hidden],
body.hp-ui.hp-sponsor-app [data-hps-seat-choices][hidden] { display: none; }

/* What the sponsor will see */
body.hp-ui.hp-sponsor-app .hps-preview {
    display: grid; gap: 4px; padding: 14px 18px; border-radius: 16px;
    border: 1px dashed color-mix(in srgb, var(--hx-quill) 60%, transparent); background: var(--hx-quill-soft);
}
body.hp-ui.hp-sponsor-app .hps-preview-k { font-size: .72rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--hx-quill-ink); }
body.hp-ui.hp-sponsor-app .hps-preview-v { font-family: var(--hx-f-display); font-size: 1.25rem; color: var(--hx-ink); overflow-wrap: anywhere; }
body.hp-ui.hp-sponsor-app .hps-submit { display: grid; gap: 10px; justify-items: start; padding-top: 8px; }
body.hp-ui.hp-sponsor-app .hps-fine-print { margin: 0; font-size: .86rem; color: var(--hx-ink-3); line-height: 1.6; }

/* Side card */
body.hp-ui.hp-sponsor-app .hps-mini-steps { display: grid; gap: 12px; margin: 0 0 14px; padding-inline-start: 20px; color: var(--hx-ink-2); line-height: 1.6; font-size: .95rem; }
body.hp-ui.hp-sponsor-app .hps-mini-steps li::marker { color: var(--hx-quill-ink); font-weight: 800; }
body.hp-ui.hp-sponsor-app .hps-mini-steps b { color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-side-note { margin: 0 0 12px; font-size: .9rem; color: var(--hx-ink-3); }

/* Notices and empty states */
body.hp-ui.hp-sponsor-app .hps-notice { display: flex; align-items: flex-start; gap: 16px; }
body.hp-ui.hp-sponsor-app .hps-notice-icon { width: 26px; height: 26px; margin-top: 4px; color: var(--hx-quill-ink); }
body.hp-ui.hp-sponsor-app .hps-notice p { margin: 0 0 8px; }
body.hp-ui.hp-sponsor-app .hps-notice-date { font-weight: 700; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-notice.is-pending { border-color: color-mix(in srgb, var(--hx-quill) 45%, var(--hx-line)); background: linear-gradient(180deg, var(--hx-quill-soft), var(--hx-surface) 75%); }
body.hp-ui.hp-sponsor-app .hps-actions-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
body.hp-ui.hp-sponsor-app .hps-empty { display: grid; justify-items: center; gap: 10px; padding-block: 48px; text-align: center; }
body.hp-ui.hp-sponsor-app .hps-empty p { max-width: 52ch; margin: 0 0 8px; }
body.hp-ui.hp-sponsor-app .hps-empty-icon { width: 40px; height: 40px; color: var(--hx-quill); }

/* Status: the timeline and the state */
body.hp-ui.hp-sponsor-app .hps-timeline { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 26px; padding: 0; list-style: none; }
body.hp-ui.hp-sponsor-app .hps-timeline li { position: relative; display: grid; justify-items: center; gap: 8px; text-align: center; font-size: .86rem; font-weight: 700; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-timeline li::before {
    content: ""; position: absolute; inset-block-start: 8px; inset-inline-start: 50%; width: 100%; height: 2px; background: var(--hx-line);
}
body.hp-ui.hp-sponsor-app .hps-timeline li:last-child::before { display: none; }
body.hp-ui.hp-sponsor-app .hps-timeline li.is-done::before { background: var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-timeline-dot {
    position: relative; z-index: 1; width: 18px; height: 18px; border-radius: 50%;
    background: var(--hx-surface); border: 2px solid var(--hx-line-2);
}
body.hp-ui.hp-sponsor-app .hps-timeline li.is-done { color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor-app .hps-timeline li.is-done .hps-timeline-dot { background: var(--hx-royal); border-color: var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-timeline li.is-current { color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-timeline li.is-current .hps-timeline-dot { background: var(--hx-quill); border-color: var(--hx-quill); box-shadow: 0 0 0 5px color-mix(in srgb, var(--hx-quill) 25%, transparent); }
body.hp-ui.hp-sponsor-app .hps-state-body { display: flex; align-items: flex-start; gap: 22px; }
body.hp-ui.hp-sponsor-app .hps-state-icon {
    display: grid; place-items: center; flex: none; width: 64px; height: 64px; border-radius: 50%;
    background: var(--hx-quill-soft); color: var(--hx-quill-ink);
}
body.hp-ui.hp-sponsor-app .hps-state-icon .icon { width: 28px; height: 28px; }
body.hp-ui.hp-sponsor-app .hps-state.is-declined .hps-state-icon { background: var(--hx-surface-2); color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor-app .hps-state-text { min-width: 0; flex: 1; }
body.hp-ui.hp-sponsor-app .hps-state-text p { margin: 0 0 10px; }
body.hp-ui.hp-sponsor-app .hps-state-label { font-size: .74rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; color: var(--hx-quill-ink); }
body.hp-ui.hp-sponsor-app .hps-state-title { margin: 0 0 12px; font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.12; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-until { font-size: 1.1rem; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-until time { font-weight: 800; color: var(--hx-royal-ink); }
body.hp-ui.hp-sponsor-app .hps-position { display: flex; align-items: baseline; gap: 14px; font-weight: 700; }
body.hp-ui.hp-sponsor-app .hps-position strong { font-family: var(--hx-f-display); font-weight: 400; font-size: 2.6rem; line-height: 1; color: var(--hx-royal-ink); font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor-app .hps-reason {
    margin: 12px 0 0; padding: 14px 18px; border-inline-start: 3px solid var(--hx-quill); border-radius: 4px 14px 14px 4px;
    background: var(--hx-surface-2);
}
[dir="rtl"] body.hp-ui.hp-sponsor-app .hps-reason { border-radius: 14px 4px 4px 14px; }
body.hp-ui.hp-sponsor-app .hps-reason span { font-size: .74rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-reason p { margin: 6px 0 0; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-withdraw { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--hx-line); }

/* Notes and sharing */
body.hp-ui.hp-sponsor-app .hps-form-inline { display: grid; gap: 14px; margin-top: 14px; }
body.hp-ui.hp-sponsor-app .hps-form-inline > .hps-btn { justify-self: start; }
body.hp-ui.hp-sponsor-app .hps-details summary { display: inline-flex; align-items: center; min-height: 40px; color: var(--hx-royal-ink); font-weight: 700; cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-summary { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; color: var(--hx-ink); font-weight: 600; }
body.hp-ui.hp-sponsor-app .hps-summary [aria-hidden="true"] { color: var(--hx-quill); }
body.hp-ui.hp-sponsor-app .hps-note-quote,
body.hp-ui.hp-sponsor-app .hps-note blockquote {
    position: relative; margin: 0; padding: 4px 0 0; padding-inline-start: 36px;
    font-family: var(--hx-f-display); font-size: 1.22rem; line-height: 1.55; color: var(--hx-ink);
}
body.hp-ui.hp-sponsor-app .hps-note-quote::before,
body.hp-ui.hp-sponsor-app .hps-note blockquote::before {
    content: "\201C"; position: absolute; inset-inline-start: 0; inset-block-start: -10px;
    font-family: var(--hx-f-display); font-size: 3.4rem; line-height: 1; color: var(--hx-quill);
}
body.hp-ui.hp-sponsor-app :is(.hps-note-quote, .hps-note blockquote) p { margin: 0; color: var(--hx-ink); white-space: pre-line; overflow-wrap: anywhere; }
body.hp-ui.hp-sponsor-app .hps-note-state { display: inline-flex; align-items: center; gap: 8px; margin: 12px 0 0; font-weight: 700; font-size: .9rem; }
body.hp-ui.hp-sponsor-app .hps-note-state.is-approved { color: var(--hx-ok); }
body.hp-ui.hp-sponsor-app .hps-note-state.is-pending { color: var(--hx-warn); }
body.hp-ui.hp-sponsor-app .hps-note-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
body.hp-ui.hp-sponsor-app .hps-note { background: linear-gradient(180deg, var(--hx-quill-soft), var(--hx-surface) 55%); }
body.hp-ui.hp-sponsor-app .hps-note-from { display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 0; padding-inline-start: 36px; font-size: .9rem; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-note-from b { color: var(--hx-ink); }

/* Chips */
body.hp-ui.hp-sponsor-app .hps-chip {
    display: inline-flex; align-items: center; min-height: 26px; padding: 2px 11px; border-radius: 999px; flex: none;
    font-size: .78rem; font-weight: 800; background: var(--hx-surface-2); color: var(--hx-ink-2); border: 1px solid var(--hx-line);
}
body.hp-ui.hp-sponsor-app .hps-chip:is(.is-assigned, .is-sponsored, .is-completed) { background: var(--hx-ok-soft); color: var(--hx-ok); border-color: transparent; }
body.hp-ui.hp-sponsor-app .hps-chip:is(.is-waiting, .is-queued, .is-pending) { background: var(--hx-quill-soft); color: var(--hx-quill-ink); border-color: transparent; }
body.hp-ui.hp-sponsor-app .hps-history-list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
body.hp-ui.hp-sponsor-app .hps-history-list li { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor-app .hps-history-list time { color: var(--hx-ink-3); font-size: .88rem; }

/* Give: seats, methods and the sticky total */
body.hp-ui.hp-sponsor-app .hps-seat-choices { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
body.hp-ui.hp-sponsor-app .hps-seat { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 92px; padding: 12px; border-radius: 18px; border: 1px solid var(--hx-line-2); background: var(--hx-paper); cursor: pointer; transition: border-color .2s ease, background-color .2s ease; }
body.hp-ui.hp-sponsor-app .hps-seat input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
body.hp-ui.hp-sponsor-app .hps-seat-n { font-family: var(--hx-f-display); font-size: 2.3rem; line-height: 1; color: var(--hx-royal-ink); }
body.hp-ui.hp-sponsor-app .hps-seat-l { font-weight: 700; font-size: .9rem; color: var(--hx-ink-2); text-align: center; }
body.hp-ui.hp-sponsor-app .hps-seat:has(input:checked) { border-color: var(--hx-royal); background: var(--hx-royal-soft); box-shadow: inset 0 0 0 1px var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-seat:has(input:focus-visible) { outline: 2px solid var(--hx-focus); outline-offset: 2px; }
body.hp-ui.hp-sponsor-app .hps-seat:hover { border-color: var(--hx-quill); }
body.hp-ui.hp-sponsor-app .hps-quantity { max-width: 220px; }
body.hp-ui.hp-sponsor-app .hps-quantity input { font-variant-numeric: tabular-nums; font-weight: 700; }
body.hp-ui.hp-sponsor-app .hps-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
body.hp-ui.hp-sponsor-app .hps-method {
    position: relative; display: grid; align-content: start; gap: 10px; padding: 16px 18px; border-radius: 18px;
    border: 1px solid var(--hx-line-2); background: var(--hx-paper); cursor: pointer; transition: border-color .2s ease;
}
body.hp-ui.hp-sponsor-app .hps-method > input { position: absolute; inset-block-start: 18px; inset-inline-end: 18px; width: 18px; height: 18px; margin: 0; accent-color: var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-method:has(> input:checked) { border-color: var(--hx-royal); box-shadow: inset 0 0 0 1px var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-method-head { display: flex; align-items: center; gap: 10px; padding-inline-end: 28px; color: var(--hx-ink); }
body.hp-ui.hp-sponsor-app .hps-method-head .icon { color: var(--hx-quill-ink); }
body.hp-ui.hp-sponsor-app .hps-method-details { display: grid; gap: 8px; margin: 0; }
body.hp-ui.hp-sponsor-app .hps-method-details dt { font-size: .78rem; font-weight: 700; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-method-details dd { display: flex; align-items: center; gap: 8px; margin: 2px 0 0; color: var(--hx-ink); font-weight: 600; }
body.hp-ui.hp-sponsor-app .hps-method-details .is-mono { font-family: var(--hx-f-mono); font-size: 1.02rem; letter-spacing: .04em; }
body.hp-ui.hp-sponsor-app .hps-copy {
    display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; flex: none;
    border: 1px solid var(--hx-line); background: var(--hx-surface); color: var(--hx-ink-2); cursor: pointer;
}
body.hp-ui.hp-sponsor-app .hps-copy:hover { color: var(--hx-royal-ink); border-color: var(--hx-royal); }
body.hp-ui.hp-sponsor-app .hps-copy .icon { width: 16px; height: 16px; }
body.hp-ui.hp-sponsor-app .hps-copied { font-size: .86rem; font-weight: 700; color: var(--hx-ok); }
body.hp-ui.hp-sponsor-app .hps-copied:empty { margin-top: -14px; }
body.hp-ui.hp-sponsor-app .hps-fieldset > p { margin: 0; }
body.hp-ui.hp-sponsor-app .hps-summary-card { display: grid; gap: 12px; }
body.hp-ui.hp-sponsor-app .hps-sum-line { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; font-weight: 700; color: var(--hx-ink-2); font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor-app .hps-sum-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0; padding: 14px 0; border-block: 1px solid var(--hx-line); color: var(--hx-ink); font-weight: 700; }
body.hp-ui.hp-sponsor-app .hps-sum-total strong { font-family: var(--hx-f-display); font-weight: 400; font-size: 2.6rem; line-height: 1; color: var(--hx-royal-ink); font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor-app .hps-sum-facts { display: grid; gap: 8px; margin: 0; padding-inline-start: 18px; color: var(--hx-ink-3); font-size: .88rem; line-height: 1.5; }
body.hp-ui.hp-sponsor-app .hps-sum-facts li::marker { color: var(--hx-quill); }

/* Impact: the seats */
body.hp-ui.hp-sponsor-app .hps-seat-rows { display: grid; margin: 6px 0 0; padding: 0; list-style: none; }
body.hp-ui.hp-sponsor-app .hps-seat-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 8px 16px; padding: 16px 0; border-top: 1px solid var(--hx-line); }
body.hp-ui.hp-sponsor-app .hps-seat-row:first-child { border-top: 0; }
body.hp-ui.hp-sponsor-app .hps-seat-who { display: grid; gap: 4px; min-width: 0; color: var(--hx-ink-2); }
body.hp-ui.hp-sponsor-app .hps-seat-who small { color: var(--hx-ink-3); font-size: .86rem; }
body.hp-ui.hp-sponsor-app .hps-seat-price { color: var(--hx-ink-3); font-weight: 700; font-variant-numeric: tabular-nums; }
body.hp-ui.hp-sponsor-app .hps-seat-row.is-withdrawn .hps-seat-who { color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-invoices { display: flex; flex-wrap: wrap; gap: 6px 12px; margin: 16px 0 0; padding-top: 14px; border-top: 1px solid var(--hx-line); font-size: .9rem; color: var(--hx-ink-3); }
body.hp-ui.hp-sponsor-app .hps-invoices a { color: var(--hx-royal-ink); font-weight: 700; font-family: var(--hx-f-mono); }

body.hp-ui.hp-sponsor-app .hps-mobile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

html[lang="ar"] body.hp-ui.hp-sponsor-app :is(.hps-legend, .hps-card-title, .hps-state-title, .hps-section-title) { font-weight: 700; line-height: 1.4; }
html[lang="ar"] body.hp-ui.hp-sponsor-app :is(.hps-eyebrow, .hps-state-label, .hps-preview-k, .hps-reason span) { letter-spacing: 0; }
html[lang="ar"] body.hp-ui.hp-sponsor-app .hps-band h1 { line-height: 1.3; }

@media (max-width: 960px) {
    body.hp-ui.hp-sponsor-app .hps-layout { grid-template-columns: minmax(0, 1fr); }
    body.hp-ui.hp-sponsor-app .hps-side { position: static; }
    body.hp-ui.hp-sponsor-app .hps-choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.hp-ui.hp-sponsor-app .hps-note-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
    body.hp-ui.hp-sponsor-app .hps-band { border-radius: 22px; }
    body.hp-ui.hp-sponsor-app .hps-band::after { display: none; }
    body.hp-ui.hp-sponsor-app .hps-row,
    body.hp-ui.hp-sponsor-app .hps-methods { grid-template-columns: minmax(0, 1fr); }
    body.hp-ui.hp-sponsor-app .hps-seat-choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.hp-ui.hp-sponsor-app .hps-state-body { flex-direction: column; gap: 14px; }
    body.hp-ui.hp-sponsor-app .hps-timeline li { font-size: .74rem; }
    body.hp-ui.hp-sponsor-app .hps-seat-row { grid-template-columns: minmax(0, 1fr) auto; }
    body.hp-ui.hp-sponsor-app .hps-seat-row .hps-chip { grid-column: 1 / -1; justify-self: start; }
    body.hp-ui.hp-sponsor-app .hps-first-name { padding-inline-start: 0; }
    body.hp-ui.hp-sponsor-app .hps-submit .hps-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    body.hp-ui:is(.hp-sponsor, .hp-sponsor-app) * { transition: none; }
    body.hp-ui.hp-sponsor a.hps-pack:hover,
    body.hp-ui.hp-sponsor-app .hps-btn.is-primary:hover { transform: none; }
}

@media print {
    body.hp-ui.hp-sponsor .hps-hero-art { display: none; }
}
