/*
 * Pilot deploy smoke marker — Story 6.9 (RLDEV-255) golden-path verification.
 *
 * The .advantix-pilot-deploy-marker-2026-05-26 selector below is purely
 * a token for end-to-end pipeline verification. Curl the served CSS:
 *
 *   curl -s https://advantix.tech/static/pretixplugins/advantixtheme/advantix.css \
 *     | grep advantix-pilot-deploy-marker-2026-05-26
 *
 * If the marker is present, then: PR merged on master -> GH Actions built
 * the image -> ECR `latest` moved -> EC2 deploy poller pulled within ~60s
 * -> Docker container restarted -> CloudFront (eventually) serves the new
 * static asset. CloudFront's TTL for /static is long, so the curl above
 * may need a cache-busting query param OR a direct origin check via
 *
 *   curl -sH "Host: advantix.tech" http://<ec2-public-ip>/static/pretixplugins/advantixtheme/advantix.css \
 *     | grep advantix-pilot-deploy-marker-2026-05-26
 *
 * Remove this marker once the pilot pipeline is validated.
 */
.advantix-pilot-deploy-marker-2026-05-26 {
    /* Intentional no-op rule; never selected. Marker only. */
    display: none;
}

/*
 * Browser-visible E2E smoke marker — Epic 6 closeout.
 *
 * Renders a small Advantix-gold badge in the bottom-right corner of
 * every advantix-themed page. Unlike the curl-grep markers above and
 * below, this one is intentionally visible to a human looking at
 * https://advantix.tech in a browser, to satisfy the "visual
 * verification" leg of the Epic 6 end-to-end test.
 *
 * Stack proven by this badge appearing in the browser:
 *   PR merge -> GitHub Actions image build -> ECR latest -> EC2
 *   poller pull -> docker compose up -d pretix -> Caddy serves
 *   the new /static/.../advantix.css with this rule -> the browser
 *   re-fetches the CSS (no edge cache) -> badge renders.
 *
 * Remove this block as part of the Epic 6 closeout cleanup PR.
 */
