:root {
    --phase1-shell-max: 1180px;
    --phase1-surface: rgba(255, 255, 255, 0.78);
    --phase1-surface-strong: rgba(255, 255, 255, 0.92);
    --phase1-surface-dark: rgba(10, 15, 25, 0.76);
    --phase1-border: rgba(15, 23, 42, 0.12);
    --phase1-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
    --phase1-gap: clamp(1rem, 1.5vw, 1.5rem);
}

html,
body {
    overflow-x: clip;
}

body {
    text-wrap: pretty;
}

.site-main,
.site-main section,
.wrapper,
.candidate-dashboard-content,
.candidate-dashboard-content > *,
.candidate-surface,
.card,
.panel {
    min-width: 0;
}

.wrapper {
    width: min(100% - 2rem, var(--phase1-shell-max));
}

img,
video,
iframe {
    max-width: 100%;
}

a,
code,
.chip,
.status-pill,
.candidate-payment-row p,
.mentor-link-value,
.course-media-diagnostic-card__message,
.course-media-diagnostic-card code,
.candidate-fact-list dd,
.definition-list strong,
.definition-list a {
    overflow-wrap: anywhere;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 2.9rem;
    text-align: center;
    line-height: 1.2;
    white-space: normal;
}

.hero-actions,
.form-actions,
.candidate-v3-inline-actions,
.candidate-surface-actions,
.candidate-payment-row-actions,
.candidate-course-card-actions,
.mentor-v10-filter-actions,
.home-phase1-final-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.two-column,
.section-grid,
.candidate-dashboard-grid--two,
.verification-apply-layout,
.verification-apply-layout--stable,
.mentor-public-context-grid,
.home-phase1-hero__grid,
.home-phase1-section__split,
.home-phase1-founder,
.home-phase1-certificate {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(1rem, 2vw, 2rem);
}

.candidate-dashboard-frame {
    display: grid;
    grid-template-columns: minmax(240px, 290px) minmax(0, 1fr);
    gap: clamp(1rem, 2vw, 1.75rem);
    align-items: start;
}

.candidate-dashboard-content {
    display: grid;
    gap: clamp(1rem, 1.8vw, 1.5rem);
}

.candidate-page-intro,
.candidate-v3-home__intro,
.verification-journey,
.candidate-v3-action-grid,
.candidate-v3-support-grid,
.candidate-course-summary-grid,
.candidate-course-grid,
.mentor-v10-grid,
.home-phase1-proof-grid,
.home-phase1-pillars,
.home-phase1-card-grid,
.home-phase1-founder__points,
.home-phase1-faq,
.course-media-diagnostic-card__grid {
    display: grid;
    gap: var(--phase1-gap);
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
}

.candidate-page-intro,
.candidate-v3-home__intro,
.candidate-surface,
.candidate-course-continue-card,
.candidate-mini-stat,
.candidate-payment-row,
.mentor-v10-card,
.home-phase1-course-card,
.home-phase1-mentor-card,
.home-phase1-story-card,
.home-phase1-pillar,
.home-phase1-founder__copy,
.home-phase1-certificate__card,
.course-media-health-panel,
.course-content-module-card,
.course-media-diagnostic-card {
    border-radius: 24px;
    border: 1px solid var(--phase1-border);
    box-shadow: var(--phase1-shadow);
}

.candidate-page-intro,
.candidate-surface,
.candidate-course-continue-card,
.candidate-mini-stat,
.candidate-payment-row,
.mentor-v10-card,
.home-phase1-course-card,
.home-phase1-mentor-card,
.home-phase1-story-card,
.home-phase1-pillar,
.home-phase1-founder__copy,
.home-phase1-certificate__card,
.course-media-health-panel,
.course-content-module-card,
.course-media-diagnostic-card {
    padding: clamp(1rem, 2vw, 1.5rem);
    background: var(--phase1-surface-strong);
    backdrop-filter: blur(14px);
}

