:root { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #102c4a; background: #edf5fc; line-height: 1.6; }
* { box-sizing: border-box; }
body { margin: 0; padding: max(1rem, env(safe-area-inset-top)) 1rem 2rem; }
main { width: 100%; max-width: 38rem; margin: 3vh auto; padding: clamp(1.25rem, 5vw, 2.5rem); background: white; border: 1px solid #d6e4f1; border-radius: 1.5rem; box-shadow: 0 1rem 3rem #05284f12; }
.brand { display: flex; align-items: center; gap: .75rem; font-weight: 750; text-decoration: none; }
.brand img { object-fit: contain; flex-shrink: 0; }
h1 { font-size: clamp(1.8rem, 6vw, 2.5rem); line-height: 1.15; }
a { color: #075da6; }
.badge { display: inline-block; background: #fff1c9; color: #624600; padding: .35rem .8rem; border-radius: 2rem; font-weight: 650; }
.summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem; padding: 1rem; background: #edf5fc; border-radius: .75rem; }
.summary strong { white-space: nowrap; }
#payment-status { overflow-wrap: anywhere; }
button { font: inherit; padding: .65rem 1rem; margin-bottom: 1rem; background: #075da6; color: white; border: 0; border-radius: .5rem; cursor: pointer; }
:focus-visible { outline: 3px solid #075da6; outline-offset: 4px; }