body.advantix-theme::before {
    content: "Resultant E2E · 2026-05-26";
    position: fixed;
    bottom: 8px;
    right: 8px;
    background: var(--advantix-gold-bright, #F5C842);
    color: var(--advantix-midnight, #0A0E1A);
    padding: 4px 10px;
    font-size: 11px;
    font-family: -apple-system, "Segoe UI", Roboto, sans-serif;
    z-index: 9999;
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(10, 14, 26, 0.18);
    pointer-events: none;
    letter-spacing: 0.4px;
}

/*
 * Post-Caddy-cutover smoke marker — Epic 6 closeout verification.
 * Same intent as the Story 6.9 marker above, but this one specifically
 * proves the chain works after the CloudFront -> Caddy cutover landed
 * (mantric/pretix#46). Probe with:
 *
 *   curl -s https://advantix.tech/static/pretixplugins/advantixtheme/advantix.css \
 *     | grep advantix-caddy-cutover-2026-05-26
 *
 * The HTTPS path now flows through Caddy on the EC2 (no CloudFront in
 * the chain), so no edge cache busting is needed; the marker should
 * appear at the URL above within ~3-5 min of the master merge.
 */
.advantix-caddy-cutover-2026-05-26 {
    /* Intentional no-op rule; never selected. Marker only. */
    display: none;
}

body.advantix-theme {
    --advantix-midnight: #0A0E1A;
    --advantix-surface: #141828;
    --advantix-gold: #C9972A;
    --advantix-gold-bright: #F5C842;
    --advantix-ivory: #F7F5F0;
    --advantix-success: #2F7A62;
    --advantix-danger: #A43A32;
    --advantix-border: rgba(201, 151, 42, 0.18);
    --advantix-copy: #1E2432;
    background:
        radial-gradient(circle at top right, rgba(245, 200, 66, 0.20), transparent 28%),
        radial-gradient(circle at left 12%, rgba(201, 151, 42, 0.12), transparent 22%),
        linear-gradient(180deg, #070B14 0, #141828 18rem, #F7F5F0 18rem, #F7F5F0 100%);
    color: var(--advantix-copy);
}

body.advantix-theme .main-box {
    background: transparent;
    box-shadow: none;
    margin-top: 24px;
}

body.advantix-theme .page-header-links {
    margin-top: 18px;
}

body.advantix-theme .advantix-stage-header-links {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 14px;
}

body.advantix-theme .advantix-stage-header-links .pull-left.flip,
body.advantix-theme .advantix-stage-header-links .pull-right.flip {
    float: none !important;
}

body.advantix-theme .advantix-stage-header-links .pull-right.flip {
    margin-left: auto;
    text-align: right;
}

body.advantix-theme .advantix-stage-header-links .header-part {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

body.advantix-theme .page-header-links .header-part a,
body.advantix-theme .page-header-links .header-part button,
body.advantix-theme .page-header-links .locales a {
    color: rgba(247, 245, 240, 0.78);
}

body.advantix-theme .page-header-links .header-part a:hover,
body.advantix-theme .page-header-links .header-part a:focus,
body.advantix-theme .page-header-links .locales a:hover,
body.advantix-theme .page-header-links .locales a:focus,
body.advantix-theme .page-header-links .locales a.active {
    color: var(--advantix-gold-bright);
}

body.advantix-theme .page-header {
    background:
        linear-gradient(135deg, rgba(10, 14, 26, 0.96), rgba(20, 24, 40, 0.92)),
        linear-gradient(90deg, rgba(245, 200, 66, 0.10), transparent);
    border: 1px solid rgba(245, 200, 66, 0.18);
    border-radius: 28px;
    box-shadow: 0 22px 55px rgba(8, 11, 20, 0.28);
    margin-bottom: 28px;
    overflow: hidden;
    padding: 28px 32px;
    position: relative;
}

body.advantix-theme .advantix-stage-header {
    background:
        radial-gradient(circle at top center, rgba(245, 200, 66, 0.24), transparent 42%),
        radial-gradient(circle at 12% 18%, rgba(255, 224, 133, 0.10), transparent 24%),
        linear-gradient(135deg, rgba(7, 11, 20, 0.98), rgba(20, 24, 40, 0.94));
    padding: 34px clamp(22px, 4vw, 46px) 24px;
    text-align: center;
}

body.advantix-theme .advantix-stage-header .pull-left.flip,
body.advantix-theme .advantix-stage-header .pull-right.flip {
    float: none !important;
}

body.advantix-theme .advantix-stage-header .clearfix {
    display: none;
}

body.advantix-theme .page-header::after {
    background: linear-gradient(90deg, transparent, rgba(245, 200, 66, 0.22), transparent);
    content: "";
    height: 1px;
    left: 32px;
    position: absolute;
    right: 32px;
    top: 0;
}

body.advantix-theme .page-header h1,
body.advantix-theme .content-header,
body.advantix-theme .subevent-head,
body.advantix-theme .panel-title,
body.advantix-theme .front-page h2,
body.advantix-theme .front-page h3,
body.advantix-theme .site-notice-top strong {
    font-family: Georgia, "Times New Roman", serif;
}

body.advantix-theme .page-header h1 a,
body.advantix-theme .content-header,
body.advantix-theme .subevent-head {
    color: var(--advantix-ivory);
    letter-spacing: 0.01em;
}

body.advantix-theme .page-header h1 small {
    color: rgba(247, 245, 240, 0.72);
}

body.advantix-theme .organizer-logo,
body.advantix-theme .event-logo {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 100%;
}

body.advantix-theme .advantix-primary-logo {
    border-radius: 16px;
    box-shadow: 0 28px 50px rgba(7, 11, 20, 0.30);
    width: min(100%, 480px);
}

body.advantix-theme .loginbox,
body.advantix-theme .loginbox a,
body.advantix-theme .loginbox button {
    color: rgba(247, 245, 240, 0.78);
}

body.advantix-theme .site-notice-top,
body.advantix-theme .site-notice-bottom {
    background: rgba(20, 24, 40, 0.96);
    border: 1px solid rgba(245, 200, 66, 0.14);
    border-radius: 18px;
    color: var(--advantix-ivory);
    margin-bottom: 24px;
    padding: 14px 18px;
}

body.advantix-theme .site-notice-top a,
body.advantix-theme .site-notice-bottom a {
    color: var(--advantix-gold-bright);
}

body.advantix-theme .panel,
body.advantix-theme aside.front-page,
body.advantix-theme .cart {
    background: rgba(255, 252, 246, 0.96);
    border: 1px solid var(--advantix-border);
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(10, 14, 26, 0.08);
    overflow: hidden;
}

body.advantix-theme .panel-heading,
body.advantix-theme .panel-subhead {
    background: linear-gradient(135deg, #101524, #1A1F34);
    border-color: transparent;
    color: var(--advantix-ivory);
}

body.advantix-theme .panel-subhead {
    border-top: 1px solid rgba(245, 200, 66, 0.10);
}

body.advantix-theme .panel-title,
body.advantix-theme .panel-title strong,
body.advantix-theme .panel-heading a {
    color: var(--advantix-ivory);
}

body.advantix-theme .event-list article {
    border-bottom: 1px solid rgba(201, 151, 42, 0.12);
    margin: 0;
    padding: 18px 8px;
}

body.advantix-theme .event-list article:last-child {
    border-bottom: 0;
}

body.advantix-theme .event-list h3 a,
body.advantix-theme .event-list h3 a:focus,
body.advantix-theme .event-list h3 a:hover {
    color: var(--advantix-midnight);
}

body.advantix-theme a {
    color: #8B5E10;
}

body.advantix-theme a:hover,
body.advantix-theme a:focus {
    color: #6F4700;
}

body.advantix-theme .btn {
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: 0.01em;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

body.advantix-theme .btn:hover,
body.advantix-theme .btn:focus {
    transform: translateY(-1px);
}

body.advantix-theme .btn-primary,
body.advantix-theme .btn-primary:hover,
body.advantix-theme .btn-primary:focus,
body.advantix-theme .btn-primary:active {
    background: linear-gradient(135deg, var(--advantix-gold-bright), var(--advantix-gold));
    border-color: transparent;
    box-shadow: 0 12px 24px rgba(201, 151, 42, 0.24);
    color: var(--advantix-midnight);
}

body.advantix-theme .btn-default,
body.advantix-theme .btn-default:hover,
body.advantix-theme .btn-default:focus {
    background: rgba(255, 255, 255, 0.75);
    border-color: rgba(10, 14, 26, 0.12);
    color: var(--advantix-midnight);
}

body.advantix-theme .advantix-hero {
    background:
        radial-gradient(circle at top right, rgba(245, 200, 66, 0.22), transparent 34%),
        linear-gradient(135deg, rgba(10, 14, 26, 0.98), rgba(20, 24, 40, 0.94));
    border: 1px solid rgba(245, 200, 66, 0.16);
    border-radius: 28px;
    box-shadow: 0 26px 55px rgba(10, 14, 26, 0.22);
    color: var(--advantix-ivory);
    margin-bottom: 22px;
    overflow: hidden;
    padding: clamp(28px, 4vw, 42px);
    position: relative;
}

body.advantix-theme .advantix-hero::before {
    background: linear-gradient(90deg, rgba(245, 200, 66, 0.24), transparent);
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

body.advantix-theme .advantix-hero h1,
body.advantix-theme .advantix-hero h2,
body.advantix-theme .advantix-hero h3 {
    color: var(--advantix-ivory);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.1rem, 4vw, 3.3rem);
    line-height: 1.05;
    margin: 0 0 16px;
    max-width: 12ch;
}

body.advantix-theme .advantix-hero.advantix-hero-compact h2 {
    font-size: clamp(1.9rem, 3.4vw, 2.7rem);
}

body.advantix-theme .advantix-kicker {
    color: var(--advantix-gold-bright);
    font-size: 0.83rem;
    font-weight: 700;
    letter-spacing: 0.28em;
    margin-bottom: 12px;
    text-transform: uppercase;
}

body.advantix-theme .advantix-lede {
    color: rgba(247, 245, 240, 0.84);
    font-size: 1.05rem;
    line-height: 1.75;
    margin-bottom: 22px;
    max-width: 60ch;
}

body.advantix-theme .advantix-highlights,
body.advantix-theme .advantix-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

body.advantix-theme .advantix-highlights {
    margin-bottom: 22px;
}

body.advantix-theme .advantix-highlights p {
    background: rgba(247, 245, 240, 0.10);
    border: 1px solid rgba(245, 200, 66, 0.18);
    border-radius: 999px;
    color: rgba(247, 245, 240, 0.92);
    margin: 0;
    padding: 10px 14px;
}

body.advantix-theme .advantix-section-intro {
    margin: 0 0 20px;
}

body.advantix-theme .advantix-section-eyebrow {
    color: var(--advantix-gold);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

body.advantix-theme .advantix-section-copy {
    color: rgba(30, 36, 50, 0.78);
    font-size: 1rem;
    line-height: 1.75;
    margin-bottom: 0;
    max-width: 65ch;
}

body.advantix-theme .alert {
    border: 1px solid rgba(10, 14, 26, 0.08);
    border-radius: 18px;
}

body.advantix-theme footer {
    background: linear-gradient(135deg, rgba(10, 14, 26, 0.98), rgba(20, 24, 40, 0.96));
    border: 1px solid rgba(245, 200, 66, 0.14);
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(10, 14, 26, 0.12);
    margin: 28px 0 36px;
    padding: 18px 22px;
}

body.advantix-theme footer ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin: 0;
    padding-left: 0;
}

body.advantix-theme footer li,
body.advantix-theme footer a,
body.advantix-theme footer button {
    color: rgba(247, 245, 240, 0.76);
}

body.advantix-theme footer a:hover,
body.advantix-theme footer a:focus,
body.advantix-theme footer button:hover,
body.advantix-theme footer button:focus {
    color: var(--advantix-gold-bright);
}

body.advantix-theme .advantix-demo-badge {
    backdrop-filter: blur(12px);
    background: rgba(10, 14, 26, 0.88);
    border: 1px solid rgba(245, 200, 66, 0.22);
    border-radius: 18px;
    bottom: 18px;
    box-shadow: 0 18px 36px rgba(10, 14, 26, 0.24);
    color: var(--advantix-ivory);
    display: grid;
    gap: 2px;
    padding: 12px 14px;
    pointer-events: none;
    position: fixed;
    right: 18px;
    text-align: right;
    z-index: 1050;
}

body.advantix-theme .advantix-demo-badge__eyebrow {
    color: var(--advantix-gold-bright);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

body.advantix-theme .advantix-demo-badge__title {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
    line-height: 1.1;
}

body.advantix-theme .advantix-demo-badge__copy {
    color: rgba(247, 245, 240, 0.74);
    font-size: 0.72rem;
    line-height: 1.3;
}

@media (max-width: 767px) {
    body.advantix-theme {
        background:
            radial-gradient(circle at top right, rgba(245, 200, 66, 0.16), transparent 30%),
            linear-gradient(180deg, #070B14 0, #141828 14rem, #F7F5F0 14rem, #F7F5F0 100%);
    }

    body.advantix-theme .page-header,
    body.advantix-theme .advantix-hero,
    body.advantix-theme .panel,
    body.advantix-theme aside.front-page,
    body.advantix-theme footer {
        border-radius: 20px;
    }

    body.advantix-theme .page-header {
        padding: 22px 18px;
    }

    body.advantix-theme .advantix-stage-header-links {
        align-items: flex-start;
        display: block;
    }

    body.advantix-theme .advantix-stage-header-links .pull-right.flip {
        margin-left: 0;
        text-align: left;
    }

    body.advantix-theme .advantix-stage-header-links .header-part {
        display: block;
        margin-bottom: 10px;
    }

    body.advantix-theme .advantix-stage-header {
        padding: 24px 16px 18px;
    }

    body.advantix-theme .advantix-primary-logo {
        border-radius: 14px;
        width: min(100%, 360px);
    }

    body.advantix-theme footer ul {
        display: block;
    }

    body.advantix-theme footer li {
        margin-bottom: 8px;
    }

    body.advantix-theme .advantix-demo-badge {
        bottom: 12px;
        padding: 10px 12px;
        right: 12px;
    }
}