[data-theme="dark"] .candidate-page-intro,
[data-theme="dark"] .candidate-surface,
[data-theme="dark"] .candidate-course-continue-card,
[data-theme="dark"] .candidate-mini-stat,
[data-theme="dark"] .candidate-payment-row,
[data-theme="dark"] .mentor-v10-card,
[data-theme="dark"] .home-phase1-course-card,
[data-theme="dark"] .home-phase1-mentor-card,
[data-theme="dark"] .home-phase1-story-card,
[data-theme="dark"] .home-phase1-pillar,
[data-theme="dark"] .home-phase1-founder__copy,
[data-theme="dark"] .home-phase1-certificate__card,
[data-theme="dark"] .course-media-health-panel,
[data-theme="dark"] .course-content-module-card,
[data-theme="dark"] .course-media-diagnostic-card {
    background: var(--phase1-surface-dark);
    border-color: rgba(148, 163, 184, 0.2);
}

.candidate-v3-action-card,
.candidate-v3-support-grid > article,
.verification-journey-step,
.candidate-check,
.candidate-payment-row,
.candidate-course-card,
.mentor-v10-card,
.home-phase1-course-card,
.home-phase1-mentor-card,
.home-phase1-pillar,
.home-phase1-story-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.9rem;
    min-height: 100%;
}

.candidate-v3-action-card .button,
.candidate-v3-support-grid .button,
.candidate-course-card .button,
.candidate-payment-row .button,
.mentor-v10-card .button,
.home-phase1-course-card .button,
.home-phase1-mentor-card .button {
    width: 100%;
}

.candidate-v3-action-card,
.candidate-v3-support-grid > article,
.candidate-check,
.verification-journey-step,
.candidate-course-card,
.candidate-payment-row,
.mentor-v10-card,
.home-phase1-pillar,
.home-phase1-story-card {
    padding: 1rem 1.1rem;
    border-radius: 20px;
    border: 1px solid var(--phase1-border);
    background: rgba(255, 255, 255, 0.74);
}

[data-theme="dark"] .candidate-v3-action-card,
[data-theme="dark"] .candidate-v3-support-grid > article,
[data-theme="dark"] .candidate-check,
[data-theme="dark"] .verification-journey-step,
[data-theme="dark"] .candidate-course-card,
[data-theme="dark"] .candidate-payment-row,
[data-theme="dark"] .mentor-v10-card,
[data-theme="dark"] .home-phase1-pillar,
[data-theme="dark"] .home-phase1-story-card {
    background: rgba(15, 23, 42, 0.64);
    border-color: rgba(148, 163, 184, 0.18);
}

.candidate-check span,
.verification-journey-step span:first-child,
.home-phase1-pillar > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    inline-size: 2.35rem;
    block-size: 2.35rem;
    border-radius: 999px;
    font-weight: 700;
    background: rgba(15, 23, 42, 0.08);
}

.candidate-action-strip,
.verification-journey {
    align-items: stretch;
}

.candidate-form-section summary,
.course-content-lesson-editor summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.candidate-form-section summary span,
.course-content-lesson-editor summary span {
    min-width: 0;
}

.candidate-form-save-row,
.candidate-apply-actions,
.course-media-diagnostic-card__actions,
.admin-r2-upload-tool__actions,
.shortlist-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.candidate-apply-layout--stable {
    align-items: start;
}

.candidate-apply-form,
.verification-apply-aside,
.course-content-manager,
.course-content-lesson-list,
.candidate-payment-list {
    display: grid;
    gap: 1rem;
}

.candidate-payment-row {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.7fr) auto;
    align-items: center;
}

.candidate-payment-row-main {
    min-width: 0;
}

.candidate-payment-row-title {
    display: flex;
    align-items: start;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.candidate-payment-row-meta {
    display: grid;
    gap: 0.25rem;
    justify-items: start;
}

.candidate-payment-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    inline-size: 3rem;
    block-size: 3rem;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.08);
    font-weight: 700;
}

