/* ==========================================================================
   AUTH — Login, Register, Forgot Password pages
   ========================================================================== */

.oct-auth-main {
    min-height: calc(100vh - var(--oct-header-h));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
    background: var(--oct-bg);
}
.oct-auth-main--register { align-items: flex-start; padding-top: 80px; }

.oct-auth-container { width: 100%; max-width: 460px; }
.oct-auth-container--wide { max-width: 640px; }

.oct-auth-card {
    background: var(--oct-surface);
    border: 1px solid var(--oct-border);
    border-radius: var(--oct-radius-lg);
    padding: 36px;
    box-shadow: var(--oct-shadow);
}

.oct-auth-card__logo {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}
.oct-auth-card__logo img { border-radius: 12px; }

.oct-auth-card__title {
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 6px;
    text-align: center;
    color: var(--oct-text);
}
.oct-auth-card__subtitle {
    font-size: var(--oct-font-size-sm);
    color: var(--oct-text-muted);
    text-align: center;
    margin: 0 0 24px;
}
.oct-auth-card__footer-text {
    text-align: center;
    font-size: var(--oct-font-size-sm);
    color: var(--oct-text-muted);
    margin: 20px 0 0;
}

/* ── Password strength bar ──────────────────────────────────────────────── */
.oct-password-strength { margin-top: 6px; }
.oct-password-strength__bar {
    height: 4px;
    background: var(--oct-border);
    border-radius: var(--oct-radius-full);
    overflow: hidden;
    margin-bottom: 4px;
}
.oct-password-strength__bar span {
    display: block;
    height: 100%;
    border-radius: var(--oct-radius-full);
    width: 0;
    transition: width .3s, background .3s;
}
.oct-password-strength__label {
    font-size: 12px;
    font-weight: 600;
}

/* ── Back link ──────────────────────────────────────────────────────────── */
.oct-back-link {
    display: inline-flex; align-items: center; gap: 6px;
    color: var(--oct-text-muted); text-decoration: none;
    font-size: var(--oct-font-size-sm); font-weight: 600;
    margin-bottom: 20px;
    transition: color .12s;
}
.oct-back-link:hover { color: var(--oct-primary); }

/* ── Map picker inside auth (register) ──────────────────────────────────── */
.oct-map-picker { margin-top: 12px; }
.oct-map-picker__header {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 8px;
    font-size: var(--oct-font-size-sm);
    font-weight: 600;
    color: var(--oct-text-muted);
}
