.main-content-wrapper:has(.rebirth-page--setup) {
    display: flex;
    flex-direction: column;
}

.main-content-wrapper:has(.rebirth-page--setup) .main-layout,
.main-content-wrapper:has(.rebirth-page--setup) .main-content,
#rebirth.active:has(.rebirth-page--setup) {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.rebirth-page {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    padding: 4px 0 12px;
    color: var(--ui-text, #e9ecef);
}

.rebirth-page--setup {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.rebirth-setup-toolbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 14px;
}

.rebirth-setup-begin { min-height: 46px; min-width: 240px; }

.rebirth-setup-steps {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}

.rebirth-step {
    min-width: 0;
    min-height: 72px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 6px;
    border: 1px solid rgba(78, 205, 196, .35);
    border-radius: 9px;
    background: rgba(12, 20, 29, .8);
    color: var(--ui-text, #e9ecef);
    text-align: left;
    cursor: pointer;
    font: inherit;
}

.rebirth-step:hover:not(:disabled) { border-color: var(--ui-teal); background: rgba(78, 205, 196, .10); }
.rebirth-step.is-active { border: 2px solid var(--ui-gold); box-shadow: 0 0 12px rgba(255, 215, 0, .18); }
.rebirth-step:disabled { cursor: not-allowed; opacity: .45; }
.rebirth-step strong { font-size: .92rem; }
.rebirth-step-status { color: var(--ui-teal); font-size: .72rem; }
.rebirth-step.is-active .rebirth-step-status { color: var(--ui-gold); }
.rebirth-step:disabled .rebirth-step-status { color: var(--ui-text-dim); }

.rebirth-setup-workspace { display: flex; flex: 1; min-width: 0; margin-top: 16px; }

.rebirth-setup-section {
    min-width: 0;
    border: 1px solid rgba(78, 205, 196, .2);
    border-radius: 10px;
    background: rgba(12, 20, 29, .7);
}

.rebirth-step:focus-visible,
.rebirth-setup-section button:focus-visible,
.rebirth-setup-begin:focus-visible { outline: 2px solid var(--ui-gold); outline-offset: 3px; }
.rebirth-selected-chip { color: var(--ui-gold); border-color: var(--ui-gold); }
.rebirth-affinity-selected { background: rgba(255, 215, 0, .13); box-shadow: 0 0 0 2px var(--ui-gold); }

.rebirth-setup-section { flex: 1; min-height: 340px; padding: 16px; }
.rebirth-origin-grid { max-width: 1280px; margin: 0 auto; }
.rebirth-setup-section .sect-card { max-width: 100%; }
.rebirth-setup-section[hidden] { display: none; }
.rebirth-setup-section [hidden] { display: none; }
.rebirth-setup-section h3 { margin: 0 0 14px; color: var(--ui-gold); font-size: 1.15rem; }
.rebirth-embedded-panel { display: block; width: 100%; }
@media (max-width: 640px) {
    .rebirth-page { padding-top: 0; }
    .rebirth-setup-begin { width: 100%; }
    .rebirth-setup-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rebirth-step { min-height: 60px; }
    .rebirth-setup-section { padding: 10px; }
}

@media (min-width: 641px) and (max-width: 1100px) {
    .rebirth-setup-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