.candidate-course-continue-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(240px, 0.65fr);
    align-items: center;
    gap: 1rem;
}

.candidate-course-continue-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    inline-size: 4rem;
    block-size: 4rem;
    border-radius: 1.25rem;
    background: linear-gradient(135deg, #111827, #334155);
    color: #fff;
    font-weight: 700;
}

.candidate-course-continue-progress,
.candidate-readiness-card,
.candidate-v3-next-step,
.verification-state-card,
.home-phase1-stat-card {
    display: grid;
    gap: 0.75rem;
}

.candidate-course-grid,
.mentor-v10-grid {
    align-items: stretch;
}

.mentor-v10-card-head,
.home-phase1-mentor-card__head,
.mentor-public-intro {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.mentor-v10-avatar,
.home-phase1-mentor-card__avatar,
.mentor-public-avatar {
    flex: 0 0 auto;
    inline-size: 4.5rem;
    block-size: 4.5rem;
    border-radius: 1.25rem;
    overflow: hidden;
    background: rgba(15, 23, 42, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.mentor-v10-avatar img,
.home-phase1-mentor-card__avatar img,
.mentor-public-avatar img,
.home-phase1-hero__figure img,
.home-phase1-founder__media img,
.home-phase1-course-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mentor-v10-expertise,
.mentor-public-bio,
.home-phase1-mentor-card__expertise {
    flex: 1 1 auto;
}

.mentor-v9-availability-card,
.mentor-v10-filter-shell,
.mentor-v9-section--guide,
.mentor-v9-process-grid article {
    color: #111827;
}

.mentor-v9-availability-card *,
.mentor-v10-filter-shell *,
.mentor-v9-section--guide *,
.mentor-v9-process-grid article * {
    color: inherit;
}

.mentor-v9-availability-card .panel-label,
.mentor-v10-filter-shell .eyebrow,
.mentor-v9-section--guide .eyebrow,
.mentor-v9-process-grid article span,
.mentor-v10-filter-shell .muted,
.mentor-v9-section--guide .muted {
    color: rgba(17, 24, 39, 0.68);
}

.mentor-v9-section--guide h2,
.mentor-v9-section--guide h3,
.mentor-v9-section--guide p,
.mentor-v9-section-heading h2,
.mentor-v9-section-heading p,
.mentor-v9-process-grid article,
.mentor-v9-process-grid article h3,
.mentor-v9-process-grid article p,
.mentor-v9-process-grid article span,
.mentor-v10-filter-shell h2,
.mentor-v10-filter-shell > div > p,
.mentor-v10-filter-shell h2,
.mentor-v10-filter-shell p,
.mentor-v10-filter-shell label,
.mentor-v10-filter-shell span,
.mentor-v9-availability-card strong,
.mentor-v9-availability-card span,
.mentor-v9-availability-card p {
    color: #111827 !important;
    opacity: 1 !important;
}

.mentor-v9-section--guide .eyebrow,
.mentor-v10-filter-shell .eyebrow,
.mentor-v10-filter-shell .muted,
.mentor-v9-availability-card .panel-label {
    color: rgba(17, 24, 39, 0.68) !important;
}

.mentor-v10-filter-shell {
    padding: clamp(1rem, 2vw, 1.5rem);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: var(--phase1-shadow);
}

.home-phase1-hero {
    padding-block: clamp(2.5rem, 4vw, 5rem);
    background:
        radial-gradient(circle at top left, rgba(56, 189, 248, 0.18), transparent 32%),
        radial-gradient(circle at top right, rgba(249, 115, 22, 0.18), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(242, 247, 255, 0.84));
}

[data-theme="dark"] .home-phase1-hero {
    background:
        radial-gradient(circle at top left, rgba(56, 189, 248, 0.14), transparent 30%),
        radial-gradient(circle at top right, rgba(249, 115, 22, 0.12), transparent 25%),
        linear-gradient(180deg, rgba(2, 6, 23, 0.96), rgba(15, 23, 42, 0.88));
}

.home-phase1-hero__grid,
.home-phase1-founder,
.home-phase1-certificate,
.home-phase1-section__split,
.mentor-public-context-grid,
.two-column {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
}

.home-phase1-hero__copy,
.home-phase1-hero__visual,
.home-phase1-founder__copy {
    display: grid;
    gap: 1.25rem;
}

.home-phase1-hero__figure,
.home-phase1-founder__media {
    margin: 0;
    border-radius: 28px;
    overflow: hidden;
    min-height: 100%;
    box-shadow: var(--phase1-shadow);
}

.home-phase1-stat-card ul,
.home-phase1-story-list,
.home-phase1-faq,
.home-phase1-fact-list,
.mentor-v10-facts,
.candidate-fact-list,
.definition-list {
    margin: 0;
    padding: 0;
}

.home-phase1-stat-card li,
.home-phase1-fact-list div,
.mentor-v10-facts div,
.candidate-fact-list div,
.definition-list li {
    display: grid;
    gap: 0.3rem;
}

.home-phase1-section {
    padding-block: clamp(2rem, 4vw, 4rem);
}

.home-phase1-section__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}

.home-phase1-card-grid {
    align-items: stretch;
}

.home-phase1-course-card,
.home-phase1-mentor-card {
    overflow: hidden;
}

.home-phase1-course-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    border-radius: 18px;
    overflow: hidden;
    background: rgba(15, 23, 42, 0.08);
}

.home-phase1-course-card__media.is-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: 700;
}

