
.artbuild-plugin.abp-pw,
.artbuild-plugin.abp-pw *{box-sizing:border-box}

.artbuild-plugin.abp-pw{
    max-width:960px;
    margin:0 auto;
    padding:24px;
    color:#fff;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    background:radial-gradient(circle at top left,rgba(31,111,255,.22),transparent 34%),linear-gradient(135deg,#071b2b,#061827);
    border:1px solid rgba(255,255,255,.09);
    border-radius:28px;
    overflow:hidden;
}

.abp-pw-hero,
.abp-pw-step,
.abp-pw-empty{
    padding:24px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),#092033;
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 24px 70px rgba(0,0,0,.18);
}

.abp-pw-hero{margin-bottom:18px}

.abp-pw-kicker,
.abp-pw-step-label{
    display:inline-flex;
    padding:8px 13px;
    border-radius:999px;
    background:rgba(31,111,255,.12);
    color:#7db6ff;
    font-size:12px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.abp-pw-hero h1,
.abp-pw-step h2,
.abp-pw-empty h2{
    margin:14px 0 10px;
    color:#fff;
    font-size:clamp(32px,5vw,54px);
    line-height:.96;
    font-weight:950;
    letter-spacing:-.045em;
}

.abp-pw-step h2{font-size:clamp(28px,4vw,42px)}

.abp-pw-hero p,
.abp-pw-step p,
.abp-pw-empty p{
    max-width:720px;
    margin:0 0 18px;
    color:rgba(255,255,255,.66);
    font-size:16px;
    line-height:1.55;
}

.abp-pw-progress{
    height:10px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    overflow:hidden;
    margin-bottom:18px;
}

.abp-pw-progress-bar{
    display:block;
    height:100%;
    width:11.11%;
    background:linear-gradient(135deg,#1f6fff,#0f58d6);
    transition:width .2s ease;
}

.abp-pw-form{display:grid;gap:18px}

.abp-pw-step{display:none}
.abp-pw-step.abp-pw-active{display:block}

.abp-pw-field{display:grid;gap:8px}

.abp-pw-field label,
.abp-pw-field span{
    color:#fff;
    font-size:13px;
    font-weight:900;
}

.abp-pw-field input,
.abp-pw-field select,
.abp-pw-field textarea{
    width:100%;
    min-height:56px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(2,12,22,.72);
    color:#fff;
    padding:12px 15px;
    outline:none;
    font-size:15px;
}

.abp-pw-field textarea{min-height:150px}

.abp-pw-field input:focus,
.abp-pw-field select:focus,
.abp-pw-field textarea:focus{
    border-color:rgba(77,163,255,.72);
    box-shadow:0 0 0 4px rgba(31,111,255,.18);
}

.abp-pw-grid-2{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.abp-pw-upload-note{
    padding:18px;
    border-radius:18px;
    background:rgba(242,183,5,.12);
    color:#f2d36b;
    border:1px solid rgba(242,183,5,.18);
    font-weight:900;
}

.abp-pw-preview{
    padding:22px;
    border-radius:22px;
    background:rgba(2,12,22,.42);
    border:1px solid rgba(255,255,255,.09);
}

.abp-pw-preview-type{
    display:inline-flex;
    padding:7px 12px;
    border-radius:999px;
    background:rgba(31,111,255,.12);
    color:#7db6ff;
    font-size:12px;
    font-weight:900;
}

.abp-pw-preview h3{
    margin:14px 0 8px;
    color:#fff;
    font-size:26px;
    line-height:1.12;
    font-weight:950;
}

.abp-pw-preview p{
    color:rgba(255,255,255,.68);
}

.abp-pw-preview strong{
    color:#fff;
    font-size:22px;
    font-weight:950;
}

.abp-pw-check{
    display:flex;
    gap:10px;
    align-items:flex-start;
    margin-top:18px;
    color:rgba(255,255,255,.74);
    font-weight:800;
}

.abp-pw-check input{
    width:20px;
    height:20px;
    accent-color:#1f6fff;
}

.abp-pw-actions{
    display:flex;
    justify-content:space-between;
    gap:12px;
}

.abp-pw-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:13px 20px;
    border:0;
    border-radius:16px;
    background:linear-gradient(135deg,#1f6fff,#0f58d6);
    color:#fff!important;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    text-decoration:none!important;
}

.abp-pw-button-secondary{
    background:rgba(255,255,255,.075);
    border:1px solid rgba(255,255,255,.12);
}

.abp-pw-submit{display:none}

@media(max-width:700px){
    .artbuild-plugin.abp-pw{
        padding:18px;
        border-radius:22px;
    }

    .abp-pw-grid-2{
        grid-template-columns:1fr;
    }

    .abp-pw-actions{
        flex-direction:column;
    }

    .abp-pw-button{
        width:100%;
    }
}
