.brief-progress{display:grid;gap:10px;margin:4px 0 18px}
.brief-progress-bar{height:4px;border-radius:4px;background:#2c2c31;overflow:hidden}
.brief-progress-bar i{display:block;height:100%;width:var(--progress,33%);background:#e14440;border-radius:4px;transition:width .5s cubic-bezier(.16,1,.3,1)}
.brief-progress p{margin:0;font-size:13px;color:#a3a3aa}
.brief-progress b{color:#fff}
.brief-step{display:grid;gap:14px;animation:brief-in .45s cubic-bezier(.16,1,.3,1) both}
.brief-step[hidden]{display:none!important}
.brief-step-hint{margin:0;color:#a3a3aa;font-size:14px}
.brief-step-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.brief-step-fields>label:has(textarea),.brief-step-fields>fieldset{grid-column:1/-1}
.brief-step-nav{display:flex;justify-content:space-between;gap:10px;margin-top:6px}
.brief-step-nav[hidden]{display:none}
.brief-step-nav button{min-height:52px;padding:0 24px;border-radius:999px;font-size:14px;font-weight:700;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s}
.brief-step-nav button[hidden]{display:none}
.brief-back{border:1px solid #3a3a3f;background:transparent;color:#fff}
.brief-next{margin-left:auto;border:0;background:#fff;color:#111}
.brief-next:hover{background:#ffe1de}.brief-step-nav button:active{transform:scale(.98)}
@keyframes brief-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:640px){.brief-step-fields{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.brief-step{animation:none}.brief-progress-bar i{transition:none}}