.home-phase1-course-card__body,
.home-phase1-mentor-card {
    display: grid;
    gap: 1rem;
}

.home-phase1-fact-list {
    display: grid;
    gap: 0.65rem;
}

.home-phase1-faq article {
    padding: 1.1rem 1.2rem;
    border-radius: 20px;
    border: 1px solid var(--phase1-border);
    background: rgba(255, 255, 255, 0.74);
}

[data-theme="dark"] .home-phase1-faq article {
    background: rgba(15, 23, 42, 0.64);
    border-color: rgba(148, 163, 184, 0.18);
}

.home-phase1-final-cta {
    padding-top: 0;
    padding-bottom: clamp(2.5rem, 5vw, 4rem);
}

.home-phase1-final-cta__panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding: clamp(1.25rem, 2.4vw, 2rem);
    border-radius: 28px;
    background: linear-gradient(135deg, #0f172a, #1e293b);
    color: #fff;
    box-shadow: var(--phase1-shadow);
}

.home-phase1-final-cta__panel .eyebrow,
.home-phase1-final-cta__panel h2,
.home-phase1-final-cta__panel p {
    color: inherit;
}

.course-media-health-panel__stats,
.course-studio-nav,
.candidate-chip-row,
.chip-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.course-content-manager,
.course-content-lesson-list {
    gap: 1.25rem;
}

.course-content-lesson-editor {
    border: 1px solid var(--phase1-border);
    border-radius: 20px;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.6);
}

[data-theme="dark"] .course-content-lesson-editor {
    background: rgba(15, 23, 42, 0.54);
    border-color: rgba(148, 163, 184, 0.18);
}

.course-media-diagnostic-card__grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
}

.course-media-diagnostic-card code {
    display: block;
    padding: 0.6rem 0.7rem;
    border-radius: 14px;
    background: rgba(15, 23, 42, 0.06);
}

[data-theme="dark"] .course-media-diagnostic-card code {
    background: rgba(255, 255, 255, 0.06);
}

.admin-r2-upload-tool__actions input[type="file"] {
    min-width: 0;
}

.candidate-billing-state-card.has-attention {
    border-color: rgba(249, 115, 22, 0.35);
}

