/* views/user/settings.php */
.settings-wrap { max-width: 1100px; margin: 0 auto; }
        .settings-card table td { vertical-align: middle; }
        .settings-card .status-pill { min-width: 64px; display: inline-block; text-align: right; }
        .membership-settings-card {
            border: 1px solid #dbe4f0;
            border-radius: 9px;
            background: linear-gradient(135deg, #fff7ed 0%, #ffffff 62%);
        }
        .membership-option-btn {
            width: 100%;
            min-height: 10rem;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.9rem;
            padding: 1rem;
            border: 1px solid #dbe4f0;
            border-radius: 0.95rem;
            background: #fff;
            text-align: left;
            transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
        }
        .membership-option-btn:hover,
        .membership-option-btn:focus-visible {
            border-color: #94a3b8;
            box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
            transform: translateY(-1px);
        }
        .membership-option-btn.is-active {
            border-color: #0f766e;
            box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12);
        }
        .membership-option-btn--plus.is-active,
        .membership-option-btn--premium.is-active {
            border-color: #b45309;
            box-shadow: 0 0 0 3px rgba(180, 83, 9, 0.14);
        }
        .membership-option-btn--pro.is-active {
            border-color: #1d4ed8;
            box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.14);
        }
        .membership-option-btn:disabled {
            opacity: 0.72;
            cursor: wait;
            transform: none;
        }
        .membership-option-head {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
        }
        .membership-option-title {
            font-size: 1.05rem;
            font-weight: 700;
            color: #0f172a;
        }
        .membership-option-copy {
            color: #64748b;
            line-height: 1.55;
        }
        .language-settings-card {
            border: 1px solid #dbe4f0;
            border-radius: 9px;
            background: #fff;
        }
        .language-option-btn {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            padding: 0.85rem 1rem;
            border: 1px solid #dbe4f0;
            border-radius: 8px;
            background: #fff;
            text-align: left;
        }
        .language-option-btn.is-active {
            border-color: #2563eb;
            box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
            background: #f8fbff;
        }
        .language-option-flag {
            font-size: 1.15rem;
            line-height: 1;
        }
        .language-option-meta {
            min-width: 0;
        }
        .cookie-settings-card {
            border: 1px solid #dbe4f0;
            border-radius: 9px;
            background: linear-gradient(135deg, #f8fbff 0%, #ffffff 68%);
        }
        .cookie-settings-card .card-header {
            border-bottom: 1px solid #e2e8f0;
            background: transparent;
        }
        .cookie-settings-copy {
            max-width: 640px;
        }
        .cookie-settings-button {
            min-width: 220px;
            min-height: 42px;
            border-radius: 6px;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
        }
        @media (max-width: 576px) {
            .cookie-settings-button {
                width: 100%;
            }
        }

/* views/user/register.php */
.page-register {
        max-width: 32rem;
        margin: 0 auto;
        padding: 1.5rem 0 2.5rem;
    }
    .register-shell {
        display: grid;
        gap: 0.75rem;
    }
    .register-card {
        border: 1px solid #dbe4f0;
        border-radius: 1rem;
        background: #fff;
        box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
        padding: 1.25rem;
    }
    .register-panel {
        display: none;
    }
    .register-panel.is-active {
        display: block;
    }
    .register-step-meta {
        color: #64748b;
        font-size: 0.9rem;
        margin-bottom: 0.75rem;
    }
    .register-title {
        margin-bottom: 0.25rem;
    }
    .register-subtitle {
        color: #64748b;
        margin-bottom: 1rem;
    }
    .register-choice-list {
        display: grid;
        gap: 0.75rem;
    }
    .register-choice input {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }
    .register-choice {
        display: block;
    }
    .register-choice-card {
        display: flex;
        align-items: center;
        border: 1px solid #dbe4f0;
        border-radius: 0.9rem;
        padding: 0.9rem 1rem;
        background: #fff;
        cursor: pointer;
        min-height: 6rem;
    }
    .register-choice input:checked + .register-choice-card {
        border-color: #0f766e;
        box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.08);
    }
    .register-choice-header {
        display: flex;
        align-items: center;
        gap: 0.85rem;
    }
    .register-choice-icon {
        width: 3rem;
        height: 3rem;
        border-radius: 0.9rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #f0fdfa;
        color: #0f766e;
        font-size: 1.55rem;
        flex-shrink: 0;
    }
    .register-choice-copy {
        min-width: 0;
    }
    .register-choice-title {
        display: block;
        font-weight: 700;
        color: #0f172a;
        line-height: 1.35;
        margin-bottom: 0.15rem;
    }
    .register-choice-text {
        display: block;
        color: #64748b;
        font-size: 0.92rem;
        line-height: 1.45;
    }
    .register-card .form-label {
        font-weight: 600;
    }
    .register-card .form-control {
        padding: 0.8rem 0.9rem;
        border-radius: 0.8rem;
    }
    .register-actions {
        display: flex;
        justify-content: space-between;
        gap: 0.75rem;
        margin-top: 1rem;
    }
    .register-submit {
        min-width: 9rem;
        padding: 0.85rem 1rem;
        border-radius: 0.8rem;
        font-weight: 600;
    }
    .register-login-link {
        margin-top: 1rem;
        text-align: right;
    }
    @media (max-width: 576px) {
        .page-register {
            padding-top: 0.75rem;
        }
        .register-card {
            padding: 1rem;
        }
        .register-actions {
            flex-direction: column-reverse;
        }
        .register-submit,
        .register-actions .btn {
            width: 100%;
        }
        .register-login-link {
            text-align: left;
        }
    }
