.w2p-personalization { display: grid; gap: 1.5rem; margin: 0 auto; max-width: 90rem; padding: 0 1.5rem 3rem; }
.w2p-personalization__header { align-items: center; display: flex; justify-content: space-between; }
.w2p-personalization__eyebrow { color: var(--w2p-color-brand); font-weight: 700; margin: 0; text-transform: uppercase; }
.w2p-personalization__header h1 { margin: .25rem 0 0; }
.w2p-personalization__status { background: #eef4ff; border-radius: 999px; color: var(--w2p-color-brand); font-weight: 700; padding: .5rem .85rem; }
.w2p-personalization__editor { background: #101828; border-radius: var(--w2p-radius-md); min-height: 68vh; overflow: hidden; }
.w2p-personalization__editor iframe { border: 0; display: block; height: 68vh; width: 100%; }
.w2p-personalization__actions, .w2p-proof form, .w2p-ready form { align-items: flex-start; display: flex; flex-direction: column; gap: 1rem; }
.w2p-personalization button { background: var(--w2p-color-brand); border: 0; border-radius: .5rem; color: white; cursor: pointer; font: inherit; font-weight: 700; padding: .75rem 1rem; }
.w2p-personalization button.w2p-button-secondary { background: white; border: 1px solid var(--w2p-color-border); color: var(--w2p-color-text); }
.w2p-alert, .w2p-preflight, .w2p-processing, .w2p-proof, .w2p-ready { background: white; border: 1px solid var(--w2p-color-border); border-radius: var(--w2p-radius-md); padding: 1.5rem; }
.w2p-alert--error, .w2p-preflight.is-blocking { background: var(--w2p-color-danger-subtle); border-color: #fda29b; color: var(--w2p-color-danger); }
.w2p-alert--success, .w2p-ready { background: var(--w2p-color-success-subtle); border-color: #6ce9a6; }
.w2p-proof object { height: 65vh; margin: 1rem 0; width: 100%; }
.w2p-processing { text-align: center; }
.w2p-processing__spinner { animation: w2p-spin .8s linear infinite; border: .25rem solid #d1e0ff; border-top-color: var(--w2p-color-brand); border-radius: 50%; display: inline-block; height: 2.5rem; width: 2.5rem; }
@keyframes w2p-spin { to { transform: rotate(360deg); } }
@media (max-width: 48rem) { .w2p-personalization__header { align-items: flex-start; flex-direction: column; gap: 1rem; } .w2p-personalization__editor, .w2p-personalization__editor iframe { min-height: 55vh; height: 55vh; } }