@media (max-width: 1024px) {
    .candidate-dashboard-frame,
    .home-phase1-hero__grid,
    .home-phase1-founder,
    .home-phase1-certificate,
    .home-phase1-section__split,
    .mentor-public-context-grid,
    .two-column,
    .candidate-course-continue-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .candidate-payment-row {
        grid-template-columns: minmax(0, 1fr);
        align-items: start;
    }
}

@media (max-width: 768px) {
    .wrapper {
        width: min(100% - 1.25rem, var(--phase1-shell-max));
    }

    .home-phase1-section__head,
    .candidate-page-intro,
    .candidate-v3-home__intro,
    .candidate-form-save-row,
    .candidate-apply-actions,
    .shortlist-header,
    .course-media-diagnostic-card__actions,
    .admin-r2-upload-tool__actions,
    .home-phase1-final-cta__panel {
        align-items: start;
    }

    .candidate-v3-action-grid,
    .candidate-v3-support-grid,
    .candidate-course-summary-grid,
    .candidate-course-grid,
    .mentor-v10-grid,
    .home-phase1-proof-grid,
    .home-phase1-pillars,
    .home-phase1-card-grid,
    .home-phase1-founder__points,
    .home-phase1-faq,
    .course-media-diagnostic-card__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .candidate-course-card .button,
    .candidate-payment-row .button,
    .candidate-v3-support-grid .button,
    .candidate-v3-action-card .button {
        width: 100%;
    }

    .course-content-lesson-editor summary {
        align-items: start;
    }
}

/* Phase 1 public-surface repairs */
.course-board-v2-media,
.home-phase1-course-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.course-board-v2-media img,
.home-phase1-course-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course-board-v2-media--fallback,
.home-phase1-course-card__media.is-fallback {
    background:
        radial-gradient(circle at top left, rgba(56, 189, 248, 0.18), transparent 34%),
        radial-gradient(circle at bottom right, rgba(249, 115, 22, 0.16), transparent 28%),
        linear-gradient(135deg, #0f172a, #1e293b 55%, #334155);
    color: #fff;
}

.gb-fallback-thumb {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 0.35rem;
    width: 100%;
    height: 100%;
    padding: 1.25rem;
    text-align: center;
}

.gb-fallback-thumb strong {
    font-size: clamp(1rem, 1.6vw, 1.3rem);
    letter-spacing: 0.04em;
}

.gb-fallback-thumb small {
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.home-phase1-hero__figure img {
    object-position: center 18%;
}

.home-phase1-founder__media img {
    object-position: center 16%;
}

.home-phase1-story-list {
    list-style: none;
    display: grid;
    gap: 0.8rem;
}

.home-phase1-story-list li {
    padding: 0.9rem 1rem;
    border-radius: 18px;
    background: rgba(15, 23, 42, 0.05);
    border: 1px solid rgba(15, 23, 42, 0.08);
}

[data-theme="dark"] .home-phase1-story-list li {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(148, 163, 184, 0.18);
}

.home-phase1-pillars--services {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

.home-phase1-pillars--services .home-phase1-pillar {
    min-height: 100%;
}

.home-phase1-final-cta__panel .button-ghost,
.home-phase1-section .section-dark .button-ghost,
.section-dark .home-phase1-section__head .button-ghost {
    border-color: rgba(255, 255, 255, 0.34);
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.home-phase1-final-cta__panel .button-ghost:hover,
.home-phase1-final-cta__panel .button-ghost:focus-visible,
.section-dark .home-phase1-section__head .button-ghost:hover,
.section-dark .home-phase1-section__head .button-ghost:focus-visible {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.65);
    color: #fff;
}

.home-phase1-final-cta__panel .button,
.home-phase1-hero__actions .button,
.home-phase1-section__head .button {
    min-width: 11.5rem;
}

.home-phase1-final-cta__panel .button:focus-visible,
.home-phase1-hero__actions .button:focus-visible,
.home-phase1-section__head .button:focus-visible,
.mentor-v10-card .button:focus-visible,
.course-board-v2-card .button:focus-visible,
.gb-popup-campaign__close:focus-visible {
    outline: 3px solid rgba(56, 189, 248, 0.42);
    outline-offset: 3px;
}

.mentor-v9-section--guide,
.mentor-v9-filter-section {
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.88));
}

.mentor-v9-process-grid article,
.mentor-v10-filter-shell,
.mentor-v9-availability-card {
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid rgba(15, 23, 42, 0.1);
    box-shadow: 0 20px 44px rgba(15, 23, 42, 0.08);
}

[data-theme="dark"] .mentor-v9-section--guide,
[data-theme="dark"] .mentor-v9-filter-section {
    background: linear-gradient(180deg, rgba(2, 6, 23, 0.96), rgba(15, 23, 42, 0.9));
}

[data-theme="dark"] .mentor-v9-process-grid article,
[data-theme="dark"] .mentor-v10-filter-shell,
[data-theme="dark"] .mentor-v9-availability-card {
    background: rgba(15, 23, 42, 0.84) !important;
    border-color: rgba(148, 163, 184, 0.18);
    box-shadow: 0 20px 44px rgba(2, 6, 23, 0.34);
}

[data-theme="dark"] .mentor-v9-availability-card,
[data-theme="dark"] .mentor-v10-filter-shell,
[data-theme="dark"] .mentor-v9-section--guide,
[data-theme="dark"] .mentor-v9-process-grid article {
    color: #e5eefb;
}

[data-theme="dark"] .mentor-v9-availability-card .panel-label,
[data-theme="dark"] .mentor-v10-filter-shell .eyebrow,
[data-theme="dark"] .mentor-v10-filter-shell .muted,
[data-theme="dark"] .mentor-v9-section--guide .eyebrow,
[data-theme="dark"] .mentor-v9-process-grid article span {
    color: rgba(226, 232, 240, 0.72) !important;
}

.gb-popup-campaign {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: grid;
    place-items: center;
    padding: 1rem;
}

html.has-popup-campaign,
body.has-popup-campaign {
    overflow: hidden;
}

.gb-popup-campaign__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, 0.72);
}

