.ct425-page {
    --ct425-paper: var(--a-surface, #fffdf8);
    --ct425-ink: var(--a-text, #292721);
    --ct425-muted: var(--a-muted, #6c6156);
    --ct425-line: var(--a-border, #e2d8c8);
    --ct425-accent: #7a4c2d;
    width: min(1080px, 100% - 36px);
    margin: 36px auto 64px;
    color: var(--ct425-ink);
}
.appearance-dark .ct425-page,
.ct425-admin {
    --ct425-paper: var(--a-surface, #171916);
    --ct425-ink: var(--a-text, #f5efe3);
    --ct425-muted: var(--a-muted, #c7bbaa);
    --ct425-line: var(--a-border, #4c443b);
    --ct425-accent: #bd8d66;
}
.ct425-payer-body {
    margin: 0;
    background: #f6f0e6;
    font: 16px/1.6 system-ui, sans-serif;
}
.ct425-payer { max-width: 650px; }
.ct425-hero, .ct425-panel {
    box-sizing: border-box;
    padding: clamp(20px, 4vw, 44px);
    border: 1px solid var(--ct425-line);
    border-radius: 22px;
    background: var(--ct425-paper);
}
.ct425-hero {
    margin-bottom: 20px;
    background: radial-gradient(ellipse at 90% 4%, #c7936030, transparent 63%), var(--ct425-paper);
}
.ct425-kicker {
    display: inline-block;
    font-size: .73rem;
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--ct425-accent);
}
.ct425-hero h1 {
    margin: .28em 0;
    font-size: clamp(2rem, 5vw, 3.7rem);
    letter-spacing: -.045em;
    line-height: 1.08;
}
.ct425-hero p, .ct425-panel p { max-width: 65ch; line-height: 1.65; }
.ct425-panel h2 { margin: .35em 0; font-size: clamp(1.25rem, 3vw, 1.75rem); }
.ct425-campaign-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.ct425-link-list { display: grid; gap: 14px; }
.ct425-link-head, .ct425-total, .ct425-items li { display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.ct425-total, .ct425-panel dl { margin: 18px 0; padding: 14px 0; border-block: 1px solid var(--ct425-line); }
.ct425-panel dl div { margin: .4em 0; }
.ct425-panel dt, .ct425-note { color: var(--ct425-muted); font-size: .9rem; }
.ct425-panel dd { margin: 0; overflow-wrap: anywhere; }
.ct425-items { list-style: none; padding: 0; margin: 12px 0; }
.ct425-items li { padding: 10px 0; border-bottom: 1px solid var(--ct425-line); }
.ct425-items li span { white-space: nowrap; }
.ct425-button, .ct425-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 8px 16px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: #75482c;
    color: #fff;
    font: inherit;
    font-weight: 650;
    text-decoration: none;
    cursor: pointer;
}
.ct425-secondary { background: var(--ct425-paper); color: var(--ct425-ink); border-color: var(--ct425-line); }
.ct425-actions, .ct425-copy { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.ct425-copy input { flex: 1 1 220px; min-width: 0; }
.ct425-copy [role=status] { flex: 0 0 100%; font-size: .88rem; }
.ct425-form { display: grid; gap: 12px; align-content: start; }
.ct425-form label { display: grid; gap: 5px; }
.ct425-form .ct425-check { display: flex; align-items: flex-start; gap: 9px; }
.ct425-form :is(input:not([type=checkbox]), textarea), .ct425-copy input {
    box-sizing: border-box;
    max-width: 100%;
    padding: 11px;
    border-radius: 8px;
    border: 1px solid var(--ct425-line);
    background: var(--ct425-paper);
    color: var(--ct425-ink);
    font: inherit;
}
.ct425-error { padding: 12px 16px; border: 1px solid #c45d49; border-radius: 10px; }
.ct425-cart-share { margin: 12px 0 0; text-align: center; }
@media (max-width: 640px) {
    .ct425-page { margin-top: 20px; }
    .ct425-campaign-grid { grid-template-columns: 1fr; }
    .ct425-link-head { flex-wrap: wrap; }
}
@media (prefers-color-scheme: dark) {
    .ct425-payer-body { background: #1b1916; }
    .ct425-payer {
        --ct425-paper: #24211c;
        --ct425-ink: #f6eee0;
        --ct425-muted: #c8b9a7;
        --ct425-line: #50463c;
        --ct425-accent: #d0a783;
    }
}
