.domain-wizard {
    margin-block-end: 24px;
    padding: clamp(16px, 3vw, 28px);
    background: #fff;
    border: 1px solid #dce4ee;
    border-radius: 18px;
    color: #23354d;
    box-shadow: 0 6px 24px rgb(28 52 81 / 5%);
}
.domain-wizard-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.domain-wizard-heading h2 { margin: 0; font-size: 22px; font-weight: 700; }
.domain-wizard-position { padding: 7px 14px; border-radius: 24px; background: #eaf1ff; color: #1d4eb1; font-weight: 700; }
.domain-wizard-current { margin: 16px 0 20px; line-height: 1.9; font-weight: 600; }
.domain-wizard-progress summary { cursor: pointer; color: #1d4eb1; font-size: 13px; }
.domain-wizard-progress[open] summary { margin-block-end: 14px; }
.domain-wizard .domain-wizard-steps {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.domain-wizard-step { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 10px 5px; text-align: center; border: 1px solid #dce4ee; border-radius: 12px; background: #f7f9fc; min-width: 0; }
.domain-wizard-number { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 50%; background: #e5eaf2; color: #52627a; font-weight: 700; }
.domain-wizard-step-text { display: flex; flex-direction: column; gap: 8px; }
.domain-wizard-step-text strong { font-size: 12px; line-height: 1.8; }
.domain-wizard-step-text small { font-size: 12px; color: #64748b; }
.domain-wizard-step.is-current { background: #eaf1ff; border: 2px solid #2862d7; box-shadow: 0 0 0 3px rgb(40 98 215 / 9%); }
.domain-wizard-step.is-current .domain-wizard-number { background: #2862d7; color: #fff; }
.domain-wizard-step.is-current small { color: #1d4eb1; font-weight: 700; }
.domain-wizard-step.is-complete { background: #f0faf5; border-color: #bedfce; }
.domain-wizard-step.is-complete .domain-wizard-number { background: #daf0e3; color: #187344; }
.domain-wizard-step.is-complete small { color: #187344; }
.domain-wizard-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-block-start: 22px; padding-block-start: 18px; border-top: 1px solid #e4eaf2; }
.domain-wizard-guide { display: flex; align-items: center; gap: 24px; margin-block-start: 24px; padding: 20px; border-radius: 14px; background: #f4f8ff; }
.domain-wizard-guide img { flex: 0 0 auto; max-width: 35%; object-fit: contain; }
.domain-wizard-guide strong { font-size: 18px; }
.domain-wizard-guide p { margin: 10px 0 0; line-height: 2; }
.domain-contract-upload { padding: 24px; background: #fff; border: 1px solid #dce4ee; border-radius: 18px; }
.domain-contract-upload p { line-height: 2; }
.domain-contract-upload input[type="file"] { display: block; width: 100%; max-width: 100%; padding: 18px; border: 2px dashed #a6bfec; border-radius: 12px; background: #f6f9ff; }
.domain-contract-upload #File_SignedDomainContract_Icon { display: none; }
@media (max-width: 1100px) {
    .domain-wizard .domain-wizard-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
    .domain-wizard-guide { flex-direction: column; text-align: center; gap: 12px; }
    .domain-wizard-guide img { max-width: 100%; }
    .domain-wizard .domain-wizard-steps { grid-template-columns: 1fr; }
    .domain-wizard-step { flex-direction: row; text-align: start; padding: 12px; }
    .domain-wizard-step-text { gap: 2px; }
    .domain-wizard-heading h2 { font-size: 19px; }
}