.gb-popup-campaign__dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 760px);
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    border-radius: 28px;
    overflow: hidden;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 28px 80px rgba(2, 6, 23, 0.28);
}

[data-theme="dark"] .gb-popup-campaign__dialog {
    background: #0f172a;
    color: #f8fafc;
    border: 1px solid rgba(148, 163, 184, 0.18);
}

.gb-popup-campaign__media {
    margin: 0;
    min-height: 100%;
}

.gb-popup-campaign__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gb-popup-campaign__content {
    display: grid;
    align-content: center;
    gap: 1rem;
    padding: clamp(1.25rem, 3vw, 2rem);
}

.gb-popup-campaign__content h2 {
    margin: 0;
    font-size: clamp(1.6rem, 2.7vw, 2.25rem);
}

.gb-popup-campaign__content p:last-of-type {
    margin: 0;
}

.gb-popup-campaign__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.gb-popup-campaign__close {
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    inline-size: 2.75rem;
    block-size: 2.75rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.08);
    color: inherit;
    font-size: 1.6rem;
    cursor: pointer;
}

[data-theme="dark"] .gb-popup-campaign__close {
    background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 900px) {
    .gb-popup-campaign__dialog {
        grid-template-columns: minmax(0, 1fr);
        max-height: min(92vh, 760px);
        overflow-y: auto;
    }

    .gb-popup-campaign__media {
        min-height: 220px;
    }
}

@media (max-width: 640px) {
    .gb-popup-campaign {
        padding: 0.75rem;
    }

    .gb-popup-campaign__actions .button {
        width: 100%;
    }
}
